Если соберётесь править грязным хаком виндовый бинарник, там это выглядит примерно так:
?FnChgToEnEmDash@SvxAutoCorrect@@QAEEAAV push 028 ;'('
.1009A61A: B8C2AF0F10 mov eax,0100FAFC2 --1
.1009A61F: E807080400 call .0100DAE2B --2
.1009A624: 8BF1 mov esi,ecx
.1009A626: 8975E4 mov [ebp][-01C],esi
.1009A629: 33FF xor edi,edi
.1009A62B: 897DEC mov [ebp][-014],edi
.1009A62E: FF7518 push d,[ebp][018]
.1009A631: C645F300 mov b,[ebp][-00D],0
.1009A635: E8EBFFF7FF call ?GetCharClass@SvxAutoCorrect@@QAEAAVCharClass@@G@Z --3
.1009A63A: 8945E0 mov [ebp][-020],eax
.1009A63D: 66397D18 cmp [ebp][018],di
.1009A641: 7515 jnz .01009A658 --4
.1009A643: 6A01 push 1
.1009A645: E806ECFFFF call .010099250 --5
.1009A64A: 8BC8 mov ecx,eax
.1009A64C: FF15BC931010 call LanguageTag::getLanguageType
.1009A652: 0FB7C0 movzx eax,ax
.1009A655: 894518 mov [ebp][018],eax
.1009A658: 66397E54 4cmp [esi][054],di
.1009A65C: 741A jz .01009A678 --6
.1009A65E: B819040000 mov eax,000000419
.1009A663: 66394518 cmp [ebp][018],ax
.1009A667: 7409 jz .01009A672 --7
.1009A669: 83C009 add eax,9
.1009A66C: 66394518 cmp [ebp][018],ax
.1009A670: 7506 jnz .01009A678 --6
.1009A672: C645F201 7mov b,[ebp][-00E],1
.1009A676: EB04 jmps .01009A67C --8
.1009A678: C645F200 6mov b,[ebp][-00E],0
.1009A67C: 66397E56 8cmp [esi][056],di
.1009A680: 8B3DC8941010 mov edi,rtl_uString_newFromStr_WithLength --9
.1009A686: 8B5510 mov edx,[ebp][010]
.1009A689: 0F84DF040000 jz .01009AB6E --A
Собственно проверка на русский язык и присвоение bAlwaysUseEmDash значения TRUE :
.1009A65E: B819040000 mov eax,000000419
.1009A663: 66394518 cmp [ebp][018],ax
.1009A667: 7409 jz .01009A672 --7
...
.1009A672: C645F201 7mov b,[ebp][-00E],1
Достаточно инвертировать условие jz на jnz или jmps и вуаля...
PS. Уплата некоторого количества денег за труды по достижению интересующего результата рассматриваются в качестве "использования иных средств"?