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

Disassembly:
mov eax, 4
call fcn.10112b60
mov eax, dword [esp + 8]
push ebx
push ebp
mov ebp, dword [eax]
push esi
mov esi, dword [eax + 4]
mov eax, dword [esp + 0x18]
push edi
mov edi, dword [eax]
mov ecx, ebp
shr ecx, 0x10
mov edx, edi
imul edx, ecx
mov ebx, esi
shr ebx, 0x10
test edx, edx
je 0x1009f891
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x1009f898
mov edx, 1
sub edx, edi
add ebp, dword [eax + 4]
add ebx, dword [eax + 8]
sub edx, ecx
mov ecx, dword [eax + 0xc]
and esi, 0xffff
imul ecx, esi
mov dword [esp + 0x1c], edx
test ecx, ecx
je 0x1009f8c7
mov esi, ecx
movzx edi, cx
shr esi, 0x10
sub edi, esi
mov ecx, edi
shr ecx, 0x10
sub edi, ecx
jmp 0x1009f8d1
mov edi, 1
sub edi, dword [eax + 0xc]
sub edi, esi
mov esi, dword [eax + 0x10]
mov ecx, ebx
xor ecx, edx
and ecx, 0xffff
mov edx, esi
imul edx, ecx
test edx, edx
je 0x1009f8f8
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x1009f8ff
mov edx, 1
sub edx, esi
sub edx, ecx
mov ecx, dword [eax + 0x14]
mov esi, edi
xor esi, ebp
add esi, edx
and esi, 0xffff
imul ecx, esi
test ecx, ecx
je 0x1009f928
mov esi, ecx
shr esi, 0x10
movzx ecx, cx
sub ecx, esi
mov esi, ecx
shr esi, 0x10
jmp 0x1009f930
mov ecx, 1
sub ecx, dword [eax + 0x14]
sub ecx, esi
add edx, ecx
xor edi, edx
xor edx, ebp
mov ebp, dword [eax + 0x18]
mov esi, ecx
xor ecx, dword [esp + 0x1c]
xor esi, ebx
mov ebx, edx
and ecx, 0xffff
mov edx, ebp
imul edx, ecx
test edx, edx
je 0x1009f96b
mov ebp, edx
movzx ecx, dx
shr ebp, 0x10
sub ecx, ebp
mov edx, ecx
shr edx, 0x10
sub ecx, edx
mov dword [esp + 0x1c], ecx
jmp 0x1009f978
mov edx, 1
sub edx, ebp
sub edx, ecx
mov dword [esp + 0x1c], edx
mov edx, dword [eax + 0x24]
add ebx, dword [eax + 0x20]
add esi, dword [eax + 0x1c]
and edi, 0xffff
mov ecx, edx
imul ecx, edi
mov dword [esp + 0x10], ebx
test ecx, ecx
je 0x1009f9a7
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x1009f9b0
mov ebp, 1
sub ebp, edx
sub ebp, edi
mov edi, dword [eax + 0x28]
mov ecx, ebx
xor ecx, dword [esp + 0x1c]
mov edx, edi
and ecx, 0xffff
imul edx, ecx
test edx, edx
je 0x1009f9d9
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x1009f9e0
mov edx, 1
sub edx, edi
sub edx, ecx
mov ecx, dword [eax + 0x2c]
mov edi, ebp
xor edi, esi
add edi, edx
and edi, 0xffff
imul ecx, edi
test ecx, ecx
je 0x1009fa09
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x1009fa15
mov ebx, dword [esp + 0x10]
mov ecx, 1
sub ecx, dword [eax + 0x2c]
sub ecx, edi
mov edi, dword [eax + 0x30]
add edx, ecx
xor ebp, edx
xor edx, esi
mov esi, ecx
xor ecx, dword [esp + 0x1c]
xor esi, ebx
mov ebx, edx
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009fa50
mov edi, edx
movzx ecx, dx
shr edi, 0x10
sub ecx, edi
mov edx, ecx
shr edx, 0x10
sub ecx, edx
mov dword [esp + 0x1c], ecx
jmp 0x1009fa5d
mov edx, 1
sub edx, edi
sub edx, ecx
mov dword [esp + 0x1c], edx
mov edx, dword [eax + 0x3c]
add ebx, dword [eax + 0x38]
add esi, dword [eax + 0x34]
and ebp, 0xffff
mov ecx, edx
imul ecx, ebp
mov dword [esp + 0x10], ebx
test ecx, ecx
je 0x1009fa8c
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x1009fa95
mov ebx, 1
sub ebx, edx
sub ebx, ebp
mov ecx, dword [esp + 0x10]
xor ecx, dword [esp + 0x1c]
mov edi, dword [eax + 0x40]
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009fac0
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x1009fac7
mov edx, 1
sub edx, edi
mov ebp, dword [eax + 0x44]
sub edx, ecx
mov edi, ebx
xor edi, esi
add edi, edx
and edi, 0xffff
mov ecx, ebp
imul ecx, edi
test ecx, ecx
je 0x1009faf2
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x1009faf9
mov ecx, 1
sub ecx, ebp
sub ecx, edi
mov edi, dword [eax + 0x48]
add edx, ecx
xor ebx, edx
xor edx, esi
mov esi, ecx
xor ecx, dword [esp + 0x1c]
xor esi, dword [esp + 0x10]
mov ebp, edx
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009fb36
mov edi, edx
movzx ecx, dx
shr edi, 0x10
sub ecx, edi
mov edx, ecx
shr edx, 0x10
sub ecx, edx
mov dword [esp + 0x1c], ecx
jmp 0x1009fb43
mov edx, 1
sub edx, edi
sub edx, ecx
mov dword [esp + 0x1c], edx
mov edx, dword [eax + 0x54]
add ebp, dword [eax + 0x50]
add esi, dword [eax + 0x4c]
and ebx, 0xffff
mov ecx, edx
imul ecx, ebx
mov dword [esp + 0x10], ebp
test ecx, ecx
je 0x1009fb72
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x1009fb7b
mov ebp, 1
sub ebp, edx
sub ebp, ebx
mov ecx, dword [esp + 0x10]
xor ecx, dword [esp + 0x1c]
mov edi, dword [eax + 0x58]
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009fba6
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x1009fbad
mov edx, 1
sub edx, edi
mov ebx, dword [eax + 0x5c]
sub edx, ecx
mov edi, ebp
xor edi, esi
add edi, edx
and edi, 0xffff
mov ecx, ebx
imul ecx, edi
test ecx, ecx
je 0x1009fbd8
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x1009fbdf
mov ecx, 1
sub ecx, ebx
sub ecx, edi
mov edi, dword [eax + 0x60]
add edx, ecx
xor ebp, edx
xor edx, esi
mov esi, ecx
xor ecx, dword [esp + 0x1c]
xor esi, dword [esp + 0x10]
mov ebx, edx
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009fc1c
mov edi, edx
movzx ecx, dx
shr edi, 0x10
sub ecx, edi
mov edx, ecx
shr edx, 0x10
sub ecx, edx
mov dword [esp + 0x1c], ecx
jmp 0x1009fc29
mov edx, 1
sub edx, edi
sub edx, ecx
mov dword [esp + 0x1c], edx
mov edx, dword [eax + 0x6c]
add ebx, dword [eax + 0x68]
add esi, dword [eax + 0x64]
and ebp, 0xffff
mov ecx, edx
imul ecx, ebp
mov dword [esp + 0x10], ebx
test ecx, ecx
je 0x1009fc58
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x1009fc61
mov ebx, 1
sub ebx, edx
sub ebx, ebp
mov ecx, dword [esp + 0x10]
xor ecx, dword [esp + 0x1c]
mov edi, dword [eax + 0x70]
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009fc8c
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x1009fc93
mov edx, 1
sub edx, edi
mov ebp, dword [eax + 0x74]
sub edx, ecx
mov edi, ebx
xor edi, esi
add edi, edx
and edi, 0xffff
mov ecx, ebp
imul ecx, edi
test ecx, ecx
je 0x1009fcbe
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x1009fcc5
mov ecx, 1
sub ecx, ebp
sub ecx, edi
mov edi, dword [eax + 0x78]
add edx, ecx
xor ebx, edx
xor edx, esi
mov esi, ecx
xor ecx, dword [esp + 0x1c]
xor esi, dword [esp + 0x10]
mov ebp, edx
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009fd02
mov edi, edx
movzx ecx, dx
shr edi, 0x10
sub ecx, edi
mov edx, ecx
shr edx, 0x10
sub ecx, edx
mov dword [esp + 0x1c], ecx
jmp 0x1009fd0f
mov edx, 1
sub edx, edi
sub edx, ecx
mov dword [esp + 0x1c], edx
mov edx, dword [eax + 0x84]
add ebp, dword [eax + 0x80]
add esi, dword [eax + 0x7c]
and ebx, 0xffff
mov ecx, edx
imul ecx, ebx
mov dword [esp + 0x10], ebp
test ecx, ecx
je 0x1009fd44
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x1009fd4d
mov ebp, 1
sub ebp, edx
sub ebp, ebx
mov ecx, dword [esp + 0x10]
xor ecx, dword [esp + 0x1c]
mov edi, dword [eax + 0x88]
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009fd7b
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x1009fd82
mov edx, 1
sub edx, edi
mov ebx, dword [eax + 0x8c]
sub edx, ecx
mov edi, ebp
xor edi, esi
add edi, edx
and edi, 0xffff
mov ecx, ebx
imul ecx, edi
test ecx, ecx
je 0x1009fdb0
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x1009fdb7
mov ecx, 1
sub ecx, ebx
sub ecx, edi
mov edi, dword [eax + 0x90]
add edx, ecx
xor ebp, edx
xor edx, esi
mov esi, ecx
xor ecx, dword [esp + 0x1c]
xor esi, dword [esp + 0x10]
mov ebx, edx
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009fdf7
mov edi, edx
movzx ecx, dx
shr edi, 0x10
sub ecx, edi
mov edx, ecx
shr edx, 0x10
sub ecx, edx
mov dword [esp + 0x1c], ecx
jmp 0x1009fe04
mov edx, 1
sub edx, edi
sub edx, ecx
mov dword [esp + 0x1c], edx
mov edx, dword [eax + 0x9c]
add ebx, dword [eax + 0x98]
add esi, dword [eax + 0x94]
and ebp, 0xffff
mov ecx, edx
imul ecx, ebp
mov dword [esp + 0x10], ebx
test ecx, ecx
je 0x1009fe3c
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x1009fe45
mov ebx, 1
sub ebx, edx
sub ebx, ebp
mov ecx, dword [esp + 0x10]
xor ecx, dword [esp + 0x1c]
mov edi, dword [eax + 0xa0]
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009fe73
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x1009fe7a
mov edx, 1
sub edx, edi
mov ebp, dword [eax + 0xa4]
sub edx, ecx
mov edi, ebx
xor edi, esi
add edi, edx
and edi, 0xffff
mov ecx, ebp
imul ecx, edi
test ecx, ecx
je 0x1009fea8
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x1009feaf
mov ecx, 1
sub ecx, ebp
sub ecx, edi
mov edi, dword [eax + 0xa8]
add edx, ecx
xor ebx, edx
xor edx, esi
mov esi, ecx
xor ecx, dword [esp + 0x1c]
xor esi, dword [esp + 0x10]
mov ebp, edx
and ecx, 0xffff
mov edx, edi
imul edx, ecx
test edx, edx
je 0x1009feef
mov edi, edx
movzx ecx, dx
shr edi, 0x10
sub ecx, edi
mov edx, ecx
shr edx, 0x10
sub ecx, edx
mov dword [esp + 0x1c], ecx
jmp 0x1009fefc
mov edx, 1
sub edx, edi
sub edx, ecx
mov dword [esp + 0x1c], edx
mov edx, dword [eax + 0xb4]
add ebp, dword [eax + 0xb0]
add esi, dword [eax + 0xac]
and ebx, 0xffff
mov ecx, edx
imul ecx, ebx
mov dword [esp + 0x10], ebp
test ecx, ecx
je 0x1009ff34
mov edx, ecx
movzx edi, cx
shr edx, 0x10
sub edi, edx
mov ecx, edi
shr ecx, 0x10
sub edi, ecx
jmp 0x1009ff3d
mov edi, 1
sub edi, edx
sub edi, ebx
mov ebx, dword [eax + 0xb8]
mov ecx, ebp
xor ecx, dword [esp + 0x1c]
mov edx, ebx
and ecx, 0xffff
imul edx, ecx
test edx, edx
je 0x1009ff69
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x1009ff70
mov edx, 1
sub edx, ebx
sub edx, ecx
mov ecx, dword [eax + 0xbc]
mov ebx, edi
xor ebx, esi
add ebx, edx
and ebx, 0xffff
imul ecx, ebx
test ecx, ecx
je 0x1009ff9c
mov ebx, ecx
shr ebx, 0x10
movzx ecx, cx
sub ecx, ebx
mov ebx, ecx
shr ebx, 0x10
jmp 0x1009ffab
mov ebp, dword [esp + 0x10]
mov ecx, 1
sub ecx, dword [eax + 0xbc]
sub ecx, ebx
mov ebx, dword [eax + 0xc0]
add edx, ecx
xor edi, edx
xor edx, esi
mov esi, ecx
xor ecx, dword [esp + 0x1c]
mov dword [esp + 0x10], edx
and ecx, 0xffff
mov edx, ebx
imul edx, ecx
xor esi, ebp
test edx, edx
je 0x1009ffe7
mov ecx, edx
movzx ebp, dx
shr ecx, 0x10
sub ebp, ecx
mov edx, ebp
shr edx, 0x10
sub ebp, edx
jmp 0x1009fff0
mov ebp, 1
sub ebp, ebx
sub ebp, ecx
mov ebx, dword [eax + 0xc4]
mov ecx, dword [eax + 0xc8]
mov eax, dword [eax + 0xcc]
add ebx, dword [esp + 0x10]
and edi, 0xffff
mov edx, eax
imul edx, edi
add ecx, esi
test edx, edx
je 0x100a002a
mov eax, edx
shr eax, 0x10
movzx edx, dx
sub edx, eax
mov eax, edx
shr eax, 0x10
sub edx, eax
jmp 0x100a0033
mov edx, 1
sub edx, eax
sub edx, edi
mov eax, dword [esp + 0x18]
movzx esi, bx
shl ebp, 0x10
or esi, ebp
pop edi
movzx edx, dx
mov dword [eax], esi
pop esi
shl ecx, 0x10
or ecx, edx
pop ebp
mov dword [eax + 4], ecx
pop ebx
pop ecx
ret