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

Disassembly:
mov eax, 8
call fcn.005b9970
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 0x551334
mov eax, ecx
movzx ebp, cx
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x55133c
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 0x551375
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x55137b
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 0x55139f
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x5513a4
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 0x5513ce
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x5513d3
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 0x551410
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 0x551417
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 0x55144a
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x551450
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 0x551474
mov eax, esi
movzx ebp, si
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x551479
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 0x5514a3
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x5514a8
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 0x5514e5
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 0x5514ec
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 0x55151f
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x551525
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 0x551549
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x55154e
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 0x551578
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x55157d
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 0x5515ba
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 0x5515c1
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 0x5515f4
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x5515fa
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 0x55161e
mov eax, esi
movzx ebp, si
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x551623
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 0x55164d
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x551652
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 0x55168f
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 0x551696
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 0x5516c9
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x5516cf
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 0x5516f3
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x5516f8
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 0x551722
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x551727
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 0x551764
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 0x55176b
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 0x5517a4
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x5517aa
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 0x5517d1
mov eax, esi
movzx ebp, si
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x5517d9
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 0x551806
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x55180e
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 0x55184e
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 0x551858
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 0x551894
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x55189a
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 0x5518c1
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x5518c9
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 0x5518f6
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x5518fe
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 0x55193e
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 0x551948
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 0x551984
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
sub edi, eax
jmp 0x55198a
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 0x5519b1
mov eax, esi
movzx ebp, si
shr eax, 0x10
sub ebp, eax
mov eax, ebp
shr eax, 0x10
jmp 0x5519b9
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 0x5519e6
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x5519ee
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 0x551a30
mov eax, ebx
movzx esi, bx
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
sub esi, eax
jmp 0x551a38
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 0x551a7a
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 0x551a7e
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