Function at 0x1a003c90
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe74
mov eax, dword [0x1a02400c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
movzx eax, cx
push esi
dec eax
push edi
mov edi, edx
cmp eax, 0x87
ja case.0x1a003cbe.1
movzx eax, byte [eax + 0x1a0042b8]
jmp dword [eax*4 + 0x1a0042a0]
push 0xffffffffffffffeb
push dword [0x1a02b604]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, eax
je case.0x1a003cbe.1
mov eax, dword [eax]
test eax, eax
je case.0x1a003cbe.1
movzx eax, word [eax + 4]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret
push 0
push 0x48042
push 0x1408
push 0
mov esi, edi
call sym.HncIMM.dll_HimControl
test eax, eax
je 0x1a003d3e
cmp edi, 0x411
jg 0x1a003d2b
je 0x1a003d39
test edi, edi
je 0x1a003d39
cmp edi, 0x404
je 0x1a003d39
jmp 0x1a003d3e
mov eax, edi
sub eax, 0x804
je 0x1a003d39
sub eax, 0x1a
jne 0x1a003d3e
mov esi, 0x409
mov ecx, esi
call fcn.1a0055c0
mov ebx, dword [sym.imp.USER32.dll_GetWindowLongW]
push 0xffffffffffffffeb
push dword [0x1a02b604]
mov dword [ebp - 0xe74], eax
call ebx
test eax, eax
je 0x1a003d63
mov eax, dword [eax]
jmp 0x1a003d65
xor eax, eax
cmp edi, 0xffff
je case.0x1a003cbe.1
test eax, eax
je case.0x1a003cbe.1
xor edx, edx
push 0
lea ecx, [edx + 8]
call fcn.1a004390
add esp, 4
test al, 2
je 0x1a003d98
call dword [sym.imp.USER32.dll_GetFocus]
push eax
call sym.HncIMM.dll__HimReport_4
push 0xffffffffffffffeb
push dword [0x1a02b604]
call ebx
test eax, eax
je 0x1a003db3
mov ecx, dword [ebp - 0xe74]
cmp dword [eax + ecx*4 + 4], 0
jne 0x1a003dcd
push esi
push 0x40010
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
test eax, eax
je case.0x1a003cbe.1
push 0xffffffffffffffeb
push dword [0x1a02b604]
mov dword [0x1a024068], 0xffffffff
call ebx
test eax, eax
je 0x1a003e94
mov edi, dword [eax]
test edi, edi
je 0x1a003e94
push 0x2238
lea eax, [edi + 4]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [edi], 0x223c
lea eax, [ebp - 0x34]
push eax
push esi
call sym.HncIMM.dll_HimGetLangCfgEnv
mov eax, dword [ebp - 0x34]
add esp, 8
shl eax, 0x10
or eax, esi
mov dword [edi + 4], eax
push 0xffffffffffffffeb
push dword [0x1a02b604]
call ebx
test eax, eax
je 0x1a003e3e
mov ecx, dword [ebp - 0xe74]
mov eax, dword [eax + ecx*4 + 0x24]
jmp 0x1a003e40
xor eax, eax
mov dword [edi + 0x41c], eax
call dword [sym.imp.HncFoundation.dll_class_Hnc::Framework____cdecl_Hnc::GetFramework_void_]
mov ecx, eax
call dword [sym.imp.HncFoundation.dll_public:_bool___thiscall_Hnc::Framework::IsKoKR_void_const]
test al, al
je 0x1a003e86
xor ecx, ecx
call fcn.1a018b10
mov ecx, 1
call fcn.1a018b10
cmp dword [0x1a02b610], 0
jne 0x1a003e86
mov ecx, 5
call fcn.1a014930
mov ecx, 5
call fcn.1a0183d0
cmp dword [edi + 0x41c], 0
je 0x1a003e94
call fcn.1a011070
cmp esi, 0x800
je 0x1a003ed8
push 0
push 0x70002
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
and al, 0xf0
cmp al, 0x20
je 0x1a003ed8
mov ecx, dword [0x1a02b614]
xor edx, edx
call fcn.1a015ad0
mov eax, 3
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x1a02b614]
mov edx, 1
call fcn.1a015ad0
mov eax, 3
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret
push 0
push 0x48042
push 0x1408
push 0
call sym.HncIMM.dll_HimControl
test eax, eax
je 0x1a003f3f
movzx eax, di
cmp eax, 0x411
ja 0x1a003f2e
je 0x1a003f3a
test eax, eax
je 0x1a003f3a
cmp eax, 0x404
je 0x1a003f3a
jmp 0x1a003f3f
sub eax, 0x804
je 0x1a003f3a
sub eax, 0x1a
jne 0x1a003f3f
mov edi, 0x409
mov ecx, edi
call fcn.1a0055c0
mov esi, dword [sym.imp.USER32.dll_GetWindowLongW]
mov edi, eax
push 0xffffffffffffffeb
push dword [0x1a02b604]
call esi
test eax, eax
je 0x1a003f7c
cmp dword [eax + edi*4 + 4], 0
je 0x1a003f7c
push 0xffffffffffffffeb
push dword [0x1a02b604]
call esi
test eax, eax
je 0x1a003f7c
cmp dword [eax + edi*4 + 0x24], 0
jne 0x1a004288
cmp edi, 7
je 0x1a004201
mov eax, 0x6d
mov dword [ebp - 0x240], 0x7b0024
push 0x1ee
mov word [ebp - 0x228], ax
lea eax, [ebp - 0x226]
push 0
push eax
mov dword [ebp - 0x23c], 0x6f0043
mov dword [ebp - 0x238], 0x6d006d
mov dword [ebp - 0x234], 0x6e006f
mov dword [ebp - 0x230], 0x5c007d
mov dword [ebp - 0x22c], 0x690048
call sub.VCRUNTIME140.dll_memset
mov ebx, dword [sym.imp.HncFoundation.dll_HncPathToAbsolute]
lea eax, [ebp - 0xa60]
add esp, 0xc
push 0x104
push eax
lea eax, [ebp - 0x240]
push eax
call ebx
cmp edi, 0x26
ja case.0x1a00400a.7
movzx eax, byte [edi + 0x1a004364]
jmp dword [eax*4 + 0x1a004340]
push 0x1a01f89c
jmp 0x1a00404e
push 0x1a01f8a4
jmp 0x1a00404e
push 0x1a01f8ac
jmp 0x1a00404e
push 0x1a01f8b4
jmp 0x1a00404e
push 0x1a01f8bc
jmp 0x1a00404e
push 0x1a01f8c4
jmp 0x1a00404e
push 0x1a01f8cc
jmp 0x1a00404e
push 0x1a01f8d4
jmp 0x1a00404e
push 0x1a01f8dc
mov esi, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
lea eax, [ebp - 0x18]
push 0xa
push eax
call esi
add esp, 0xc
lea eax, [ebp - 0x2c]
push 0x1a01f070
push 0xa
push eax
call esi
add esp, 0xc
lea eax, [ebp - 0x2c]
push eax
push 0x1a01f070
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0xa60]
push eax
push str._sHnc_s_s_s.Him
lea eax, [ebp - 0xc68]
push 0x104
push eax
call fcn.1a0047b0
add esp, 0x1c
lea eax, [ebp - 0xe70]
push eax
push 0x104
call dword [sym.imp.HncFoundation.dll_HncGetCurrentDirectory]
mov eax, 0x6d
mov dword [ebp - 0x448], 0x7b0024
push 0x1ee
mov word [ebp - 0x430], ax
lea eax, [ebp - 0x42e]
push 0
push eax
mov dword [ebp - 0x444], 0x6f0043
mov dword [ebp - 0x440], 0x6d006d
mov dword [ebp - 0x43c], 0x6e006f
mov dword [ebp - 0x438], 0x5c007d
mov dword [ebp - 0x434], 0x690048
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [ebp - 0x650]
push 0x104
push eax
lea eax, [ebp - 0x448]
push eax
call ebx
lea eax, [ebp - 0x650]
push eax
call dword [sym.imp.HncFoundation.dll_HncSetCurrentDirectory]
xor eax, eax
push str.kernel32.dll
mov word [ebp - 0x858], ax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x1a004180
push str.GetDllDirectoryW
push esi
call ebx
test eax, eax
jne 0x1a004172
push str.GetDllDirectoryA
push esi
call ebx
test eax, eax
jne 0x1a004172
push str.GetDllDirectory
push esi
call ebx
test eax, eax
je 0x1a004180
lea ecx, [ebp - 0x858]
push ecx
push 0x104
call eax
lea ecx, [ebp - 0x650]
call fcn.1a003be0
lea eax, [ebp - 0xc68]
push eax
call dword [sym.imp.HncFoundation.dll_HncLoadLibrary]
mov esi, eax
test esi, esi
je 0x1a0041ce
push str.HimLangControl
push esi
call ebx
mov ebx, eax
push esi
test ebx, ebx
je 0x1a0041c6
lea edx, [edi + 1]
call fcn.1a004500
add esp, 4
lea edx, [edi + 9]
push ebx
call fcn.1a004500
add esp, 4
jmp 0x1a0041ce
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
xor esi, esi
lea eax, [ebp - 0xe70]
push eax
call dword [sym.imp.HncFoundation.dll_HncSetCurrentDirectory]
lea ecx, [ebp - 0x858]
call fcn.1a003be0
test esi, esi
jne 0x1a004288
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret
push fcn.1a0165c0
mov edx, 0x10
call fcn.1a004500
add esp, 4
mov eax, 3
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret
cmp edi, 0xffff
je case.0x1a003cbe.1
cmp edi, 0xffffffff
mov ebx, 7
cmovne ebx, edi
xor esi, esi
cmp edi, 0xffffffff
cmovne esi, edi
cmp esi, ebx
jg 0x1a004288
mov edi, dword [sym.imp.USER32.dll_GetWindowLongW]
nop
push 0xffffffffffffffeb
push dword [0x1a02b604]
call edi
test eax, eax
je 0x1a004283
mov eax, dword [eax + esi*4 + 4]
test eax, eax
je 0x1a004283
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push 0xffffffffffffffeb
push dword [0x1a02b604]
call edi
test eax, eax
je 0x1a004283
mov dword [eax + esi*4 + 4], 0
inc esi
cmp esi, ebx
jle 0x1a004250
mov ecx, dword [ebp - 4]
mov eax, 3
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1a01aaa5
mov esp, ebp
pop ebp
ret