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

Disassembly:
sub esp, 0x38
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x44]
push ebx
xor ebx, ebx
mov dword [esp + 0x1c], ecx
push ebp
mov ebp, dword [ecx + 8]
mov dword [esp + 0x2c], 0
mov dword [esp + 0x44], ebx
cmp dword [eax], ebx
jle 0x4ae3ff
push esi
add eax, 8
push edi
mov dword [esp + 0x18], eax
lea edi, [ebx + 1]
nop
lea ecx, [esp + 0x14]
mov dword [esp + 0x50], 0
push ecx
lea ecx, [esp + 0x14]
mov dword [esp + 0x14], 0
push ecx
lea ecx, [esp + 0x58]
mov dword [esp + 0x1c], 0
push ecx
push dword [eax]
lea eax, [esp + 0x38]
push eax
call fcn.004a1f30
mov ecx, dword [ebp]
add esp, 0x14
mov dword [esp + 0x1c], eax
cmp byte [ecx + 0x57], 0
jne 0x4ae16a
movzx ecx, word [ebp + 0x92]
lea ecx, [ebx + ecx*2]
lea edx, [ecx + ecx*4]
mov ecx, dword [ebp + 0x74]
lea esi, [ecx + edx*8]
mov ecx, dword [esp + 0x50]
test ecx, ecx
jne 0x4ae084
mov edx, 0x9000
test word [esi + 0x10], dx
je 0x4ae07b
push esi
call fcn.00519fc0
add esp, 4
jmp 0x4ae16a
mov word [esi + 0x10], di
jmp 0x4ae16f
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4ae090
mov edx, dword [eax + 0x78]
jmp 0x4ae095
mov edx, 0x3b9aca00
mov edi, ecx
lea ecx, [edi + 1]
nop word [eax + eax]
mov al, byte [edi]
inc edi
test al, al
jne 0x4ae0a0
sub edi, ecx
mov eax, edx
xor ecx, ecx
cdq
cmp ecx, edx
jl 0x4ae102
jg 0x4ae0b8
cmp edi, eax
jbe 0x4ae102
mov edx, 0x9000
test word [esi + 0x10], dx
je 0x4ae0d8
push esi
call fcn.00519fc0
add esp, 4
mov edi, 1
mov edx, 0x9000
jmp 0x4ae0e1
mov edi, 1
mov word [esi + 0x10], di
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4ae16f
mov eax, dword [eax + 0x10c]
test eax, eax
je 0x4ae16f
inc dword [eax + 0x24]
mov dword [eax + 0xc], 0x12
jmp 0x4ae16f
mov ebx, edi
add ebx, 1
adc ecx, ecx
jne 0x4ae117
cmp ebx, 0x20
ja 0x4ae117
mov eax, 0x20
jmp 0x4ae119
mov eax, ebx
cmp dword [esi + 0x18], eax
jge 0x4ae130
push 0
push eax
push esi
call fcn.00508d80
add esp, 0xc
test eax, eax
jne 0x4ae161
jmp 0x4ae13b
mov eax, dword [esi + 0x20]
and word [esi + 0x10], 0x2d
mov dword [esi + 8], eax
push ebx
push dword [esp + 0x54]
push dword [esi + 8]
call fcn.00532150
add esp, 0xc
mov byte [esi + 0x12], 1
and edi, 0x7fffffff
mov eax, 0x202
mov dword [esi + 0xc], edi
mov word [esi + 0x10], ax
mov ebx, dword [esp + 0x4c]
mov edi, 1
mov edx, 0x9000
mov eax, dword [ebp]
cmp byte [eax + 0x57], 0
jne 0x4ae283
movzx eax, word [ebp + 0x92]
lea ecx, [ebx + eax*2]
add ecx, eax
mov eax, dword [ebp + 0x74]
lea ecx, [ecx + ecx*4]
lea esi, [eax + ecx*8]
mov ecx, dword [esp + 0x10]
test ecx, ecx
jne 0x4ae1b6
test word [esi + 0x10], dx
je 0x4ae1ad
push esi
call fcn.00519fc0
add esp, 4
jmp 0x4ae283
mov word [esi + 0x10], di
jmp 0x4ae283
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4ae1c2
mov edx, dword [eax + 0x78]
jmp 0x4ae1c7
mov edx, 0x3b9aca00
mov edi, ecx
lea ecx, [edi + 1]
nop dword [eax]
mov al, byte [edi]
inc edi
test al, al
jne 0x4ae1d0
sub edi, ecx
mov eax, edx
xor ecx, ecx
cdq
cmp ecx, edx
jl 0x4ae224
jg 0x4ae1e8
cmp edi, eax
jbe 0x4ae224
mov edi, 0x9000
test word [esi + 0x10], di
je 0x4ae1fe
push esi
call fcn.00519fc0
add esp, 4
jmp 0x4ae207
mov eax, 1
mov word [esi + 0x10], ax
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4ae288
mov eax, dword [eax + 0x10c]
test eax, eax
je 0x4ae288
inc dword [eax + 0x24]
mov dword [eax + 0xc], 0x12
jmp 0x4ae288
mov ebx, edi
add ebx, 1
adc ecx, ecx
jne 0x4ae239
cmp ebx, 0x20
ja 0x4ae239
mov eax, 0x20
jmp 0x4ae23b
mov eax, ebx
cmp dword [esi + 0x18], eax
jge 0x4ae252
push 0
push eax
push esi
call fcn.00508d80
add esp, 0xc
test eax, eax
jne 0x4ae283
jmp 0x4ae25d
mov eax, dword [esi + 0x20]
and word [esi + 0x10], 0x2d
mov dword [esi + 8], eax
push ebx
push dword [esp + 0x14]
push dword [esi + 8]
call fcn.00532150
add esp, 0xc
mov byte [esi + 0x12], 1
and edi, 0x7fffffff
mov eax, 0x202
mov dword [esi + 0xc], edi
mov word [esi + 0x10], ax
mov edi, 0x9000
mov eax, dword [ebp]
mov ebx, dword [esp + 0x4c]
cmp byte [eax + 0x57], 0
jne 0x4ae3ac
movzx eax, word [ebp + 0x92]
lea eax, [ebx + eax*4]
lea ecx, [eax + eax*4]
mov eax, dword [ebp + 0x74]
lea esi, [eax + ecx*8]
mov ecx, dword [esp + 0x14]
test ecx, ecx
jne 0x4ae2d6
test word [esi + 0x10], di
je 0x4ae2c8
push esi
call fcn.00519fc0
add esp, 4
jmp 0x4ae3ac
mov edi, 1
mov word [esi + 0x10], di
jmp 0x4ae3b1
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4ae2e2
mov edx, dword [eax + 0x78]
jmp 0x4ae2e7
mov edx, 0x3b9aca00
mov edi, ecx
lea ecx, [edi + 1]
nop dword [eax]
mov al, byte [edi]
inc edi
test al, al
jne 0x4ae2f0
sub edi, ecx
mov eax, edx
xor ecx, ecx
cdq
cmp ecx, edx
jl 0x4ae349
jg 0x4ae308
cmp edi, eax
jbe 0x4ae349
mov ecx, 0x9000
test word [esi + 0x10], cx
je 0x4ae323
push esi
call fcn.00519fc0
add esp, 4
mov edi, 1
jmp 0x4ae32c
mov edi, 1
mov word [esi + 0x10], di
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4ae3b1
mov eax, dword [eax + 0x10c]
test eax, eax
je 0x4ae3b1
inc dword [eax + 0x24]
mov dword [eax + 0xc], 0x12
jmp 0x4ae3b1
mov ebx, edi
add ebx, 1
adc ecx, ecx
jne 0x4ae35e
cmp ebx, 0x20
ja 0x4ae35e
mov eax, 0x20
jmp 0x4ae360
mov eax, ebx
cmp dword [esi + 0x18], eax
jge 0x4ae377
push 0
push eax
push esi
call fcn.00508d80
add esp, 0xc
test eax, eax
jne 0x4ae3a8
jmp 0x4ae382
mov eax, dword [esi + 0x20]
and word [esi + 0x10], 0x2d
mov dword [esi + 8], eax
push ebx
push dword [esp + 0x18]
push dword [esi + 8]
call fcn.00532150
add esp, 0xc
mov byte [esi + 0x12], 1
and edi, 0x7fffffff
mov eax, 0x202
mov dword [esi + 0xc], edi
mov word [esi + 0x10], ax
mov ebx, dword [esp + 0x4c]
mov edi, 1
mov eax, dword [ebp]
cmp byte [eax + 0x57], 0
jne 0x4ae3e1
movzx eax, word [ebp + 0x92]
add eax, ebx
push 0xffffffffffffffff
push 1
push 0xffffffffffffffff
lea ecx, [eax + eax*4]
mov eax, dword [ebp + 0x74]
push 0xffffffffffffffff
push dword [esp + 0x2c]
lea eax, [eax + ecx*8]
push eax
call fcn.005092a0
add esp, 0x18
mov ecx, dword [esp + 0x54]
inc ebx
mov eax, dword [esp + 0x18]
add eax, 0x14
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x18], eax
cmp ebx, dword [ecx]
jl 0x4ae000
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x38
ret