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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
movaps xmmword [rsp + 0x50], xmm6
mov rdi, qword [rdx + 0x60]
mov eax, dword [rcx + 0x38]
mov rbx, qword [rcx + 0x10]
movzx r12d, word [rdi + 0x18]
lea r11d, [rax + 1]
movzx r13d, word [rdi + 0x36]
lea ebp, [r12 + r9]
mov rsi, rcx
mov dword [rsp + 0x3c], r11d
mov r15d, r8d
add eax, ebp
mov qword [rsp + 0xb8], rdx
mov rdx, qword [rdi + 0x20]
mov dword [rcx + 0x38], eax
mov rcx, qword [rcx]
call fcn.140042fe0
mov rcx, qword [rsi]
mov rdx, rax
call fcn.140029e80
test r13w, r13w
mov r11d, dword [rsp + 0x3c]
mov qword [rsp + 0x30], rax
jne 0x1400a9918
xor r9d, r9d
test r12d, r12d
je 0x1400a9b85
cmp ebp, 1
jne 0x1400a97b0
mov rax, qword [rdi + 0x40]
lea ebp, [r11 + r9]
movsxd r10, r9d
mov rcx, rsi
mov r8, qword [rsp + 0xb8]
mov dword [rsp + 0x48], r11d
mov rdx, qword [rax + r10*8]
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], r15d
mov qword [rsp + 0x40], r10
mov dword [rsp + 0x3c], r9d
call fcn.1400a8700
mov r9d, dword [rsp + 0x3c]
mov r10, qword [rsp + 0x40]
cmp eax, ebp
mov r11d, dword [rsp + 0x48]
mov r13d, eax
je 0x1400a9870
test r11d, r11d
jne 0x1400a9880
cmp r12d, r9d
jle 0x1400a9785
mov r14, qword [rsp + 0x30]
mov rbp, r10
jmp 0x1400a9700
mov rax, qword [rax]
test byte [rax + 5], 0x10
je 0x1400a96f3
test r14, r14
je 0x1400a96f3
mov byte [r14 + rbp], 0x41
add rbp, 1
cmp r12d, ebp
jle 0x1400a9785
mov rax, qword [rdi + 0x40]
mov rax, qword [rax + rbp*8]
movzx edx, word [rax + 0x14]
test dl, 1
jne 0x1400a96e0
and dh, 1
jne 0x1400a96f3
mov rdx, qword [rax]
mov r15, qword [rdx + 0x18]
test byte [rax + 0x13], 8
je 0x1400a98a0
mov eax, dword [rsi + 0x30]
test eax, eax
jne 0x1400a96f3
movzx edx, byte [r14 + rbp]
mov rcx, r15
mov byte [rsp + 0x3c], dl
call fcn.140006050
movsx edx, byte [rsp + 0x3c]
cmp al, 0x40
jle 0x1400a9bb0
cmp dl, 0x40
jle 0x1400a9bb0
cmp al, 0x42
jg 0x1400a9768
cmp dl, 0x42
jg 0x1400a9768
mov byte [r14 + rbp], 0x41
mov edx, 0x41
mov rcx, r15
call fcn.140003e00
test eax, eax
jne 0x1400a96ee
add rbp, 1
cmp r12d, ebp
jg 0x1400a9700
mov rax, qword [rsp + 0xd0]
mov rbx, qword [rsp + 0x30]
mov qword [rax], rbx
movaps xmm6, xmmword [rsp + 0x50]
mov eax, r13d
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
movsxd r10, r9d
mov dword [rsp + 0x3c], r9d
mov r13d, r12d
lea ebp, [r11 + r9]
mov dword [rsp + 0x40], r11d
lea r14, [r10*8]
mov r12d, r9d
mov qword [rsp + 0x48], r10
nop dword [rax]
mov rax, qword [rdi + 0x40]
mov r8, qword [rsp + 0xb8]
mov r9d, r12d
mov rcx, rsi
mov rdx, qword [rax + r14]
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], r15d
call fcn.1400a8700
mov r8d, eax
cmp eax, ebp
je 0x1400a984a
movsxd rax, dword [rbx + 0x90]
cmp dword [rbx + 0x94], eax
jle 0x1400a9b90
lea edx, [rax + 1]
mov dword [rbx + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 4], r8d
mov dword [rax + 8], ebp
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x50
add r12d, 1
add r14, 8
add ebp, 1
cmp r13d, r12d
jg 0x1400a97d8
mov r9d, dword [rsp + 0x3c]
mov r11d, dword [rsp + 0x40]
mov r12d, r13d
mov r10, qword [rsp + 0x48]
mov r13d, r11d
jmp 0x1400a96c4
movzx eax, byte [rsi + 0x1f]
cmp al, 7
ja 0x1400a96c4
lea edx, [rax + 1]
mov byte [rsi + 0x1f], dl
mov dword [rsi + rax*4 + 0xe0], r11d
jmp 0x1400a96c4
mov rcx, r15
call fcn.140003d80
test eax, eax
je 0x1400a9727
mov rax, qword [rsp + 0xb8]
lea r8d, [r13 + rbp]
movd xmm1, r8d
movd xmm0, dword [rax + 0xc]
movsxd rax, dword [rbx + 0x90]
punpckldq xmm1, xmm0
cmp eax, dword [rbx + 0x94]
jge 0x1400a9c78
lea edx, [rax + 1]
mov dword [rbx + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rdx*8]
mov dword [rax + 0xc], 0
mov qword [rax + 0x10], 0
mov dword [rax], 0x32
movq qword [rax + 4], xmm1
jmp 0x1400a9727
mov rax, qword [rsp + 0xb8]
lea edx, [r13 + r11 - 1]
movd xmm6, dword [rax + 8]
movsxd rax, dword [rbx + 0x90]
cmp eax, dword [rbx + 0x94]
jge 0x1400a9c57
lea ecx, [rax + 1]
mov dword [rbx + 0x90], ecx
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rcx*8]
mov dword [rax + 8], r11d
mov dword [rax + 0xc], edx
mov qword [rax + 0x10], 0
mov qword [rax], 0x4b
cmp r15d, 1
movsxd rax, dword [rbx + 0x90]
sbb ecx, ecx
and ecx, 4
add ecx, 0x20
cmp r15d, 1
sbb edx, edx
and edx, 4
add edx, 0x20
cmp eax, dword [rbx + 0x94]
jge 0x1400a9c30
lea edx, [rax + 1]
xor r9d, r9d
mov dword [rbx + 0x90], edx
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rdx*8]
mov byte [rax], cl
mov word [rax + 2], r9w
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
mov byte [rax + 1], 0
movd dword [rax + 4], xmm6
movsxd r14, dword [rbx + 0x90]
cmp r14d, dword [rbx + 0x94]
jge 0x1400a9c03
lea eax, [r14 + 1]
mov dword [rbx + 0x90], eax
movsxd rax, r14d
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rdx*8]
mov qword [rax], 9
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
cmp r15d, 1
mov ecx, dword [rbx + 0x90]
sbb edx, edx
and edx, 3
add edx, 0x15
cmp r15d, 1
sbb eax, eax
and eax, 3
add eax, 0x15
cmp ecx, dword [rbx + 0x94]
jge 0x1400a9bdb
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
movsxd rax, ecx
lea r8, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + r8*8]
xor r8d, r8d
mov byte [rax], dl
mov word [rax + 2], r8w
mov dword [rax + 8], 0
mov dword [rax + 0xc], r11d
mov qword [rax + 0x10], 0
mov byte [rax + 1], 0
movd dword [rax + 4], xmm6
mov rax, qword [rbx]
cmp byte [rax + 0x67], 0
jne 0x1400a9aa6
movsxd rax, ecx
lea rdx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
lea rax, [rax + rdx*8]
mov byte [rax + 1], 0xfd
mov dword [rax + 0x10], r13d
mov rax, qword [rsp + 0xb8]
mov dword [rax + 0x14], ecx
mov rdx, qword [rbx]
movsxd rax, dword [rbx + 0x90]
cmp byte [rdx + 0x67], 0
jne 0x1400a9bd0
mov rcx, qword [rbx + 0x88]
lea rdx, [r14 + r14*2]
lea rdx, [rcx + rdx*8]
mov dword [rdx + 8], eax
mov qword [rsp + 0xb0], rsi
xor r14d, r14d
mov rsi, rbx
mov ebx, r11d
jmp 0x1400a9b30
lea r9d, [rax + 1]
add r14d, 1
mov dword [rsi + 0x90], r9d
lea r9, [rax + rax*2]
mov rax, qword [rsi + 0x88]
lea rax, [rax + r9*8]
mov dword [rax + 0xc], edx
mov qword [rax + 0x10], 0
mov dword [rax], 0x5e
movq qword [rax + 4], xmm0
cmp r13d, r14d
je 0x1400a9b6b
movsxd rax, dword [rsi + 0x90]
movdqa xmm0, xmm6
movd xmm2, r14d
lea edx, [rbx + r14]
punpckldq xmm0, xmm2
cmp dword [rsi + 0x94], eax
jg 0x1400a9af0
mov dword [rsp + 0x20], edx
mov r9d, r14d
movd r8d, xmm6
mov rcx, rsi
mov edx, 0x5e
add r14d, 1
call fcn.1400445b0
cmp r13d, r14d
jne 0x1400a9b29
mov r11d, ebx
mov r9d, r14d
mov rbx, rsi
mov rsi, qword [rsp + 0xb0]
cmp r12d, r14d
jg 0x1400a9661
mov r13d, r11d
jmp 0x1400a9785
mov dword [rsp + 0x20], 0
mov r9d, ebp
mov edx, 0x50
mov rcx, rbx
call fcn.1400445b0
jmp 0x1400a984a
mov ecx, edx
or ecx, 0x40
cmp al, 0x41
cmovl eax, ecx
cmp al, 0x41
jne 0x1400a9768
jmp 0x1400a975e
mov dword [0x1401f50c8], eax
jmp 0x1400a9ad7
mov dword [rsp + 0x20], r11d
mov rcx, rbx
xor r9d, r9d
movd r8d, xmm6
mov edx, eax
mov dword [rsp + 0x3c], r11d
call fcn.1400445b0
mov r11d, dword [rsp + 0x3c]
mov ecx, eax
jmp 0x1400a9a83
xor r9d, r9d
xor r8d, r8d
mov edx, 9
mov rcx, rbx
mov dword [rsp + 0x20], 0
mov dword [rsp + 0x3c], r11d
call fcn.1400445b0
mov r11d, dword [rsp + 0x3c]
movsxd r14, eax
jmp 0x1400a9a18
xor r9d, r9d
movd r8d, xmm6
mov rcx, rbx
mov dword [rsp + 0x3c], r11d
mov dword [rsp + 0x20], 0
call fcn.1400445b0
mov r11d, dword [rsp + 0x3c]
jmp 0x1400a99d1
mov dword [rsp + 0x20], edx
mov r9d, r11d
xor r8d, r8d
mov edx, 0x4b
mov rcx, rbx
call fcn.1400445b0
mov r11d, dword [rsp + 0x3c]
jmp 0x1400a996b
mov dword [rsp + 0x20], 0
movd r9d, xmm0
mov edx, 0x32
mov rcx, rbx
call fcn.1400445b0
jmp 0x1400a9727