Function at 0x43b060
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push ebx
push esi
mov esi, dword [ebp + 0x10]
mov eax, dword [esi + 0xc]
mov ebx, ecx
mov ecx, dword [esi + 0x10]
push edi
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], ecx
call dword [sym.imp.PlatformData.dll_public:_static_class_CGlobalUserInfo____cdecl_CGlobalUserInfo::GetInstance_void_]
mov edi, eax
call dword [sym.imp.PlatformData.dll_public:_static_class_CParameterGlobal____cdecl_CParameterGlobal::GetInstance_void_]
mov ecx, edi
mov dword [ebp - 0x18], eax
call dword [sym.imp.PlatformData.dll_public:_struct_tagGlobalUserData____thiscall_CGlobalUserInfo::GetGlobalUserData_void_]
mov edx, dword [ebp + 0xc]
shr edx, 6
and dl, 1
cmp byte [esi + 0x25], 1
mov dword [ebp - 0x10], eax
mov byte [ebp - 1], 0
mov byte [ebp + 0x13], dl
jne 0x43b14f
lea ecx, [esi + 0x16b4]
mov dword [ebp + 0xc], ecx
call dword [sym.imp.WHImage.dll_public:_bool___thiscall_CPngImage::IsNull_void_]
test al, al
jne 0x43b14f
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov edi, dword [ebp + 8]
mov edx, dword [edi + 4]
push 0xcc0020
push 0
push 0
push eax
push ecx
push 0
push 0
push edx
lea ecx, [esi + 0x1b00]
call dword [sym.imp.WHImage.dll_public:_int___thiscall_CBitImage::BitBlt_struct_HDC_____int__int__int__int__int__int__unsigned_long_int_]
mov al, byte [ebx + 9]
xor edx, edx
cmp al, 1
jne 0x43b0fd
mov edx, 1
movzx ecx, word [ebx + 6]
cmp ecx, 0x64
jne 0x43b124
test al, al
jne 0x43b113
cmp byte [ebx + 4], 1
jne 0x43b113
lea edx, [ecx - 0x62]
cmp ecx, 0x64
jne 0x43b124
test al, al
jne 0x43b124
cmp byte [ebx + 4], al
jne 0x43b124
lea edx, [ecx - 0x61]
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x18]
mov ebx, eax
imul ebx, edx
push 0
push ebx
push ecx
mov ecx, dword [esi + 0x40]
push eax
mov eax, dword [esi + 0x44]
push eax
push ecx
mov ecx, dword [ebp + 0xc]
push edi
call dword [sym.imp.WHImage.dll_public:_bool___thiscall_CPngImage::DrawImage_class_CDC___int__int__int__int__int__int_]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp byte [ebp + 0x13], 0
je 0x43b179
cmp word [ebx + 0x14], 0
je 0x43b179
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x1c]
push 0xcc0020
push 0
push eax
push edx
push eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
push 0
push 0
push ecx
jmp 0x43b1a0
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
xor edx, edx
cmp byte [ebx + 9], 1
push 0xcc0020
setne dl
push 0
dec edx
and edx, eax
push edx
mov edx, dword [ebp + 8]
push ecx
push eax
mov eax, dword [edx + 4]
push 0
push 0
push eax
lea ecx, [esi + 0x1b00]
call dword [sym.imp.WHImage.dll_public:_int___thiscall_CBitImage::BitBlt_struct_HDC_____int__int__int__int__int__int__unsigned_long_int_]
xor ecx, ecx
xor edx, edx
mov dword [ebp + 0xc], ecx
cmp dx, word [ebx + 0x16]
jae 0x43b37b
lea ecx, [ecx]
cmp byte [esi + 0x24], 1
jne 0x43b36d
cmp byte [ebp + 0x13], 0
jne 0x43b36d
movzx eax, cx
mov edi, dword [ebx + eax*4 + 0x18]
test edi, edi
je 0x43b36d
mov eax, dword [edi]
mov edx, dword [eax + 0x10]
mov ecx, edi
call edx
movzx eax, word [ebp + 0xc]
mov ecx, dword [ebx + eax*4 + 0x18]
mov eax, dword [ecx]
mov edx, dword [eax + 0x24]
call edx
mov ecx, dword [ebp - 0x10]
cmp eax, dword [ecx]
jne 0x43b206
mov byte [ebp - 1], 1
mov edx, dword [edi]
mov eax, dword [edx + 0x5c]
mov ecx, edi
call eax
push edx
push eax
mov ecx, ebx
call fcn.00439310
mov edx, dword [edi]
movzx ecx, ax
mov eax, dword [edx + 0x48]
mov dword [ebp - 8], ecx
mov ecx, edi
call eax
test al, al
je 0x43b232
mov dword [ebp - 8], 0xc
mov ecx, dword [ebp + 0xc]
movzx edx, word [ebx + 0x16]
push ecx
push edx
mov ecx, ebx
call fcn.004391e0
cmp byte [ebx + 9], 1
movzx eax, ax
jne 0x43b251
add eax, 4
movzx eax, ax
mov ecx, dword [ebp - 8]
lea edx, [eax + ecx*8]
movzx eax, dx
mov dword [ebp - 8], eax
cmp eax, 0x68
jbe 0x43b276
call dword [sym.imp.MSVCR100.dll_rand]
cdq
mov ecx, 0x68
idiv ecx
movzx edx, dx
mov dword [ebp - 8], edx
cmp byte [esi + 0x29], 0
jne 0x43b2df
mov eax, dword [edi]
mov edx, dword [eax + 0x20]
mov ecx, edi
call edx
cmp al, 1
movzx eax, word [ebp + 0xc]
jne 0x43b2b4
mov ecx, dword [esi + eax*8 + 0x374]
mov edx, dword [esi + eax*8 + 0x370]
mov eax, dword [ebp + 8]
push ecx
movzx ecx, word [ebp - 8]
imul ecx, ecx, 0x210
push edx
push eax
lea ecx, [ecx + esi + 0x2c04]
jmp 0x43b2d9
mov edx, dword [esi + eax*8 + 0x374]
mov eax, dword [esi + eax*8 + 0x370]
mov ecx, dword [ebp + 8]
push edx
movzx edx, word [ebp - 8]
imul edx, edx, 0x210
push eax
push ecx
lea ecx, [edx + esi + 0x10284]
call dword [sym.imp.WHImage.dll_public:_bool___thiscall_CPngImage::DrawImage_class_CDC___int__int_]
mov eax, dword [edi]
mov edx, dword [eax + 0x50]
mov ecx, edi
call edx
mov edx, dword [edi]
movzx eax, ax
mov dword [ebp - 8], eax
mov eax, dword [edx + 0x54]
mov ecx, edi
call eax
mov cx, word [ebp - 8]
movzx eax, ax
cmp cx, word [ebx + 0x14]
jne 0x43b33b
cmp ax, word [ebp + 0xc]
jne 0x43b33b
cmp byte [ebx + 9], 0
jne 0x43b33b
mov edx, dword [edi]
mov eax, dword [edx + 0x58]
mov ecx, edi
call eax
cmp al, 3
jne 0x43b33b
movzx eax, word [ebp + 0xc]
mov ecx, dword [esi + eax*8 + 0x54]
mov edx, dword [esi + eax*8 + 0x50]
mov eax, dword [ebp + 8]
push ecx
push edx
push eax
lea ecx, [esi + 0x23c4]
call dword [sym.imp.WHImage.dll_public:_bool___thiscall_CPngImage::DrawImage_class_CDC___int__int_]
mov edx, dword [edi]
mov eax, dword [edx + 0x48]
mov ecx, edi
call eax
test al, al
mov eax, dword [edi]
setne cl
mov byte [ebp - 0x14], cl
mov edx, dword [ebp - 0x14]
push edx
mov edx, dword [eax + 0x30]
push esi
mov ecx, edi
call edx
mov ecx, dword [ebp + 8]
push eax
mov eax, dword [ebp + 0xc]
push eax
push ecx
mov ecx, ebx
call fcn.00439ec0
mov ecx, dword [ebp + 0xc]
inc ecx
mov dword [ebp + 0xc], ecx
cmp cx, word [ebx + 0x16]
jb 0x43b1c0
cmp byte [ebx + 8], 1
jne 0x43b399
mov edx, dword [esi + 0x3c]
mov eax, dword [esi + 0x38]
mov ecx, dword [ebp + 8]
push edx
push eax
push ecx
lea ecx, [esi + 0x25d4]
call dword [sym.imp.WHImage.dll_public:_bool___thiscall_CPngImage::DrawImage_class_CDC___int__int_]
cmp byte [esi + 0x2a], 1
jne 0x43b4c0
lea ecx, [esi + 0x29f4]
call dword [sym.imp.WHImage.dll_public:_int___thiscall_CPngImage::GetHeight_void_]
lea ecx, [esi + 0x29f4]
mov dword [ebp - 0x14], eax
call dword [sym.imp.WHImage.dll_public:_int___thiscall_CPngImage::GetWidth_void_]
lea ecx, [esi + 0x27e4]
mov dword [ebp - 0xc], eax
call dword [sym.imp.WHImage.dll_public:_int___thiscall_CPngImage::GetHeight_void_]
lea ecx, [esi + 0x27e4]
mov dword [ebp + 0x10], eax
call dword [sym.imp.WHImage.dll_public:_int___thiscall_CPngImage::GetWidth_void_]
mov bx, word [ebx + 0x14]
mov ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 2
mov edi, edx
shr edi, 0x1f
add edi, edx
xor ecx, ecx
inc bx
movzx edx, bx
movzx eax, bx
mov dword [ebp + 0xc], edx
movzx edx, ax
mov eax, 0x66666667
imul edx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
movzx eax, ax
inc ecx
test ax, ax
jne 0x43b400
mov eax, dword [ebp - 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x10], ecx
mov ecx, dword [esi + 0x4c]
sub ecx, eax
mov eax, dword [ebp - 0xc]
cdq
sub eax, edx
mov edx, dword [esi + 0x48]
sar eax, 1
push ecx
sub edx, eax
mov eax, dword [ebp + 8]
push edx
push eax
lea ecx, [esi + 0x29f4]
call dword [sym.imp.WHImage.dll_public:_bool___thiscall_CPngImage::DrawImage_class_CDC___int__int_]
mov eax, dword [ebp + 0x10]
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esi + 0x4c]
sar ecx, 1
sub eax, ecx
movzx ecx, word [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov eax, ecx
imul eax, edi
cdq
sub eax, edx
mov ebx, eax
sar ebx, 1
sub ebx, edi
add ebx, dword [esi + 0x48]
test ecx, ecx
jle 0x43b4c0
mov dword [ebp - 8], ecx
lea ebx, [ebx]
movzx eax, word [ebp + 0xc]
cdq
mov ecx, 0xa
idiv ecx
mov ecx, dword [ebp - 0x14]
push 0
movzx edx, dx
imul edx, edi
push edx
mov edx, dword [ebp + 8]
mov dword [ebp + 0xc], eax
mov eax, dword [ebp + 0x10]
push eax
push edi
push ecx
push ebx
push edx
lea ecx, [esi + 0x27e4]
call dword [sym.imp.WHImage.dll_public:_bool___thiscall_CPngImage::DrawImage_class_CDC___int__int__int__int__int__int_]
movzx eax, word [ebp + 0xc]
sub ebx, edi
dec dword [ebp - 8]
mov dword [ebp + 0xc], eax
jne 0x43b480
cmp byte [esi + 0x28], 1
jne 0x43b4f3
mov ecx, dword [ebp - 0x18]
cmp byte [ecx + 0x18], 1
jne 0x43b4f3
cmp byte [ebp - 1], 1
jne 0x43b4f3
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp + 8]
push 0x7d7d7d
push 0x7d7d7d
push edx
push eax
push 0
push 0
call sub.mfc100u.dll_CDC::Draw3dRect
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc