Function at 0x1401d21e0
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
mov rax, qword [rcx + 0x10]
mov r15, qword [rdx + 0x60]
movzx ebx, word [r15 + 0x3e]
mov rbp, rcx
mov qword [rsp + 0x40], rax
mov eax, dword [rcx + 0x38]
mov r13, rdx
movzx ecx, word [r15 + 0x18]
mov rdx, qword [r15 + 0x20]
mov word [rsp + 0x50], bx
movzx ebx, bx
lea edi, [rax + 1]
mov dword [rsp + 0xc0], r8d
add r9d, ecx
mov dword [rsp + 0x3c], ecx
mov rcx, qword [rbp]
mov r12d, edi
add eax, r9d
mov dword [rsp + 0x58], r9d
mov dword [rbp + 0x38], eax
call fcn.140185d30
mov rcx, qword [rbp]
mov rdx, rax
call fcn.140175aa0
mov qword [rsp + 0x48], rax
test bx, bx
jne 0x1401d2470
movzx esi, word [rsp + 0x50]
lea r14, [rsi*8]
cmp dword [rsp + 0x3c], ebx
jle 0x1401d23d5
mov qword [rsp + 0x50], rsi
mov rsi, r14
mov r14d, dword [rsp + 0xc0]
jmp 0x1401d22cd
test r12d, r12d
je 0x1401d2400
movzx eax, byte [rbp + 0x1f]
cmp al, 7
ja 0x1401d2400
lea edx, [rax + 1]
mov byte [rbp + 0x1f], dl
mov dword [rbp + rax*4 + 0xd8], r12d
mov r12d, r8d
nop word cs:[rax + rax]
add ebx, 1
add rsi, 8
cmp dword [rsp + 0x3c], ebx
je 0x1401d2325
mov rax, qword [r15 + 0x48]
lea edi, [r12 + rbx]
mov r8, r13
mov r9d, ebx
mov rcx, rbp
mov rdx, qword [rax + rsi]
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], r14d
call fcn.1401d17f0
mov r8d, eax
cmp edi, eax
je 0x1401d22c0
cmp dword [rsp + 0x58], 1
je 0x1401d2290
mov rcx, qword [rsp + 0x40]
mov r9d, edi
mov edx, 0x50
add ebx, 1
mov dword [rsp + 0x20], 0
add rsi, 8
call fcn.140181750
cmp dword [rsp + 0x3c], ebx
jne 0x1401d22cd
mov qword [rsp + 0xb8], r13
mov rdi, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
jmp 0x1401d235a
mov rax, qword [rax]
test byte [rax + 5], 0x10
je 0x1401d2352
test rdi, rdi
je 0x1401d2352
mov byte [rdi + rsi], 0x41
add rsi, 1
cmp ebx, esi
jle 0x1401d23d0
mov rax, qword [r15 + 0x48]
mov rax, qword [rax + rsi*8]
movzx edx, word [rax + 0x14]
test dl, 1
jne 0x1401d2340
and dh, 1
jne 0x1401d2352
mov rdx, qword [rax]
mov r14, qword [rdx + 0x18]
test byte [rax + 0x13], 8
je 0x1401d2410
mov eax, dword [rbp + 0x30]
test eax, eax
jne 0x1401d2352
mov rcx, r14
movzx r13d, byte [rdi + rsi]
call fcn.140158fe0
cmp al, 0x40
jle 0x1401d2450
cmp r13b, 0x40
jle 0x1401d2450
cmp al, 0x42
jg 0x1401d23b1
cmp r13b, 0x42
jle 0x1401d234e
movsx edx, byte [rdi + rsi]
cmp dl, 0x41
je 0x1401d234e
mov rcx, r14
call fcn.14015e490
test eax, eax
jne 0x1401d234e
add rsi, 1
cmp ebx, esi
jg 0x1401d235a
nop
mov qword [rsp + 0x48], rdi
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x48]
mov qword [rax], rcx
mov eax, r12d
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov r12d, r8d
jmp 0x1401d22c0
mov rcx, r14
call fcn.140158b90
test eax, eax
je 0x1401d2381
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0xb8]
lea r8d, [r12 + rsi]
mov dword [rsp + 0x20], 0
mov edx, 0x32
mov r9d, dword [rax + 0xc]
call fcn.140181750
jmp 0x1401d2381
mov edx, r13d
or edx, 0x40
cmp al, 0x41
cmovl eax, edx
cmp al, 0x41
jne 0x1401d23b1
jmp 0x1401d234e
lea eax, [rbx + rdi - 1]
mov r14, qword [rsp + 0x40]
mov esi, dword [r13 + 8]
xor r8d, r8d
mov dword [rsp + 0x20], eax
mov r9d, edi
mov edx, 0x4b
mov rcx, r14
call fcn.140181750
cmp dword [rsp + 0xc0], 1
mov r8d, esi
mov rcx, r14
sbb edx, edx
mov dword [rsp + 0x20], 0
xor r9d, r9d
and edx, 4
add edx, 0x1f
call fcn.140181750
mov r10d, dword [r14 + 0x90]
cmp r10d, dword [r14 + 0x94]
jge 0x1401d25cc
mov rcx, qword [rsp + 0x40]
lea eax, [r10 + 1]
mov dword [rcx + 0x90], eax
movsxd rax, r10d
lea rdx, [rax + rax*2]
mov rax, qword [rcx + 0x88]
lea rax, [rax + rdx*8]
mov qword [rax], 8
mov qword [rax + 8], 0
mov qword [rax + 0x10], 0
cmp dword [rsp + 0xc0], 1
mov r14, qword [rsp + 0x40]
mov dword [rsp + 0x28], ebx
mov r8d, esi
sbb edx, edx
mov dword [rsp + 0x20], edi
xor r9d, r9d
and edx, 3
mov rcx, r14
mov dword [rsp + 0x5c], r10d
add edx, 0x14
call fcn.140182760
mov r10d, dword [rsp + 0x5c]
mov rcx, qword [r14]
mov dword [r13 + 0x14], eax
mov eax, dword [r14 + 0x90]
test r10d, r10d
lea edx, [rax - 1]
cmovs r10d, edx
cmp byte [rcx + 0x67], 0
lea rdx, [0x140438260]
je 0x1401d25b8
mov dword [rdx + 8], eax
xor r9d, r9d
mov qword [rsp + 0xb0], rbp
mov ebp, esi
mov rsi, qword [rsp + 0x40]
mov r14d, r9d
nop dword [rax + rax]
lea eax, [rdi + r14]
mov r9d, r14d
mov r8d, ebp
mov edx, 0x5e
mov dword [rsp + 0x20], eax
mov rcx, rsi
add r14d, 1
call fcn.140181750
cmp r14d, ebx
jne 0x1401d2580
mov rbp, qword [rsp + 0xb0]
jmp 0x1401d225f
mov rdx, qword [r14 + 0x88]
movsxd r10, r10d
lea rcx, [r10 + r10*2]
lea rdx, [rdx + rcx*8]
jmp 0x1401d2560
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
xor r8d, r8d
mov edx, 8
mov dword [rsp + 0x20], 0
call fcn.1401816c0
mov r10d, eax
jmp 0x1401d2506