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

Disassembly:
mov eax, 8
call fcn.101637b0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
push ebx
mov ecx, dword [ecx]
push ebp
push esi
mov esi, dword [eax]
push edi
mov edi, dword [eax + 4]
mov eax, esi
shr eax, 0x10
imul ecx, eax
mov ebx, edi
shr ebx, 0x10
mov edx, 1
test ecx, ecx
je 0x100faf64
mov eax, ecx
shr eax, 0x10
movzx ebp, cx
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x100faf6c
mov ecx, dword [esp + 0x20]
mov ebp, edx
sub ebp, dword [ecx]
mov ecx, dword [esp + 0x20]
sub ebp, eax
add esi, dword [ecx + 4]
mov eax, dword [ecx + 0xc]
add ebx, dword [ecx + 8]
mov dword [esp + 0x20], esi
and edi, 0xffff
mov esi, eax
imul esi, edi
mov dword [esp + 0x10], ebx
test esi, esi
je 0x100fafa5
mov eax, esi
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x100fafab
mov esi, edx
sub esi, eax
sub esi, edi
mov edi, dword [ecx + 0x10]
mov eax, ebx
xor eax, ebp
and eax, 0xffff
imul edi, eax
test edi, edi
je 0x100fafcf
mov eax, edi
shr eax, 0x10
movzx ebx, di
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x100fafd4
mov ebx, edx
sub ebx, dword [ecx + 0x10]
mov edi, dword [ecx + 0x14]
sub ebx, eax
mov eax, esi
xor eax, dword [esp + 0x20]
add eax, ebx
and eax, 0xffff
imul edi, eax
test edi, edi
je 0x100faffe
mov eax, edi
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x100fb003
mov edi, edx
sub edi, dword [ecx + 0x14]
sub edi, eax
add ebx, edi
mov eax, edi
xor eax, dword [esp + 0x10]
xor edi, ebp
mov ebp, dword [ecx + 0x18]
and edi, 0xffff
imul ebp, edi
xor esi, ebx
xor ebx, dword [esp + 0x20]
mov dword [esp + 0x20], eax
test ebp, ebp
je 0x100fb040
mov eax, ebp
shr eax, 0x10
movzx ebp, bp
sub ebp, eax
mov eax, ebp
shr eax, 0x10
sub ebp, eax
mov eax, dword [esp + 0x20]
jmp 0x100fb047
mov ebp, edx
sub ebp, dword [ecx + 0x18]
sub ebp, edi
add eax, dword [ecx + 0x1c]
add ebx, dword [ecx + 0x20]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x24]
and esi, 0xffff
mov edi, eax
imul edi, esi
mov dword [esp + 0x10], ebp
test edi, edi
je 0x100fb07a
mov eax, edi
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x100fb080
mov edi, edx
sub edi, eax
sub edi, esi
mov esi, dword [ecx + 0x28]
mov eax, ebx
xor eax, ebp
and eax, 0xffff
imul esi, eax
test esi, esi
je 0x100fb0a4
mov eax, esi
shr eax, 0x10
movzx ebp, si
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x100fb0a9
mov ebp, edx
sub ebp, dword [ecx + 0x28]
mov esi, dword [ecx + 0x2c]
sub ebp, eax
mov eax, edi
xor eax, dword [esp + 0x20]
add eax, ebp
and eax, 0xffff
imul esi, eax
test esi, esi
je 0x100fb0d3
mov eax, esi
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x100fb0d8
mov esi, edx
sub esi, dword [ecx + 0x2c]
sub esi, eax
add ebp, esi
mov eax, esi
xor esi, dword [esp + 0x10]
xor eax, ebx
mov ebx, dword [ecx + 0x30]
and esi, 0xffff
imul ebx, esi
xor edi, ebp
xor ebp, dword [esp + 0x20]
mov dword [esp + 0x20], eax
test ebx, ebx
je 0x100fb115
mov eax, ebx
shr eax, 0x10
movzx ebx, bx
sub ebx, eax
mov eax, ebx
shr eax, 0x10
sub ebx, eax
mov eax, dword [esp + 0x20]
jmp 0x100fb11c
mov ebx, edx
sub ebx, dword [ecx + 0x30]
sub ebx, esi
add eax, dword [ecx + 0x34]
add ebp, dword [ecx + 0x38]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x3c]
and edi, 0xffff
mov esi, eax
imul esi, edi
mov dword [esp + 0x10], ebx
test esi, esi
je 0x100fb14f
mov eax, esi
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x100fb155
mov esi, edx
sub esi, eax
sub esi, edi
mov edi, dword [ecx + 0x40]
mov eax, ebp
xor eax, ebx
and eax, 0xffff
imul edi, eax
test edi, edi
je 0x100fb179
mov eax, edi
shr eax, 0x10
movzx ebx, di
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x100fb17e
mov ebx, edx
sub ebx, dword [ecx + 0x40]
mov edi, dword [ecx + 0x44]
sub ebx, eax
mov eax, esi
xor eax, dword [esp + 0x20]
add eax, ebx
and eax, 0xffff
imul edi, eax
test edi, edi
je 0x100fb1a8
mov eax, edi
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x100fb1ad
mov edi, edx
sub edi, dword [ecx + 0x44]
sub edi, eax
add ebx, edi
mov eax, edi
xor edi, dword [esp + 0x10]
xor eax, ebp
mov ebp, dword [ecx + 0x48]
and edi, 0xffff
imul ebp, edi
xor esi, ebx
xor ebx, dword [esp + 0x20]
mov dword [esp + 0x20], eax
test ebp, ebp
je 0x100fb1ea
mov eax, ebp
shr eax, 0x10
movzx ebp, bp
sub ebp, eax
mov eax, ebp
shr eax, 0x10
sub ebp, eax
mov eax, dword [esp + 0x20]
jmp 0x100fb1f1
mov ebp, edx
sub ebp, dword [ecx + 0x48]
sub ebp, edi
add eax, dword [ecx + 0x4c]
add ebx, dword [ecx + 0x50]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x54]
and esi, 0xffff
mov edi, eax
imul edi, esi
mov dword [esp + 0x10], ebp
test edi, edi
je 0x100fb224
mov eax, edi
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x100fb22a
mov edi, edx
sub edi, eax
sub edi, esi
mov esi, dword [ecx + 0x58]
mov eax, ebx
xor eax, ebp
and eax, 0xffff
imul esi, eax
test esi, esi
je 0x100fb24e
mov eax, esi
shr eax, 0x10
movzx ebp, si
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x100fb253
mov ebp, edx
sub ebp, dword [ecx + 0x58]
mov esi, dword [ecx + 0x5c]
sub ebp, eax
mov eax, edi
xor eax, dword [esp + 0x20]
add eax, ebp
and eax, 0xffff
imul esi, eax
test esi, esi
je 0x100fb27d
mov eax, esi
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x100fb282
mov esi, edx
sub esi, dword [ecx + 0x5c]
sub esi, eax
add ebp, esi
mov eax, esi
xor esi, dword [esp + 0x10]
xor eax, ebx
mov ebx, dword [ecx + 0x60]
and esi, 0xffff
imul ebx, esi
xor edi, ebp
xor ebp, dword [esp + 0x20]
mov dword [esp + 0x20], eax
test ebx, ebx
je 0x100fb2bf
mov eax, ebx
shr eax, 0x10
movzx ebx, bx
sub ebx, eax
mov eax, ebx
shr eax, 0x10
sub ebx, eax
mov eax, dword [esp + 0x20]
jmp 0x100fb2c6
mov ebx, edx
sub ebx, dword [ecx + 0x60]
sub ebx, esi
add eax, dword [ecx + 0x64]
add ebp, dword [ecx + 0x68]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x6c]
and edi, 0xffff
mov esi, eax
imul esi, edi
mov dword [esp + 0x10], ebx
test esi, esi
je 0x100fb2f9
mov eax, esi
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x100fb2ff
mov esi, edx
sub esi, eax
sub esi, edi
mov edi, dword [ecx + 0x70]
mov eax, ebp
xor eax, ebx
and eax, 0xffff
imul edi, eax
test edi, edi
je 0x100fb323
mov eax, edi
shr eax, 0x10
movzx ebx, di
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x100fb328
mov ebx, edx
sub ebx, dword [ecx + 0x70]
mov edi, dword [ecx + 0x74]
sub ebx, eax
mov eax, esi
xor eax, dword [esp + 0x20]
add eax, ebx
and eax, 0xffff
imul edi, eax
test edi, edi
je 0x100fb352
mov eax, edi
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x100fb357
mov edi, edx
sub edi, dword [ecx + 0x74]
sub edi, eax
add ebx, edi
mov eax, edi
xor edi, dword [esp + 0x10]
xor eax, ebp
mov ebp, dword [ecx + 0x78]
and edi, 0xffff
imul ebp, edi
xor esi, ebx
xor ebx, dword [esp + 0x20]
mov dword [esp + 0x20], eax
test ebp, ebp
je 0x100fb394
mov eax, ebp
shr eax, 0x10
movzx ebp, bp
sub ebp, eax
mov eax, ebp
shr eax, 0x10
sub ebp, eax
mov eax, dword [esp + 0x20]
jmp 0x100fb39b
mov ebp, edx
sub ebp, dword [ecx + 0x78]
sub ebp, edi
add eax, dword [ecx + 0x7c]
add ebx, dword [ecx + 0x80]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x84]
and esi, 0xffff
mov edi, eax
imul edi, esi
mov dword [esp + 0x10], ebp
test edi, edi
je 0x100fb3d4
mov eax, edi
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x100fb3da
mov edi, edx
sub edi, eax
sub edi, esi
mov esi, dword [ecx + 0x88]
mov eax, ebx
xor eax, ebp
and eax, 0xffff
imul esi, eax
test esi, esi
je 0x100fb401
mov eax, esi
shr eax, 0x10
movzx ebp, si
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x100fb409
mov ebp, edx
sub ebp, dword [ecx + 0x88]
mov esi, dword [ecx + 0x8c]
sub ebp, eax
mov eax, edi
xor eax, dword [esp + 0x20]
add eax, ebp
and eax, 0xffff
imul esi, eax
test esi, esi
je 0x100fb436
mov eax, esi
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x100fb43e
mov esi, edx
sub esi, dword [ecx + 0x8c]
sub esi, eax
add ebp, esi
mov eax, esi
xor esi, dword [esp + 0x10]
xor eax, ebx
mov ebx, dword [ecx + 0x90]
and esi, 0xffff
imul ebx, esi
xor edi, ebp
xor ebp, dword [esp + 0x20]
mov dword [esp + 0x20], eax
test ebx, ebx
je 0x100fb47e
mov eax, ebx
shr eax, 0x10
movzx ebx, bx
sub ebx, eax
mov eax, ebx
shr eax, 0x10
sub ebx, eax
mov eax, dword [esp + 0x20]
jmp 0x100fb488
mov ebx, edx
sub ebx, dword [ecx + 0x90]
sub ebx, esi
add eax, dword [ecx + 0x94]
add ebp, dword [ecx + 0x98]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x9c]
and edi, 0xffff
mov esi, eax
imul esi, edi
mov dword [esp + 0x10], ebx
test esi, esi
je 0x100fb4c4
mov eax, esi
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x100fb4ca
mov esi, edx
sub esi, eax
sub esi, edi
mov edi, dword [ecx + 0xa0]
mov eax, ebp
xor eax, ebx
and eax, 0xffff
imul edi, eax
test edi, edi
je 0x100fb4f1
mov eax, edi
shr eax, 0x10
movzx ebx, di
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x100fb4f9
mov ebx, edx
sub ebx, dword [ecx + 0xa0]
mov edi, dword [ecx + 0xa4]
sub ebx, eax
mov eax, esi
xor eax, dword [esp + 0x20]
add eax, ebx
and eax, 0xffff
imul edi, eax
test edi, edi
je 0x100fb526
mov eax, edi
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x100fb52e
mov edi, edx
sub edi, dword [ecx + 0xa4]
sub edi, eax
add ebx, edi
mov eax, edi
xor edi, dword [esp + 0x10]
xor eax, ebp
mov ebp, dword [ecx + 0xa8]
and edi, 0xffff
imul ebp, edi
xor esi, ebx
xor ebx, dword [esp + 0x20]
mov dword [esp + 0x20], eax
test ebp, ebp
je 0x100fb56e
mov eax, ebp
shr eax, 0x10
movzx ebp, bp
sub ebp, eax
mov eax, ebp
shr eax, 0x10
sub ebp, eax
mov eax, dword [esp + 0x20]
jmp 0x100fb578
mov ebp, edx
sub ebp, dword [ecx + 0xa8]
sub ebp, edi
add eax, dword [ecx + 0xac]
add ebx, dword [ecx + 0xb0]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0xb4]
and esi, 0xffff
mov edi, eax
imul edi, esi
mov dword [esp + 0x10], ebp
test edi, edi
je 0x100fb5b4
mov eax, edi
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x100fb5ba
mov edi, edx
sub edi, eax
sub edi, esi
mov esi, dword [ecx + 0xb8]
mov eax, ebx
xor eax, ebp
and eax, 0xffff
imul esi, eax
test esi, esi
je 0x100fb5e1
mov eax, esi
shr eax, 0x10
movzx ebp, si
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x100fb5e9
mov ebp, edx
sub ebp, dword [ecx + 0xb8]
mov esi, dword [ecx + 0xbc]
sub ebp, eax
mov eax, edi
xor eax, dword [esp + 0x20]
add eax, ebp
and eax, 0xffff
imul esi, eax
test esi, esi
je 0x100fb616
mov eax, esi
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x100fb61e
mov esi, edx
sub esi, dword [ecx + 0xbc]
sub esi, eax
mov eax, esi
xor eax, ebx
add ebp, esi
xor esi, dword [esp + 0x10]
mov dword [esp + 0x14], eax
mov eax, dword [ecx + 0xc0]
and esi, 0xffff
mov ebx, eax
imul ebx, esi
xor edi, ebp
xor ebp, dword [esp + 0x20]
mov dword [esp + 0x20], esi
test ebx, ebx
je 0x100fb660
mov eax, ebx
shr eax, 0x10
movzx esi, bx
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x100fb668
mov esi, edx
sub esi, eax
sub esi, dword [esp + 0x20]
mov eax, dword [ecx + 0xc4]
mov ebx, dword [ecx + 0xc8]
add ebx, dword [esp + 0x14]
add eax, ebp
mov ebp, dword [ecx + 0xcc]
and edi, 0xffff
mov ecx, ebp
imul ecx, edi
mov dword [esp + 0x20], eax
test ecx, ecx
je 0x100fb6aa
mov eax, ecx
shr eax, 0x10
movzx edx, cx
sub edx, eax
mov eax, edx
shr eax, 0x10
sub edx, eax
mov eax, dword [esp + 0x20]
jmp 0x100fb6ae
sub edx, ebp
sub edx, edi
mov ecx, dword [esp + 0x1c]
movzx eax, ax
shl esi, 0x10
or eax, esi
mov dword [ecx], eax
pop edi
movzx eax, dx
shl ebx, 0x10
pop esi
or ebx, eax
pop ebp
mov dword [ecx + 4], ebx
pop ebx
add esp, 8
ret