Function at 0x1007e250
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100bd2a0
mov eax, dword fs:[0]
push eax
sub esp, 0xa4
mov eax, dword [0x100e50d4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x5c
lea eax, [ebp - 0x70]
push 0
push eax
call fcn.1009a970
add esp, 0xc
mov dword [0x100f253c], 0
cmp byte [0x100f25ac], 0
je 0x100806b5
cmp byte [0x100f25a3], 0
je 0x100806b5
cmp byte [0x100f24fa], 0
je 0x100806b5
xor esi, esi
xor ebx, ebx
xor edi, edi
mov eax, dword [0x1010455c]
push 1
lea ecx, [eax + esi*2]
mov eax, dword [0x10104818]
mov edx, dword [eax + ecx*4 + 0x20e4]
mov eax, dword [eax + ecx*4 + 0x2114]
lea ecx, [ebp - 0x98]
push eax
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x78], eax
call fcn.1002c3b0
mov ecx, dword [0x10104818]
add esp, 8
add ecx, 0x10
add ecx, edi
push eax
call fcn.10012470
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 0
call fcn.1000ec00
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x10104818]
lea eax, [ecx + 0x10]
add eax, edi
cmp dword [eax + 0x14], 0x10
jb 0x1007e334
mov eax, dword [eax]
add ecx, 0x1600
push eax
add ecx, ebx
call fcn.10018fd0
cmp dword [0x1010455c], 1
je 0x1007e35c
push dword [ebp - 0x78]
mov edx, dword [ebp - 0x80]
lea ecx, [esi + 0xc]
call fcn.10016420
add esp, 4
inc esi
add edi, 0x18
add ebx, 0xe4
cmp esi, 6
jl 0x1007e2c5
xor esi, esi
mov eax, dword [0x1010455c]
push 1
lea ecx, [eax + esi*2]
mov eax, dword [0x10104ca8]
mov ebx, dword [eax + ecx*4 + 0x4544]
mov edx, ebx
mov eax, dword [eax + ecx*4 + 0x45a4]
lea ecx, [ebp - 0x98]
push eax
mov dword [ebp - 0x78], eax
call fcn.1002c3b0
mov ecx, dword [0x10104ca8]
lea edi, [esi + esi*2]
add esp, 8
shl edi, 3
add ecx, 0x14
add ecx, edi
push eax
call fcn.10012470
lea ecx, [ebp - 0x98]
mov dword [ebp - 4], 1
call fcn.1000ec00
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x1007e42c
cmp esi, 1
je 0x1007e42c
cmp esi, 3
je 0x1007e42c
cmp esi, 6
je 0x1007e42c
cmp esi, 9
je 0x1007e42c
cmp esi, 0xa
je 0x1007e42c
mov ecx, dword [0x10104ca8]
lea eax, [ecx + 0x14]
add eax, edi
cmp dword [eax + 0x14], 0x10
jb 0x1007e402
mov eax, dword [eax]
push eax
imul eax, esi, 0xe4
add ecx, 0x2bf4
add ecx, eax
call fcn.10018fd0
mov eax, dword [0x10104ca8]
lea ecx, [edi + 0x100feaac]
add eax, 0x14
add eax, edi
push eax
call fcn.10012440
cmp dword [0x1010455c], 1
je 0x1007e444
push dword [ebp - 0x78]
mov edx, ebx
mov ecx, esi
call fcn.10016420
add esp, 4
inc esi
cmp esi, 0xc
jl 0x1007e371
xor edi, edi
mov ebx, 0x8000
mov dword [ebp - 0x78], edi
mov esi, 0x1000
nop dword [eax]
mov ecx, dword [edi*4 + 0x1010481c]
mov eax, dword [ecx + 0x194]
and eax, 0x1000
je 0x1007e481
cmp byte [ecx + 0x1f0], 0
je 0x1007e524
mov byte [ebp - 0x80], 0
test eax, eax
jne 0x1007e4a4
sub esp, 0x18
mov ecx, esp
push str.Teleport
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e4a8
mov byte [ebp - 0x80], 1
mov eax, dword [edi*4 + 0x1010481c]
lea ecx, [ebp - 0xb0]
mov edx, dword [0x1010455c]
push dword [ebp - 0x80]
push dword [eax + edx*4 + 0x1a3c]
mov edx, dword [eax + edx*4 + 0x1a34]
call fcn.1002c3b0
mov ecx, dword [edi*4 + 0x1010481c]
add esp, 8
add ecx, 0x210
push eax
call fcn.10012470
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 2
call fcn.1000ec00
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [edi*4 + 0x1010481c]
cmp dword [ecx + 0x224], 0x10
lea eax, [ecx + 0x210]
jb 0x1007e518
mov eax, dword [eax]
push eax
add ecx, 0x868
call fcn.10018fd0
cmp dword [0x1010455c], 1
je 0x10080661
sub esp, 0x18
mov ecx, esp
push str.Teleport
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e570
mov ecx, dword [edi*4 + 0x1010481c]
mov eax, dword [0x1010455c]
push dword [ecx + eax*4 + 0x1a3c]
push dword [ecx + eax*4 + 0x1a34]
call sym.WarCraftHelper.dll_SetButtonTeleportKey
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.GlyphButton
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e5b0
mov eax, dword [edi*4 + 0x1010481c]
mov ecx, dword [0x1010455c]
mov edx, dword [eax + ecx*4 + 0x1a3c]
mov ecx, dword [eax + ecx*4 + 0x1a34]
call fcn.10028ec0
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.MenuTalentLearn
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e5f0
mov eax, dword [edi*4 + 0x1010481c]
mov ecx, dword [0x1010455c]
mov edx, dword [eax + ecx*4 + 0x1a3c]
mov ecx, dword [eax + ecx*4 + 0x1a34]
call fcn.1004afa0
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.LegacyKeys
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e66c
cmp dword [0x10103fe8], 0
jne 0x1007e650
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x950], 0
mov cl, byte [eax + 0x1f0]
je 0x1007e650
mov byte [eax + 0x951], cl
mov eax, dword [eax + 0x984]
test cl, cl
je 0x1007e646
mov dword [eax + 0xb0], 0x2c
jmp 0x1007e650
mov dword [eax + 0xb0], 0
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f25ae], al
mov byte [0x100f1c84], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.CtrlLearnAbility
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e6e3
cmp dword [0x10103fe8], 0
jne 0x1007e6cc
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x950], 0
mov cl, byte [eax + 0x1f0]
je 0x1007e6cc
mov byte [eax + 0x951], cl
mov eax, dword [eax + 0x984]
test cl, cl
je 0x1007e6c2
mov dword [eax + 0xb0], 0x2c
jmp 0x1007e6cc
mov dword [eax + 0xb0], 0
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f2578], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.LegacyOnlyQuickCast
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e75a
cmp dword [0x10103fe8], 0
jne 0x1007e743
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x950], 0
mov cl, byte [eax + 0x1f0]
je 0x1007e743
mov byte [eax + 0x951], cl
mov eax, dword [eax + 0x984]
test cl, cl
je 0x1007e739
mov dword [eax + 0xb0], 0x2c
jmp 0x1007e743
mov dword [eax + 0xb0], 0
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f2540], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.DoubleClickHero
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e7d1
cmp dword [0x10103fe8], 0
jne 0x1007e7ba
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x950], 0
mov cl, byte [eax + 0x1f0]
je 0x1007e7ba
mov byte [eax + 0x951], cl
mov eax, dword [eax + 0x984]
test cl, cl
je 0x1007e7b0
mov dword [eax + 0xb0], 0x2c
jmp 0x1007e7ba
mov dword [eax + 0xb0], 0
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f2543], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.AltCameraGrip
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e853
cmp dword [0x10103fe8], 1
jne 0x1007e831
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x950], 0
mov cl, byte [eax + 0x1f0]
je 0x1007e831
mov byte [eax + 0x951], cl
mov eax, dword [eax + 0x984]
test cl, cl
je 0x1007e827
mov dword [eax + 0xb0], 0x2c
jmp 0x1007e831
mov dword [eax + 0xb0], 0
mov eax, dword [edi*4 + 0x1010481c]
mov edx, 8
mov cl, byte [eax + 0x1f0]
mov byte [0x100f2563], cl
call fcn.10080720
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.HoldSelectHeroToFollow
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e8ca
cmp dword [0x10103fe8], 1
jne 0x1007e8b3
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x950], 0
mov cl, byte [eax + 0x1f0]
je 0x1007e8b3
mov byte [eax + 0x951], cl
mov eax, dword [eax + 0x984]
test cl, cl
je 0x1007e8a9
mov dword [eax + 0xb0], 0x2c
jmp 0x1007e8b3
mov dword [eax + 0xb0], 0
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f26cc], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.MouseScatterWidth
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.DisplayInfo
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007e946
cmp dword [0x10103fe8], 1
jne 0x1007e927
mov ecx, dword [edi*4 + 0x1010481c]
movzx eax, byte [ecx + 0x1f0]
add ecx, 0x950
push eax
call fcn.10019490
mov eax, dword [edi*4 + 0x1010481c]
mov ecx, dword [0x10104554]
movzx eax, byte [eax + 0x1f0]
push eax
call fcn.10028fe0
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.FogDensity
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.ImproveMiniMap
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007ea96
cmp dword [0x10103fe8], 1
jne 0x1007e9a7
mov ecx, dword [edi*4 + 0x1010481c]
movzx eax, byte [ecx + 0x1f0]
add ecx, 0x950
push eax
call fcn.10019490
mov eax, dword [edi*4 + 0x1010481c]
sub esp, 0x18
mov ecx, esp
mov al, byte [eax + 0x1f0]
push str.HeroIconSizeMiniMap
mov byte [0x100f25af], al
call fcn.1000ec50
call fcn.1006bfe0
mov cl, byte [0x100f25af]
add esp, 0x18
mov edx, 0x80
mov esi, eax
call fcn.10080720
mov cl, byte [0x100f25af]
mov edx, 0x100
call fcn.10080720
cmp byte [0x100f25af], 0
mov ecx, dword [esi*4 + 0x1010481c]
mov ecx, dword [ecx + 0xa34]
je 0x1007ea30
push 1
call fcn.100194c0
mov ecx, dword [esi*4 + 0x1010481c]
push dword [ecx + 0x24]
mov ecx, dword [ecx + 0xa34]
call fcn.1001a060
mov eax, dword [esi*4 + 0x1010481c]
jmp 0x10080651
call fcn.1001a040
mov eax, dword [esi*4 + 0x1010481c]
cvttss2si ecx, xmm0
mov dword [eax + 0x24], ecx
mov ecx, dword [esi*4 + 0x1010481c]
push dword [ecx + 0x28]
mov ecx, dword [ecx + 0xa34]
call fcn.1001a060
mov eax, dword [esi*4 + 0x1010481c]
push 0
mov byte [0x100f25af], 1
push dword [eax + 0xa34]
call fcn.100813e0
mov ecx, dword [esi*4 + 0x1010481c]
add esp, 8
mov byte [0x100f25af], 0
mov ecx, dword [ecx + 0xa34]
push 0
call fcn.100194c0
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.HeroIconSizeMiniMap
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.HideMinimapSignals
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007eb03
xor edx, edx
xor ecx, ecx
call fcn.1008cc60
test eax, eax
jle 0x10080661
mov ecx, dword [edi*4 + 0x1010481c]
xor edx, edx
cmp byte [ecx + 0x1f0], dl
lea ecx, [eax + 0x1dc]
sete dl
call fcn.1008ce90
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.EnableHeroBar
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007ecba
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x1f0], 0
je 0x1007ec05
mov cl, 1
call fcn.10029fa0
mov eax, dword [0x100f255c]
cmp eax, 0xffffffff
je 0x10080661
push eax
mov ecx, 0x10106fec
call fcn.100844b0
cmp byte [eax], 0
je 0x10080661
push dword [0x100f255c]
mov ecx, 0x10106fec
call fcn.100844b0
push dword [0x100f255c]
mov ecx, 0x10106fec
mov byte [eax], 0
call fcn.100844b0
push ecx
mov ecx, 0x10106fec
movss xmm0, dword [eax + 0x30]
movss dword [esp], xmm0
push dword [0x100f255c]
call fcn.100844b0
push ecx
mov ecx, 0x10106fec
movss xmm0, dword [eax + 0x2c]
movss dword [esp], xmm0
push dword [0x100f255c]
call fcn.100844b0
mov ecx, 0x10106fec
mov eax, dword [eax + 0x28]
push eax
push dword [0x100f255c]
call fcn.100844b0
mov ecx, 0x10106fec
mov eax, dword [eax + 0x20]
push eax
push dword [0x100f255c]
call fcn.100844b0
push dword [0x100f255c]
mov ecx, 0x10106fec
mov esi, eax
call fcn.100844b0
mov edx, dword [esi + 0x24]
mov ecx, dword [eax + 0x1c]
call fcn.10018130
add esp, 0x10
jmp 0x10080661
xor cl, cl
call fcn.10029fa0
mov eax, dword [0x100f255c]
cmp eax, 0xffffffff
je 0x10080661
push eax
mov ecx, 0x10106fec
call fcn.100844b0
cmp byte [eax], 0
jne 0x10080661
push dword [0x100f255c]
mov ecx, 0x10106fec
call fcn.100844b0
push dword [0x100f255c]
mov ecx, 0x10106fec
mov byte [eax], 1
call fcn.100844b0
push ecx
mov ecx, 0x10106fec
movss xmm0, dword [eax + 0x18]
movss dword [esp], xmm0
push dword [0x100f255c]
call fcn.100844b0
push ecx
mov ecx, 0x10106fec
movss xmm0, dword [eax + 0x14]
movss dword [esp], xmm0
push dword [0x100f255c]
call fcn.100844b0
mov ecx, 0x10106fec
mov eax, dword [eax + 0x10]
push eax
push dword [0x100f255c]
call fcn.100844b0
mov ecx, 0x10106fec
mov eax, dword [eax + 8]
push eax
push dword [0x100f255c]
call fcn.100844b0
push dword [0x100f255c]
jmp 0x1007ee3f
sub esp, 0x18
mov ecx, esp
push str.EnablePeonBar
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007ee5e
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x1f0], 0
mov eax, dword [0x100f2558]
je 0x1007ed9b
cmp eax, 0xffffffff
je 0x10080661
push eax
mov ecx, 0x10106fec
call fcn.100844b0
cmp byte [eax], 0
je 0x10080661
push dword [0x100f2558]
mov ecx, 0x10106fec
call fcn.100844b0
push dword [0x100f2558]
mov ecx, 0x10106fec
mov byte [eax], 0
call fcn.100844b0
push ecx
mov ecx, 0x10106fec
movss xmm0, dword [eax + 0x30]
movss dword [esp], xmm0
push dword [0x100f2558]
call fcn.100844b0
push ecx
mov ecx, 0x10106fec
movss xmm0, dword [eax + 0x2c]
movss dword [esp], xmm0
push dword [0x100f2558]
call fcn.100844b0
mov ecx, 0x10106fec
mov eax, dword [eax + 0x28]
push eax
push dword [0x100f2558]
call fcn.100844b0
mov ecx, 0x10106fec
mov eax, dword [eax + 0x20]
push eax
push dword [0x100f2558]
call fcn.100844b0
push dword [0x100f2558]
jmp 0x1007ebe6
cmp eax, 0xffffffff
je 0x10080661
push eax
mov ecx, 0x10106fec
call fcn.100844b0
cmp byte [eax], 0
jne 0x10080661
push dword [0x100f2558]
mov ecx, 0x10106fec
call fcn.100844b0
push dword [0x100f2558]
mov ecx, 0x10106fec
mov byte [eax], 1
call fcn.100844b0
push ecx
mov ecx, 0x10106fec
movss xmm0, dword [eax + 0x18]
movss dword [esp], xmm0
push dword [0x100f2558]
call fcn.100844b0
push ecx
mov ecx, 0x10106fec
movss xmm0, dword [eax + 0x14]
movss dword [esp], xmm0
push dword [0x100f2558]
call fcn.100844b0
mov ecx, 0x10106fec
mov eax, dword [eax + 0x10]
push eax
push dword [0x100f2558]
call fcn.100844b0
mov ecx, 0x10106fec
mov eax, dword [eax + 8]
push eax
push dword [0x100f2558]
call fcn.100844b0
push dword [0x100f2558]
mov ecx, 0x10106fec
mov esi, eax
call fcn.100844b0
mov edx, dword [esi + 0xc]
mov ecx, dword [eax + 4]
call fcn.10018130
add esp, 0x10
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.AlwaysShowCourierButton
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007eec3
mov eax, dword [edi*4 + 0x1010481c]
mov edx, 0x200
mov cl, byte [eax + 0x1f0]
call fcn.10080720
mov eax, dword [edi*4 + 0x1010481c]
mov edx, 0x400
mov cl, byte [eax + 0x1f0]
call fcn.10080720
mov eax, dword [edi*4 + 0x1010481c]
mov edx, 0x800
mov cl, byte [eax + 0x1f0]
call fcn.10080720
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.AutoRepeatRightMouse
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007eef5
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f2553], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.TeleportRequiresHoldStop
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007ef27
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f2541], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.SmartDoubleTap
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007ef59
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f2542], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.AlwaysShowInfoUpperHeroBar
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f020
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f24f9], al
test al, al
jne 0x1007ef9f
push 0x12
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
mov byte [ebp - 0x7c], 0
test bx, ax
jbe 0x1007efa3
mov byte [ebp - 0x7c], 1
xor ebx, ebx
xor edi, edi
xor esi, esi
nop dword [eax]
mov ecx, ebx
call fcn.100507d0
test al, al
je 0x1007f003
mov ecx, dword [0x10104558]
push dword [ebp - 0x7c]
add ecx, 0x924
add ecx, edi
call fcn.10019490
mov ecx, dword [0x10104558]
push dword [ebp - 0x7c]
add ecx, 0xa08
add ecx, edi
call fcn.10019490
cmp dword [esi + 0x10103810], 0
je 0x1007f003
cmp byte [esi + 0x10103818], 0
je 0x1007f003
mov dl, byte [ebp - 0x7c]
mov ecx, ebx
call fcn.10051180
add esi, 0x88
inc ebx
add edi, 0x1730
cmp esi, 0x660
jb 0x1007efb0
mov edi, dword [ebp - 0x78]
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.shopsQWERTY
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f057
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f251b], al
mov byte [0x100f1c83], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.BuyBackButtonOnCircleOnly
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f089
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f24f8], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.HoldMouseWhenWindow
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f0e9
call fcn.1008d000
test al, al
je 0x10080661
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f251a], al
test al, al
je 0x1007f0df
mov eax, dword [0x100f2764]
cmp byte [eax], 0
je 0x10080661
call fcn.1008cfb0
jmp 0x10080661
call fcn.1008cff0
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.GameCameraHeight
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.WeatherType
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f150
mov edx, dword [edi*4 + 0x1010481c]
mov ecx, dword [edx + 0xf8]
mov eax, dword [edx + 0x100]
push dword [eax + ecx*4]
lea ecx, [edx + 0x4d8]
call fcn.10018fd0
call fcn.1008c100
push 0x57544852
jmp 0x1007f196
sub esp, 0x18
mov ecx, esp
push str.Announcer
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f1b9
mov edx, dword [edi*4 + 0x1010481c]
mov ecx, dword [edx + 0xf8]
mov eax, dword [edx + 0x100]
push dword [eax + ecx*4]
lea ecx, [edx + 0x4d8]
call fcn.10018fd0
call fcn.1008c100
push 0x414e4e43
call dword [0x100f26e0]
mov eax, dword [edi*4 + 0x1010481c]
push dword [eax + 0xf8]
call dword [0x100f26e0]
call fcn.1008c110
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.WaterColor
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f420
mov edx, dword [edi*4 + 0x1010481c]
mov ecx, dword [edx + 0xf8]
mov eax, dword [edx + 0x100]
push dword [eax + ecx*4]
lea ecx, [edx + 0x4d8]
call fcn.10018fd0
mov eax, dword [edi*4 + 0x1010481c]
sub esp, 0x18
mov ecx, esp
mov eax, dword [eax + 0xf8]
push str.WaterColorPreviewTexture
mov dword [0x100f26a8], eax
call fcn.1000ec50
call fcn.1006bfe0
mov ecx, dword [0x100f26a8]
add esp, 0x18
mov ebx, eax
mov dword [ebp - 0x74], ebx
test ecx, ecx
jne 0x1007f24e
mov ecx, 0xff0000ff
call fcn.1008ca20
push 0xff
push 0
push 0
push 0xff
jmp 0x1007f350
cmp ecx, 1
jne 0x1007f270
mov ecx, 0xffff0000
call fcn.1008ca20
push 0
push 0
push 0xff
push 0xff
jmp 0x1007f350
cmp ecx, 2
jne 0x1007f292
mov ecx, 0xff00ff00
call fcn.1008ca20
push 0
push 0xff
push 0
push 0xff
jmp 0x1007f350
cmp ecx, 3
je 0x1007f231
cmp ecx, 4
jne 0x1007f2fd
mov edx, 0xff
xor ecx, ecx
call fcn.10091d60
mov edx, 0xff
xor ecx, ecx
mov esi, eax
call fcn.10091d60
mov edx, 0xff
mov dword [ebp - 0x78], eax
xor ecx, ecx
call fcn.10091d60
mov ebx, eax
mov ecx, esi
mov eax, dword [ebp - 0x78]
or ecx, 0xffffff00
shl ecx, 8
movzx edx, al
or ecx, edx
movzx edx, bl
shl ecx, 8
or ecx, edx
call fcn.1008ca20
mov ecx, dword [ebp - 0x74]
push ebx
push dword [ebp - 0x78]
mov ecx, dword [ecx*4 + 0x1010481c]
push esi
push 0xff
jmp 0x1007f357
cmp ecx, 5
jne 0x1007f36f
mov eax, dword [0x100f2534]
movzx ecx, byte [0x100f2538]
shl eax, 8
or ecx, eax
movzx eax, byte [0x100f252c]
shl ecx, 8
or ecx, eax
movzx eax, byte [0x100f2528]
shl ecx, 8
or ecx, eax
call fcn.1008ca20
movzx eax, byte [0x100f2528]
push eax
movzx eax, byte [0x100f252c]
push eax
movzx eax, byte [0x100f2538]
push eax
movzx eax, byte [0x100f2534]
push eax
mov ecx, dword [ebx*4 + 0x1010481c]
add ecx, 0x228
call fcn.10018f80
cmp dword [0x100f26a8], 5
je 0x10080661
push 0
sub esp, 0x18
mov ecx, esp
push str.WaterColorSelectRed
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
mov ecx, dword [eax*4 + 0x1010481c]
mov ecx, dword [ecx + 0xa34]
call fcn.100194c0
push 0
sub esp, 0x18
mov ecx, esp
push str.WaterColorSelectGreen
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
mov ecx, dword [eax*4 + 0x1010481c]
mov ecx, dword [ecx + 0xa34]
call fcn.100194c0
push 0
sub esp, 0x18
mov ecx, esp
push str.WaterColorSelectBlue
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
mov ecx, dword [eax*4 + 0x1010481c]
mov ecx, dword [ecx + 0xa34]
call fcn.100194c0
push 0
sub esp, 0x18
mov ecx, esp
push str.WaterColorSelectAlpha
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
mov ecx, dword [eax*4 + 0x1010481c]
mov ecx, dword [ecx + 0xa34]
call fcn.100194c0
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.WaterColorSelectRed
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.WaterColorSelectGreen
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.WaterColorSelectBlue
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.WaterColorSelectAlpha
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.CustomChatMessagesSelectRed
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.CustomChatMessagesSelectGreen
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.CustomChatMessagesSelectBlue
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x1f0], 0
je 0x1007f90b
sub esp, 0x18
mov ecx, esp
push str.AutoAttack
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
sete cl
mov dword [ebp - 0x70], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.SmartAttack
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 2
cmove ecx, edx
mov dword [ebp - 0x6c], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.RightClickDeny
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 4
cmove ecx, edx
mov dword [ebp - 0x68], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.SelectionHelper
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 8
cmove ecx, edx
mov dword [ebp - 0x64], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.AutoAttackDisabledStopOnly
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x10
cmove ecx, edx
mov dword [ebp - 0x60], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.JuggernautWardDoesntFollow
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x20
cmove ecx, edx
mov dword [ebp - 0x5c], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.ShiftingWithDagger
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x40
cmove ecx, edx
mov dword [ebp - 0x58], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.IAmShy
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x80
cmove ecx, edx
mov dword [ebp - 0x54], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.DotA2HPBars
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x100
cmove ecx, edx
mov dword [ebp - 0x50], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.MeepoNumbersOverHeadClones
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x200
cmove ecx, edx
mov dword [ebp - 0x4c], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.DisplayAllyGoldOnSelection
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x400
cmove ecx, edx
mov dword [ebp - 0x48], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.HealingDisplaysAmount
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x800
cmove ecx, edx
mov dword [ebp - 0x44], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.SameSelectionCircleForEveryone
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
cmove ecx, esi
mov dword [ebp - 0x40], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.EscClearsChat
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x2000
cmove ecx, edx
mov dword [ebp - 0x3c], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.EscClearsPlayersChat
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x4000
cmove ecx, edx
mov dword [ebp - 0x38], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.ShowTipsWhileDead
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
cmove ecx, ebx
mov dword [ebp - 0x34], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.ShowItemsInMultiboard
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x10000
cmove ecx, edx
mov dword [ebp - 0x30], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.HideHeroNames
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x20000
cmove ecx, edx
mov dword [ebp - 0x2c], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.RepeatGameMessagesIntoChatLog
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x40000
cmove ecx, edx
mov dword [ebp - 0x28], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.ColorblindMode
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x80000
cmove ecx, edx
mov dword [ebp - 0x24], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.DisableInGameCameraMoveEvents
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x100000
cmove ecx, edx
mov dword [ebp - 0x20], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.EnableSoundOfGoldCoins
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x200000
cmove ecx, edx
mov dword [ebp - 0x1c], ecx
je 0x1007f8e6
sub esp, 0x18
mov ecx, esp
push str.AlliesAlwaysGreen
call fcn.1000ec50
call fcn.1006bfe0
xor ecx, ecx
add esp, 0x18
cmp edi, eax
mov edx, 0x400000
cmove ecx, edx
mov dword [ebp - 0x18], ecx
jne 0x1007f90b
mov edx, dword [0x100f253c]
xor eax, eax
nop
mov ecx, dword [ebp + eax*4 - 0x70]
test ecx, ecx
je 0x1007f8fa
or edx, ecx
inc eax
cmp eax, 0x17
jb 0x1007f8f0
mov dword [0x100f253c], edx
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.EnableSearchWhenOpeningSideShop
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f93d
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f2486], al
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.AdvancedTooltips
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f975
push 7
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x1f0], 0
je 0x1007f9c9
call dword [0x100f2758]
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.AlwaysDisplayHPRegen
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f9aa
mov eax, dword [edi*4 + 0x1010481c]
movzx eax, byte [eax + 0x1f0]
push eax
call dword [0x100f2760]
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.DisplayRegeneration
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007f9d4
push 8
jmp 0x1007f95a
call dword [0x100f2754]
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.VSync
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007fa3e
cmp dword [0x10103fe8], 2
jne 0x1007fa12
mov ecx, dword [edi*4 + 0x1010481c]
movzx eax, byte [ecx + 0x1f0]
add ecx, 0x950
push eax
call fcn.10019490
cmp dword [0x100f224c], 0
mov eax, dword [edi*4 + 0x1010481c]
mov al, byte [eax + 0x1f0]
mov byte [0x100f257b], al
je 0x10080661
movzx ecx, al
call fcn.10027560
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.WideScreen
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007fa73
mov eax, dword [edi*4 + 0x1010481c]
movzx eax, byte [eax + 0x1f0]
push eax
call dword [0x100f275c]
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.SmoothFogReveal
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007fad5
call fcn.1008ca10
test eax, eax
jle 0x10080661
mov ecx, dword [edi*4 + 0x1010481c]
cmp byte [ecx + 0x1f0], 0
lea ecx, [eax + 0x9a8]
je 0x1007fac3
movss xmm1, dword [0x100daacc]
call fcn.1008cef0
jmp 0x10080661
movss xmm1, dword [0x100daae0]
call fcn.1008cef0
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.BetterFPS
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007fba2
call fcn.1008ca10
test eax, eax
jle 0x10080661
mov ecx, dword [0x100f2748]
lea esi, [eax + 0x970]
mov eax, dword [edi*4 + 0x1010481c]
mov ebx, dword [esi]
lea ecx, [ecx + 0x93a078]
cmp byte [eax + 0x1f0], 0
je 0x1007fb64
movss xmm1, dword [0x100da7e4]
call fcn.1008cef0
test bl, 0x10
lea eax, [ebx - 0x10]
cmove eax, ebx
test eax, 0x1000
lea ecx, [eax - 0x1000]
cmove ecx, eax
test ecx, 0x2000
lea edx, [ecx - 0x2000]
cmove edx, ecx
mov ecx, esi
call fcn.1008ce90
jmp 0x10080661
movss xmm1, dword [0x100da730]
call fcn.1008cef0
test bl, 0x10
lea eax, [ebx + 0x10]
cmovne eax, ebx
test eax, 0x1000
lea edx, [eax + 0x1000]
cmovne edx, eax
test edx, 0x2000
jne 0x1007fb96
add edx, 0x2000
mov ecx, esi
call fcn.1008ce90
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.BetterFPS2
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007fc26
cmp byte [0x100f26cf], 0
jne 0x10080661
call fcn.1008ca10
test eax, eax
jle 0x10080661
mov edx, dword [eax + 0x970]
lea ecx, [eax + 0x970]
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x1f0], 0
je 0x1007fc0e
test edx, 0x4000
lea eax, [edx - 0x4000]
cmove eax, edx
mov edx, eax
call fcn.1008ce90
jmp 0x10080661
test edx, 0x4000
jne 0x1007fc1c
add edx, 0x4000
call fcn.1008ce90
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.BetterFPS3
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007fc67
cmp byte [0x100f26cf], 0
jne 0x10080661
mov eax, dword [edi*4 + 0x1010481c]
mov edx, esi
mov cl, byte [eax + 0x1f0]
call fcn.10080720
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.DisplayManaBars
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x1007fc9c
mov eax, dword [edi*4 + 0x1010481c]
movzx eax, byte [eax + 0x1f0]
push eax
call dword [0x100f2750]
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.PersonalLatency
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.MaxFPSAllowed
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.QuickChatString0
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString1
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString2
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString3
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString4
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString5
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString6
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString7
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString8
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString9
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString10
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString11
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString12
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString13
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.QuickChatString14
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString0
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString1
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString2
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString3
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString4
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString5
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString6
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString7
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString8
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString9
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString10
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString11
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString12
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString13
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.OnStartString14
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelString0
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelString1
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelString2
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelString3
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelString4
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelString5
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelString6
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelString7
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.UseOnlySound0
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008060a
sub esp, 0x18
mov ecx, esp
push str.UseOnlySound1
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008060a
sub esp, 0x18
mov ecx, esp
push str.UseOnlySound2
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008060a
sub esp, 0x18
mov ecx, esp
push str.UseOnlySound3
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008060a
sub esp, 0x18
mov ecx, esp
push str.UseOnlySound4
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008060a
sub esp, 0x18
mov ecx, esp
push str.UseOnlySound5
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008060a
sub esp, 0x18
mov ecx, esp
push str.UseOnlySound6
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008060a
sub esp, 0x18
mov ecx, esp
push str.UseOnlySound7
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008060a
sub esp, 0x18
mov ecx, esp
push str.ChatWheelStringCW20
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelStringCW21
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelStringCW22
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelStringCW23
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelStringCW24
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelStringCW25
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelStringCW26
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.ChatWheelStringCW27
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x100805f0
sub esp, 0x18
mov ecx, esp
push str.UseOnlySoundCW20
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x10080577
sub esp, 0x18
mov ecx, esp
push str.UseOnlySoundCW21
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x10080577
sub esp, 0x18
mov ecx, esp
push str.UseOnlySoundCW22
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x10080577
sub esp, 0x18
mov ecx, esp
push str.UseOnlySoundCW23
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x10080577
sub esp, 0x18
mov ecx, esp
push str.UseOnlySoundCW24
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x10080577
sub esp, 0x18
mov ecx, esp
push str.UseOnlySoundCW25
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x10080577
sub esp, 0x18
mov ecx, esp
push str.UseOnlySoundCW26
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x10080577
sub esp, 0x18
mov ecx, esp
push str.UseOnlySoundCW27
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x10080577
sub esp, 0x18
mov ecx, esp
push str.AutoselectSummonedUnitsRadius
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.ChatMessageDuration
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
je 0x1008064a
sub esp, 0x18
mov ecx, esp
push str.DisableAltTogglingHPBars
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x100804d1
mov eax, dword [edi*4 + 0x1010481c]
mov edx, 0x2000
mov cl, byte [eax + 0x1f0]
call fcn.10080720
jmp 0x10080661
sub esp, 0x18
mov ecx, esp
push str.IgnoreAllChat
call fcn.1000ec50
call fcn.1006bfe0
add esp, 0x18
cmp edi, eax
jne 0x10080541
mov eax, dword [0x100f24d4]
mov esi, edi
sub esi, dword [0x100f24dc]
mov edx, dword [edi*4 + 0x1010481c]
add eax, esi
mov ecx, dword [eax*4 + 0x1010481c]
mov al, byte [edx + 0x1f0]
mov byte [ecx + 0x56], al
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x1f0], 0
je 0x10080661
mov eax, dword [0x100f24cc]
add eax, esi
mov ecx, dword [eax*4 + 0x1010481c]
mov eax, dword [ecx + 0xb8]
mov ecx, dword [ecx + 0xa40]
cmp eax, 0xffffffff
jne 0x100805df
push 0x100d6824
call fcn.1001ae50
jmp 0x10080661
push dword [eax*4 + 0x100e7278]
call fcn.1001ae50
jmp 0x10080661
mov ecx, dword [edi*4 + 0x1010481c]
push dword [ecx + 0x9c]
mov ecx, dword [ecx + 0xa40]
call fcn.1001ae50
jmp 0x10080661
mov eax, dword [0x100f24ac]
mov esi, edi
sub esi, dword [0x100f24b4]
mov edx, dword [edi*4 + 0x1010481c]
add eax, esi
mov ecx, dword [eax*4 + 0x1010481c]
mov al, byte [edx + 0x1f0]
mov byte [ecx + 0x56], al
mov eax, dword [edi*4 + 0x1010481c]
cmp byte [eax + 0x1f0], 0
je 0x10080661
mov eax, dword [0x100f24a4]
jmp 0x100805b6
mov eax, dword [edi*4 + 0x1010481c]
push 0
push dword [eax + 0xa34]
call fcn.100813e0
add esp, 8
inc edi
mov ebx, 0x8000
mov dword [ebp - 0x78], edi
mov esi, 0x1000
cmp edi, 0x123
jl 0x1007e460
call fcn.1008c100
push 0x47414f50
call dword [0x100f26e0]
push dword [0x100f253c]
call dword [0x100f26e0]
call fcn.1008c110
cmp dword [0x100f26dc], 0
jle 0x100806b5
call fcn.1008c4f0
test eax, eax
je 0x100806b5
mov ecx, eax
call fcn.10015850
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10097f9e
mov esp, ebp
pop ebp
ret