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

Disassembly:
push 0xffffffffffffffff
push 0x4ec088
mov eax, dword fs:[0]
push eax
sub esp, 0xe8
push ebx
push ebp
push esi
push edi
mov eax, dword [0x417270]
xor eax, esp
push eax
lea eax, [esp + 0xfc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x18], esi
mov eax, dword [esi + 0x34]
push eax
call fcn.004cada5
xor ebx, ebx
add esp, 4
mov dword [esi + 0x34], ebx
cmp byte [esp + 0x114], bl
je 0x4a6f42
lea ecx, [esp + 0x1c]
call fcn.0043c7f0
mov ecx, dword [esi + 0x30]
lea eax, [esp + 0x1c]
push eax
mov dword [esp + 0x108], ebx
call fcn.004a5ad0
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
mov eax, ecx
sub eax, edx
sar eax, 5
cmp eax, ebx
mov dword [esp + 0x14], eax
jle 0x4a6c04
xor ebp, ebp
mov ecx, dword [esp + 0x10c]
test ecx, ecx
je 0x4a6b6b
lea esi, [ecx + 4]
jmp 0x4a6b6d
xor esi, esi
mov edi, dword [ecx + 0x18]
cmp ebx, eax
jb 0x4a6b7d
call fcn.004caf0d
mov edx, dword [esp + 0x28]
lea ecx, [edx + ebp]
push edi
lea edx, [esp + 0x3c]
push edx
call fcn.004a6190
mov edi, 0x10
lea ecx, [eax + 4]
mov eax, dword [esi + 0x14]
mov byte [esp + 0x104], 1
cmp dword [esi + 0x18], edi
jb 0x4a6ba8
mov esi, dword [esi + 4]
jmp 0x4a6bab
add esi, 4
push eax
mov eax, dword [ecx + 0x14]
push esi
push eax
push 0
call fcn.004295b0
mov esi, eax
mov byte [esp + 0x104], 0
mov dword [esp + 0x38], 0x41c480
cmp dword [esp + 0x54], edi
jb 0x4a6bdd
mov ecx, dword [esp + 0x40]
push ecx
call fcn.004cada5
add esp, 4
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
test esi, esi
je 0x4a6c00
dec dword [esp + 0x14]
mov eax, ecx
sub eax, edx
inc ebx
sar eax, 5
add ebp, 0x20
cmp ebx, eax
jl 0x4a6b5b
mov esi, dword [esp + 0x18]
mov ebp, ecx
sub ebp, edx
sar ebp, 5
sub ebp, 1
js 0x4a6cfb
mov ebx, ebp
shl ebx, 5
mov dword [esp + 0x58], ebx
jmp 0x4a6c2c
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x58]
mov eax, dword [esp + 0x10c]
test eax, eax
je 0x4a6c3c
lea esi, [eax + 4]
jmp 0x4a6c3e
xor esi, esi
mov edi, dword [eax + 0x18]
sub ecx, edx
sar ecx, 5
cmp ebp, ecx
jb 0x4a6c53
call fcn.004caf0d
mov edx, dword [esp + 0x28]
lea ecx, [edx + ebx]
push edi
lea edx, [esp + 0x3c]
push edx
call fcn.004a6190
mov ebx, dword [esi + 0x14]
mov edx, 0x10
cmp dword [esi + 0x18], edx
jb 0x4a6c73
mov esi, dword [esi + 4]
jmp 0x4a6c76
add esi, 4
mov edi, dword [eax + 0x18]
mov ecx, edi
cmp ecx, edi
jae 0x4a6c7f
mov ecx, edi
cmp edi, ebx
jb 0x4a6c87
mov ecx, ebx
cmp dword [eax + 0x1c], edx
jb 0x4a6c91
mov eax, dword [eax + 8]
jmp 0x4a6c94
add eax, 8
push ecx
push esi
push eax
call fcn.00427de0
add esp, 0xc
test eax, eax
jne 0x4a6cb3
cmp edi, ebx
jae 0x4a6cac
or esi, 0xffffffff
jmp 0x4a6cb5
xor eax, eax
cmp edi, ebx
setne al
mov esi, eax
cmp dword [esp + 0x54], 0x10
mov byte [esp + 0x104], 0
mov dword [esp + 0x38], 0x41c480
jb 0x4a6cd9
mov ecx, dword [esp + 0x40]
push ecx
call fcn.004cada5
add esp, 4
test esi, esi
je 0x4a6cef
dec dword [esp + 0x14]
sub dword [esp + 0x58], 0x20
dec ebp
test ebp, ebp
jge 0x4a6c20
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
xor edi, edi
cmp eax, edi
jg 0x4a6d60
mov dword [esp + 0x104], 3
cmp edx, edi
je 0x4a6d3e
mov edi, ecx
mov esi, edx
cmp edx, ecx
je 0x4a6d35
lea esp, [esp]
mov edx, dword [esi]
mov eax, dword [edx]
push 0
mov ecx, esi
call eax
add esi, 0x20
cmp esi, edi
jne 0x4a6d20
mov edx, dword [esp + 0x28]
push edx
call fcn.004cada5
add esp, 4
mov ecx, dword [esp + 0x1c]
xor eax, eax
push ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
call fcn.004cada5
add esp, 4
xor eax, eax
jmp 0x4a6f6d
shl eax, 5
push eax
call fcn.004caa28
add esp, 4
mov dword [esi + 0x34], eax
mov ebx, eax
mov dword [esp + 0x34], edi
push 1
push 2
lea ecx, [esp + 0x84]
call fcn.00430f60
mov esi, dword [esp + 0x10c]
mov byte [esp + 0x104], 4
test esi, esi
je 0x4a6d9d
add esi, 4
jmp 0x4a6d9f
xor esi, esi
lea edx, [esp + 0x58]
push 2
push edx
call fcn.004caa48
mov ebp, eax
lea eax, [esp + 0x84]
push esi
push eax
call fcn.00471dc0
mov esi, eax
add esp, 0x10
test esi, esi
je 0x4a6dcb
mov ecx, dword [esi]
mov eax, dword [ecx + 4]
add eax, esi
mov edx, dword [ebp + 4]
push edx
push eax
mov eax, dword [ebp]
call eax
mov ecx, dword [esi]
mov eax, dword [ecx + 4]
add esp, 8
add eax, esi
inc edi
push edi
mov ecx, esi
mov byte [eax + 0x30], 0x30
call fcn.00431370
lea edx, [esp + 0x60]
push edx
lea ecx, [esp + 0x80]
call fcn.0042e240
push 0xffffffffffffffff
push 0
mov ebp, 0xf
push eax
lea ecx, [esp + 0x48]
mov byte [esp + 0x110], 5
mov dword [esp + 0x60], ebp
mov dword [esp + 0x5c], 0
mov byte [esp + 0x4c], 0
call fcn.0042b580
mov esi, 0x41c480
mov dword [esp + 0x38], esi
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x34]
push eax
push 0x20
push ebx
lea ecx, [esp + 0x44]
push ecx
mov ecx, dword [edx + 0x30]
mov byte [esp + 0x114], 6
call fcn.004a5c90
mov dword [esp + 0x38], esi
mov esi, 0x10
cmp dword [esp + 0x54], esi
jb 0x4a6e6f
mov eax, dword [esp + 0x40]
push eax
call fcn.004cada5
add esp, 4
mov dword [esp + 0x54], ebp
mov dword [esp + 0x50], 0
mov byte [esp + 0x40], 0
cmp dword [esp + 0x78], esi
jb 0x4a6e93
mov ecx, dword [esp + 0x64]
push ecx
call fcn.004cada5
add esp, 4
lea ecx, [esp + 0xc8]
add ebx, 0x20
mov byte [esp + 0x104], 0
call fcn.0042a0e0
lea edx, [esp + 0xc8]
push edx
mov dword [esp + 0xcc], 0x41c690
call fcn.004ca827
add esp, 4
cmp edi, dword [esp + 0x14]
jl 0x4a6d75
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x18]
dec eax
shl eax, 5
add eax, dword [esp + 0x34]
mov dword [ecx], eax
mov ebx, dword [edx + 0x34]
mov esi, dword [esp + 0x28]
xor ebp, ebp
mov dword [esp + 0x104], 7
cmp esi, ebp
je 0x4a6f25
mov edi, dword [esp + 0x2c]
cmp esi, edi
je 0x4a6f1c
mov eax, dword [esi]
mov edx, dword [eax]
push ebp
mov ecx, esi
call edx
add esi, 0x20
cmp esi, edi
jne 0x4a6f08
mov esi, dword [esp + 0x28]
push esi
call fcn.004cada5
add esp, 4
mov eax, dword [esp + 0x1c]
push eax
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], ebp
call fcn.004cada5
add esp, 4
mov eax, ebx
jmp 0x4a6f6d
push 0x20
call fcn.004caa28
mov ecx, dword [esp + 0x114]
mov edx, dword [esp + 0x110]
add esp, 4
push ecx
mov ecx, dword [esi + 0x30]
push 0x20
push eax
push edx
mov dword [esi + 0x34], eax
call fcn.004a5c90
mov eax, dword [esi + 0x34]
mov ecx, dword [esp + 0xfc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xf4
ret 0xc