Function at 0x1401d1360
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, 0x48
mov r12d, dword [rcx + 0x30]
mov rbx, rcx
mov edi, edx
test r12d, r12d
jne 0x1401d1721
cmp dword [rcx + 0x80], r8d
jle 0x1401d1721
xor r13d, r13d
cmp edx, 1
setne r13b
add r13d, r8d
movsxd rsi, r13d
mov ebp, r13d
imul rsi, rsi, 0x38
mov r14, rsi
cmp ebp, dword [rbx + 0x80]
jge 0x1401d13c7
mov rax, qword [rbx + 0x78]
inc ebp
mov rcx, qword [rax + r14 + 0x10]
add r14, 0x38
call fcn.1401b2cf0
jmp 0x1401d13a9
dec edi
mov dword [rbx + 0x80], r13d
jne 0x1401d1421
add rsi, qword [rbx + 0x78]
cmp dword [rsi + 0x20], 0
je 0x1401d1721
mov rcx, qword [rbx + 0x58]
mov rax, qword [rcx]
test rax, rax
je 0x1401d1721
lea rdx, [0x140299b80]
cmp rax, rdx
jne 0x1401d1416
mov rax, qword [rbx + 0xc8]
lea rdx, [rax + 4]
mov eax, dword [rsi + 0x1c]
imul rdx, rax
call fcn.1401d0c30
mov r12d, eax
mov eax, dword [rsi + 0x1c]
mov dword [rbx + 0x3c], eax
jmp 0x1401d1721
cmp qword [rbx + 0x128], 0
jne 0x1401d1439
mov rax, qword [rbx + 0x50]
cmp qword [rax], 0
je 0x1401d1721
test r13d, r13d
je 0x1401d146b
mov rax, qword [rbx + 0x78]
lea rsi, [rax + rsi - 0x38]
test rsi, rsi
je 0x1401d146b
mov ecx, dword [rsi + 0x18]
call fcn.1401b2cd0
mov r14, rax
test rax, rax
jne 0x1401d1719
mov r12d, 7
jmp 0x1401d1721
mov eax, dword [rbx + 0x24]
xor esi, esi
xor r14d, r14d
mov dword [rbx + 0x20], eax
mov al, byte [rbx + 0x10]
mov byte [rbx + 0x17], al
test rsi, rsi
jne 0x1401d1565
mov r13, qword [rbx + 0x128]
test r13, r13
je 0x1401d1565
mov eax, dword [rbx + 0x24]
mov dword [rbx + 0x20], eax
cmp byte [r13 + 0x40], 0
je 0x1401d152d
mov rdx, qword [r13 + 0x30]
lea rax, [r13 + 0x48]
mov r14d, dword [r13 + 0x58]
mov ecx, 0xc
mov rdi, rax
mov rsi, qword [rdx]
rep movsd dword [rdi], dword [rsi]
mov eax, dword [r13 + 0x58]
lea esi, [rax + 1]
test r12d, r12d
jne 0x1401d151f
cmp r14d, esi
jb 0x1401d151f
lea eax, [rsi + 0x1000]
mov rcx, qword [r13 + 0x30]
sub rax, 0xfdf
shr rax, 0xc
test eax, eax
jne 0x1401d14f7
mov rdx, qword [rcx]
mov eax, esi
lea rax, [rdx + rax*4 + 0x84]
jmp 0x1401d150e
cdqe
lea rdx, [rsi*4 + 0x84]
and edx, 0x3ffc
add rdx, qword [rcx + rax*8]
mov rax, rdx
mov edx, dword [rax]
mov rcx, rbx
inc esi
call fcn.1401a0100
mov r12d, eax
jmp 0x1401d14c6
cmp r14d, dword [r13 + 0x58]
je 0x1401d152d
mov rcx, r13
call fcn.1402074b0
mov rax, qword [rbx + 0x120]
mov rcx, qword [rax]
call fcn.1401d7db0
test rax, rax
je 0x1401d1721
test r12d, r12d
jne 0x1401d1721
mov edx, dword [rax + 0x30]
mov rsi, qword [rax + 0x20]
mov rcx, rbx
call fcn.1401a0100
mov r12d, eax
mov rax, rsi
jmp 0x1401d153c
mov r13, qword [rbx + 0x60]
test rsi, rsi
je 0x1401d15bc
cmp qword [rbx + 0x128], 0
jne 0x1401d15bc
mov rdi, qword [rsi + 8]
mov rax, qword [rsi]
lea rbp, [rbx + 0x60]
test rdi, rdi
mov qword [rbx + 0x60], rax
cmove rdi, r13
cmp qword [rbx + 0x60], rdi
jge 0x1401d15c4
mov r9d, 1
mov r8, r14
mov rdx, rbp
mov rcx, rbx
mov dword [rsp + 0x20], 1
call fcn.1401a1250
mov r9d, eax
test eax, eax
je 0x1401d158e
jmp 0x1401d1672
mov qword [rbx + 0x60], 0
lea rdi, [rsp + 0x34]
lea rbp, [rbx + 0x60]
cmp r13, qword [rbx + 0x60]
jle 0x1401d1666
lea rax, [rsp + 0x38]
mov r9, rdi
xor edx, edx
mov r8, r13
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov dword [rsp + 0x34], 0
call fcn.1401a51a0
cmp dword [rsp + 0x34], 0
mov r9d, eax
jne 0x1401d162d
mov edx, dword [rbx + 0xb8]
add rdx, qword [rbx + 0x68]
cmp rdx, qword [rbx + 0x60]
jne 0x1401d162d
mov rcx, qword [rbx + 0xc8]
mov rax, r13
sub rax, rdx
add rcx, 8
cqo
idiv rcx
mov dword [rsp + 0x34], eax
xor r15d, r15d
test r9d, r9d
jne 0x1401d1669
cmp r15d, dword [rsp + 0x34]
jae 0x1401d15cd
cmp r13, qword [rbx + 0x60]
jle 0x1401d15cd
mov r9d, 1
mov r8, r14
mov rdx, rbp
mov rcx, rbx
mov dword [rsp + 0x20], 1
inc r15d
call fcn.1401a1250
mov r9d, eax
jmp 0x1401d1630
xor r9d, r9d
test rsi, rsi
je 0x1401d1703
mov rax, qword [rbx + 0xc8]
mov edx, dword [rsi + 0x1c]
mov rcx, qword [rbx + 0x128]
add rax, 4
imul rax, rdx
mov qword [rsp + 0x38], rax
test rcx, rcx
je 0x1401d16ce
mov eax, dword [rcx + 0x88]
cmp dword [rsi + 0x30], eax
je 0x1401d16b0
mov dword [rsi + 0x24], 0
mov eax, dword [rcx + 0x88]
mov dword [rsi + 0x30], eax
mov eax, dword [rsi + 0x24]
cmp eax, dword [rcx + 0x58]
jae 0x1401d16d1
mov dword [rcx + 0x58], eax
mov eax, dword [rsi + 0x28]
mov dword [rcx + 0x60], eax
mov eax, dword [rsi + 0x2c]
mov dword [rcx + 0x64], eax
call fcn.1402074b0
jmp 0x1401d16d1
mov r12d, r9d
mov esi, dword [rsi + 0x1c]
lea rdi, [rsp + 0x38]
test r12d, r12d
jne 0x1401d1706
cmp esi, dword [rbx + 0x3c]
jae 0x1401d1706
mov dword [rsp + 0x20], 1
xor r9d, r9d
mov r8, r14
inc esi
mov rdx, rdi
mov rcx, rbx
call fcn.1401a1250
mov r12d, eax
jmp 0x1401d16d9
mov r12d, r9d
mov rcx, r14
call fcn.1401b2cf0
test r12d, r12d
jne 0x1401d1721
mov qword [rbx + 0x60], r13
jmp 0x1401d1721
mov eax, dword [rsi + 0x18]
jmp 0x1401d1473
mov eax, r12d
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret