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

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x58
mov rax, qword [rdx + 0x40]
mov r14, rcx
mov r15, qword [rcx + 0x10]
mov qword [rsp + 0x40], rax
movzx ecx, word [rax + 0x18]
movzx r13d, word [rax + 0x1a]
mov rdx, qword [rax + 0x20]
mov eax, dword [r14 + 0x54]
mov dword [rsp + 0xb8], ecx
add ecx, r9d
mov dword [rsp + 0x30], ecx
lea esi, [rax + 1]
add eax, ecx
mov rcx, r15
mov dword [r14 + 0x54], eax
call fcn.140088920
mov rbx, qword [r14]
mov rdi, rax
test rax, rax
jne 0x1400aeb17
xor r12d, r12d
mov qword [rsp + 0x38], r12
jmp 0x1400aeba1
cmp byte [rax], 0
je 0x1400aeb28
nop dword [rax]
inc rax
cmp byte [rax], 0
jne 0x1400aeb20
sub eax, edi
xor r12d, r12d
and eax, 0x3fffffff
lea ebp, [rax + 1]
test rbx, rbx
je 0x1400aeb69
cmp byte [rbx + 0x50], r12b
je 0x1400aeb4a
mov ecx, r12d
mov qword [rsp + 0x38], rcx
jmp 0x1400aeb9c
cmp byte [rbx + 0x14a], r12b
je 0x1400aeb69
movzx eax, word [rbx + 0x148]
cmp rbp, rax
jbe 0x1400aed84
inc dword [rbx + 0x158]
mov rcx, rbp
call fcn.14002d7e0
mov qword [rsp + 0x38], rax
mov rcx, rax
test rax, rax
jne 0x1400aeb8c
test rbx, rbx
je 0x1400aeb87
mov byte [rbx + 0x50], 1
test rax, rax
je 0x1400aeb9c
mov r8, rbp
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rsp + 0x38]
test rcx, rcx
jne 0x1400aeba8
mov rax, qword [r14]
mov byte [rax + 0x50], 1
test r13w, r13w
je 0x1400aecc4
mov r9, qword [rsp + 0xa8]
mov edx, 0x6c
mov ebx, dword [rsp + 0xb0]
mov eax, 0x69
test ebx, ebx
mov dword [rsp + 0x20], r12d
mov rcx, r15
mov r14d, dword [r9 + 8]
cmovne edx, eax
xor r9d, r9d
mov r8d, r14d
call fcn.140050c60
xor r9d, r9d
mov dword [rsp + 0x20], r12d
xor r8d, r8d
mov edx, 0x10
mov rcx, r15
call fcn.140050c60
mov edi, eax
mov edx, 0x41
mov eax, 0x3e
mov dword [rsp + 0x20], esi
test ebx, ebx
mov r8d, r14d
mov rcx, r15
cmovne edx, eax
xor r9d, r9d
call fcn.140050c60
mov r8, r13
mov r9d, 0xfffffff2
mov edx, eax
mov rcx, r15
mov ebx, eax
call fcn.140051290
mov r8, qword [rsp + 0xa8]
mov dword [r8 + 0x14], ebx
mov edx, dword [r15 + 0x3c]
cmp edx, edi
jbe 0x1400aec57
mov rax, qword [r15 + 8]
lea rcx, [rdi + rdi*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [r15 + 0x3c]
mov ebx, r12d
mov rax, qword [r15 + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
test r13d, r13d
je 0x1400aedd5
mov rax, qword [r15 + 0x30]
movsxd rdi, dword [r15 + 0x3c]
cmp dword [rax + 0x60], edi
jg 0x1400aec89
mov rcx, r15
call fcn.140050bb0
test eax, eax
jne 0x1400aecb5
mov rax, qword [r15 + 8]
lea rcx, [rdi + rdi*2]
inc dword [r15 + 0x3c]
mov word [rax + rcx*8], 0x2f
mov byte [rax + rcx*8 + 3], 0
lea rdx, [rax + rcx*8]
lea eax, [rbx + rsi]
mov dword [rdx + 4], r14d
mov dword [rdx + 0xc], eax
mov dword [rdx + 8], ebx
mov qword [rdx + 0x10], r12
inc ebx
cmp ebx, r13d
jl 0x1400aec70
mov r14, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xa8]
movzx eax, word [rsp + 0xb8]
cmp r13d, eax
jae 0x1400aef8d
mov rbp, qword [rsp + 0x38]
lea rcx, [r13*8]
add rbp, r13
mov qword [rsp + 0xa0], rcx
nop word [rax + rax]
mov rax, qword [rsp + 0x40]
lea ebx, [rsi + r13]
mov dword [rsp + 0x28], ebx
mov r9d, r13d
mov rax, qword [rax + 0x30]
mov rdi, qword [rcx + rax]
mov rcx, r14
mov eax, dword [rsp + 0xb0]
mov rdx, rdi
mov dword [rsp + 0x20], eax
call fcn.1400ae7d0
mov r8d, eax
cmp eax, ebx
je 0x1400aee00
cmp dword [rsp + 0x30], 1
jne 0x1400aedeb
test esi, esi
je 0x1400aede6
cmp byte [r14 + 0x1f], 8
jae 0x1400aede6
mov ecx, r12d
lea rax, [r14 + 0x88]
cmp dword [rax + 0xc], esi
je 0x1400aede2
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x1400aed61
movzx eax, byte [r14 + 0x1f]
mov dword [r14 + rax*4 + 0x24], esi
mov esi, r8d
inc byte [r14 + 0x1f]
jmp 0x1400aee00
mov rcx, qword [rbx + 0x160]
mov qword [rsp + 0x38], rcx
test rcx, rcx
jne 0x1400aeda0
inc dword [rbx + 0x15c]
jmp 0x1400aeb69
mov rax, qword [rcx]
mov qword [rbx + 0x160], rax
mov eax, dword [rbx + 0x14c]
inc eax
mov dword [rbx + 0x14c], eax
inc dword [rbx + 0x154]
cmp eax, dword [rbx + 0x150]
jle 0x1400aeb8c
mov dword [rbx + 0x150], eax
jmp 0x1400aeb8c
mov r14, qword [rsp + 0xa0]
jmp 0x1400aeccc
mov byte [rax + 6], 1
mov esi, r8d
jmp 0x1400aee00
mov r9d, ebx
mov dword [rsp + 0x20], r12d
mov edx, 0x22
mov rcx, r15
call fcn.140050c60
test byte [rdi + 0x1a], 0x81
jne 0x1400aef48
mov rax, qword [rdi]
mov rbx, qword [rax + 0x18]
mov rax, rbx
movzx edx, byte [rax]
lea ecx, [rdx + 0x63]
cmp cl, 1
ja 0x1400aee25
mov rax, qword [rax + 0x10]
jmp 0x1400aee14
cmp dl, 0x9f
jne 0x1400aee2e
movzx edx, byte [rax + 0x36]
movzx edx, dl
sub edx, 0x61
je 0x1400aeea3
sub edx, 0x23
je 0x1400aeea3
sub edx, 1
je 0x1400aeea3
sub edx, 1
je 0x1400aeea3
cmp edx, 0x14
jne 0x1400aee81
test dword [rax + 4], 0x100000
jne 0x1400aee78
movsx rcx, word [rax + 0x30]
test cx, cx
js 0x1400aee73
lea rdx, [rcx + rcx*2]
mov rcx, qword [rax + 0x40]
add rdx, rdx
mov rax, qword [rcx + 8]
cmp byte [rax + rdx*8 + 0x28], 0
je 0x1400aee78
mov eax, r12d
jmp 0x1400aee7d
mov eax, 1
test eax, eax
je 0x1400aeea3
mov r9, qword [rsp + 0xa8]
lea r8d, [rsi + r13]
mov edx, 0x4c
mov dword [rsp + 0x20], r12d
mov rcx, r15
mov r9d, dword [r9 + 0xc]
call fcn.140050c60
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x1400aef4d
movzx edx, byte [rbp]
mov rcx, rbx
call fcn.140065f50
cmp al, 0x41
jne 0x1400aeec4
mov byte [rbp], al
movzx edx, byte [rbp]
cmp dl, 0x41
je 0x1400aef44
nop dword [rax]
movzx ecx, byte [rbx]
lea eax, [rcx + 0x63]
cmp al, 1
ja 0x1400aeee0
mov rbx, qword [rbx + 0x10]
jmp 0x1400aeed0
cmp cl, 0x9f
jne 0x1400aeee9
movzx ecx, byte [rbx + 0x36]
movzx ecx, cl
sub ecx, 0x61
je 0x1400aef37
sub ecx, 0x23
je 0x1400aef28
sub ecx, 1
je 0x1400aef19
sub ecx, 1
je 0x1400aef44
cmp ecx, 0x14
jne 0x1400aef48
cmp word [rbx + 0x30], 0
jge 0x1400aef14
sub dl, 0x43
cmp dl, 1
jbe 0x1400aef44
mov eax, r12d
jmp 0x1400aef40
sub dl, 0x43
test dl, 0xfd
jne 0x1400aef48
mov eax, 1
jmp 0x1400aef40
sub dl, 0x43
cmp dl, 1
ja 0x1400aef48
mov eax, 1
jmp 0x1400aef40
cmp dl, 0x42
mov eax, r12d
sete al
test eax, eax
je 0x1400aef48
mov byte [rbp], 0x41
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0xa0]
inc r13d
movzx edx, word [rsp + 0xb8]
add rcx, 8
mov r8, qword [rsp + 0xa8]
inc rbp
mov qword [rsp + 0xa0], rcx
cmp r13d, edx
jl 0x1400aed00
mov rcx, qword [rsp + 0xc0]
mov qword [rcx], rax
jmp 0x1400aef9d
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x38]
mov qword [rax], rcx
mov eax, esi
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret