Function at 0x433130
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x50
mov eax, dword [esp + 0x58]
mov edx, dword [eax + 8]
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x10], edx
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 4]
push ebx
mov ebx, dword [ecx + 0xc]
mov dword [esp + 0x10], edx
mov edx, dword [eax]
push ebp
push esi
mov esi, dword [ecx + 8]
mov dword [esp + 0x2c], edx
xor ebp, ebp
xor edx, edx
mov dword [esp + 0x20], esi
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], ebp
mov dword [esp + 0x10], edx
test ebx, ebx
jle 0x43334f
push edi
mov eax, dword [esp + 0x78]
test eax, eax
je 0x433192
cmp edx, dword [eax + 0xc]
jg 0x433345
cmp edx, dword [eax + 4]
jl 0x433338
xor edi, edi
mov dword [esp + 0x10], edi
test esi, esi
jle 0x43332d
mov ebp, dword [ecx + 8]
mov ecx, dword [ecx + 4]
mov eax, ebp
imul eax, edx
add eax, edi
mov edx, dword [ecx + eax*4]
lea esi, [ecx + eax*4]
mov eax, dword [esp + 0x70]
push eax
lea ecx, [esp + 0x34]
mov dword [esp + 0x1c], edx
push ecx
lea edx, [esp + 0x20]
push edx
mov dword [esp + 0x48], ebp
call fcn.00432b90
add esp, 0xc
test eax, eax
je 0x43330c
mov ecx, dword [esp + 0x20]
xor ebx, ebx
test ecx, ecx
jbe 0x43327f
mov dword [esp + 0x18], esi
lea esp, [esp]
lea eax, [ebx + edi]
cmp eax, dword [esp + 0x24]
jge 0x43330c
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x433271
mov edi, dword [esp + 0x18]
add ebp, ebp
add ebp, ebp
lea ecx, [ecx]
mov ecx, dword [esp + 0x14]
lea edx, [esi + ecx]
cmp edx, dword [esp + 0x2c]
jge 0x433308
mov eax, dword [esp + 0x68]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
imul ecx, esi
add ecx, ebx
mov eax, dword [edx + ecx*4]
mov edx, dword [esp + 0x70]
mov ecx, dword [edi]
mov dword [esp + 0x34], eax
push edx
lea eax, [esp + 0x38]
mov dword [esp + 0x3c], ecx
push eax
lea ecx, [esp + 0x40]
push ecx
call fcn.00432b90
add esp, 0xc
test eax, eax
je 0x433308
inc esi
add edi, ebp
cmp esi, dword [esp + 0x1c]
jb 0x433210
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x3c]
mov ecx, dword [esp + 0x20]
add dword [esp + 0x18], 4
inc ebx
cmp ebx, ecx
jb 0x4331f0
mov eax, dword [esp + 0x14]
lea edx, [edi + ecx]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x44], eax
add eax, ecx
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x40], edi
mov dword [esp + 0x48], edx
test eax, eax
je 0x4332b9
lea edx, [esp + 0x40]
push edx
push eax
lea eax, [esp + 0x58]
push eax
call dword [sym.imp.USER32.dll_IntersectRect]
test eax, eax
je 0x43330c
mov esi, dword [esp + 0x6c]
mov ecx, dword [esi + 8]
inc ecx
push ecx
mov ecx, esi
call fcn.00433090
mov eax, dword [esi + 8]
mov edx, dword [esp + 0x40]
shl eax, 4
add eax, dword [esi]
mov dword [eax], edx
mov ecx, dword [esp + 0x44]
mov dword [eax + 4], ecx
mov edx, dword [esp + 0x48]
mov dword [eax + 8], edx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 0xc], ecx
inc dword [esi + 8]
cmp dword [esp + 0x74], 0
mov eax, 1
mov dword [esp + 0x28], eax
jne 0x433347
mov edx, dword [esp + 0x48]
dec edx
mov edi, edx
jmp 0x43330c
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x64]
inc edi
cmp edi, esi
mov dword [esp + 0x10], edi
jl 0x4331a0
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
test ebp, ebp
je 0x433338
cmp dword [esp + 0x74], 0
jne 0x433345
inc edx
cmp edx, ebx
mov dword [esp + 0x14], edx
jl 0x433178
mov eax, ebp
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x50
ret