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

Disassembly:
mov eax, dword [0x8671a0]
test al, 0x10
je 0x426af0
test al, 0x80
jne 0x426af0
ret 4
push ebp
push edi
xor eax, eax
push esi
push ebx
mov ebx, ecx
mov ecx, 0xb
sub esp, 0xac
lea edx, [esp + 0x74]
lea esi, [esp + 0x70]
mov dword [esp + 0x70], 0x30
mov edi, edx
rep stosd dword es:[edi], eax
mov eax, dword [0x867290]
mov dword [esp + 0x78], 0x429d90
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], 0x736000
mov dword [esp + 0x90], 6
mov dword [esp], esi
call edi
sub esp, 4
test ax, ax
jne 0x426bc0
mov eax, dword [esp + 0x98]
mov dword [esp + 4], str.ERROR_in_gui__:_failed_to_register__S_class_n
mov dword [esp], 0x849160
mov dword [esp + 8], eax
call fcn.0041f010
add esp, 0xac
pop ebx
pop esi
pop edi
pop ebp
ret 4
mov dword [esp + 0x78], 0x4212d0
mov dword [esp + 0x98], str.classSDIPopup
mov dword [esp + 0x88], 0
mov dword [esp], esi
call edi
sub esp, 4
test ax, ax
je 0x426c80
mov dword [esp + 0x78], 0x422f50
mov dword [esp + 0x98], str.classSDIField
mov dword [esp], esi
call edi
sub esp, 4
test ax, ax
jne 0x426cd0
mov eax, dword [esp + 0x98]
mov dword [esp + 4], str.ERROR_in_gui__:_failed_to_register__S_class_n
mov dword [esp], 0x849160
mov dword [esp + 8], eax
call fcn.0041f010
mov ecx, 0x869458
mov dword [esp + 8], str.classMain
mov dword [esp + 4], 0x735a50
mov dword [esp], 0x736000
call fcn.00441460
sub esp, 0xc
mov ecx, 0x869458
mov dword [esp + 8], str.classPopup
mov dword [esp + 4], 0x735a50
mov dword [esp], str.classSDIPopup
call fcn.00441460
sub esp, 0xc
jmp 0x426bad
mov eax, dword [esp + 0x98]
mov dword [esp + 4], str.ERROR_in_gui__:_failed_to_register__S_class_n
mov dword [esp], 0x849160
mov dword [esp + 8], eax
call fcn.0041f010
mov dword [esp + 8], str.classMain
mov dword [esp + 4], 0x735a50
mov ecx, 0x869458
mov dword [esp], 0x736000
call fcn.00441460
sub esp, 0xc
add esp, 0xac
pop ebx
pop esi
pop edi
pop ebp
ret 4
mov eax, dword [0x867290]
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 [0x720774]
mov dword [esp + 0xc], 0x2cf0000
mov dword [esp + 8], 0x735a70
mov dword [esp + 4], 0x736000
mov dword [esp], 0x80000
mov dword [esp + 0x1c], eax
mov eax, dword [0x720768]
mov dword [esp + 0x18], eax
call dword [sym.imp.USER32.dll_CreateWindowExW]
sub esp, 0x30
test eax, eax
mov dword [ebx + 0x38], eax
je 0x4272e3
mov eax, dword [0x8671b4]
test eax, eax
je 0x426ec1
cmp eax, 2
je 0x4272b5
test eax, eax
je 0x426e50
test byte [0x8671a0], 0x10
mov eax, 0
cmove eax, dword [esp + 0xc0]
mov dword [esp + 0xc0], eax
mov dword [esp + 4], eax
mov eax, dword [ebx + 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 esi, [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 0x426da2
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call edi
sub esp, 0x14
test eax, eax
je 0x426da2
mov eax, dword [esp + 0x58]
cmp eax, 0x12
mov edx, eax
je 0x426e50
cmp eax, 0x100
je 0x426f00
cmp eax, 0x101
je 0x426fd0
cmp edx, 0x104
jne 0x426e31
cmp dword [esp + 0x5c], 0x12
je 0x426dd5
mov dword [esp], esi
call dword [sym.imp.USER32.dll_TranslateMessage]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.USER32.dll_DispatchMessageW]
sub esp, 4
jmp 0x426dd5
mov ecx, 0x869458
mov dword [esp + 8], str.classMain
mov dword [esp + 4], 0x735a50
mov dword [esp], 0x736000
call fcn.00441460
sub esp, 0xc
mov ecx, 0x869458
mov dword [esp + 8], str.classPopup
mov dword [esp + 4], 0x735a50
mov dword [esp], str.classSDIPopup
call fcn.00441460
sub esp, 0xc
mov ecx, 0x869458
mov dword [esp + 8], str.classField
mov dword [esp + 4], 0x735a50
mov dword [esp], str.classSDIField
call fcn.00441460
sub esp, 0xc
jmp 0x426bad
mov eax, dword [0x867290]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x420d30
mov dword [esp + 8], 0
mov dword [esp + 4], 0x12d
mov dword [esp], eax
call dword [sym.imp.USER32.dll_DialogBoxParamW]
mov eax, dword [0x8671b4]
sub esp, 0x14
jmp 0x426d53
test byte [esp + 0x63], 0x40
mov eax, dword [esp + 0x5c]
je 0x427000
cmp eax, 0x20
jne 0x426f80
mov eax, dword [ebx + 0x58]
test eax, eax
je 0x426fc6
cmp eax, 1
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x201
je 0x427280
mov eax, dword [ebx + 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 [ebx + 0x38]
mov dword [esp], eax
mov edx, dword [esp + 0x3c]
call edx
sub esp, 0x10
mov eax, dword [esp + 0x5c]
mov edx, eax
and edx, 0xfffffffd
cmp edx, 0x25
jne 0x426fae
cmp dword [ebx + 0x58], 5
jne 0x426fae
cmp eax, 0x25
mov ecx, ebx
setne al
movzx eax, al
lea eax, [eax + eax - 1]
mov dword [esp], eax
call fcn.004268d0
sub esp, 4
mov eax, dword [esp + 0x5c]
cmp eax, 0x25
je 0x427030
cmp eax, 0x27
jne 0x4270de
cmp dword [ebx + 0x58], 1
je 0x427090
mov edx, dword [esp + 0x58]
jmp 0x426e22
mov ecx, dword [esp + 0x5c]
cmp ecx, 0x11
je 0x427140
cmp ecx, 0x20
je 0x427140
cmp ecx, 0x11
jne 0x4271a0
mov dword [ebx + 0x4c], 0
mov edx, eax
jmp 0x426e22
cmp eax, 0x11
je 0x4271c0
cmp eax, 0x20
je 0x4271c0
cmp eax, 0x11
jne 0x427230
mov dword [ebx + 0x4c], 1
mov eax, 0x11
jmp 0x426f80
cmp dword [ebx + 0x58], 1
jne 0x426fc6
lea eax, [esp + 0x4c]
mov ecx, dword [0x720348]
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.00430050
sub esp, 0x10
mov ecx, dword [0x720348]
mov eax, dword [esp + 0x48]
mov dword [esp + 4], 2
mov dword [esp], eax
call fcn.00430f80
sub esp, 8
mov eax, dword [esp + 0x5c]
jmp 0x426fb3
lea eax, [esp + 0x4c]
mov ecx, dword [0x720348]
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.00430050
sub esp, 0x10
mov ecx, dword [0x720348]
mov eax, dword [esp + 0x48]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.00430f80
sub esp, 8
mov eax, dword [esp + 0x5c]
cmp eax, 0x26
jne 0x427122
mov dword [esp], 0xffffffff
mov ecx, ebx
call fcn.004268d0
sub esp, 4
mov eax, dword [esp + 0x5c]
cmp eax, 9
jne 0x426fc6
mov edx, dword [ebx + 0x54]
test edx, edx
jne 0x427253
mov dword [esp], 1
mov ecx, ebx
call fcn.004267b0
sub esp, 4
jmp 0x426fc6
cmp eax, 0x28
jne 0x4270f8
mov dword [esp], 1
mov ecx, ebx
call fcn.004268d0
sub esp, 4
mov eax, dword [esp + 0x5c]
jmp 0x4270f8
mov eax, dword [ebx + 0x3c]
mov ecx, dword [0x867244]
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.00408240
sub esp, 0x18
mov ecx, dword [esp + 0x5c]
cmp ecx, 0x11
je 0x427304
mov edx, dword [esp + 0x58]
cmp ecx, 0x20
mov eax, edx
jne 0x4271a0
mov dword [ebx + 0x50], 0
jmp 0x426e22
cmp ecx, 0x10
je 0x4271b1
cmp ecx, 0xa0
jne 0x42730d
mov dword [ebx + 0x54], 0
jmp 0x427194
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
je 0x42701b
cmp eax, 0x20
jne 0x427230
mov dword [ebx + 0x50], 1
jmp 0x426f14
cmp eax, 0x10
je 0x427240
cmp eax, 0xa0
jne 0x427320
mov dword [ebx + 0x54], 1
mov dword [ebx + 0x50], 1
jmp 0x426f80
mov dword [esp], 0xffffffff
mov ecx, ebx
call fcn.004267b0
sub esp, 4
cmp dword [esp + 0x5c], 9
jne 0x426fc6
mov eax, dword [ebx + 0x54]
test eax, eax
jne 0x426e31
jmp 0x42710c
mov eax, dword [ebx + 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 [ebx + 0x3c]
jmp 0x426f70
mov ecx, dword [0x86b570]
or dword [0x8671a0], 0x20
mov eax, dword [ecx]
call dword [eax + 0x10]
mov ecx, dword [0x867294]
or dword [0x869448], 8
mov eax, dword [ecx]
call dword [eax + 0x10]
mov eax, dword [0x8671b4]
jmp 0x426d5c
mov dword [esp + 8], 0x736000
mov dword [esp + 4], str.ERROR_in_gui__:_failed_to_create__S_window_n
mov dword [esp], 0x849160
call fcn.0041f010
jmp 0x426bad
mov eax, dword [esp + 0x58]
jmp 0x426fef
cmp ecx, 0xa1
mov edx, eax
je 0x4271b1
jmp 0x426e22
cmp eax, 0xa1
je 0x427240
jmp 0x426f80