Function at 0x40885e
Capabilities:
Inspect load icon resource

Disassembly:
push ebp
mov ebp, esp
push ecx
mov eax, dword [0x4303b4]
mov byte [0x430ea0], 0
push ebx
mov ebx, ecx
mov dword [ebp - 4], ebx
push esi
push edi
test eax, 0x200
jne 0x4088e1
push 0x65
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
mov edi, eax
push 0
push 0x32
call esi
push eax
push 0x31
call esi
push eax
push 1
push 0x65
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.USER32.dll_LoadImageW]
push edi
mov esi, eax
push 1
push 0x80
push dword [ebx + 4]
test esi, esi
cmove esi, edi
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
call edi
push esi
push 0
push 0x80
push dword [ebx + 4]
call edi
mov eax, dword [0x4303b4]
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
test eax, 0x4000
je 0x408960
push 0x4b2
push dword [ebx + 4]
call edi
push 0x4b2
push dword [ebx + 4]
mov esi, eax
call edi
push 0xfffffffffffffff0
push esi
mov edi, eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ebx, dword [sym.imp.USER32.dll_SetWindowLongW]
or eax, 0x80
push eax
push 0xfffffffffffffff0
push edi
call ebx
mov edi, dword [ebp - 4]
push 0x4b5
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0x4b5
push dword [edi + 4]
mov esi, eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0xfffffffffffffff0
push esi
mov edi, eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
or eax, 0x80
push eax
push 0xfffffffffffffff0
push edi
call ebx
mov ebx, dword [ebp - 4]
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push dword [ebx + 0x10]
push 0x4b2
push dword [ebx + 4]
call edi
push eax
mov ecx, ebx
call fcn.00409ad9
push dword [ebx + 0xc]
mov ecx, ebx
call fcn.0040976d
mov eax, dword [ebx + 8]
and eax, 3
sub eax, 0
je 0x408a09
sub eax, 1
je 0x4089e4
sub eax, 1
je 0x4089b6
sub eax, 1
jne 0x408a33
push 0x19
call fcn.004041e0
pop ecx
push eax
push 0x4b3
mov ecx, ebx
call fcn.00409600
push 0x1a
jmp 0x408a20
push 0x1a
call fcn.004041e0
pop ecx
push eax
mov esi, 0x4b4
mov ecx, ebx
push esi
call fcn.00409600
push 0
push 0x4b3
mov ecx, ebx
call fcn.00409dfa
push esi
mov ecx, ebx
call fcn.004097cd
jmp 0x408a33
push 0x19
call fcn.004041e0
pop ecx
push eax
push 0x4b3
mov ecx, ebx
call fcn.00409600
push 0
push 0x4b4
mov ecx, ebx
call fcn.00409dfa
jmp 0x408a33
push 0x1b
call fcn.004041e0
pop ecx
push eax
push 0x4b3
mov ecx, ebx
call fcn.00409600
push 0x1c
call fcn.004041e0
pop ecx
push eax
push 0x4b4
mov ecx, ebx
call fcn.00409600
cmp dword [ebx + 0x38], 0
je 0x408aa7
mov esi, dword [sym.imp.USER32.dll_GetWindow]
push 5
push dword [ebx + 4]
jmp 0x408a50
push edi
call fcn.00405296
pop ecx
push 2
push edi
call esi
mov edi, eax
test edi, edi
jne 0x408a46
push 5
push dword [ebx + 4]
jmp 0x408a6d
push edi
call fcn.0040501d
pop ecx
test eax, eax
jne 0x408a58
push 2
push edi
call esi
mov edi, eax
test edi, edi
jne 0x408a5f
push 5
push dword [ebx + 4]
jmp 0x408a86
push edi
call fcn.0040560d
pop ecx
push 2
push edi
call esi
mov edi, eax
test edi, edi
jne 0x408a7c
test byte [0x4303b4], 8
jne 0x408b4b
mov ecx, ebx
call fcn.00408473
jmp 0x408b4b
mov ecx, dword [ebx + 8]
xor eax, eax
and ecx, 0x1c
cmp ecx, 4
je 0x408ae6
cmp ecx, 8
je 0x408adf
cmp ecx, 0xc
je 0x408ad8
cmp ecx, 0x10
je 0x408ad1
cmp ecx, 0x14
jne 0x408af7
push 0x7f03
push 0
jmp 0x408af1
push 0x7f04
jmp 0x408acd
push 0x7f01
jmp 0x408acd
push 0x7f02
jmp 0x408acd
push 0x65
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
test eax, eax
je 0x408b1b
push eax
xor ecx, ecx
inc ecx
push ecx
push 0x172
push 0x4b1
push dword [ebx + 4]
mov dword [ebx + 0x30], ecx
call edi
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x408b2d
and dword [ebx + 0x30], 0
mov ecx, ebx
push 0
push 0x4b1
call fcn.00409dfa
test byte [0x4303b4], 8
jne 0x408b3d
mov ecx, ebx
call fcn.00408473
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x28]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x24]
mov ecx, ebx
call fcn.00409846
pop edi
pop esi
xor eax, eax
pop ebx
leave
ret