Function at 0x4352f0
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 0x43550f
push edi
mov eax, dword [esp + 0x78]
test eax, eax
je 0x435352
cmp edx, dword [eax + 0xc]
jg 0x435505
cmp edx, dword [eax + 4]
jl 0x4354f8
xor edi, edi
mov dword [esp + 0x10], edi
test esi, esi
jle 0x4354ed
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.00434d50
add esp, 0xc
test eax, eax
je 0x4354cc
mov ecx, dword [esp + 0x20]
xor ebx, ebx
test ecx, ecx
jbe 0x43543f
mov dword [esp + 0x18], esi
lea esp, [esp]
lea eax, [ebx + edi]
cmp eax, dword [esp + 0x24]
jge 0x4354cc
xor esi, esi
cmp dword [esp + 0x1c], esi
jbe 0x435431
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 0x4354c8
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.00434d50
add esp, 0xc
test eax, eax
je 0x4354c8
inc esi
add edi, ebp
cmp esi, dword [esp + 0x1c]
jb 0x4353d0
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 0x4353b0
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 0x435479
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 0x4354cc
mov esi, dword [esp + 0x6c]
mov ecx, dword [esi + 8]
inc ecx
push ecx
mov ecx, esi
call fcn.00435250
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 0x435507
mov edx, dword [esp + 0x48]
dec edx
mov edi, edx
jmp 0x4354cc
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 0x435360
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
test ebp, ebp
je 0x4354f8
cmp dword [esp + 0x74], 0
jne 0x435505
inc edx
cmp edx, ebx
mov dword [esp + 0x14], edx
jl 0x435338
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