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

Disassembly:
jmp 0x101048b0
mov eax, 8
call fcn.101704b0
mov eax, dword [esp + 0xc]
mov edx, 1
mov ecx, dword [esp + 0x10]
push ebx
push ebp
push esi
mov esi, dword [eax]
mov ecx, dword [ecx]
push edi
mov edi, dword [eax + 4]
mov eax, esi
shr eax, 0x10
mov ebx, edi
imul ecx, eax
shr ebx, 0x10
test ecx, ecx
je 0x101048f4
mov eax, ecx
movzx ebp, cx
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x101048fc
mov ecx, dword [esp + 0x20]
mov ebp, edx
sub ebp, dword [ecx]
mov ecx, dword [esp + 0x20]
sub ebp, eax
and edi, 0xffff
add esi, dword [ecx + 4]
mov eax, dword [ecx + 0xc]
add ebx, dword [ecx + 8]
mov dword [esp + 0x20], esi
mov esi, eax
imul esi, edi
mov dword [esp + 0x10], ebx
test esi, esi
je 0x10104935
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x1010493b
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 0x1010495f
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x10104964
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 0x1010498e
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x10104993
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 0x101049d0
mov eax, ebp
movzx ebp, bp
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
sub ebp, eax
mov eax, dword [esp + 0x20]
jmp 0x101049d7
mov ebp, edx
sub ebp, dword [ecx + 0x18]
sub ebp, edi
add eax, dword [ecx + 0x1c]
and esi, 0xffff
add ebx, dword [ecx + 0x20]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x24]
mov edi, eax
imul edi, esi
mov dword [esp + 0x10], ebp
test edi, edi
je 0x10104a0a
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x10104a10
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 0x10104a34
mov eax, esi
movzx ebp, si
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x10104a39
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 0x10104a63
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x10104a68
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 0x10104aa5
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
sub ebx, eax
mov eax, dword [esp + 0x20]
jmp 0x10104aac
mov ebx, edx
sub ebx, dword [ecx + 0x30]
sub ebx, esi
add eax, dword [ecx + 0x34]
and edi, 0xffff
add ebp, dword [ecx + 0x38]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x3c]
mov esi, eax
imul esi, edi
mov dword [esp + 0x10], ebx
test esi, esi
je 0x10104adf
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x10104ae5
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 0x10104b09
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x10104b0e
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 0x10104b38
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x10104b3d
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 0x10104b7a
mov eax, ebp
movzx ebp, bp
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
sub ebp, eax
mov eax, dword [esp + 0x20]
jmp 0x10104b81
mov ebp, edx
sub ebp, dword [ecx + 0x48]
sub ebp, edi
add eax, dword [ecx + 0x4c]
and esi, 0xffff
add ebx, dword [ecx + 0x50]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x54]
mov edi, eax
imul edi, esi
mov dword [esp + 0x10], ebp
test edi, edi
je 0x10104bb4
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x10104bba
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 0x10104bde
mov eax, esi
movzx ebp, si
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x10104be3
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 0x10104c0d
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x10104c12
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 0x10104c4f
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
sub ebx, eax
mov eax, dword [esp + 0x20]
jmp 0x10104c56
mov ebx, edx
sub ebx, dword [ecx + 0x60]
sub ebx, esi
add eax, dword [ecx + 0x64]
and edi, 0xffff
add ebp, dword [ecx + 0x68]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x6c]
mov esi, eax
imul esi, edi
mov dword [esp + 0x10], ebx
test esi, esi
je 0x10104c89
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x10104c8f
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 0x10104cb3
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x10104cb8
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 0x10104ce2
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x10104ce7
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 0x10104d24
mov eax, ebp
movzx ebp, bp
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
sub ebp, eax
mov eax, dword [esp + 0x20]
jmp 0x10104d2b
mov ebp, edx
sub ebp, dword [ecx + 0x78]
sub ebp, edi
add eax, dword [ecx + 0x7c]
and esi, 0xffff
add ebx, dword [ecx + 0x80]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x84]
mov edi, eax
imul edi, esi
mov dword [esp + 0x10], ebp
test edi, edi
je 0x10104d64
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x10104d6a
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 0x10104d91
mov eax, esi
movzx ebp, si
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x10104d99
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 0x10104dc6
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x10104dce
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 0x10104e0e
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
sub ebx, eax
mov eax, dword [esp + 0x20]
jmp 0x10104e18
mov ebx, edx
sub ebx, dword [ecx + 0x90]
sub ebx, esi
add eax, dword [ecx + 0x94]
and edi, 0xffff
add ebp, dword [ecx + 0x98]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0x9c]
mov esi, eax
imul esi, edi
mov dword [esp + 0x10], ebx
test esi, esi
je 0x10104e54
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x10104e5a
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 0x10104e81
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x10104e89
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 0x10104eb6
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x10104ebe
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 0x10104efe
mov eax, ebp
movzx ebp, bp
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
sub ebp, eax
mov eax, dword [esp + 0x20]
jmp 0x10104f08
mov ebp, edx
sub ebp, dword [ecx + 0xa8]
sub ebp, edi
add eax, dword [ecx + 0xac]
and esi, 0xffff
add ebx, dword [ecx + 0xb0]
mov dword [esp + 0x20], eax
mov eax, dword [ecx + 0xb4]
mov edi, eax
imul edi, esi
mov dword [esp + 0x10], ebp
test edi, edi
je 0x10104f44
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x10104f4a
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 0x10104f71
mov eax, esi
movzx ebp, si
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x10104f79
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 0x10104fa6
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x10104fae
mov esi, edx
sub esi, dword [ecx + 0xbc]
sub esi, eax
mov eax, esi
add ebp, esi
xor esi, dword [esp + 0x10]
xor eax, ebx
mov dword [esp + 0x14], eax
and esi, 0xffff
mov eax, dword [ecx + 0xc0]
xor edi, ebp
xor ebp, dword [esp + 0x20]
mov ebx, eax
imul ebx, esi
mov dword [esp + 0x20], esi
test ebx, ebx
je 0x10104ff0
mov eax, ebx
movzx esi, bx
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x10104ff8
mov esi, edx
sub esi, eax
sub esi, dword [esp + 0x20]
mov eax, dword [ecx + 0xc4]
and edi, 0xffff
mov ebx, dword [ecx + 0xc8]
add eax, ebp
mov ebp, dword [ecx + 0xcc]
mov ecx, ebp
add ebx, dword [esp + 0x14]
imul ecx, edi
mov dword [esp + 0x20], eax
test ecx, ecx
je 0x1010503a
mov eax, ecx
movzx edx, cx
shr eax, 0x10
sub edx, eax
mov eax, edx
shr eax, 0x10
sub edx, eax
mov eax, dword [esp + 0x20]
jmp 0x1010503e
sub edx, ebp
sub edx, edi
mov ecx, dword [esp + 0x1c]
shl esi, 0x10
movzx eax, ax
or eax, esi
shl ebx, 0x10
pop edi
mov dword [ecx], eax
movzx eax, dx
pop esi
or ebx, eax
pop ebp
mov dword [ecx + 4], ebx
pop ebx
add esp, 8
ret