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

Disassembly:
mov eax, dword [esp + 8]
sub esp, 0x74
push ebp
xor ebp, ebp
push edi
cmp eax, ebp
je 0x10016e21
mov dword [eax], ebp
mov edi, dword [esp + 0x80]
cmp edi, ebp
jne 0x10016e34
pop edi
xor eax, eax
pop ebp
add esp, 0x74
ret
push ebx
push esi
push edi
mov dword [esp + 0x20], ebp
call sym.leptonlib.dll_boxaGetCount
mov ebx, eax
add esp, 4
cmp ebx, 0x1f4
jle 0x10016ef0
push edi
mov dword [esp + 0x20], ebp
call sym.leptonlib.dll_boxaGetCount
mov ebx, eax
push ebx
call sym.leptonlib.dll_numaCreate
add esp, 8
mov dword [esp + 0x2c], eax
cmp eax, ebp
jne 0x10016e75
xor eax, eax
jmp 0x10016f85
xor esi, esi
cmp ebx, ebp
jle 0x10016ebb
jmp 0x10016e80
lea eax, [esp + 0x64]
push eax
lea ecx, [esp + 0x70]
push ecx
lea edx, [esp + 0x78]
push edx
lea eax, [esp + 0x58]
push eax
push esi
push edi
call sym.leptonlib.dll_boxaGetBoxGeometry
fild dword [esp + 0x64]
mov ecx, dword [esp + 0x44]
add esp, 0x14
fstp dword [esp]
push ecx
call sym.leptonlib.dll_numaAddNumber
inc esi
add esp, 8
cmp esi, ebx
jl 0x10016e80
mov eax, dword [esp + 0x2c]
push 1
push eax
call sym.leptonlib.dll_numaGetBinSortIndex
add esp, 8
mov dword [esp + 0x50], eax
cmp eax, ebp
jne 0x10016ed5
xor eax, eax
jmp 0x10016f85
push eax
push edi
call sym.leptonlib.dll_boxaSortByIndex
mov edx, dword [esp + 0x58]
mov esi, eax
lea eax, [esp + 0x34]
mov dword [esp + 0x24], edx
push eax
jmp 0x10016f7b
push ebx
call sym.leptonlib.dll_numaCreate
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, ebp
jne 0x10016f08
xor eax, eax
jmp 0x10016f85
xor esi, esi
cmp ebx, ebp
jle 0x10016f4e
mov edi, edi
lea ecx, [esp + 0x74]
push ecx
lea edx, [esp + 0x7c]
push edx
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x60]
push ecx
push esi
push edi
call sym.leptonlib.dll_boxaGetBoxGeometry
fild dword [esp + 0x6c]
mov edx, dword [esp + 0x48]
add esp, 0x14
fstp dword [esp]
push edx
call sym.leptonlib.dll_numaAddNumber
inc esi
add esp, 8
cmp esi, ebx
jl 0x10016f10
mov eax, dword [esp + 0x30]
push 1
push eax
call sym.leptonlib.dll_numaGetSortIndex
add esp, 8
mov dword [esp + 0x58], eax
cmp eax, ebp
jne 0x10016f65
xor eax, eax
jmp 0x10016f85
push eax
push edi
call sym.leptonlib.dll_boxaSortByIndex
mov esi, eax
mov eax, dword [esp + 0x60]
lea ecx, [esp + 0x38]
mov dword [esp + 0x24], eax
push ecx
call sym.leptonlib.dll_numaDestroy
mov eax, esi
add esp, 0xc
mov dword [esp + 0x3c], eax
cmp eax, ebp
jne 0x10016f97
pop esi
pop ebx
pop edi
xor eax, eax
pop ebp
add esp, 0x74
ret
push eax
call sym.leptonlib.dll_boxaGetCount
push 0
mov ebp, eax
call sym.leptonlib.dll_boxaaCreate
push 0
mov dword [esp + 0x1c], eax
call sym.leptonlib.dll_numaaCreate
push 0
mov dword [esp + 0x28], eax
call sym.leptonlib.dll_boxaCreate
push 0
mov dword [esp + 0x3c], eax
call sym.leptonlib.dll_numaCreate
xor ebx, ebx
add esp, 0x14
mov dword [esp + 0x44], eax
mov dword [esp + 0x30], ebx
test ebp, ebp
jle 0x100170e8
lea esp, [esp]
mov edx, dword [esp + 0x3c]
push 2
push ebx
push edx
call sym.leptonlib.dll_boxaGetBox
mov esi, eax
lea eax, [esp + 0x68]
push eax
push 0
push 0
push 0
push esi
call sym.leptonlib.dll_boxGetGeometry
mov ecx, dword [esp + 0x7c]
add esp, 0x20
cmp ecx, dword [esp + 0x98]
jge 0x10017039
mov edx, dword [esp + 0x28]
push 0
push esi
push edx
call sym.leptonlib.dll_boxaAddBox
fild dword [esp + 0x3c]
mov eax, dword [esp + 0x50]
add esp, 8
fstp dword [esp]
push eax
call sym.leptonlib.dll_numaAddNumber
add esp, 8
jmp 0x100170db
mov ecx, dword [esp + 0x10]
push ecx
call sym.leptonlib.dll_boxaGetCount
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x18]
push edx
mov edi, eax
mov eax, dword [esp + 0x98]
push eax
push esi
push ecx
call sym.leptonlib.dll_boxaaAlignBox
mov eax, dword [esp + 0x28]
add esp, 0x14
cmp eax, edi
push 0
jge 0x1001707b
mov edx, dword [esp + 0x14]
push esi
push eax
push edx
call sym.leptonlib.dll_boxaaAddBox
add esp, 0x10
jmp 0x100170af
call sym.leptonlib.dll_boxaCreate
push 0
mov edi, eax
push esi
push edi
call sym.leptonlib.dll_boxaAddBox
mov eax, dword [esp + 0x20]
push 0
push edi
push eax
call sym.leptonlib.dll_boxaaAddBoxa
push 0
call sym.leptonlib.dll_numaCreate
mov ecx, dword [esp + 0x38]
push 0
push eax
push ecx
call sym.leptonlib.dll_numaaAddNuma
add esp, 0x2c
mov eax, dword [esp + 0x1c]
lea edx, [esp + 0x34]
push edx
push ebx
push eax
call sym.leptonlib.dll_numaGetIValue
fild dword [esp + 0x40]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
add esp, 8
fstp dword [esp]
push ecx
push edx
call sym.leptonlib.dll_numaaAddNumber
add esp, 0xc
inc ebx
cmp ebx, ebp
mov dword [esp + 0x30], ebx
jl 0x10016fe0
lea eax, [esp + 0x3c]
push eax
call sym.leptonlib.dll_boxaDestroy
lea ecx, [esp + 0x20]
push ecx
call sym.leptonlib.dll_numaDestroy
mov edx, dword [esp + 0x30]
push edx
call sym.leptonlib.dll_boxaGetCount
add esp, 0xc
xor edi, edi
mov dword [esp + 0x58], eax
test eax, eax
jle 0x100171d5
mov ebp, dword [esp + 0x94]
mov edi, edi
mov eax, dword [esp + 0x28]
push 2
push edi
push eax
call sym.leptonlib.dll_boxaGetBox
mov ecx, dword [esp + 0x1c]
push ecx
mov esi, eax
call sym.leptonlib.dll_boxaGetCount
lea edx, [esp + 0x24]
push edx
push ebp
mov ebx, eax
mov eax, dword [esp + 0x28]
push esi
push eax
call sym.leptonlib.dll_boxaaAlignBox
mov eax, dword [esp + 0x34]
add esp, 0x20
cmp eax, ebx
push 0
jge 0x1001716a
mov ecx, dword [esp + 0x14]
push esi
push eax
push ecx
call sym.leptonlib.dll_boxaaAddBox
add esp, 0x10
jmp 0x1001719e
call sym.leptonlib.dll_boxaCreate
push 0
mov ebx, eax
push esi
push ebx
call sym.leptonlib.dll_boxaAddBox
mov edx, dword [esp + 0x20]
push 0
push ebx
push edx
call sym.leptonlib.dll_boxaaAddBoxa
push 0
call sym.leptonlib.dll_numaCreate
push 0
push eax
mov eax, dword [esp + 0x40]
push eax
call sym.leptonlib.dll_numaaAddNuma
add esp, 0x2c
mov edx, dword [esp + 0x44]
lea ecx, [esp + 0x34]
push ecx
push edi
push edx
call sym.leptonlib.dll_numaGetIValue
fild dword [esp + 0x40]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
add esp, 8
fstp dword [esp]
push eax
push ecx
call sym.leptonlib.dll_numaaAddNumber
inc edi
add esp, 0xc
cmp edi, dword [esp + 0x58]
jl 0x10017120
mov edx, dword [esp + 0x10]
push edx
call sym.leptonlib.dll_boxaGetCount
add esp, 4
xor ebp, ebp
mov dword [esp + 0x64], eax
test eax, eax
jle 0x100173c7
mov eax, dword [esp + 0x10]
push 2
push ebp
push eax
call sym.leptonlib.dll_boxaaGetBoxa
xor esi, esi
add esp, 0xc
mov dword [esp + 0x38], eax
mov edi, eax
mov dword [esp + 0x20], esi
cmp eax, esi
jne 0x10017217
xor eax, eax
jmp 0x10017361
push eax
call sym.leptonlib.dll_boxaGetCount
mov ebx, eax
add esp, 4
cmp ebx, 0x1f4
jle 0x100172cd
push edi
mov dword [esp + 0x24], esi
call sym.leptonlib.dll_boxaGetCount
mov ebx, eax
push ebx
call sym.leptonlib.dll_numaCreate
add esp, 8
mov dword [esp + 0x30], eax
cmp eax, esi
jne 0x10017252
xor eax, eax
jmp 0x10017361
xor esi, esi
test ebx, ebx
jle 0x1001729b
jmp 0x10017260
lea ecx, [esp + 0x7c]
push ecx
lea edx, [esp + 0x7c]
push edx
lea eax, [esp + 0x7c]
push eax
lea ecx, [esp + 0x64]
push ecx
push esi
push edi
call sym.leptonlib.dll_boxaGetBoxGeometry
fild dword [esp + 0x70]
mov edx, dword [esp + 0x48]
add esp, 0x14
fstp dword [esp]
push edx
call sym.leptonlib.dll_numaAddNumber
inc esi
add esp, 8
cmp esi, ebx
jl 0x10017260
mov eax, dword [esp + 0x30]
push 1
push eax
call sym.leptonlib.dll_numaGetBinSortIndex
add esp, 8
mov dword [esp + 0x54], eax
test eax, eax
je 0x10017361
push eax
push edi
call sym.leptonlib.dll_boxaSortByIndex
mov esi, eax
mov eax, dword [esp + 0x5c]
lea ecx, [esp + 0x38]
mov dword [esp + 0x28], eax
push ecx
jmp 0x10017357
push ebx
call sym.leptonlib.dll_numaCreate
add esp, 4
mov dword [esp + 0x2c], eax
cmp eax, esi
jne 0x100172e2
xor eax, eax
jmp 0x10017361
xor esi, esi
test ebx, ebx
jle 0x1001732e
jmp 0x100172f0
lea edx, [esp + 0x70]
push edx
lea eax, [esp + 0x70]
push eax
lea ecx, [esp + 0x88]
push ecx
lea edx, [esp + 0x5c]
push edx
push esi
push edi
call sym.leptonlib.dll_boxaGetBoxGeometry
fild dword [esp + 0x68]
mov eax, dword [esp + 0x44]
add esp, 0x14
fstp dword [esp]
push eax
call sym.leptonlib.dll_numaAddNumber
inc esi
add esp, 8
cmp esi, ebx
jl 0x100172f0
mov eax, dword [esp + 0x2c]
push 1
push eax
call sym.leptonlib.dll_numaGetSortIndex
add esp, 8
mov dword [esp + 0x4c], eax
test eax, eax
je 0x10017361
push eax
push edi
call sym.leptonlib.dll_boxaSortByIndex
mov ecx, dword [esp + 0x54]
lea edx, [esp + 0x34]
mov esi, eax
mov dword [esp + 0x28], ecx
push edx
call sym.leptonlib.dll_numaDestroy
mov eax, esi
add esp, 0xc
push eax
mov eax, dword [esp + 0x14]
push ebp
push eax
call sym.leptonlib.dll_boxaaReplaceBoxa
mov ecx, dword [esp + 0x24]
push 2
push ebp
push ecx
call sym.leptonlib.dll_numaaGetNuma
mov edx, dword [esp + 0x38]
push edx
push eax
mov dword [esp + 0x80], eax
call sym.leptonlib.dll_numaSortByIndex
push eax
mov eax, dword [esp + 0x3c]
push ebp
push eax
call sym.leptonlib.dll_numaaReplaceNuma
lea ecx, [esp + 0x64]
push ecx
call sym.leptonlib.dll_boxaDestroy
lea edx, [esp + 0x90]
push edx
call sym.leptonlib.dll_numaDestroy
lea eax, [esp + 0x54]
push eax
call sym.leptonlib.dll_numaDestroy
inc ebp
add esp, 0x38
cmp ebp, dword [esp + 0x64]
jl 0x100171f0
mov ecx, dword [esp + 0x10]
push ecx
call sym.leptonlib.dll_boxaGetCount
mov ebp, eax
push ebp
call sym.leptonlib.dll_boxaCreate
push ebp
mov dword [esp + 0x4c], eax
call sym.leptonlib.dll_numaaCreate
mov ecx, dword [esp + 0x98]
add esp, 0xc
mov dword [esp + 0x48], eax
test ecx, ecx
je 0x100173f7
mov dword [ecx], eax
push ebp
call sym.leptonlib.dll_boxaaCreate
add esp, 4
xor esi, esi
mov dword [esp + 0x4c], eax
test ebp, ebp
jle 0x1001744a
lea ebx, [ebx]
mov edx, dword [esp + 0x10]
push 2
push esi
push edx
call sym.leptonlib.dll_boxaaGetBoxa
push 2
push 0
push eax
mov dword [esp + 0x50], eax
call sym.leptonlib.dll_boxaGetBox
push 0
push eax
mov eax, dword [esp + 0x60]
push eax
call sym.leptonlib.dll_boxaAddBox
lea ecx, [esp + 0x5c]
push ecx
call sym.leptonlib.dll_boxaDestroy
inc esi
add esp, 0x28
cmp esi, ebp
jl 0x10017410
mov edi, dword [esp + 0x40]
mov dword [esp + 0x24], 0
test edi, edi
jne 0x10017461
xor eax, eax
jmp 0x100175ae
push edi
call sym.leptonlib.dll_boxaGetCount
mov ebx, eax
add esp, 4
cmp ebx, 0x1f4
jle 0x10017526
push edi
mov dword [esp + 0x28], 0
call sym.leptonlib.dll_boxaGetCount
mov ebx, eax
push ebx
call sym.leptonlib.dll_numaCreate
add esp, 8
mov dword [esp + 0x30], eax
test eax, eax
je 0x100175ae
xor esi, esi
test ebx, ebx
jle 0x100174f4
jmp 0x100174b0
lea edx, [esp + 0x80]
push edx
lea eax, [esp + 0x80]
push eax
lea ecx, [esp + 0x6c]
push ecx
lea edx, [esp + 0x84]
push edx
push esi
push edi
call sym.leptonlib.dll_boxaGetBoxGeometry
fild dword [esp + 0x7c]
mov eax, dword [esp + 0x48]
add esp, 0x14
fstp dword [esp]
push eax
call sym.leptonlib.dll_numaAddNumber
inc esi
add esp, 8
cmp esi, ebx
jl 0x100174b0
mov eax, dword [esp + 0x30]
push 1
push eax
call sym.leptonlib.dll_numaGetBinSortIndex
add esp, 8
mov dword [esp + 0x58], eax
test eax, eax
je 0x100175ae
push eax
push edi
call sym.leptonlib.dll_boxaSortByIndex
mov ecx, dword [esp + 0x60]
lea edx, [esp + 0x38]
mov esi, eax
mov dword [esp + 0x2c], ecx
push edx
jmp 0x100175a4
push ebx
call sym.leptonlib.dll_numaCreate
add esp, 4
mov dword [esp + 0x2c], eax
test eax, eax
je 0x100175ae
xor esi, esi
test ebx, ebx
jle 0x1001757b
lea ecx, [ecx]
lea eax, [esp + 0x74]
push eax
lea ecx, [esp + 0x74]
push ecx
lea edx, [esp + 0x5c]
push edx
lea eax, [esp + 0x78]
push eax
push esi
push edi
call sym.leptonlib.dll_boxaGetBoxGeometry
fild dword [esp + 0x6c]
mov ecx, dword [esp + 0x44]
add esp, 0x14
fstp dword [esp]
push ecx
call sym.leptonlib.dll_numaAddNumber
inc esi
add esp, 8
cmp esi, ebx
jl 0x10017540
mov eax, dword [esp + 0x2c]
push 1
push eax
call sym.leptonlib.dll_numaGetSortIndex
add esp, 8
mov dword [esp + 0x50], eax
test eax, eax
je 0x100175ae
push eax
push edi
call sym.leptonlib.dll_boxaSortByIndex
mov edx, dword [esp + 0x58]
mov esi, eax
lea eax, [esp + 0x34]
mov dword [esp + 0x2c], edx
push eax
call sym.leptonlib.dll_numaDestroy
mov eax, esi
add esp, 0xc
xor esi, esi
mov dword [esp + 0x68], eax
test ebp, ebp
jle 0x10017614
mov edi, dword [esp + 0x4c]
lea esp, [esp]
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x14]
push ecx
push esi
push edx
call sym.leptonlib.dll_numaGetIValue
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
push 2
push eax
push ecx
call sym.leptonlib.dll_boxaaGetBoxa
push 0
push eax
push edi
mov dword [esp + 0x60], eax
call sym.leptonlib.dll_boxaaAddBoxa
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
push 2
push edx
push eax
call sym.leptonlib.dll_numaaGetNuma
mov ecx, dword [esp + 0x78]
push 0
push eax
push ecx
call sym.leptonlib.dll_numaaAddNuma
inc esi
add esp, 0x3c
cmp esi, ebp
jl 0x100175c0
lea edx, [esp + 0x10]
push edx
call sym.leptonlib.dll_boxaaDestroy
lea eax, [esp + 0x44]
push eax
call sym.leptonlib.dll_boxaDestroy
lea ecx, [esp + 0x70]
push ecx
call sym.leptonlib.dll_boxaDestroy
lea edx, [esp + 0x34]
push edx
call sym.leptonlib.dll_boxaDestroy
lea eax, [esp + 0x34]
push eax
call sym.leptonlib.dll_numaDestroy
lea ecx, [esp + 0x58]
push ecx
call sym.leptonlib.dll_numaDestroy
lea edx, [esp + 0x30]
push edx
call sym.leptonlib.dll_numaaDestroy
add esp, 0x1c
cmp dword [esp + 0x8c], 0
jne 0x10017674
lea eax, [esp + 0x48]
push eax
call sym.leptonlib.dll_numaaDestroy
add esp, 4
mov eax, dword [esp + 0x4c]
pop esi
pop ebx
pop edi
pop ebp
add esp, 0x74
ret