Function at 0x3140b4f8
Capabilities:
Inspect load icon resource

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff4
push ebx
push esi
push edi
mov dword [ebp - 8], ecx
mov edi, edx
mov ebx, eax
mov eax, dword [ebx + 0x58]
call fcn.31416e50
cmp byte [eax + 0x60], 0
je 0x3140b655
mov eax, dword [ebx + 0x20c]
cmp dword [eax + 0x80], 0
setg dl
call fcn.3140fa7c
cmp byte [ebx + 0x44], 0
je 0x3140b5f8
mov eax, dword [ebx + 0x20c]
mov eax, dword [eax + 0x38]
call fcn.312c65ac
test eax, eax
jle 0x3140b5f8
mov eax, dword [ebx + 0x20c]
mov eax, dword [eax + 0x38]
xor edx, edx
call fcn.312c65bc
mov eax, dword [eax + 8]
mov edx, 0x3140b814
call fcn.312374d8
jne 0x3140b5ed
jmp 0x3140b5a9
mov eax, dword [ebx + 0x20c]
mov eax, dword [eax + 0x38]
xor edx, edx
call fcn.312c65bc
xor edx, edx
call fcn.312c65bc
mov dword [ebp - 0xc], eax
mov eax, dword [ebx + 0x20c]
mov eax, dword [eax + 0x38]
xor edx, edx
call fcn.312c65bc
xor edx, edx
call fcn.312c67f4
lea eax, [ebp - 0xc]
call fcn.3124bdd0
mov eax, dword [ebx + 0x20c]
mov eax, dword [eax + 0x38]
xor edx, edx
call fcn.312c65bc
call fcn.312c65ac
test eax, eax
jg 0x3140b570
mov eax, dword [ebx + 0x20c]
mov eax, dword [eax + 0x38]
xor edx, edx
call fcn.312c65bc
mov dword [ebp - 0xc], eax
mov eax, dword [ebx + 0x20c]
mov eax, dword [eax + 0x38]
xor edx, edx
call fcn.312c67f4
lea eax, [ebp - 0xc]
call fcn.3124bdd0
mov eax, dword [ebx + 0x20c]
call fcn.3140f6d4
mov eax, dword [ebx + 0x58]
call fcn.31416e50
mov eax, dword [eax + 0x48]
mov cl, 1
mov edx, dword [ebx + 0x20c]
call fcn.313c108c
mov eax, dword [ebx + 0x58]
call fcn.31416e50
mov eax, dword [eax + 0x48]
mov cl, 1
mov edx, dword [ebx + 0x20c]
call fcn.313c108c
mov eax, dword [ebx + 0x204]
call fcn.312e1c94
mov edx, eax
mov eax, dword [ebx + 0x20c]
call fcn.312c8794
mov ecx, dword [ebp - 8]
mov edx, edi
mov eax, dword [ebx + 0x20c]
mov ebx, dword [eax]
call dword [ebx + 0x44]
jmp 0x3140b801
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x204]
call fcn.312e1c94
push eax
call sub.user32.dll_EnableMenuItem
and eax, 0xefffffff
push eax
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x204]
call fcn.312e1c94
push eax
call sub.user32.dll_IsIconic
push 0
mov eax, dword [ebx + 0x204]
call fcn.312e1c94
push eax
call sub.user32.dll_DrawMenuBar
mov dword [ebp - 4], eax
mov esi, dword [ebx + 0x20c]
push ebp
mov eax, esi
call fcn.3140fd60
test al, al
je 0x3140b6b4
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x5c]
test al, al
jne 0x3140b6b8
xor edx, edx
jmp 0x3140b6ba
mov dl, 1
mov eax, 0xf120
call fcn.3140b4cc
pop ecx
push ebp
mov eax, esi
call fcn.3140f048
test al, al
je 0x3140b6e6
mov eax, dword [ebx + 0x204]
call fcn.312e1c94
push eax
call sub.user32.dll_GetClassInfoW
test eax, eax
je 0x3140b6ea
xor edx, edx
jmp 0x3140b6ec
mov dl, 1
mov eax, 0xf010
call fcn.3140b4cc
pop ecx
push ebp
mov eax, esi
call fcn.3140fdbc
test al, al
je 0x3140b71d
mov eax, esi
call fcn.3140f098
test al, al
je 0x3140b71d
mov eax, dword [ebx + 0x204]
cmp byte [eax + 0x29a], 0
je 0x3140b721
xor edx, edx
jmp 0x3140b723
mov dl, 1
mov eax, 0xf000
call fcn.3140b4cc
pop ecx
push ebp
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x3140b745
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x58]
test al, al
jne 0x3140b749
xor edx, edx
jmp 0x3140b74b
mov dl, 1
mov eax, 0xf020
call fcn.3140b4cc
pop ecx
push ebp
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x4c]
test al, al
je 0x3140b76d
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x54]
test al, al
jne 0x3140b771
xor edx, edx
jmp 0x3140b773
mov dl, 1
mov eax, 0xf030
call fcn.3140b4cc
pop ecx
push ebp
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x48]
mov edx, eax
mov eax, 0xf060
call fcn.3140b4cc
pop ecx
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x204]
call fcn.312e1c94
push eax
call sub.user32.dll_EnableMenuItem
or eax, 0x10000000
push eax
push 0xfffffffffffffff0
mov eax, dword [ebx + 0x204]
call fcn.312e1c94
push eax
call sub.user32.dll_IsIconic
push 0
mov eax, dword [ebx + 0x204]
call fcn.312e1c94
push eax
push 0
mov eax, dword [ebp - 8]
push eax
push edi
push 0x102
mov eax, dword [ebp - 4]
push eax
call sub.user32.dll_LoadIconW
mov esi, eax
test esi, esi
jbe 0x3140b801
push 0
push esi
push 0x112
mov eax, dword [ebx + 0x204]
call fcn.312e1c94
push eax
call sub.user32.dll_GetMenuItemRect
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret