Function at 0x1400ae1b0
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 rbx, qword [rdx + 0x40]
mov eax, dword [rcx + 0x54]
mov rdi, qword [rcx + 0x10]
movzx r15d, word [rbx + 0x1a]
mov rsi, rcx
movzx ecx, word [rbx + 0x18]
lea r12d, [rcx + r9]
mov r14, rdx
mov rdx, qword [rbx + 0x20]
lea ebp, [rax + 1]
mov dword [rsp + 0xb8], ecx
add eax, r12d
mov rcx, rdi
mov r13d, r8d
mov qword [rsp + 0x38], rbx
mov dword [rsi + 0x54], eax
call fcn.14008ec60
mov rcx, qword [rsi]
mov rdx, rax
call fcn.140040fc0
mov rcx, rax
mov qword [rsp + 0x30], rax
test rax, rax
jne 0x1400ae230
mov rax, qword [rsi]
mov byte [rax + 0x50], 1
test r15w, r15w
je 0x1400ae312
mov r14d, dword [r14 + 8]
mov edx, 0x69
mov eax, 0x66
test r13d, r13d
mov rcx, rdi
mov r8d, r14d
cmovne edx, eax
xor r9d, r9d
mov dword [rsp + 0x20], 0
call fcn.1400608a0
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 + 0x10]
mov rcx, rdi
mov dword [rsp + 0x20], 0
call fcn.1400608a0
mov edx, 0x3e
test r13d, r13d
mov ebx, eax
mov eax, 0x3b
movzx esi, r15w
cmovne edx, eax
mov r8d, r14d
mov rcx, rdi
xor r9d, r9d
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], ebp
call fcn.140060a80
mov r8, qword [rsp + 0xa8]
mov dword [r8 + 0x14], eax
mov edx, dword [rdi + 0x3c]
cmp edx, ebx
jbe 0x1400ae2c9
mov rax, qword [rdi + 8]
lea rcx, [rbx + rbx*2]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rdi + 0x3c]
mov rax, qword [rdi + 0x30]
xor ebx, ebx
dec ecx
mov dword [rax + 0x64], ecx
test esi, esi
jle 0x1400ae3c2
nop
lea eax, [rbx + rbp]
mov r9d, ebx
mov r8d, r14d
mov edx, 0x2e
mov rcx, rdi
mov dword [rsp + 0x20], eax
call fcn.1400608a0
inc ebx
cmp ebx, esi
jl 0x1400ae2e0
mov rsi, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
mov r8, qword [rsp + 0xa8]
movzx r13d, r15w
cmp r13d, dword [rsp + 0xb8]
jge 0x1400ae5ba
movsxd rdx, r12d
lea r12, [rcx + r13]
lea rcx, [r13*8]
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], rdx
nop word [rax + rax]
mov rax, qword [rbx + 0x30]
mov ebx, r13d
mov r9d, r13d
mov r14, qword [rcx + rax]
mov eax, dword [rsp + 0xb0]
add ebx, ebp
mov rcx, rsi
mov rdx, r14
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], eax
call fcn.1400adf50
mov r15d, eax
cmp eax, ebx
je 0x1400ae42b
cmp qword [rsp + 0x48], 1
jne 0x1400ae3e2
test ebp, ebp
je 0x1400ae3dd
movzx edx, byte [rsi + 0x1f]
cmp dl, 8
jae 0x1400ae3dd
xor ecx, ecx
lea rax, [rsi + 0x88]
cmp dword [rax + 0xc], ebp
je 0x1400ae3d9
inc ecx
add rax, 0x14
cmp ecx, 0xa
jl 0x1400ae3a3
movzx eax, dl
mov dword [rsi + rax*4 + 0x24], ebp
inc byte [rsi + 0x1f]
mov ebp, r15d
jmp 0x1400ae42b
mov rsi, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
jmp 0x1400ae31a
mov byte [rax + 6], 1
mov ebp, r15d
jmp 0x1400ae42b
mov rax, qword [rdi + 0x30]
movsxd rsi, dword [rdi + 0x3c]
cmp dword [rax + 0x60], esi
jg 0x1400ae3fb
mov rcx, rdi
call fcn.1400607f0
test eax, eax
jne 0x1400ae42b
mov rax, qword [rdi + 8]
inc dword [rdi + 0x3c]
lea rcx, [rsi + rsi*2]
mov word [rax + rcx*8], 0x22
mov byte [rax + rcx*8 + 3], 0
mov dword [rax + rcx*8 + 4], r15d
mov dword [rax + rcx*8 + 8], ebx
mov dword [rax + rcx*8 + 0xc], 0
mov qword [rax + rcx*8 + 0x10], 0
test byte [r14 + 0x1a], 0x81
jne 0x1400ae571
mov rbx, qword [r14]
mov rbx, qword [rbx + 0x18]
mov rcx, rbx
movzx eax, byte [rcx]
add al, 0x63
cmp al, 1
ja 0x1400ae44f
mov rcx, qword [rcx + 0x10]
jmp 0x1400ae440
movzx eax, byte [rcx]
cmp al, 0x9f
jne 0x1400ae45a
movzx eax, byte [rcx + 0x36]
cmp al, 0x61
je 0x1400ae4bc
add al, 0x7c
cmp al, 2
jbe 0x1400ae4bc
mov rax, qword [rdi + 0x30]
mov r14, qword [rsp + 0xa8]
movsxd rsi, dword [rdi + 0x3c]
mov r14d, dword [r14 + 0xc]
cmp dword [rax + 0x60], esi
jg 0x1400ae489
mov rcx, rdi
call fcn.1400607f0
test eax, eax
jne 0x1400ae4bc
mov rax, qword [rdi + 8]
inc dword [rdi + 0x3c]
lea rcx, [rsi + rsi*2]
lea rdx, [rax + rcx*8]
mov eax, r13d
add eax, ebp
mov word [rdx], 0x4c
mov byte [rdx + 3], 0
mov dword [rdx + 8], r14d
mov dword [rdx + 0xc], 0
mov qword [rdx + 0x10], 0
mov dword [rdx + 4], eax
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x1400ae576
movzx esi, byte [r12]
mov rcx, rbx
call fcn.140073240
test al, al
je 0x1400ae4ec
test sil, sil
je 0x1400ae4f1
cmp al, 0x63
jge 0x1400ae4fd
cmp sil, 0x63
jl 0x1400ae4f8
jmp 0x1400ae4fd
test sil, sil
je 0x1400ae4f8
add al, sil
cmp al, 0x62
jne 0x1400ae4fd
mov byte [r12], 0x62
movzx edx, byte [r12]
cmp dl, 0x62
je 0x1400ae56c
movzx eax, byte [rbx]
add al, 0x63
cmp al, 1
ja 0x1400ae516
mov rbx, qword [rbx + 0x10]
jmp 0x1400ae507
movzx eax, byte [rbx]
cmp al, 0x9f
jne 0x1400ae521
movzx eax, byte [rbx + 0x36]
movzx ecx, al
sub ecx, 0x61
je 0x1400ae560
sub ecx, 0x23
je 0x1400ae556
dec ecx
je 0x1400ae54c
dec ecx
je 0x1400ae56c
cmp ecx, 0x14
jne 0x1400ae571
cmp word [rbx + 0x30], 0
jge 0x1400ae571
sub dl, 0x63
cmp dl, 1
jbe 0x1400ae56c
jmp 0x1400ae571
sub dl, 0x63
test dl, 0xfd
jne 0x1400ae571
jmp 0x1400ae56c
sub dl, 0x63
cmp dl, 1
ja 0x1400ae571
jmp 0x1400ae56c
xor eax, eax
cmp dl, 0x61
sete al
test eax, eax
je 0x1400ae571
mov byte [r12], 0x62
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x38]
add rcx, 8
inc r13d
inc r12
mov qword [rsp + 0x40], rcx
cmp r13d, dword [rsp + 0xb8]
jl 0x1400ae350
mov rcx, qword [rsp + 0xc0]
mov qword [rcx], rax
jmp 0x1400ae5c5
mov rax, qword [rsp + 0xc0]
mov qword [rax], rcx
mov eax, ebp
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret