Function at 0x426100
Capabilities:
Hide graphical window
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [0x8511c0]
test al, 0x10
je 0x426110
test al, 0x80
jne 0x426110
ret 4
push ebp
push edi
xor eax, eax
push esi
push ebx
mov esi, ecx
mov ecx, 0xc
sub esp, 0xac
lea ebx, [esp + 0x70]
mov edi, ebx
rep stosd dword es:[edi], eax
mov eax, dword [0x8512b0]
mov dword [esp + 0x70], 0x30
mov dword [esp + 0x78], 0x4292f0
mov dword [esp + 4], 0xc8
mov dword [esp + 0x84], eax
mov dword [esp], eax
call dword [sym.imp.USER32.dll_LoadIconW]
sub esp, 8
mov dword [esp + 0x88], eax
mov dword [esp + 4], 0x7f00
mov dword [esp], 0
call dword [sym.imp.USER32.dll_LoadCursorW]
sub esp, 8
mov edi, dword [sym.imp.USER32.dll_RegisterClassExW]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x98], 0x7210ac
mov dword [esp + 0x90], 6
mov dword [esp], ebx
call edi
sub esp, 4
test ax, ax
jne 0x4261e0
mov eax, dword [esp + 0x98]
mov dword [esp + 4], str.ERROR_in_gui__:_failed_to_register__S_class_n
mov dword [esp], 0x833180
mov dword [esp + 8], eax
call fcn.0041e8c0
add esp, 0xac
pop ebx
pop esi
pop edi
pop ebp
ret 4
mov dword [esp + 0x78], 0x420d00
mov dword [esp + 0x98], str.classSDIPopup
mov dword [esp + 0x88], 0
mov dword [esp], ebx
call edi
sub esp, 4
test ax, ax
je 0x4262a0
mov dword [esp + 0x78], 0x424210
mov dword [esp + 0x98], str.classSDIField
mov dword [esp], ebx
call edi
sub esp, 4
test ax, ax
jne 0x4262f0
mov eax, dword [esp + 0x98]
mov dword [esp + 4], str.ERROR_in_gui__:_failed_to_register__S_class_n
mov dword [esp], 0x833180
mov dword [esp + 8], eax
call fcn.0041e8c0
mov ecx, 0x8534b8
mov dword [esp + 8], str.classMain
mov dword [esp + 4], 0x720af4
mov dword [esp], 0x7210ac
call fcn.0043fa60
sub esp, 0xc
mov ecx, 0x8534b8
mov dword [esp + 8], str.classPopup
mov dword [esp + 4], 0x720af4
mov dword [esp], str.classSDIPopup
call fcn.0043fa60
sub esp, 0xc
jmp 0x4261c9
mov eax, dword [esp + 0x98]
mov dword [esp + 4], str.ERROR_in_gui__:_failed_to_register__S_class_n
mov dword [esp], 0x833180
mov dword [esp + 8], eax
call fcn.0041e8c0
mov dword [esp + 8], str.classMain
mov dword [esp + 4], 0x720af4
mov ecx, 0x8534b8
mov dword [esp], 0x7210ac
call fcn.0043fa60
sub esp, 0xc
jmp 0x4261c9
mov eax, dword [0x8512b0]
mov dword [esp + 0x2c], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x14], 0x80000000
mov dword [esp + 0x10], 0x80000000
mov dword [esp + 0x28], eax
mov eax, dword [0x70b794]
mov dword [esp + 0xc], 0x2cf0000
mov dword [esp + 8], 0x720b14
mov dword [esp + 4], 0x7210ac
mov dword [esp], 0x80000
mov dword [esp + 0x1c], eax
mov eax, dword [0x70b788]
mov dword [esp + 0x18], eax
call dword [sym.imp.USER32.dll_CreateWindowExW]
sub esp, 0x30
test eax, eax
mov dword [esi + 0x38], eax
je 0x42691a
mov eax, dword [0x8511d0]
test eax, eax
je 0x4268b1
cmp eax, 2
je 0x4268ec
test eax, eax
je 0x426470
test byte [0x8511c0], 0x10
mov eax, 0
cmove eax, dword [esp + 0xc0]
mov dword [esp + 0xc0], eax
mov dword [esp + 4], eax
mov eax, dword [esi + 0x38]
mov dword [esp], eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov ebp, dword [sym.imp.USER32.dll_MsgWaitForMultipleObjectsEx]
sub esp, 8
mov edi, dword [sym.imp.USER32.dll_PeekMessageW]
lea ebx, [esp + 0x54]
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], 0x4ff
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], 0
mov dword [esp], 0
call ebp
sub esp, 0x14
cmp eax, 0xc0
je 0x4263c2
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
call edi
sub esp, 0x14
test eax, eax
je 0x4263c2
mov eax, dword [esp + 0x58]
cmp eax, 0x12
je 0x426470
cmp eax, 0x100
je 0x4264e1
cmp eax, 0x101
je 0x426554
cmp eax, 0x104
jne 0x42644e
cmp dword [esp + 0x5c], 0x12
je 0x4263f5
mov dword [esp], ebx
call dword [sym.imp.USER32.dll_TranslateMessage]
sub esp, 4
mov dword [esp], ebx
call dword [sym.imp.USER32.dll_DispatchMessageW]
sub esp, 4
jmp 0x4263f5
mov ecx, 0x8534b8
mov dword [esp + 8], str.classMain
mov dword [esp + 4], 0x720af4
mov dword [esp], 0x7210ac
call fcn.0043fa60
sub esp, 0xc
mov ecx, 0x8534b8
mov dword [esp + 8], str.classPopup
mov dword [esp + 4], 0x720af4
mov dword [esp], str.classSDIPopup
call fcn.0043fa60
sub esp, 0xc
mov ecx, 0x8534b8
mov dword [esp + 8], str.classField
mov dword [esp + 4], 0x720af4
mov dword [esp], str.classSDIField
call fcn.0043fa60
sub esp, 0xc
jmp 0x4261c9
test byte [esp + 0x63], 0x40
mov eax, dword [esp + 0x5c]
je 0x4265a0
cmp eax, 0x20
je 0x4266a7
mov edx, eax
and edx, 0xfffffffd
cmp edx, 0x25
jne 0x42650d
cmp dword [esi + 0x58], 5
je 0x426802
cmp eax, 0x25
je 0x426640
cmp eax, 0x27
je 0x4265e2
cmp eax, 0x26
je 0x426830
cmp eax, 0x28
jne 0x426542
mov dword [esp], 1
mov ecx, esi
call fcn.00425f00
sub esp, 4
mov eax, dword [esp + 0x5c]
cmp eax, 9
je 0x426720
mov eax, dword [esp + 0x58]
jmp 0x426440
mov edx, dword [esp + 0x5c]
cmp edx, 0x11
je 0x426741
cmp edx, 0x20
je 0x426741
cmp edx, 0x20
je 0x42658a
lea ecx, [edx - 0xa0]
cmp ecx, 1
jbe 0x426583
cmp edx, 0x10
jne 0x426440
mov dword [esi + 0x54], 0
mov dword [esi + 0x50], 0
jmp 0x426440
cmp eax, 0x11
je 0x4267a0
cmp eax, 0x20
je 0x4267a0
cmp eax, 0x20
je 0x4266a0
lea edx, [eax - 0xa0]
cmp edx, 1
jbe 0x4265cf
cmp eax, 0x10
jne 0x4264f9
mov dword [esi + 0x54], 1
mov dword [esi + 0x50], 1
jmp 0x4264f9
cmp dword [esi + 0x58], 1
jne 0x42654b
lea eax, [esp + 0x4c]
mov ecx, dword [0x70b368]
mov dword [esp + 4], 0
mov dword [esp], 0
mov dword [esp + 0xc], eax
lea eax, [esp + 0x48]
mov dword [esp + 8], eax
call fcn.0042eeb0
sub esp, 0x10
mov ecx, dword [0x70b368]
mov eax, dword [esp + 0x48]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0042f9e0
sub esp, 8
mov eax, dword [esp + 0x5c]
jmp 0x42651f
cmp dword [esi + 0x58], 1
jne 0x42654b
lea eax, [esp + 0x4c]
mov ecx, dword [0x70b368]
mov dword [esp + 4], 0
mov dword [esp], 0
mov dword [esp + 0xc], eax
lea eax, [esp + 0x48]
mov dword [esp + 8], eax
call fcn.0042eeb0
sub esp, 0x10
mov ecx, dword [0x70b368]
mov eax, dword [esp + 0x48]
mov dword [esp + 4], 2
mov dword [esp], eax
call fcn.0042f9e0
sub esp, 8
mov eax, dword [esp + 0x5c]
jmp 0x426516
mov dword [esi + 0x50], 1
mov eax, dword [esi + 0x58]
test eax, eax
je 0x42654b
cmp eax, 1
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x201
je 0x42687c
mov eax, dword [esi + 0x38]
mov edx, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp], eax
mov dword [esp + 0x3c], edx
call edx
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x202
mov eax, dword [esi + 0x38]
mov dword [esp], eax
mov edx, dword [esp + 0x3c]
call edx
sub esp, 0x10
mov eax, dword [esp + 0x5c]
jmp 0x4264f9
mov edx, dword [esi + 0x54]
test edx, edx
jne 0x426850
mov dword [esp], 1
mov ecx, esi
call fcn.00425df0
sub esp, 4
jmp 0x42654b
mov eax, dword [esi + 0x3c]
mov ecx, dword [0x851264]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp + 0x14], eax
mov dword [esp], 0
call fcn.00407d50
sub esp, 0x18
mov edx, dword [esp + 0x5c]
mov eax, dword [esp + 0x58]
cmp edx, 0x11
jne 0x42656a
mov dword [esi + 0x4c], 0
jmp 0x426440
lea eax, [esp + 0x4c]
mov dword [esp], eax
call dword [sym.imp.USER32.dll_GetCursorPos]
sub esp, 4
mov edx, dword [sym.imp.USER32.dll_SetCursorPos]
mov eax, dword [esp + 0x50]
mov dword [esp + 0x3c], edx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x4c]
add eax, 1
mov dword [esp], eax
call edx
sub esp, 8
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x3c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
call edx
sub esp, 8
mov eax, dword [esp + 0x5c]
cmp eax, 0x11
jne 0x4265b2
mov dword [esi + 0x4c], 1
jmp 0x42654b
cmp eax, 0x25
mov ecx, esi
sete al
movzx eax, al
neg eax
or eax, 1
mov dword [esp], eax
call fcn.00425f00
sub esp, 4
mov eax, dword [esp + 0x5c]
jmp 0x42650d
mov dword [esp], 0xffffffff
mov ecx, esi
call fcn.00425f00
sub esp, 4
mov eax, dword [esp + 0x5c]
jmp 0x426542
mov dword [esp], 0xffffffff
mov ecx, esi
call fcn.00425df0
sub esp, 4
cmp dword [esp + 0x5c], 9
jne 0x42654b
mov eax, dword [esi + 0x54]
test eax, eax
jne 0x42644e
jmp 0x42672b
mov eax, dword [esi + 0x3c]
mov edx, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp], eax
mov dword [esp + 0x3c], edx
call edx
sub esp, 0x10
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x202
mov eax, dword [esi + 0x3c]
jmp 0x426703
mov eax, dword [0x8512b0]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x420770
mov dword [esp + 8], 0
mov dword [esp + 4], 0x12d
mov dword [esp], eax
call dword [sym.imp.USER32.dll_DialogBoxParamW]
mov eax, dword [0x8511d0]
sub esp, 0x14
jmp 0x426373
mov ecx, dword [0x8555d0]
or dword [0x8511c0], 0x20
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, dword [0x8512b4]
or dword [0x8534a8], 8
mov eax, dword [ecx]
call dword [eax + 0x10]
mov eax, dword [0x8511d0]
jmp 0x42637c
mov dword [esp + 8], 0x7210ac
mov dword [esp + 4], str.ERROR_in_gui__:_failed_to_create__S_window_n
mov dword [esp], 0x833180
call fcn.0041e8c0
jmp 0x4261c9