Function at 0x418f30
Capabilities:
Inspect load icon resource

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x451a68
mov eax, dword fs:[0]
push eax
sub esp, 0x84
mov eax, dword [0x46759c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 4], 0
call fcn.00429b00
mov dword [ebp - 0x34], eax
push 0
push 0x455230
push 0x455224
mov ecx, dword [ebp - 0x34]
call fcn.00406640
mov ecx, eax
call fcn.00406640
mov ecx, eax
call fcn.00406d60
mov ecx, eax
call fcn.00406da0
mov dword [ebp - 0x3c], eax
push 1
push str.default_size
push 0x455240
mov ecx, dword [ebp - 0x34]
call fcn.00406640
mov ecx, eax
call fcn.00406640
mov ecx, eax
call fcn.00406d60
mov ecx, eax
call fcn.00406da0
mov dword [ebp - 0x74], eax
push str.disable_maximize_button
push 0x45525c
mov ecx, dword [ebp - 0x34]
call fcn.00406640
mov ecx, eax
call fcn.00406640
mov ecx, eax
call fcn.004066b0
mov byte [ebp - 0x2d], al
push str.center_on_screen
push 0x455280
mov ecx, dword [ebp - 0x34]
call fcn.00406640
mov ecx, eax
call fcn.00406640
mov ecx, eax
call fcn.004066b0
mov byte [ebp - 0x6d], al
push str.start_maximized
push str.main_window
mov ecx, dword [ebp - 0x34]
call fcn.00406640
mov ecx, eax
call fcn.00406640
mov ecx, eax
call fcn.004066b0
mov byte [ebp - 0x35], al
cmp dword [ebp - 0x3c], 0
je 0x419037
cmp dword [ebp - 0x74], 0
jne 0x419045
mov dword [ebp - 0x3c], SysReAllocString
mov dword [ebp - 0x74], SysReAllocString
mov dword [ebp - 0x6c], 0
push 0x2c
push 0
lea eax, [ebp - 0x68]
push eax
call fcn.00433530
add esp, 0xc
mov dword [ebp - 0x6c], 0x30
push 5
call dword [sym.imp.USER32.dll_GetSysColorBrush]
mov dword [ebp - 0x4c], eax
push 0x80
mov ecx, dword [ebp + 8]
push ecx
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x54], eax
mov edx, dword [ebp + 8]
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x64], 0x417fd0
mov dword [ebp - 0x44], 0x468b20
lea eax, [ebp - 0x6c]
push eax
call dword [sym.imp.USER32.dll_RegisterClassExW]
mov word [ebp - 0x7c], ax
push 0
mov ecx, dword [ebp + 8]
push ecx
push 0
push 0
mov edx, dword [ebp - 0x74]
push edx
mov eax, dword [ebp - 0x3c]
push eax
push SysReAllocString
push SysReAllocString
push 0xcf0000
lea ecx, [ebp + 0x10]
push ecx
lea edx, [ebp - 0x2c]
push edx
call fcn.0042a000
add esp, 8
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0x90], eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x90]
call fcn.004073c0
push eax
push 0x468b20
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [ebp - 0x78], eax
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x2c]
call fcn.00407340
movzx ecx, byte [ebp - 0x2d]
test ecx, ecx
je 0x419143
push 0xfffffffffffffff0
mov edx, dword [ebp - 0x78]
push edx
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x80]
and eax, 0xfffeffff
push eax
push 0xfffffffffffffff0
mov ecx, dword [ebp - 0x78]
push ecx
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov dword [ebp - 0x84], eax
movzx edx, byte [ebp - 0x6d]
test edx, edx
je 0x419157
mov eax, dword [ebp - 0x78]
push eax
call fcn.0042d020
add esp, 4
movzx ecx, byte [ebp - 0x35]
test ecx, ecx
je 0x41916d
push 3
mov edx, dword [ebp - 0x78]
push edx
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x41917b
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 0x78]
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
mov edx, dword [ebp - 0x78]
push edx
call dword [sym.imp.USER32.dll_UpdateWindow]
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x88], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0x10]
call fcn.00407160
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004320d5
mov esp, ebp
pop ebp
ret