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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push edi
mov edi, ecx
mov dword [ebp + 0x10], edi
mov dword [ebp + 0xc], edx
push esi
mov dword [ebp + 8], eax
mov ebx, dword [eax + 0x10]
mov ecx, dword [eax + 0x1c]
imul ebx, edi
add ebx, edx
cmp dword [ebp + 0x18], edi
lea esi, [ecx + ebx]
mov dword [ebp - 0xc], esi
jne 0x416049
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 8], esi
mov dword [ebp - 4], edx
cmp edx, ebx
jg 0x415ffd
mov ecx, eax
mov edi, edx
mov eax, esi
xor edx, edx
inc esi
mov dl, byte [eax]
mov eax, dword [ecx + 0x24]
cmp byte [eax + edx], 0
je 0x415ff7
inc edi
cmp edi, ebx
jle 0x415fe2
mov dword [ebp - 8], esi
mov dword [ebp - 4], edi
mov edi, dword [ebp - 4]
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x10], edi
cmp edi, ebx
jg 0x41602b
mov ecx, dword [ebp + 8]
mov esi, dword [ebp - 8]
mov eax, esi
xor edx, edx
inc esi
mov dl, byte [eax]
mov eax, dword [ecx + 0x24]
cmp byte [eax + edx], 0
je 0x416025
inc edi
cmp edi, ebx
jle 0x416010
mov dword [ebp - 8], esi
mov dword [ebp - 0x10], edi
mov eax, dword [ebp - 0x10]
pop esi
dec eax
pop edi
mov dword [ebp - 0x10], eax
mov dword [ebp + 0x14], eax
mov edx, dword [ebp - 4]
pop ebx
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 8]
mov esp, ebp
pop ebp
jmp 0x417594
mov ecx, dword [ebp + 0xc]
cmp dword [ebp + 0x14], ecx
mov dword [ebp - 4], 0xffffffff
jl 0x4160f4
mov eax, dword [ebp + 0x18]
mov ebx, dword [ebp + 8]
sub eax, dword [ebp + 0x10]
inc eax
mov dword [ebp - 0x14], eax
mov ebx, ebx
add eax, 0
mov edi, dword [ebp - 0xc]
xor edx, edx
mov esi, dword [ebp - 0x14]
mov dword [ebp - 8], edi
test esi, esi
je 0x4160a5
mov dword [ebp - 0x18], ecx
xor ecx, ecx
mov eax, dword [ebx + 0x24]
mov cl, byte [edi]
cmp byte [eax + ecx], 0
jne 0x416096
mov edx, 1
jmp 0x41609f
mov eax, dword [ebx + 0x10]
dec esi
lea edi, [edi + eax]
jne 0x416082
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 8], edi
mov esi, dword [ebp - 4]
test esi, esi
jl 0x4160e0
test edx, edx
jne 0x4160e7
mov edi, ecx
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp + 0x10]
lea eax, [edi - 1]
xchg edx, esi
push eax
mov dword [ebp - 4], 0xffffffff
sub esp, 0xc
mov eax, ebx
call fcn.00417153
mov edx, esi
mov ecx, edi
add esp, 0x14
jmp 0x4160e7
test edx, edx
je 0x4160e7
mov dword [ebp - 4], ecx
inc dword [ebp - 0xc]
inc ecx
cmp dword [ebp + 0x14], ecx
jge 0x416070
mov edx, dword [ebp + 0xc]
cmp dword [ebp - 4], edx
jne 0x416114
mov eax, dword [ebp + 8]
pop esi
pop edi
mov dword [eax + 0x40], 1
pop ebx
mov ecx, dword [ebp + 0x10]
mov esp, ebp
pop ebp
jmp 0x417594
mov edx, dword [ebp - 4]
test edx, edx
jl 0x41612c
pop esi
mov ecx, dword [ebp + 0x10]
pop edi
mov eax, dword [ebp + 8]
pop ebx
mov esp, ebp
pop ebp
jmp fcn.00417153
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
push ebp
push ebx
push edi
push esi
sub esp, 0x20
mov dword [esp + 0x34], eax
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], edx
mov eax, dword [eax + 0xc]
cmp dword [eax + 0x5c], 0
jne 0x4175b7
xor esi, esi
jmp 0x417632
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x78]
cmp dword [esp + 0x38], eax
jge 0x4175cb
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x7c]
cmp dword [esp + 0x3c], eax
jge 0x4175df
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x34]
mov ecx, dword [ecx + 0xc]
mov eax, dword [ecx + 0x60]
add eax, dword [ecx + 0x78]
cmp dword [esp + 0x40], eax
jle 0x4175f6
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x34]
mov ecx, dword [ecx + 0xc]
mov eax, dword [ecx + 0x64]
add eax, dword [ecx + 0x7c]
cmp dword [esp + 0x44], eax
jle 0x41760d
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x40]
sub eax, dword [esp + 0x38]
test eax, eax
jl 0x417625
mov eax, dword [esp + 0x44]
sub eax, dword [esp + 0x3c]
test eax, eax
jge 0x417630
mov esi, 1
jmp 0x417632
xor esi, esi
mov dword [esp + 4], esi
cmp dword [esp + 4], 0
jne 0x41777e
mov eax, dword [esp + 0x34]
mov edi, dword [esp + 0x3c]
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x40]
mov edx, dword [esp + 0x38]
sub ebx, edi
sub esi, edx
inc ebx
inc esi
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], esi
mov ecx, edi
mov ebp, dword [eax + 0x10]
imul ecx, ebp
mov dword [esp], edi
add ecx, edx
mov edi, dword [eax + 0x1c]
add edi, ecx
mov ecx, ebx
imul ecx, esi
mov dword [esp + 0x14], edi
cmp dword [eax + 0x48], ecx
mov ecx, dword [esp]
jle 0x4176a0
push dword [eax + 0x3c]
push ebp
mov eax, dword [eax + 4]
push edi
push ebx
push esi
sub esp, 0xc
call fcn.00412153
add esp, 0x40
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [esp + 0x34]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
imul eax, ebx
cdq
mov dword [esp + 0xc], eax
mov ecx, dword [ecx + 0x48]
idiv ecx
xchg ebx, eax
test edx, edx
je 0x4176c4
cdq
inc ebx
idiv ebx
jmp 0x4176d9
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0xc]
cdq
idiv dword [ebx + 0x48]
mov ebx, eax
mov eax, dword [esp + 0x1c]
cdq
idiv ebx
mov ebx, dword [esp + 0x1c]
sub ebx, eax
mov dword [esp + 0x10], 0
test ebx, ebx
jl 0x41774b
mov dword [esp + 8], ebx
mov edx, dword [esp + 0x34]
mov ecx, eax
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x14]
xor edi, edi
nop
mov eax, edx
mov ebp, ecx
xchg ebx, eax
mov edx, dword [ebx + 0x3c]
push edx
mov edx, dword [ebx + 0x10]
push edx
push esi
push ebp
push eax
mov eax, dword [ebx + 4]
sub esp, 0xc
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x58]
add ecx, edi
mov ebx, dword [esp + 0x38]
add edi, ebp
call fcn.00412153
mov edx, dword [esp + 0x54]
mov ecx, ebp
add esp, 0x20
mov eax, dword [edx + 0x10]
imul eax, ecx
cmp dword [esp + 8], edi
lea esi, [esi + eax]
jge 0x417700
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x34]
push dword [eax + 0x3c]
push dword [eax + 0x10]
push dword [esp + 0x1c]
mov ebx, dword [esp + 0x28]
mov ecx, dword [esp + 0x1c]
sub ebx, ecx
push ebx
add ecx, dword [esp + 0x4c]
push dword [esp + 0x28]
sub esp, 0xc
mov eax, dword [eax + 4]
mov edx, dword [esp + 0x58]
call fcn.00412153
add esp, 0x20
add esp, 0x20
pop esi
pop edi
pop ebx
pop ebp
ret