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

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
sub esp, 0x14
mov ecx, dword [ebp + 0xc]
mov edx, 1
push ebx
mov ecx, dword [ecx]
push esi
mov esi, dword [eax + 4]
push edi
mov edi, dword [eax]
mov eax, edi
shr eax, 0x10
imul ecx, eax
shr esi, 0x10
test ecx, ecx
je 0x57f3bb
mov eax, ecx
movzx ebx, cx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x57f3c2
mov ecx, dword [ebp + 0xc]
mov ebx, edx
sub ebx, dword [ecx]
mov ecx, dword [ebp + 0xc]
sub ebx, eax
add esi, dword [ecx + 8]
add edi, dword [ecx + 4]
mov dword [ebp - 4], esi
mov esi, dword [ebp + 8]
mov dword [ebp - 8], edi
mov eax, dword [esi + 4]
mov esi, dword [ecx + 0xc]
movzx eax, ax
imul esi, eax
test esi, esi
je 0x57f3f7
mov eax, esi
movzx edi, si
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x57f3fc
mov edi, edx
sub edi, dword [ecx + 0xc]
mov esi, dword [ecx + 0x10]
sub edi, eax
mov eax, dword [ebp - 4]
xor eax, ebx
movzx eax, ax
imul esi, eax
test esi, esi
je 0x57f421
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x57f426
mov esi, edx
sub esi, dword [ecx + 0x10]
sub esi, eax
mov eax, edi
xor eax, dword [ebp - 8]
add eax, esi
movzx eax, ax
mov dword [ebp + 0xc], eax
mov eax, dword [ecx + 0x14]
imul eax, dword [ebp + 0xc]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x57f463
mov edx, dword [ebp - 0xc]
shr eax, 0x10
movzx edx, dx
sub edx, eax
mov eax, edx
mov dword [ebp + 0xc], edx
shr eax, 0x10
mov edx, 1
sub dword [ebp + 0xc], eax
mov eax, dword [ebp + 0xc]
jmp 0x57f46b
mov eax, edx
sub eax, dword [ecx + 0x14]
sub eax, dword [ebp + 0xc]
xor dword [ebp - 4], eax
add esi, eax
xor edi, esi
xor eax, ebx
mov ebx, dword [ecx + 0x18]
xor esi, dword [ebp - 8]
mov dword [ebp + 0xc], edi
movzx edi, ax
imul ebx, edi
test ebx, ebx
je 0x57f49d
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
sub ebx, eax
mov dword [ebp - 8], ebx
jmp 0x57f4a7
mov eax, edx
sub eax, dword [ecx + 0x18]
sub eax, edi
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
add eax, dword [ecx + 0x1c]
mov edi, dword [ebp + 0xc]
add esi, dword [ecx + 0x20]
mov dword [ebp - 4], eax
movzx eax, di
mov edi, dword [ecx + 0x24]
imul edi, eax
mov dword [ebp - 0x10], esi
test edi, edi
je 0x57f4d7
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x57f4dc
mov ebx, edx
sub ebx, dword [ecx + 0x24]
mov edi, dword [ecx + 0x28]
sub ebx, eax
mov eax, esi
xor eax, dword [ebp - 8]
movzx eax, ax
imul edi, eax
test edi, edi
je 0x57f501
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x57f506
mov edi, edx
sub edi, dword [ecx + 0x28]
sub edi, eax
mov eax, ebx
xor eax, dword [ebp - 4]
add eax, edi
movzx eax, ax
mov dword [ebp + 0xc], eax
mov eax, dword [ecx + 0x2c]
imul eax, dword [ebp + 0xc]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x57f541
mov esi, dword [ebp - 0xc]
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
mov dword [ebp + 0xc], esi
mov esi, dword [ebp - 0x10]
shr eax, 0x10
sub dword [ebp + 0xc], eax
mov eax, dword [ebp + 0xc]
jmp 0x57f549
mov eax, edx
sub eax, dword [ecx + 0x2c]
sub eax, dword [ebp + 0xc]
add edi, eax
mov dword [ebp + 0xc], eax
xor dword [ebp + 0xc], esi
xor ebx, edi
xor eax, dword [ebp - 8]
mov esi, dword [ecx + 0x30]
xor edi, dword [ebp - 4]
movzx eax, ax
imul esi, eax
test esi, esi
je 0x57f577
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x57f57c
mov esi, edx
sub esi, dword [ecx + 0x30]
add edi, dword [ecx + 0x38]
sub esi, eax
mov eax, dword [ebp + 0xc]
add eax, dword [ecx + 0x34]
mov dword [ebp + 0xc], eax
movzx eax, bx
mov ebx, dword [ecx + 0x3c]
imul ebx, eax
mov dword [ebp - 0xc], esi
mov dword [ebp - 0x14], edi
test ebx, ebx
je 0x57f5ae
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x57f5b3
mov ebx, edx
sub ebx, dword [ecx + 0x3c]
sub ebx, eax
mov eax, edi
xor eax, esi
mov esi, dword [ecx + 0x40]
movzx eax, ax
imul esi, eax
test esi, esi
je 0x57f5d7
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x57f5dc
mov esi, edx
sub esi, dword [ecx + 0x40]
sub esi, eax
mov eax, ebx
xor eax, dword [ebp + 0xc]
add eax, esi
movzx eax, ax
mov dword [ebp - 8], eax
mov eax, dword [ecx + 0x44]
imul eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
test eax, eax
je 0x57f617
mov edi, dword [ebp - 0x10]
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
mov dword [ebp - 4], edi
mov edi, dword [ebp - 0x14]
shr eax, 0x10
sub dword [ebp - 4], eax
mov eax, dword [ebp - 4]
jmp 0x57f61f
mov eax, edx
sub eax, dword [ecx + 0x44]
sub eax, dword [ebp - 8]
add esi, eax
xor ebx, esi
xor esi, dword [ebp + 0xc]
mov dword [ebp + 0xc], eax
xor dword [ebp + 0xc], edi
xor eax, dword [ebp - 0xc]
mov edi, dword [ecx + 0x48]
movzx eax, ax
imul edi, eax
test edi, edi
je 0x57f64d
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x57f652
mov edi, edx
sub edi, dword [ecx + 0x48]
add esi, dword [ecx + 0x50]
sub edi, eax
mov eax, dword [ebp + 0xc]
add eax, dword [ecx + 0x4c]
mov dword [ebp + 0xc], eax
movzx eax, bx
mov ebx, dword [ecx + 0x54]
imul ebx, eax
mov dword [ebp - 8], edi
mov dword [ebp - 0x10], esi
test ebx, ebx
je 0x57f684
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x57f689
mov ebx, edx
sub ebx, dword [ecx + 0x54]
sub ebx, eax
mov eax, esi
xor eax, edi
mov edi, dword [ecx + 0x58]
movzx eax, ax
imul edi, eax
test edi, edi
je 0x57f6ad
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x57f6b2
mov edi, edx
sub edi, dword [ecx + 0x58]
sub edi, eax
mov eax, ebx
xor eax, dword [ebp + 0xc]
add eax, edi
movzx eax, ax
mov dword [ebp - 0xc], eax
mov eax, dword [ecx + 0x5c]
imul eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x57f6ed
mov esi, dword [ebp - 0x14]
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
mov dword [ebp - 4], esi
mov esi, dword [ebp - 0x10]
shr eax, 0x10
sub dword [ebp - 4], eax
mov eax, dword [ebp - 4]
jmp 0x57f6f5
mov eax, edx
sub eax, dword [ecx + 0x5c]
sub eax, dword [ebp - 0xc]
add edi, eax
xor ebx, edi
xor edi, dword [ebp + 0xc]
mov dword [ebp + 0xc], eax
xor dword [ebp + 0xc], esi
xor eax, dword [ebp - 8]
mov esi, dword [ecx + 0x60]
movzx eax, ax
imul esi, eax
test esi, esi
je 0x57f723
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x57f728
mov esi, edx
sub esi, dword [ecx + 0x60]
add edi, dword [ecx + 0x68]
sub esi, eax
mov eax, dword [ebp + 0xc]
add eax, dword [ecx + 0x64]
mov dword [ebp + 0xc], eax
movzx eax, bx
mov ebx, dword [ecx + 0x6c]
imul ebx, eax
mov dword [ebp - 8], esi
mov dword [ebp - 0x10], edi
test ebx, ebx
je 0x57f75a
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x57f75f
mov ebx, edx
sub ebx, dword [ecx + 0x6c]
sub ebx, eax
mov eax, edi
xor eax, esi
mov esi, dword [ecx + 0x70]
movzx eax, ax
imul esi, eax
test esi, esi
je 0x57f783
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x57f788
mov esi, edx
sub esi, dword [ecx + 0x70]
sub esi, eax
mov eax, ebx
xor eax, dword [ebp + 0xc]
add eax, esi
movzx eax, ax
mov dword [ebp - 0xc], eax
mov eax, dword [ecx + 0x74]
imul eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x57f7c3
mov edi, dword [ebp - 0x14]
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
mov dword [ebp - 4], edi
mov edi, dword [ebp - 0x10]
shr eax, 0x10
sub dword [ebp - 4], eax
mov eax, dword [ebp - 4]
jmp 0x57f7cb
mov eax, edx
sub eax, dword [ecx + 0x74]
sub eax, dword [ebp - 0xc]
add esi, eax
xor ebx, esi
xor esi, dword [ebp + 0xc]
mov dword [ebp + 0xc], eax
xor dword [ebp + 0xc], edi
xor eax, dword [ebp - 8]
mov edi, dword [ecx + 0x78]
movzx eax, ax
imul edi, eax
test edi, edi
je 0x57f7f9
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x57f7fe
mov edi, edx
sub edi, dword [ecx + 0x78]
add esi, dword [ecx + 0x80]
sub edi, eax
mov eax, dword [ebp + 0xc]
add eax, dword [ecx + 0x7c]
mov dword [ebp + 0xc], eax
movzx eax, bx
mov ebx, dword [ecx + 0x84]
imul ebx, eax
mov dword [ebp - 8], edi
mov dword [ebp - 0x10], esi
test ebx, ebx
je 0x57f836
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x57f83e
mov ebx, edx
sub ebx, dword [ecx + 0x84]
sub ebx, eax
mov eax, esi
xor eax, edi
mov edi, dword [ecx + 0x88]
movzx eax, ax
imul edi, eax
test edi, edi
je 0x57f865
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x57f86d
mov edi, edx
sub edi, dword [ecx + 0x88]
sub edi, eax
mov eax, ebx
xor eax, dword [ebp + 0xc]
add eax, edi
movzx eax, ax
mov dword [ebp - 0xc], eax
mov eax, dword [ecx + 0x8c]
imul eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x57f8ab
mov esi, dword [ebp - 0x14]
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
mov dword [ebp - 4], esi
mov esi, dword [ebp - 0x10]
shr eax, 0x10
sub dword [ebp - 4], eax
mov eax, dword [ebp - 4]
jmp 0x57f8b6
mov eax, edx
sub eax, dword [ecx + 0x8c]
sub eax, dword [ebp - 0xc]
add edi, eax
xor ebx, edi
xor edi, dword [ebp + 0xc]
mov dword [ebp + 0xc], eax
xor dword [ebp + 0xc], esi
xor eax, dword [ebp - 8]
mov esi, dword [ecx + 0x90]
movzx eax, ax
imul esi, eax
test esi, esi
je 0x57f8e7
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x57f8ef
mov esi, edx
sub esi, dword [ecx + 0x90]
add edi, dword [ecx + 0x98]
sub esi, eax
mov eax, dword [ebp + 0xc]
add eax, dword [ecx + 0x94]
mov dword [ebp + 0xc], eax
movzx eax, bx
mov ebx, dword [ecx + 0x9c]
imul ebx, eax
mov dword [ebp - 8], esi
mov dword [ebp - 0x10], edi
test ebx, ebx
je 0x57f92a
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x57f932
mov ebx, edx
sub ebx, dword [ecx + 0x9c]
sub ebx, eax
mov eax, edi
xor eax, esi
mov esi, dword [ecx + 0xa0]
movzx eax, ax
imul esi, eax
test esi, esi
je 0x57f959
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x57f961
mov esi, edx
sub esi, dword [ecx + 0xa0]
sub esi, eax
mov eax, ebx
xor eax, dword [ebp + 0xc]
add eax, esi
movzx eax, ax
mov dword [ebp - 0xc], eax
mov eax, dword [ecx + 0xa4]
imul eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x57f99f
mov edi, dword [ebp - 0x14]
shr eax, 0x10
movzx edi, di
sub edi, eax
mov eax, edi
mov dword [ebp - 4], edi
mov edi, dword [ebp - 0x10]
shr eax, 0x10
sub dword [ebp - 4], eax
mov eax, dword [ebp - 4]
jmp 0x57f9aa
mov eax, edx
sub eax, dword [ecx + 0xa4]
sub eax, dword [ebp - 0xc]
add esi, eax
xor ebx, esi
xor esi, dword [ebp + 0xc]
mov dword [ebp + 0xc], eax
xor dword [ebp + 0xc], edi
xor eax, dword [ebp - 8]
mov edi, dword [ecx + 0xa8]
movzx eax, ax
imul edi, eax
test edi, edi
je 0x57f9db
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x57f9e3
mov edi, edx
sub edi, dword [ecx + 0xa8]
add esi, dword [ecx + 0xb0]
sub edi, eax
mov eax, dword [ebp + 0xc]
add eax, dword [ecx + 0xac]
mov dword [ebp + 0xc], eax
movzx eax, bx
mov ebx, dword [ecx + 0xb4]
imul ebx, eax
mov dword [ebp - 8], edi
mov dword [ebp - 0x10], esi
test ebx, ebx
je 0x57fa1e
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x57fa26
mov ebx, edx
sub ebx, dword [ecx + 0xb4]
sub ebx, eax
mov eax, esi
xor eax, edi
mov edi, dword [ecx + 0xb8]
movzx eax, ax
imul edi, eax
test edi, edi
je 0x57fa4d
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x57fa55
mov edi, edx
sub edi, dword [ecx + 0xb8]
sub edi, eax
mov eax, ebx
xor eax, dword [ebp + 0xc]
add eax, edi
movzx eax, ax
mov dword [ebp - 0xc], eax
mov eax, dword [ecx + 0xbc]
imul eax, dword [ebp - 0xc]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x57fa93
mov esi, dword [ebp - 0x14]
shr eax, 0x10
movzx esi, si
sub esi, eax
mov eax, esi
mov dword [ebp - 4], esi
mov esi, dword [ebp - 0x10]
shr eax, 0x10
sub dword [ebp - 4], eax
mov eax, dword [ebp - 4]
jmp 0x57fa9e
mov eax, edx
sub eax, dword [ecx + 0xbc]
sub eax, dword [ebp - 0xc]
add edi, eax
xor ebx, edi
xor edi, dword [ebp + 0xc]
mov dword [ebp + 0xc], eax
xor dword [ebp + 0xc], esi
xor eax, dword [ebp - 8]
mov esi, dword [ecx + 0xc0]
movzx eax, ax
imul esi, eax
test esi, esi
je 0x57facf
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x57fad7
mov esi, edx
sub esi, dword [ecx + 0xc0]
sub esi, eax
movzx ebx, bx
mov eax, dword [ecx + 0xc4]
add eax, edi
mov edi, dword [ecx + 0xc8]
add edi, dword [ebp + 0xc]
mov ecx, dword [ecx + 0xcc]
mov dword [ebp + 0xc], ecx
imul ecx, ebx
mov dword [ebp - 0x14], eax
test ecx, ecx
je 0x57fb16
mov eax, ecx
movzx edx, cx
shr eax, 0x10
sub edx, eax
mov eax, edx
shr eax, 0x10
sub edx, eax
mov eax, dword [ebp - 0x14]
jmp 0x57fb1b
sub edx, dword [ebp + 0xc]
sub edx, ebx
mov ecx, dword [ebp + 8]
shl esi, 0x10
movzx eax, ax
or eax, esi
shl edi, 0x10
mov dword [ecx], eax
movzx eax, dx
or edi, eax
mov dword [ecx + 4], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret