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

Disassembly:
mov eax, 4
call fcn.005b2630
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 0x5059e1
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x5059e8
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 0x505a17
mov esi, ecx
movzx edi, cx
shr esi, 0x10
sub edi, esi
mov ecx, edi
shr ecx, 0x10
sub edi, ecx
jmp 0x505a21
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 0x505a48
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x505a4f
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 0x505a78
mov esi, ecx
shr esi, 0x10
movzx ecx, cx
sub ecx, esi
mov esi, ecx
shr esi, 0x10
jmp 0x505a80
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 0x505abb
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 0x505ac8
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 0x505af7
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x505b00
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 0x505b29
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x505b30
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 0x505b59
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x505b65
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 0x505ba0
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 0x505bad
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 0x505bdc
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x505be5
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 0x505c10
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x505c17
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 0x505c42
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x505c49
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 0x505c86
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 0x505c93
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 0x505cc2
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x505ccb
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 0x505cf6
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x505cfd
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 0x505d28
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x505d2f
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 0x505d6c
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 0x505d79
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 0x505da8
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x505db1
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 0x505ddc
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x505de3
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 0x505e0e
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x505e15
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 0x505e52
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 0x505e5f
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 0x505e94
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x505e9d
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 0x505ecb
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x505ed2
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 0x505f00
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x505f07
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 0x505f47
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 0x505f54
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 0x505f8c
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x505f95
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 0x505fc3
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x505fca
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 0x505ff8
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x505fff
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 0x50603f
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 0x50604c
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 0x506084
mov edx, ecx
movzx edi, cx
shr edx, 0x10
sub edi, edx
mov ecx, edi
shr ecx, 0x10
sub edi, ecx
jmp 0x50608d
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 0x5060b9
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x5060c0
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 0x5060ec
mov ebx, ecx
shr ebx, 0x10
movzx ecx, cx
sub ecx, ebx
mov ebx, ecx
shr ebx, 0x10
jmp 0x5060fb
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 0x506137
mov ecx, edx
movzx ebp, dx
shr ecx, 0x10
sub ebp, ecx
mov edx, ebp
shr edx, 0x10
sub ebp, edx
jmp 0x506140
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 0x50617a
mov eax, edx
shr eax, 0x10
movzx edx, dx
sub edx, eax
mov eax, edx
shr eax, 0x10
sub edx, eax
jmp 0x506183
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