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

Disassembly:
mov eax, 4
call fcn.0043b180
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 0x46faf1
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x46faf8
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 0x46fb27
mov esi, ecx
movzx edi, cx
shr esi, 0x10
sub edi, esi
mov ecx, edi
shr ecx, 0x10
sub edi, ecx
jmp 0x46fb31
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 0x46fb58
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x46fb5f
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 0x46fb88
mov esi, ecx
shr esi, 0x10
movzx ecx, cx
sub ecx, esi
mov esi, ecx
shr esi, 0x10
jmp 0x46fb90
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 0x46fbcb
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 0x46fbd8
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 0x46fc07
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x46fc10
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 0x46fc39
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x46fc40
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 0x46fc69
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x46fc75
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 0x46fcb0
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 0x46fcbd
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 0x46fcec
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x46fcf5
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 0x46fd20
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x46fd27
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 0x46fd52
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x46fd59
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 0x46fd96
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 0x46fda3
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 0x46fdd2
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x46fddb
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 0x46fe06
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x46fe0d
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 0x46fe38
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x46fe3f
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 0x46fe7c
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 0x46fe89
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 0x46feb8
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x46fec1
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 0x46feec
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x46fef3
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 0x46ff1e
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x46ff25
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 0x46ff62
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 0x46ff6f
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 0x46ffa4
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x46ffad
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 0x46ffdb
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x46ffe2
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 0x470010
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x470017
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 0x470057
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 0x470064
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 0x47009c
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x4700a5
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 0x4700d3
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x4700da
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 0x470108
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x47010f
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 0x47014f
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 0x47015c
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 0x470194
mov edx, ecx
movzx edi, cx
shr edx, 0x10
sub edi, edx
mov ecx, edi
shr ecx, 0x10
sub edi, ecx
jmp 0x47019d
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 0x4701c9
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x4701d0
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 0x4701fc
mov ebx, ecx
shr ebx, 0x10
movzx ecx, cx
sub ecx, ebx
mov ebx, ecx
shr ebx, 0x10
jmp 0x47020b
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 0x470247
mov ecx, edx
movzx ebp, dx
shr ecx, 0x10
sub ebp, ecx
mov edx, ebp
shr edx, 0x10
sub ebp, edx
jmp 0x470250
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 0x47028a
mov eax, edx
shr eax, 0x10
movzx edx, dx
sub edx, eax
mov eax, edx
shr eax, 0x10
sub edx, eax
jmp 0x470293
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