Function at 0x4a5be0
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 0x4a5c1b
mov eax, ecx
movzx ebx, cx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a5c22
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 0x4a5c57
mov eax, esi
movzx edi, si
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a5c5c
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 0x4a5c81
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a5c86
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 0x4a5cc3
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 0x4a5ccb
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 0x4a5cfd
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 0x4a5d07
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 0x4a5d37
mov eax, edi
movzx ebx, di
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a5d3c
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 0x4a5d61
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a5d66
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 0x4a5da1
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 0x4a5da9
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 0x4a5dd7
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a5ddc
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 0x4a5e0e
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a5e13
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 0x4a5e37
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a5e3c
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 0x4a5e77
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 0x4a5e7f
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 0x4a5ead
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a5eb2
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 0x4a5ee4
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a5ee9
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 0x4a5f0d
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a5f12
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 0x4a5f4d
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 0x4a5f55
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 0x4a5f83
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a5f88
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 0x4a5fba
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a5fbf
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 0x4a5fe3
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a5fe8
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 0x4a6023
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 0x4a602b
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 0x4a6059
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a605e
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 0x4a6096
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a609e
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 0x4a60c5
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a60cd
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 0x4a610b
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 0x4a6116
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 0x4a6147
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a614f
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 0x4a618a
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a6192
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 0x4a61b9
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a61c1
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 0x4a61ff
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 0x4a620a
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 0x4a623b
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a6243
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 0x4a627e
mov eax, ebx
movzx ebx, bx
shr eax, 0x10
sub ebx, eax
mov eax, ebx
shr eax, 0x10
jmp 0x4a6286
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 0x4a62ad
mov eax, edi
movzx edi, di
shr eax, 0x10
sub edi, eax
mov eax, edi
shr eax, 0x10
jmp 0x4a62b5
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 0x4a62f3
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 0x4a62fe
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 0x4a632f
mov eax, esi
movzx esi, si
shr eax, 0x10
sub esi, eax
mov eax, esi
shr eax, 0x10
jmp 0x4a6337
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 0x4a6376
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 0x4a637b
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