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

Disassembly:
mov eax, 4
call fcn.005c5c30
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 0x518f61
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x518f68
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 0x518f97
mov esi, ecx
movzx edi, cx
shr esi, 0x10
sub edi, esi
mov ecx, edi
shr ecx, 0x10
sub edi, ecx
jmp 0x518fa1
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 0x518fc8
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x518fcf
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 0x518ff8
mov esi, ecx
shr esi, 0x10
movzx ecx, cx
sub ecx, esi
mov esi, ecx
shr esi, 0x10
jmp 0x519000
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 0x51903b
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 0x519048
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 0x519077
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x519080
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 0x5190a9
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x5190b0
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 0x5190d9
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x5190e5
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 0x519120
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 0x51912d
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 0x51915c
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x519165
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 0x519190
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x519197
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 0x5191c2
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x5191c9
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 0x519206
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 0x519213
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 0x519242
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x51924b
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 0x519276
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x51927d
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 0x5192a8
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x5192af
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 0x5192ec
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 0x5192f9
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 0x519328
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x519331
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 0x51935c
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x519363
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 0x51938e
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x519395
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 0x5193d2
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 0x5193df
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 0x519414
mov edx, ecx
movzx ebp, cx
shr edx, 0x10
sub ebp, edx
mov ecx, ebp
shr ecx, 0x10
sub ebp, ecx
jmp 0x51941d
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 0x51944b
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x519452
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 0x519480
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x519487
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 0x5194c7
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 0x5194d4
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 0x51950c
mov edx, ecx
movzx ebx, cx
shr edx, 0x10
sub ebx, edx
mov ecx, ebx
shr ecx, 0x10
sub ebx, ecx
jmp 0x519515
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 0x519543
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x51954a
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 0x519578
mov edi, ecx
shr edi, 0x10
movzx ecx, cx
sub ecx, edi
mov edi, ecx
shr edi, 0x10
jmp 0x51957f
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 0x5195bf
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 0x5195cc
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 0x519604
mov edx, ecx
movzx edi, cx
shr edx, 0x10
sub edi, edx
mov ecx, edi
shr ecx, 0x10
sub edi, ecx
jmp 0x51960d
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 0x519639
mov ecx, edx
shr ecx, 0x10
movzx edx, dx
sub edx, ecx
mov ecx, edx
shr ecx, 0x10
jmp 0x519640
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 0x51966c
mov ebx, ecx
shr ebx, 0x10
movzx ecx, cx
sub ecx, ebx
mov ebx, ecx
shr ebx, 0x10
jmp 0x51967b
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 0x5196b7
mov ecx, edx
movzx ebp, dx
shr ecx, 0x10
sub ebp, ecx
mov edx, ebp
shr edx, 0x10
sub ebp, edx
jmp 0x5196c0
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 0x5196fa
mov eax, edx
shr eax, 0x10
movzx edx, dx
sub edx, eax
mov eax, edx
shr eax, 0x10
sub edx, eax
jmp 0x519703
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