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

Disassembly:
mov eax, 0x5d12b5
call fcn.005a39e4
sub esp, 0x10
push ebx
push ebp
push esi
push edi
mov esi, ecx
push 1
xor edi, edi
cmp dword [esi + 0x18fc], edi
pop ebx
mov dword [esi + 0x1968], ebx
jne 0x4a7e17
call fcn.00518e35
mov dword [0x641b28], eax
mov edx, dword [0x641b28]
mov ecx, ebx
call fcn.00518e48
cmp dword [0x6480d8], edi
je 0x4a7e3b
mov ecx, dword [esi + 0x1964]
cmp ecx, edi
je 0x4a7e3b
call fcn.004b32ff
cmp dword [esi + 0xb0], edi
jne 0x4a7e61
push 5
push 0x14
mov ecx, 0x635ae0
call fcn.004bc6d4
cmp eax, edi
mov dword [esi + 0xb0], eax
je 0x4a7e61
mov dword [eax + 0x140], esi
mov eax, dword [esi + 0x1ad0]
mov dword [eax + 0x10], edi
mov eax, dword [esi + 0x1980]
or ebp, 0xffffffff
cmp dword [eax], 2
mov dword [0x635050], ebp
mov dword [0x635aac], edi
jne 0x4a7e8e
mov ecx, 0x630248
call fcn.004c1f61
mov ecx, esi
call fcn.004a8efe
mov ecx, dword [esi + 0x1980]
call fcn.0049ef66
mov ecx, esi
call fcn.004aedc6
mov eax, dword [esi + 0x1980]
mov ebx, dword [esi + 0x1988]
xor edx, edx
cmp dword [eax], 0x80
mov eax, dword [eax + 0x10eb0]
setne dl
lea ecx, [esi + 0x1988]
and ebx, 0xffff
shl edx, 0x10
or edx, ebx
cmp eax, edi
mov dword [ecx], edx
je 0x4a7ee2
mov ecx, eax
call fcn.00556198
cmp dword [esi + 0x18f4], edi
jne 0x4a7f19
push dword [0x64ae18]
mov ecx, esi
push 0x64adf8
push 0x600550
call fcn.0049a877
push ebp
push 0x64ae00
push 0x60ba14
mov ecx, esi
call fcn.0049a877
mov dword [0x649040], ebp
push dword [esi + 0x18fc]
mov ecx, esi
push 0x64adf4
push 0x60badc
call fcn.0049a877
cmp dword [esi + 0x18fc], edi
jne 0x4a7f4a
push ebp
push 0x64adfc
push 0x60ba48
mov ecx, esi
call fcn.0049a877
mov ecx, esi
call fcn.004a84d0
mov ecx, esi
call fcn.004a8467
mov eax, dword [esi + 0x1ad4]
and byte [eax], 0
mov ecx, dword [esi + 0x1908]
and byte [eax + 1], 0
cmp ecx, edi
je 0x4a7f74
call fcn.0046b4da
mov ecx, dword [0x62fa20]
push 1
call fcn.0046aff2
mov eax, dword [esi + 0x1980]
test byte [eax], 0x80
push 0x20
pop ebx
mov ebp, 0xffff00
je 0x4a7fbc
mov ecx, dword [0x62fa20]
push edi
push ebp
push edi
push edi
push 0x60bad0
push edi
call fcn.0046ae22
cmp eax, edi
je 0x4a7fbc
mov word [eax + 0x4a], 2
mov dword [eax + 8], edi
mov dword [eax + 0x3c], edi
mov dword [eax + 0x44], ebx
cmp dword [0x64ae18], 6
jne 0x4a8006
mov ecx, dword [0x63cef0]
push 0x60bac0
call fcn.004e0444
cmp eax, edi
je 0x4a8006
mov ecx, dword [0x62fa20]
push edi
push ebp
push 2
push 0x800000
push eax
push edi
call fcn.0046ae22
cmp eax, edi
je 0x4a8006
mov word [eax + 0x4a], 2
mov dword [eax + 8], edi
mov dword [eax + 0x3c], 0x10
mov dword [eax + 0x44], ebx
cmp dword [0x64af4c], 1
jne 0x4a809d
lea ecx, [esp + 0x14]
call fcn.0044f278
lea eax, [esp + 0x14]
push eax
mov ecx, 0x62f490
mov dword [esp + 0x2c], edi
call fcn.0044f55d
test al, al
je 0x4a808f
cmp byte [esp + 0x14], 0
je 0x4a808f
push dword [esp + 0x18]
call fcn.005a763f
mov ebx, eax
push ebx
call fcn.005ba612
push 0x5c
push ebx
call fcn.005a3e70
mov edi, eax
add esp, 0x10
test edi, edi
jne 0x4a8060
mov edi, ebx
jmp 0x4a8061
inc edi
push 0x2e
push edi
call fcn.005a3e70
test eax, eax
pop ecx
pop ecx
je 0x4a8072
and byte [eax], 0
push 0xffffffffffffffff
push ebp
push 2
push 0
push 0x1f40
push edi
mov ecx, esi
call fcn.004ab7a6
push ebx
call fcn.005a3d51
pop ecx
xor edi, edi
or dword [esp + 0x28], 0xffffffff
lea ecx, [esp + 0x14]
call fcn.0044f286
push 0x600294
mov ecx, esi
call fcn.004a5872
mov eax, dword [esi + 0xb0]
cmp eax, edi
je 0x4a80ba
or dword [eax + 0x15c], 0xffffffff
mov ecx, 0x648540
call fcn.0054087d
mov ebp, dword [esi + 0x1980]
mov eax, dword [0x64ae30]
mov dword [ebp + 0x10e18], eax
test byte [ebp], 0x1c
je 0x4a80f5
cmp dword [esi + 0x18fc], edi
mov ecx, dword [esi + 0x1900]
je 0x4a80f0
call fcn.004c2980
jmp 0x4a80f5
call fcn.004c292b
mov edi, dword [esi + 0x18f0]
lea ebx, [edi + 0x648]
mov dword [esp + 0x10], 2
mov ecx, ebx
call fcn.004b5530
sub ebx, 0x648
dec dword [esp + 0x10]
jne 0x4a8109
mov ecx, edi
call fcn.004b7020
push dword [esi + 0x1c]
mov ecx, 0x63c868
call fcn.004cfe5c
xor ebx, ebx
cmp eax, ebx
je 0x4a8198
cmp dword [ebp], 0x80
je 0x4a8198
movsx edi, byte [ebp + 0x10e64]
cmp edi, 0xffffffff
jne 0x4a815e
movsx edi, byte [ebp + 0x10e66]
cmp edi, 0xffffffff
jne 0x4a815e
movsx edi, byte [ebp + 0x10e76]
mov eax, dword [eax + 0x78]
cmp eax, ebx
je 0x4a818a
cmp eax, 1
jle 0x4a81ad
cmp eax, 3
jg 0x4a81ad
push edi
push ebx
mov ecx, esi
call fcn.0049b809
mov eax, dword [esi + 0x1980]
movsx eax, byte [eax + 0x10e65]
push eax
push 1
jmp 0x4a81a6
push 0xffffffffffffffff
push 1
mov ecx, esi
call fcn.0049b809
push edi
jmp 0x4a81a5
push 0xffffffffffffffff
push 1
mov ecx, esi
call fcn.0049b809
push 0xffffffffffffffff
push ebx
mov ecx, esi
call fcn.0049b809
mov ecx, esi
call fcn.004a4852
mov eax, dword [esi + 0x1980]
test byte [eax], 0xc0
jne 0x4a81c6
push 0xffffe890
jmp 0x4a81c7
push ebx
lea ecx, [eax + 0x10e1c]
call fcn.0049eca4
mov ecx, esi
call fcn.0049ba98
mov ecx, esi
call fcn.004a8f6e
mov ecx, dword [esi + 0x1a2c]
push esi
call fcn.0046d113
cmp dword [esi + 0xa4], ebx
mov ebp, 0x1a8
je 0x4a8277
cmp dword [0x648e08], ebx
je 0x4a8246
mov eax, dword [esi + 0x1980]
add eax, 0x918
lea ecx, [eax + 4]
mov edi, 0x64931c
mov eax, dword [ecx]
test al, 0x40
je 0x4a8234
and eax, 0x3e
cmp al, 2
jne 0x4a8234
mov eax, dword [edi]
cdq
push 4
pop ebx
idiv ebx
mov eax, dword [ecx + 0x71c]
xor ebx, ebx
mov dword [eax + 4], edx
add edi, ebp
add ecx, 0x1050
cmp edi, 0x64ad9c
jl 0x4a8214
jmp 0x4a8277
mov ecx, dword [0x648aa0]
cmp ecx, 0xffffffff
mov eax, dword [esi + 0xa8]
mov eax, dword [eax + 8]
je 0x4a8263
mov edx, dword [eax + 0x720]
mov dword [edx + 4], ecx
mov ecx, dword [0x648aa4]
cmp ecx, 0xffffffff
je 0x4a8277
mov eax, dword [eax + 0x720]
mov dword [eax + 8], ecx
mov eax, dword [esi + 0xa8]
cmp eax, ebx
je 0x4a8287
mov eax, dword [eax + 8]
mov dword [eax + 0x4c], ebx
mov ecx, esi
call fcn.004a87d8
mov edi, dword [esi + 0x18fc]
cmp edi, ebx
jne 0x4a82df
mov eax, dword [esi + 0x1980]
push 0x10
mov ecx, 0x64abd8
add eax, 0xfdcc
pop edx
mov ebx, dword [eax]
shr ebx, 6
and ebx, 1
mov dword [ecx], ebx
sub ecx, ebp
sub eax, 0x1050
dec edx
jne 0x4a82ab
xor ebx, ebx
cmp edi, ebx
jne 0x4a82df
mov eax, dword [esi + 0x1980]
push 0x10
add eax, 0x510
pop ecx
mov dword [eax], 0xfffffff
sub eax, 4
dec ecx
jne 0x4a82d3
push ebx
mov edi, 0x800
push edi
push dword [0x62fe84]
mov ecx, 0x62fd30
push dword [0x62fe78]
call fcn.0048cb0b
push ebx
lea ecx, [esi + 0x1ad8]
push edi
push dword [ecx + 0x154]
push dword [ecx + 0x148]
call fcn.0048cb0b
mov ecx, esi
call fcn.004a86ab
mov ecx, dword [esi + 0x1ac8]
call fcn.004692a7
call fcn.004de8bb
cmp dword [0x648e08], ebx
je 0x4a833e
mov ecx, 0x648df8
call fcn.00557612
mov ebp, dword [esi + 0x18fc]
cmp ebp, ebx
jne 0x4a8355
mov ecx, dword [esi + 0x1980]
push 1
call fcn.0049f661
mov edi, dword [esi + 0x1980]
mov ecx, edi
call fcn.0049f49e
cmp ebp, ebx
jne 0x4a836e
mov dword [0x64ade8], ebx
jmp 0x4a8380
cmp dword [0x64af4c], ebx
je 0x4a8380
mov dword [0x64ade8], 1
mov ecx, 0x630540
call fcn.004932f6
mov ecx, dword [0x630368]
call fcn.00493e55
cmp dword [esi + 0x1958], ebx
je 0x4a83b4
mov eax, dword [0x6480d8]
cmp eax, ebx
je 0x4a83b4
cmp byte [eax + 0x16c], 0
je 0x4a83b4
push 1
pop eax
jmp 0x4a83b6
xor eax, eax
mov ecx, dword [esi + 0x1a34]
inc dword [esi + 0x18f4]
push edi
mov dword [esi + 0x195c], eax
call fcn.004c0570
call fcn.004c6508
test byte [edi], 8
je 0x4a83f4
push 0x10
lea eax, [edi + 0x924]
pop ecx
test byte [eax - 8], 0x40
je 0x4a83ec
mov dword [eax], ebx
mov dword [eax + 4], ebx
add eax, 0x1050
dec ecx
jne 0x4a83e1
mov ecx, esi
call fcn.004b047f
mov edi, dword [esi + 0x1980]
mov ebx, 0x918
push 0x10
add edi, ebx
pop ebp
test byte [edi + 4], 0x40
je 0x4a8419
push esi
mov ecx, edi
call fcn.004a0b50
add edi, 0x1050
dec ebp
jne 0x4a840b
lea ecx, [esi + 0x46d0]
call fcn.00497bc7
mov esi, dword [esi + 0x1980]
push 0x10
pop ecx
add esi, ebx
pop edi
lea eax, [esi + 0x714]
pop esi
pop ebp
pop ebx
test byte [eax - 0x710], 0x40
je 0x4a8452
or dword [eax], 0xffffffff
or dword [eax + 4], 0xffffffff
add eax, 0x1050
dec ecx
jne 0x4a8442
mov ecx, dword [esp + 0x10]
mov dword fs:[0], ecx
leave
ret