Function at 0x4151c0
Capabilities:
Inspect load icon resource

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x130
push ebx
push edi
push esi
xor eax, eax
mov ebx, 0x453698
movzx esi, word [ebx]
mov edi, eax
cmp esi, edi
sete dl
and edx, 0xff
mov eax, edx
test eax, eax
je 0x415337
lea eax, [ebp - 0x130]
push eax
mov eax, str.MBWndClass
mov edx, eax
pop esi
push edx
push esi
call fcn.00419460
lea eax, [ebp - 0x30]
push eax
mov eax, 0x30
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 0x28
push eax
lea eax, [ebp - 0x130]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 0x24
mov dword [eax], 0
lea eax, [ebp - 0x30]
add eax, 0x14
push eax
xor eax, eax
push eax
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 0x18
push eax
mov eax, 0x65
push eax
lea eax, [ebp - 0x30]
add eax, 0x14
push dword [eax]
call dword [sym.imp.USER32.DLL_LoadIconA]
mov edx, eax
pop esi
mov dword [esi], edx
xor eax, eax
lea ebx, [ebp - 0x30]
add ebx, 0x18
mov esi, dword [ebx]
mov edi, eax
cmp esi, edi
sete dl
and edx, 0xff
mov eax, edx
test eax, eax
je 0x4152af
lea eax, [ebp - 0x30]
add eax, 0x18
push eax
mov eax, 0x7f00
push eax
xor eax, eax
push eax
call dword [sym.imp.USER32.DLL_LoadIconA]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 0x1c
mov dword [eax], 0
lea eax, [ebp - 0x30]
add eax, 0x20
push eax
xor eax, eax
push eax
call dword [sym.imp.GDI32.DLL_GetStockObject]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 8
push eax
mov edx, 0x4154b0
mov eax, edx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 0xc
mov dword [eax], 0
lea eax, [ebp - 0x30]
add eax, 0x10
mov dword [eax], 4
lea eax, [ebp - 0x30]
add eax, 4
mov dword [eax], 0x1008
lea eax, [ebp - 0x30]
add eax, 0x2c
mov dword [eax], 0
mov eax, 0x453698
push eax
lea eax, [ebp - 0x30]
push eax
call dword [sym.imp.USER32.DLL_RegisterClassExA]
mov edx, eax
pop esi
mov word [esi], dx
xor eax, eax
mov ebx, 0x45369a
movzx esi, word [ebx]
mov edi, eax
cmp esi, edi
sete dl
and edx, 0xff
mov eax, edx
test eax, eax
je 0x415499
lea eax, [ebp - 0x130]
push eax
mov eax, str.MBFrameClass
mov edx, eax
pop esi
push edx
push esi
call fcn.00419460
lea eax, [ebp - 0x30]
push eax
mov eax, 0x30
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 0x28
push eax
lea eax, [ebp - 0x130]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 0x24
mov dword [eax], 0
lea eax, [ebp - 0x30]
add eax, 0x14
push eax
xor eax, eax
push eax
call dword [sym.imp.KERNEL32.DLL_GetModuleHandleA]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 0x18
push eax
mov eax, 0x65
push eax
lea eax, [ebp - 0x30]
add eax, 0x14
push dword [eax]
call dword [sym.imp.USER32.DLL_LoadIconA]
mov edx, eax
pop esi
mov dword [esi], edx
xor eax, eax
lea ebx, [ebp - 0x30]
add ebx, 0x18
mov esi, dword [ebx]
mov edi, eax
cmp esi, edi
sete dl
and edx, 0xff
mov eax, edx
test eax, eax
je 0x41541a
lea eax, [ebp - 0x30]
add eax, 0x18
push eax
mov eax, 0x7f00
push eax
xor eax, eax
push eax
call dword [sym.imp.USER32.DLL_LoadIconA]
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 0x1c
mov dword [eax], 0
lea eax, [ebp - 0x30]
add eax, 0x20
mov dword [eax], 0xd
lea eax, [ebp - 0x30]
add eax, 8
push eax
mov edx, 0x4154b0
mov eax, edx
mov edx, eax
pop esi
mov dword [esi], edx
lea eax, [ebp - 0x30]
add eax, 0xc
mov dword [eax], 0
lea eax, [ebp - 0x30]
add eax, 0x10
mov dword [eax], 4
lea eax, [ebp - 0x30]
add eax, 4
mov dword [eax], 0x2008
lea eax, [ebp - 0x30]
add eax, 0x2c
mov dword [eax], 0
mov eax, 0x45369a
push eax
lea eax, [ebp - 0x30]
push eax
call dword [sym.imp.USER32.DLL_RegisterClassExA]
mov edx, eax
pop esi
mov word [esi], dx
mov eax, 0
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret