Function at 0x1402451a0
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 rbx, rcx
mov ebp, edx
cmp dword [rcx + 0x80], r8d
jg 0x1402451c5
xor ebp, ebp
jmp 0x140245560
xor edi, edi
cmp edx, 1
setne dil
add edi, r8d
movsxd rsi, edi
mov r12d, edi
imul rsi, rsi, 0x38
mov r13, rsi
cmp r12d, dword [rbx + 0x80]
jge 0x1402451fe
mov rax, qword [rbx + 0x78]
inc r12d
mov rcx, qword [rax + r13 + 0x10]
add r13, 0x38
call fcn.140225500
jmp 0x1402451de
dec ebp
mov dword [rbx + 0x80], edi
jne 0x140245250
add rsi, qword [rbx + 0x78]
cmp dword [rsi + 0x20], 0
je 0x1402451be
mov rcx, qword [rbx + 0x58]
mov rax, qword [rcx]
test rax, rax
je 0x1402451be
lea rdx, [0x140376f40]
xor ebp, ebp
cmp rax, rdx
jne 0x140245245
mov rax, qword [rbx + 0xc8]
lea rdx, [rax + 4]
mov eax, dword [rsi + 0x1c]
imul rdx, rax
call fcn.140244a80
mov ebp, eax
mov eax, dword [rsi + 0x1c]
mov dword [rbx + 0x3c], eax
jmp 0x140245560
mov r12, qword [rbx + 0x128]
test r12, r12
je 0x140245271
test edi, edi
jne 0x140245283
mov eax, dword [rbx + 0x24]
mov dword [rbx + 0x20], eax
mov al, byte [rbx + 0x10]
mov byte [rbx + 0x17], al
jmp 0x14024530c
mov rax, qword [rbx + 0x50]
cmp qword [rax], 0
je 0x1402451be
test edi, edi
je 0x1402452ab
mov rax, qword [rbx + 0x78]
lea rsi, [rax + rsi - 0x38]
test rsi, rsi
je 0x1402452bc
mov ecx, dword [rsi + 0x18]
mov ebp, 7
call fcn.1402254e0
mov r12, rax
test rax, rax
jne 0x1402452d3
jmp 0x140245560
mov eax, dword [rbx + 0x24]
mov dword [rbx + 0x20], eax
mov al, byte [rbx + 0x10]
mov byte [rbx + 0x17], al
jmp 0x1402453db
mov eax, dword [rbx + 0x24]
mov dword [rbx + 0x20], eax
mov al, byte [rbx + 0x10]
mov byte [rbx + 0x17], al
test r12, r12
je 0x1402453db
jmp 0x14024530c
mov eax, dword [rsi + 0x18]
cmp qword [rbx + 0x128], 0
mov rdi, qword [rbx + 0x60]
mov dword [rbx + 0x20], eax
mov al, byte [rbx + 0x10]
mov byte [rbx + 0x17], al
jne 0x140245410
mov r13, qword [rsi + 8]
mov rax, qword [rsi]
lea r14, [rbx + 0x60]
test r13, r13
mov qword [rbx + 0x60], rax
cmove r13, rdi
jmp 0x140245408
xor ebp, ebp
cmp byte [r12 + 0x40], 0
je 0x1402453a5
mov rdx, qword [r12 + 0x30]
lea rax, [r12 + 0x48]
mov r13d, dword [r12 + 0x58]
mov ecx, 0xc
mov rdi, rax
mov rsi, qword [rdx]
rep movsd dword [rdi], dword [rsi]
mov eax, dword [r12 + 0x58]
lea esi, [rax + 1]
test ebp, ebp
jne 0x140245396
cmp r13d, esi
jb 0x140245396
lea eax, [rsi + 0x1000]
mov rcx, qword [r12 + 0x30]
sub rax, 0xfdf
shr rax, 0xc
test eax, eax
jne 0x14024536f
mov rdx, qword [rcx]
mov eax, esi
lea rax, [rdx + rax*4 + 0x84]
jmp 0x140245386
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.1402110c0
mov ebp, eax
jmp 0x14024533e
cmp r13d, dword [r12 + 0x58]
je 0x1402453a5
mov rcx, r12
call fcn.14027a340
mov rax, qword [rbx + 0x120]
mov rcx, qword [rax]
call fcn.140249b90
test rax, rax
je 0x140245560
test ebp, ebp
jne 0x140245560
mov edx, dword [rax + 0x30]
mov rsi, qword [rax + 0x20]
mov rcx, rbx
call fcn.1402110c0
mov ebp, eax
mov rax, rsi
jmp 0x1402453b4
mov rdi, qword [rbx + 0x60]
xor r12d, r12d
xor esi, esi
jmp 0x140245410
mov r9d, 1
mov r8, r12
mov rdx, r14
mov rcx, rbx
mov dword [rsp + 0x20], 1
call fcn.1402122e0
mov ebp, eax
test eax, eax
jne 0x140245418
cmp qword [rbx + 0x60], r13
jl 0x1402453e6
jmp 0x140245416
xor ecx, ecx
mov qword [rbx + 0x60], rcx
xor ebp, ebp
lea r13, [rsp + 0x34]
lea r14, [rbx + 0x60]
test ebp, ebp
jne 0x1402454bd
cmp rdi, qword [rbx + 0x60]
jle 0x1402454bd
lea rax, [rsp + 0x38]
xor edx, edx
mov r9, r13
mov r8, rdi
mov qword [rsp + 0x20], rax
mov rcx, rbx
mov dword [rsp + 0x34], edx
xor edx, edx
call fcn.1402160d0
cmp dword [rsp + 0x34], 0
mov ebp, eax
jne 0x140245486
mov edx, dword [rbx + 0xb8]
add rdx, qword [rbx + 0x68]
cmp rdx, qword [rbx + 0x60]
jne 0x140245486
mov rcx, qword [rbx + 0xc8]
mov rax, rdi
sub rax, rdx
add rcx, 8
cqo
idiv rcx
mov dword [rsp + 0x34], eax
xor r15d, r15d
test ebp, ebp
jne 0x1402454bd
cmp r15d, dword [rsp + 0x34]
jae 0x140245429
cmp rdi, qword [rbx + 0x60]
jle 0x140245429
mov r9d, 1
mov r8, r12
mov rdx, r14
mov rcx, rbx
mov dword [rsp + 0x20], 1
inc r15d
call fcn.1402122e0
mov ebp, eax
jmp 0x140245489
test rsi, rsi
je 0x140245550
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 0x140245520
mov eax, dword [rcx + 0x88]
cmp dword [rsi + 0x30], eax
je 0x140245502
xor eax, eax
mov dword [rsi + 0x24], eax
mov eax, dword [rcx + 0x88]
mov dword [rsi + 0x30], eax
mov eax, dword [rsi + 0x24]
cmp eax, dword [rcx + 0x58]
jae 0x14024551e
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.14027a340
xor ebp, ebp
mov esi, dword [rsi + 0x1c]
lea r13, [rsp + 0x38]
test ebp, ebp
jne 0x140245550
cmp esi, dword [rbx + 0x3c]
jae 0x140245550
mov dword [rsp + 0x20], 1
xor r9d, r9d
mov r8, r12
inc esi
mov rdx, r13
mov rcx, rbx
call fcn.1402122e0
mov ebp, eax
jmp 0x140245528
mov rcx, r12
call fcn.140225500
test ebp, ebp
jne 0x140245560
mov qword [rbx + 0x60], rdi
mov eax, ebp
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret