Function at 0x1a00e750
Capabilities:
Log keystrokes via polling
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x558
mov eax, dword [0x1a02400c]
xor eax, esp
mov dword [esp + 0x554], eax
cmp dword [0x1a02b604], 0
mov eax, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0x14]
push edi
mov edi, dword [ebp + 0x10]
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 0
jne 0x1a00e80b
cmp dword [ebp + 0xc], 0x1408
jne case.0x1a00e9c4.6
mov eax, edi
movzx ecx, di
shr eax, 0x10
cmp ax, 4
jne 0x1a00e7d5
mov eax, 0x8048
cmp cx, ax
jne case.0x1a00e9c4.6
mov dword [0x1a02d070], esi
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp ax, 0x1d
jne case.0x1a00e9c4.6
mov eax, 0x4000
cmp cx, ax
jne case.0x1a00e9c4.6
mov dword [0x1a02407c], esi
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
test eax, eax
je 0x1a00e81a
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x1a00e826
mov ecx, dword [0x1a02b614]
mov dword [esp + 0x1c], ecx
jmp 0x1a00e82a
mov ecx, dword [esp + 0x1c]
mov edx, dword [ebp + 0xc]
cmp edx, 0x201
ja 0x1a00e8b3
je case.0x1a00e84c.7
lea eax, [edx - 7]
cmp eax, 0xfd
ja case.0x1a00e84c.9
movzx eax, byte [eax + 0x1a01041c]
jmp dword [eax*4 + 0x1a01040c]
test edi, edi
je case.0x1a00e84c.7
jmp case.0x1a00e84c.9
push 0x390001
mov edx, 0x20
call fcn.1a00e3d0
mov eax, dword [0x1a02b6b8]
add esp, 4
test eax, eax
je 0x1a00e87f
cmp eax, 0xffffffff
je 0x1a00e87f
call dword [0x1a02b6e8]
call fcn.1a00e690
mov edx, dword [ebp + 0xc]
cmp edx, 0x281
ja 0x1a00ee6c
je 0x1a00ee3c
lea eax, [edx - 7]
cmp eax, 0x4a
ja case.0x1a00e8ac.9
movzx eax, byte [eax + 0x1a010530]
jmp dword [eax*4 + 0x1a01051c]
cmp edx, 0x1408
ja 0x1a00e9cb
je 0x1a00e923
mov eax, edx
sub eax, 0x204
je case.0x1a00e84c.7
sub eax, 3
jne case.0x1a00e84c.9
push 0x390001
mov edx, 0x20
xor ecx, ecx
call fcn.1a00e3d0
mov eax, dword [0x1a02b6b8]
add esp, 4
test eax, eax
je 0x1a00e8f7
cmp eax, 0xffffffff
je 0x1a00e8f7
call dword [0x1a02b6e8]
cmp dword [0x1a024084], 0
jne 0x1a00e884
push 0x280
push 0
push 0x1a02d580
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [0x1a024084], 1
jmp 0x1a00e884
cmp edi, 0x10800
jne 0x1a00e9a7
push 0
push 0x40002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
push 0
push 0x70002
push 0x1408
push 0
mov dword [esp + 0x28], eax
call sym.HncIMM.dll_HimControl
cmp dword [0x1a024080], 0
mov ecx, eax
jne 0x1a00e97f
cmp dword [esp + 0x18], 0x412
jne 0x1a00e97f
mov eax, dword [0x1a02d074]
cmp ecx, 4
mov ecx, 1
cmove eax, ecx
mov dword [0x1a02d074], eax
push 0x390001
mov edx, 0x20
xor ecx, ecx
call fcn.1a00e3d0
mov eax, dword [0x1a02b6b8]
add esp, 4
test eax, eax
je 0x1a00e9a7
cmp eax, 0xffffffff
je 0x1a00e9a7
call dword [0x1a02b6e8]
mov ecx, dword [esp + 0x14]
mov eax, ecx
shr eax, 0x10
dec eax
movzx edi, di
cmp eax, 0x21
ja case.0x1a00e9c4.6
movzx eax, byte [eax + 0x1a0105cc]
jmp dword [eax*4 + 0x1a01057c]
cmp edx, 0x1409
jne case.0x1a00e84c.9
push 0x12
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1a00e9f1
cmp dword [edi + 8], 0xc0
je case.0x1a00e9c4.6
mov eax, dword [edi + 4]
cmp eax, 0x201
ja 0x1a00ea56
je 0x1a00ea66
cmp eax, 7
je 0x1a00ea66
cmp eax, 0x100
jne 0x1a01024b
mov eax, dword [edi + 8]
cmp eax, 8
jne 0x1a00ea1d
call fcn.1a00e690
mov eax, dword [edi + 8]
cmp eax, 0x20
je 0x1a00ea35
cmp eax, 0xd
je 0x1a00ea35
cmp eax, 0x15
je 0x1a00ea35
cmp eax, 0x19
jne 0x1a01024b
mov ecx, 0xa0
mov dword [0x1a024080], 1
xor eax, eax
mov edi, 0x1a02d078
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x14]
jmp 0x1a01024b
sub eax, 0x204
je 0x1a00ea66
sub eax, 3
jne 0x1a00ee69
push 0x390001
mov edx, 0x20
xor ecx, ecx
call fcn.1a00e3d0
mov eax, dword [0x1a02b6b8]
add esp, 4
test eax, eax
je 0x1a00ea8e
cmp eax, 0xffffffff
je 0x1a00ea8e
call dword [0x1a02b6e8]
call fcn.1a00e690
jmp 0x1a01024b
push esi
push edi
push edx
push dword [esp + 0x28]
call sym.HncIMM.dll__HimSysIMELangChange_16
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov edi, dword [esp + 0x1c]
mov ecx, edi
call fcn.1a015060
mov esi, dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x1a00eb13
push edi
call esi
test eax, eax
je 0x1a00eb07
push 0xffffffffffffffe0
push edi
call dword [sym.imp.USER32.dll_GetClassLongW]
mov ecx, dword [0x1a02d83c]
movzx edx, ax
xor eax, eax
test ecx, ecx
jle 0x1a00eb07
nop
cmp dx, word [eax*2 + 0x1a034ab8]
je 0x1a00eb01
inc eax
cmp eax, ecx
jl 0x1a00eaf0
jmp 0x1a00eb07
mov dword [0x1a02b614], edi
push dword [0x1a02b614]
call dword [sym.imp.USER32.dll_GetParent]
cmp dword [0x1a034af8], 0
jne 0x1a00eb26
mov ecx, 0x8000
call fcn.1a018b10
push edi
mov dword [esp + 0x18], 0
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x1a00eb59
lea eax, [esp + 0x14]
push eax
push 0x232
push edi
call sym.HncIMM.dll__HimImmRequest_12
push dword [esp + 0x14]
call esi
test eax, eax
je 0x1a00eb59
mov edi, dword [esp + 0x14]
jmp 0x1a00eb5d
mov dword [esp + 0x14], edi
mov esi, dword [0x1a02b614]
push 0
push 0x10040
push 0x1408
push edi
mov dword [0x1a02b614], edi
call sym.HncIMM.dll_HimControl
mov dword [0x1a02b614], esi
xor eax, eax
and eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push 0
push 0x40002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
cmp eax, 0x800
je 0x1a00ec6f
push 0
push 0x70002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
cmp eax, 0x20
je 0x1a00ec6f
push 0xffffffffffffffeb
push dword [0x1a02b604]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, eax
je 0x1a00ebf0
mov eax, dword [eax]
mov dword [esp + 0x14], eax
jmp 0x1a00ebf8
mov dword [esp + 0x14], 0
push 0
push 0x40002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
movzx eax, ax
mov ecx, 0x411
cmp ax, cx
je 0x1a00ec4e
mov ecx, 0x804
cmp ax, cx
je 0x1a00ec4e
mov ecx, 0x81e
cmp ax, cx
je 0x1a00ec4e
mov ecx, 0x404
cmp ax, cx
je 0x1a00ec4e
mov ecx, dword [ebp + 0xc]
mov edx, edi
push esi
call fcn.1a004390
add esp, 4
mov dword [esp + 0x18], eax
test al, 2
je 0x1a00ecaf
jmp 0x1a00eca4
mov ecx, dword [esp + 0x14]
add ecx, 0x1ab6
call fcn.1a00d9e0
mov ecx, dword [0x1a02b614]
call fcn.1a00da50
call fcn.1a00ae70
jmp 0x1a00ecaf
cmp dword [0x1a02b650], 0
je 0x1a00ecaf
push dword [0x1a02b614]
call dword [sym.imp.IMM32.dll_ImmGetContext]
mov esi, eax
test esi, esi
je 0x1a00ecaf
push 0
push 1
push 0x15
push esi
call dword [sym.imp.IMM32.dll_ImmNotifyIME]
push esi
push dword [0x1a02b614]
call dword [sym.imp.IMM32.dll_ImmReleaseContext]
push dword [0x1a02b614]
call sym.HncIMM.dll__HimReport_4
cmp dword [0x1a034af8], 0
je 0x1a00edef
mov ecx, 0x4000
call fcn.1a018b10
mov eax, dword [esp + 0x18]
jmp 0x1a00eb83
test edi, edi
jne 0x1a00edf8
push edi
push 0x40002
push 0x1408
push edi
call sym.HncIMM.dll_HimControl
cmp eax, 0x800
je 0x1a00ed9c
push edi
push 0x70002
push 0x1408
push edi
call sym.HncIMM.dll_HimControl
cmp eax, 0x20
je 0x1a00ed9c
push 0xffffffffffffffeb
push dword [0x1a02b604]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, eax
je 0x1a00ed23
mov edi, dword [eax]
jmp 0x1a00ed25
xor edi, edi
push 0
push 0x40002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
movzx eax, ax
mov ecx, 0x411
cmp ax, cx
je 0x1a00ed7f
mov ecx, 0x804
cmp ax, cx
je 0x1a00ed7f
mov ecx, 0x81e
cmp ax, cx
je 0x1a00ed7f
mov ecx, 0x404
cmp ax, cx
je 0x1a00ed7f
mov ecx, dword [ebp + 0xc]
xor edx, edx
push esi
call fcn.1a004390
add esp, 4
mov dword [esp + 0x18], eax
test al, 2
je 0x1a00eddc
push dword [esp + 0x1c]
jmp 0x1a00edd7
lea ecx, [edi + 0x1ab6]
call fcn.1a00d9e0
mov ecx, dword [0x1a02b614]
call fcn.1a00da50
call fcn.1a00ae70
jmp 0x1a00eddc
cmp dword [0x1a02b650], 0
je 0x1a00eddc
push dword [0x1a02b614]
call dword [sym.imp.IMM32.dll_ImmGetContext]
mov esi, eax
test esi, esi
je 0x1a00eddc
push 0
push 1
push 0x15
push esi
call dword [sym.imp.IMM32.dll_ImmNotifyIME]
push esi
push dword [0x1a02b614]
call dword [sym.imp.IMM32.dll_ImmReleaseContext]
push dword [0x1a02b614]
call sym.HncIMM.dll__HimReport_4
cmp dword [0x1a034af8], 0
je 0x1a00edef
mov ecx, 0x4000
call fcn.1a018b10
mov eax, dword [esp + 0x18]
jmp 0x1a00eb83
cmp edi, 1
jne case.0x1a00e8ac.9
cmp dword [0x1a02b600], 0
jne case.0x1a00e8ac.9
cmp dword [0x1a034af8], 0
jne case.0x1a00e8ac.9
push dword [esp + 0x1c]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne case.0x1a00e8ac.9
mov ecx, 0x8000
call fcn.1a018b10
jmp case.0x1a00e8ac.9
and esi, 0x7fffffff
push esi
push edi
push 0x281
push dword [esp + 0x28]
call dword [sym.imp.USER32.dll_DefWindowProcW]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov edx, dword [ebp + 0xc]
cmp edx, 0x1408
ja 0x1a01023f
je 0x1a00e9a7
cmp edx, 0x282
je 0x1a00eea4
cmp edx, 0x1402
jne case.0x1a00e8ac.9
push esi
push edi
push edx
push dword [esp + 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp case.0x1a00e8ac.9
push esi
push edi
push 0x282
push dword [esp + 0x28]
call sym.HncIMM.dll__HimSysIMENotify_16
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov edx, esi
mov ecx, edi
call fcn.1a0039a0
mov ecx, 0x800
mov dword [esp + 0x18], eax
cmp di, cx
jne 0x1a00eb86
test al, 2
je 0x1a00eb86
push dword [esp + 0x1c]
call sym.HncIMM.dll__HimReport_4
mov eax, dword [esp + 0x18]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp edi, 0x10
jne 0x1a00ef34
xor ecx, ecx
call fcn.1a018b10
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp edi, 0x20
jne case.0x1a00e9c4.6
lea ecx, [edi - 0x1e]
jmp 0x1a00ef17
cmp edi, 2
jne case.0x1a00e9c4.6
mov ecx, esi
call fcn.1a006320
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp dword [0x1a02d06c], 0
mov ecx, 0xffff
mov eax, esi
cmovne eax, ecx
mov ecx, edi
mov edx, eax
mov dword [esp + 0x14], eax
call fcn.1a003c90
cmp dword [0x1a02d06c], 0
mov ecx, dword [esp + 0x14]
cmovne ecx, esi
mov dword [esp + 0x14], ecx
cmp edi, 8
jne 0x1a00f0ff
test eax, eax
je 0x1a00eb86
call fcn.1a006e00
mov esi, dword [esp + 0x14]
test eax, eax
je 0x1a00eff3
cmp dword [0x1a02b60c], 0
jne 0x1a00eff3
cmp esi, 0x412
jne 0x1a00eff3
call fcn.1a002390
test eax, eax
je 0x1a00eff3
push 0xf2
lea edx, [edi + 0x18]
mov dword [0x1a02b608], 1
xor ecx, ecx
call fcn.1a00e3d0
add esp, 4
call fcn.1a0020f0
test eax, eax
je 0x1a00f046
push 0
jmp 0x1a00f040
call fcn.1a006e00
test eax, eax
je 0x1a00f046
cmp dword [0x1a02b60c], 0
jne 0x1a00f046
cmp esi, 0x409
jne 0x1a00f046
call fcn.1a002390
cmp eax, 1
je 0x1a00f046
push 0xf2
mov edx, 0x20
mov dword [0x1a02b608], 1
xor ecx, ecx
call fcn.1a00e3d0
add esp, 4
call fcn.1a0020f0
test eax, eax
je 0x1a00f046
push 1
call dword [0x1a02b6d0]
push 0
push 0x1a0020
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
call fcn.1a005a20
mov ecx, eax
call fcn.1a005a50
call fcn.1a005a20
sar eax, 0x10
movzx eax, al
push eax
push 0x70008
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
call fcn.1a00b8b0
call fcn.1a011070
mov eax, dword [0x1a02b618]
test eax, eax
je 0x1a00f0be
push str.HimSkin_BtnUpdate
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
call eax
mov eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push dword [0x1a02b61c]
mov esi, dword [sym.imp.USER32.dll_IsWindow]
call esi
test eax, eax
je 0x1a00fcd9
push 0
push 0
push dword [0x1a02b61c]
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov edx, 0x8042
cmp di, dx
jne 0x1a00f124
mov eax, dword [0x1a02d070]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov edx, 0x8048
cmp di, dx
jne 0x1a00eb86
mov dword [0x1a02d070], ecx
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, 0x2000
cmp di, ax
jne case.0x1a00e9c4.5
push 0
push 0x215
push 0x111
push dword [0x1a02b604]
call dword [sym.imp.USER32.dll_SendMessageW]
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, 0x100
cmp di, ax
jne 0x1a00f19f
push 0
push 0x217
jmp 0x1a00f163
cmp edi, 8
jne 0x1a00f204
call dword [sym.imp.USER32.dll_GetFocus]
mov ecx, eax
cmp esi, 0x20
jne 0x1a00f200
lea edx, [edi - 7]
call fcn.1a015ad0
mov ecx, dword [esp + 0x14]
mov edx, ecx
mov ecx, 0x1408
push esi
call fcn.1a004390
add esp, 4
mov dword [esp + 0x18], eax
cmp edi, 8
jne 0x1a00eb86
test al, 1
je 0x1a00eb86
call fcn.1a011070
mov eax, dword [0x1a02b618]
test eax, eax
je 0x1a00f23c
push str.HimSkin_BtnUpdate
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
call eax
jmp 0x1a00f25e
xor edx, edx
jmp 0x1a00f1b4
cmp edi, 2
jne 0x1a00f1bd
push 0
push 0x40002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
cmp eax, 0x800
jne 0x1a00f1b9
lea eax, [edi + 0x1e]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push dword [0x1a02b61c]
mov esi, dword [sym.imp.USER32.dll_IsWindow]
call esi
test eax, eax
je 0x1a00f25e
push 0
push 0
push dword [0x1a02b61c]
call dword [sym.imp.USER32.dll_InvalidateRect]
push 0
push 0x40002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
push 0
push 0x70002
push 0x1408
push 0
mov esi, eax
call sym.HncIMM.dll_HimControl
mov dword [esp + 0x14], eax
lea eax, [esp + 0x20]
push eax
push esi
call sym.HncIMM.dll_HimGetLangCfgEnv
mov eax, dword [esp + 0x1c]
add esp, 8
mov cl, al
and cl, 0xf0
cmp cl, 0x10
jne 0x1a00f2cb
push 0xffffffffffffffeb
push dword [0x1a02b604]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, eax
je 0x1a00f2c3
mov eax, dword [eax]
test eax, eax
je 0x1a00f2c3
mov eax, dword [eax + 4]
jmp 0x1a00f2c8
mov eax, 0x200800
shr eax, 0x10
mov dword [esp + 0x20], eax
cmp esi, 0x81e
je 0x1a00f304
cmp esi, 0x804
je 0x1a00f304
lea edx, [esp + 0x20]
mov ecx, esi
call fcn.1a006ce0
mov eax, dword [esp + 0x18]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
lea edx, [esp + 0x20]
mov ecx, 0x804
call fcn.1a006ce0
lea edx, [esp + 0x20]
mov ecx, 0x81e
call fcn.1a006ce0
mov eax, dword [esp + 0x18]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push 0
push 0x40002
push 0x1408
push 0
mov dword [esp + 0x28], 0
call sym.HncIMM.dll_HimControl
mov ecx, eax
mov eax, 0x804
cmp ecx, 0x81e
cmove ecx, eax
mov eax, edi
mov dword [esp + 0x14], ecx
sub eax, 2
je 0x1a00f3e2
sub eax, 6
jne 0x1a00f40d
cmp esi, dword [0x1a024068]
je 0x1a00f40d
lea eax, [esp + 0x20]
mov dword [0x1a024068], esi
push eax
push ecx
call sym.HncIMM.dll_HimGetLangCfgEnv
mov ecx, dword [esp + 0x1c]
add esp, 8
mov eax, dword [0x1a024068]
mov dword [esp + 0x30], eax
cmp ecx, 0x804
je 0x1a00f3b6
cmp ecx, 0x81e
jne 0x1a00f3c9
lea edx, [esp + 0x20]
mov ecx, 0x804
call fcn.1a006ce0
mov ecx, 0x81e
lea edx, [esp + 0x20]
call fcn.1a006ce0
call fcn.1a00c630
mov eax, 1
mov dword [esp + 0x18], eax
jmp 0x1a00f40f
mov eax, dword [0x1a024068]
mov dword [esp + 0x18], eax
cmp eax, 0xffffffff
jne 0x1a00f40f
lea eax, [esp + 0x20]
push eax
push ecx
call sym.HncIMM.dll_HimGetLangCfgEnv
mov eax, dword [esp + 0x38]
add esp, 8
mov dword [esp + 0x18], eax
mov dword [0x1a024068], eax
jmp 0x1a00f40f
xor eax, eax
cmp edi, 8
jne 0x1a00eb86
test al, 1
je 0x1a00eb86
call fcn.1a011070
mov eax, dword [0x1a02b618]
test eax, eax
je 0x1a00f456
push str.HimSkin_BtnUpdate
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
call eax
mov eax, dword [esp + 0x18]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push dword [0x1a02b61c]
mov esi, dword [sym.imp.USER32.dll_IsWindow]
call esi
test eax, eax
je 0x1a00eef6
push 0
push 0
push dword [0x1a02b61c]
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [esp + 0x18]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, 0x2000
cmp di, ax
jne 0x1a00f4ac
push 0
push 0x218
jmp 0x1a00f163
mov eax, 0x82
cmp di, ax
jne 0x1a00f4ec
push dword [0x1a02d804]
mov esi, dword [sym.imp.USER32.dll_IsWindow]
call esi
neg eax
sbb eax, eax
and eax, dword [0x1a02d804]
mov eax, 0
setne al
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [0x1a02407c]
mov edx, 0x4000
cmp di, dx
cmove eax, esi
mov dword [0x1a02407c], eax
mov edx, ecx
mov ecx, 0x1408
push esi
call fcn.1a004390
add esp, 4
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp edi, 0x20
jne 0x1a00f54b
mov ecx, esi
call fcn.1a00e6c0
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp edi, 8
jne 0x1a00f56f
mov ecx, esi
call fcn.1a006e30
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp edi, 0x40
jne 0x1a00f58f
call fcn.1a006e60
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp edi, 4
jne 0x1a00f5b3
mov ecx, esi
call fcn.1a006e90
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp esi, 1
jne 0x1a00f5d3
call fcn.1a00dd20
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call fcn.1a006e00
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp edi, 8
jne 0x1a00f612
mov ecx, esi
call fcn.1a006ef0
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call fcn.1a006ec0
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp edi, 8
jne 0x1a00f651
mov ecx, esi
call fcn.1a006f40
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
lea ecx, [esp + 0x20]
call fcn.1a006320
mov eax, dword [esp + 0x48]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp edi, 8
jne 0x1a00f698
mov ecx, esi
call fcn.1a006fa0
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call fcn.1a006f70
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, edi
cmp eax, 0x20
ja 0x1a00f8f5
je 0x1a00f8d8
sub eax, 2
je 0x1a00f89a
sub eax, 6
je 0x1a00f7e1
sub eax, 8
jne case.0x1a00e9c4.6
cmp dword [0x1a02d800], eax
jne 0x1a00f7c7
mov dword [0x1a024084], eax
cmp byte [0x1a024074], al
je 0x1a00f7c7
lea ecx, [esp + 0x20]
call fcn.1a006320
cmp dword [esp + 0x38], 0
je 0x1a00f7c7
mov ecx, 0x1a02d580
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1a00f720
sub ecx, edx
mov edx, esi
sar ecx, 1
lea edi, [edx + 2]
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x1a00f734
sub edx, edi
sar edx, 1
lea eax, [ecx + edx]
cmp eax, 0x13f
jbe 0x1a00f787
cmp dword [0x1a024084], 0
jne 0x1a00f774
push 0x280
push 0
push 0x1a02d580
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [0x1a024084], 1
push esi
push 0x140
push 0x1a02d580
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
jmp 0x1a00f798
push esi
push 0x140
push 0x1a02d580
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscat_s]
add esp, 0xc
lea ecx, [esi + 2]
nop
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x1a00f7a0
sub esi, ecx
sar esi, 1
mov eax, esi
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
xor esi, esi
mov eax, esi
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp dword [0x1a02d800], 0
jne case.0x1a00e9c4.6
cmp byte [0x1a024074], 0
mov dword [0x1a024084], 0
je case.0x1a00e9c4.6
lea ecx, [esp + 0x20]
call fcn.1a006320
cmp dword [esp + 0x38], 0
je case.0x1a00e9c4.6
mov ecx, esi
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1a00f820
sub ecx, edx
sar ecx, 1
cmp ecx, 0x140
jbe 0x1a00f86e
push 0x13f
push esi
push 0x140
push 0x1a02d580
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy_s]
add esp, 0x10
xor eax, eax
mov word [0x1a02d7fe], ax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push esi
push 0x140
push 0x1a02d580
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
add esp, 0xc
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push 0x1a02d580
push 0x140
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
add esp, 0xc
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x1a00f8b1
sub esi, ecx
sar esi, 1
mov eax, esi
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call fcn.1a00e690
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp eax, 0x40
je 0x1a00f982
cmp eax, 0x100
je 0x1a00f910
cmp eax, 0x800
jne case.0x1a00e9c4.6
mov eax, 0x800
cmp di, ax
jne 0x1a00f921
call fcn.1a00dd20
jmp 0x1a00f926
call fcn.1a00dba0
mov dword [0x1a02d800], 1
test eax, eax
je 0x1a00f94c
mov edx, dword [esp + 0x14]
mov ecx, 0x1408
push esi
call fcn.1a004390
add esp, 4
mov dword [esp + 0x18], eax
jmp 0x1a00f954
mov dword [esp + 0x18], 0
mov ecx, 1
mov dword [0x1a02d800], 0
call fcn.1a00e6c0
mov eax, dword [esp + 0x18]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [0x1a02d800]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push 0xffffffffffffffeb
push dword [0x1a02b604]
xorps xmm0, xmm0
mov dword [esp + 0x38], 0
movaps xmmword [esp + 0x28], xmm0
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, eax
je 0x1a00f9c3
mov ecx, dword [eax]
jmp 0x1a00f9c5
xor ecx, ecx
movzx edx, word [ecx + 4]
mov eax, edi
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], edx
cmp eax, 0x42
ja 0x1a00fc10
je 0x1a00fbf5
sub eax, 2
je 0x1a00fa3e
sub eax, 0xe
je 0x1a00fa21
sub eax, 0x10
jne case.0x1a00e9c4.6
mov ecx, 0xa0
mov dword [0x1a024080], 1
mov edi, 0x1a02d078
rep stosd dword es:[edi], eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov ecx, esi
call fcn.1a00d710
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, 0x804
cmp dx, ax
je 0x1a00fa52
mov eax, 0x411
cmp dx, ax
jne 0x1a00fa66
call dword [sym.imp.USER32.dll_GetFocus]
push eax
call sym.HncIMM.dll__HimReport_4
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov edi, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
mov eax, 0x412
cmp dx, ax
jne 0x1a00fa93
cmp word [ecx + 0x15b0], 0
jbe 0x1a00fa93
lea eax, [ecx + 0x424]
push eax
lea eax, [esp + 0x24]
push 0xa
push eax
call edi
add esp, 0xc
push 0
push 0
push 4
call sym.HncIMM.dll_HimClear
call dword [sym.imp.USER32.dll_GetFocus]
push eax
call sym.HncIMM.dll__HimReport_4
push 0x280
lea eax, [esp + 0x5c]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [esp + 0x2d8]
push 0x280
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, 0x1a02d078
add esp, 0xc
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1a00fae0
sub ecx, edx
sar ecx, 1
je 0x1a00fbaa
push 0
push 0x40002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
movzx eax, ax
push eax
push 0x40008
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
push 0x1a02d078
lea eax, [esp + 0x5c]
push 0x140
push eax
call edi
add esp, 0xc
lea eax, [esp + 0x2d8]
push 0x1a02d078
push 0x140
push eax
call edi
add esp, 0xc
push 0xffffffffffffffeb
push dword [0x1a02b604]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, eax
je 0x1a00fb83
mov eax, dword [eax]
test eax, eax
je 0x1a00fb83
mov eax, dword [eax + 0x41c]
test eax, eax
je 0x1a00fb83
lea ecx, [esp + 0x58]
push ecx
push dword [esp + 0x18]
push 0x1408
push dword [0x1a02b604]
call eax
add esp, 0x10
lea eax, [esp + 0x58]
push eax
push 0x140
push esi
call edi
add esp, 0xc
lea eax, [esp + 0x2d8]
push eax
push 0x140
push 0x1a02d078
call edi
add esp, 0xc
lea eax, [esp + 0x20]
push eax
push 0x140
push 0x1a02d078
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscat_s]
mov eax, 0x1a02d078
add esp, 0xc
lea edx, [eax + 2]
nop word [eax + eax]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x1a00fbd0
sub eax, edx
sar eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [0x1a02d2f8]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp eax, 0x48
je 0x1a00fc48
cmp eax, 0x800
jne case.0x1a00e9c4.6
push esi
push dword [esp + 0x18]
mov edx, 0x1408
call fcn.1a00d7f0
add esp, 8
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov dword [0x1a02d2f8], esi
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, edi
cmp eax, 0x20
ja 0x1a00fd11
je 0x1a00fcf4
sub eax, 2
je 0x1a00fca4
sub eax, 6
jne case.0x1a00e9c4.6
mov ecx, esi
call fcn.1a00d9e0
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov ecx, 0x1a02d300
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1a00fcb0
sub ecx, edx
sar ecx, 1
je case.0x1a00e9c4.6
push 0x1a02d300
push 0x140
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
add esp, 0xc
mov eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call fcn.1a00da30
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp eax, 0x42
je 0x1a00fd46
cmp eax, 0x800
jne case.0x1a00e9c4.6
call dword [sym.imp.USER32.dll_GetFocus]
mov ecx, eax
call fcn.1a00da50
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [0x1a02d2fc]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
lea eax, [edi - 2]
cmp eax, 0x46
ja case.0x1a00e9c4.6
movzx eax, byte [eax + 0x1a010604]
jmp dword [eax*4 + 0x1a0105f0]
mov eax, dword [esi]
cmp eax, 0x11
ja case.0x1a00e9c4.6
jmp dword [eax*4 + 0x1a01064c]
mov ecx, dword [esi + 4]
call fcn.1a005a50
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
lea ecx, [esi + 8]
xor edx, edx
call fcn.1a006730
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
lea eax, [esi + 0x3c]
push eax
push dword [esi + 0x38]
call sym.HncIMM.dll_HimSetLangCfgEnv
add esp, 8
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [esi + 0x6c]
call fcn.1a0192c0
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [esi + 0x6c]
call fcn.1a0181c0
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [esi + 0x6c]
call fcn.1a018390
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [esi + 0x70]
call fcn.1a006ef0
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call fcn.1a011070
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push dword [esi + 0x74]
call sym.HncIMM.dll_SetConvertMode
add esp, 4
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push dword [esi + 0x74]
call sym.HncIMM.dll_SetCandidateNumberMode
add esp, 4
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push dword [esi + 0x74]
call sym.HncIMM.dll_SetAIMode
add esp, 4
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push dword [esi + 0x74]
call sym.HncIMM.dll_SetShowCandidateMode
add esp, 4
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push dword [esi + 0x80]
call sym.HncIMM.dll_SaveConvertChar
add esp, 4
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [esi + 0x84]
call fcn.1a006e90
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [esi]
cmp eax, 0x11
ja case.0x1a00e9c4.6
jmp dword [eax*4 + 0x1a010694]
call fcn.1a005a20
mov dword [esi + 4], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
lea ecx, [esi + 8]
call fcn.1a006320
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
lea eax, [esi + 0x3c]
push eax
push dword [esi + 0x38]
call sym.HncIMM.dll_HimGetLangCfgEnv
add esp, 8
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [esi + 0x58]
call fcn.1a0096c0
mov dword [esi + 0x5c], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
movzx eax, byte [esi + 0x68]
mov dl, byte [esi + 0x62]
mov cx, word [esi + 0x60]
push eax
push dword [esi + 0x64]
call fcn.1a0046a0
add esp, 8
mov word [esi + 0x6a], ax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call fcn.1a019260
mov dword [esi + 0x6c], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call fcn.1a018160
mov dword [esi + 0x6c], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call fcn.1a0182c0
mov dword [esi + 0x6c], eax
call fcn.1a006ec0
mov dword [esi + 0x70], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call sym.HncIMM.dll_GetConvertMode
mov dword [esi + 0x74], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
push dword [esi + 0x78]
call sym.HncIMM.dll_IsConvertChar
add esp, 4
mov dword [esi + 0x7c], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call sym.HncIMM.dll_GetCandidateNumberMode
mov dword [esi + 0x74], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call sym.HncIMM.dll_GetAIMode
mov dword [esi + 0x74], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call sym.HncIMM.dll_GetShowCandidateMode
mov dword [esi + 0x74], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [0x1a034af8]
mov dword [esi + 0x7c], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
lea ecx, [esp + 0x20]
call fcn.1a006320
mov eax, dword [esp + 0x40]
mov dword [esi + 0x84], eax
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov dword [0x1a02d06c], esi
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [0x1a02d06c]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, 0x2000
cmp di, ax
jne case.0x1a00e9c4.6
push ecx
call fcn.1a00d4e0
add esp, 4
xor eax, eax
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, edi
sub eax, 2
je 0x1a010224
sub eax, 6
jne case.0x1a00e9c4.6
mov dword [0x1a02d068], esi
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [0x1a02d068]
pop edi
pop esi
mov ecx, dword [esp + 0x554]
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
cmp edx, 0x1409
jne case.0x1a00e8ac.9
mov eax, dword [edi + 4]
cmp eax, 0x100
je 0x1a010260
cmp eax, 0x104
jne 0x1a0102fe
cmp dword [0x1a02d2f8], 0
je 0x1a010289
push 0x12
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x1a01027f
cmp dword [edi + 8], 0xc0
je 0x1a0102a1
mov dword [0x1a02d074], 0
push dword [edi + 0xc]
mov edx, dword [edi + 8]
xor ecx, ecx
call fcn.1a00e3d0
add esp, 4
test eax, eax
jne 0x1a00fcd9
mov esi, dword [sym.imp.HncFoundation.dll_HncGetWinVersion]
call esi
cmp eax, 9
jae 0x1a0102b5
call esi
cmp eax, 3
jne 0x1a0102cf
push 0
push 0x40002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
cmp eax, 0x800
je 0x1a0102fe
mov ecx, edi
call fcn.1a00ce70
test eax, eax
je 0x1a0102fe
mov esi, 1
mov ecx, esi
call fcn.1a00e6c0
mov ecx, dword [esp + 0x55c]
mov eax, esi
pop edi
pop esi
xor ecx, esp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret 0x10
call fcn.1a014130
test eax, eax
je 0x1a010375
push dword [0x1a02d804]
mov esi, dword [sym.imp.USER32.dll_IsWindow]
call esi
test eax, eax
je 0x1a010375
mov ecx, dword [0x1a02d804]
test ecx, ecx
je 0x1a010375
mov eax, dword [edi + 4]
cmp eax, 0x100
jne 0x1a010338
test dword [edi + 0xc], 0x40000000
je 0x1a010358
jmp 0x1a010375
cmp eax, 0x104
jne 0x1a01034a
test dword [edi + 0xc], 0x40000000
je 0x1a010358
jmp 0x1a010375
cmp eax, 0x101
je 0x1a010358
cmp eax, 0x105
jne 0x1a010375
push ecx
call esi
push dword [edi + 0xc]
neg eax
push dword [edi + 8]
sbb eax, eax
push dword [edi + 4]
and eax, dword [0x1a02d804]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0x40002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
cmp eax, 0x800
je 0x1a0103be
push 0
push 0x70002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
cmp eax, 0x20
je 0x1a0103be
call fcn.1a005a20
push eax
mov edx, edi
mov ecx, 0x1409
call fcn.1a004390
add esp, 4
jmp 0x1a0103d2
call fcn.1a005a20
push eax
push edi
push 0x1409
call fcn.1a0165c0
add esp, 0xc
mov dword [esp + 0x18], eax
test al, 2
je 0x1a00eb83
mov eax, dword [edi + 4]
mov ecx, dword [edi]
sub eax, 0x201
je 0x1a0103f4
sub eax, 3
je 0x1a0103f4
sub eax, 3
jne 0x1a0103fc
call dword [sym.imp.USER32.dll_GetFocus]
mov ecx, eax
push ecx
call sym.HncIMM.dll__HimReport_4
mov eax, dword [esp + 0x18]
jmp 0x1a00eb83