Function at 0x4a7c20
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 0x4a7c5b
mov eax, ecx
movzx ebx, cx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a7c62
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 0x4a7c97
mov eax, esi
movzx edi, si
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a7c9c
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 0x4a7cc1
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a7cc6
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 0x4a7d03
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 0x4a7d0b
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 0x4a7d3d
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 0x4a7d47
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 0x4a7d77
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a7d7c
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 0x4a7da1
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a7da6
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 0x4a7de1
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 0x4a7de9
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 0x4a7e17
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a7e1c
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 0x4a7e4e
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a7e53
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 0x4a7e77
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a7e7c
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 0x4a7eb7
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 0x4a7ebf
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 0x4a7eed
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a7ef2
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 0x4a7f24
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a7f29
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 0x4a7f4d
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a7f52
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 0x4a7f8d
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 0x4a7f95
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 0x4a7fc3
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a7fc8
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 0x4a7ffa
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a7fff
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 0x4a8023
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a8028
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 0x4a8063
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 0x4a806b
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 0x4a8099
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a809e
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 0x4a80d6
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a80de
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 0x4a8105
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a810d
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 0x4a814b
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 0x4a8156
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 0x4a8187
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a818f
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 0x4a81ca
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a81d2
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 0x4a81f9
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a8201
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 0x4a823f
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 0x4a824a
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 0x4a827b
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a8283
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 0x4a82be
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a82c6
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 0x4a82ed
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a82f5
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 0x4a8333
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 0x4a833e
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 0x4a836f
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a8377
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 0x4a83b6
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 0x4a83bb
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