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

Disassembly:
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x98
xorps xmm4, xmm4
movaps xmmword [rsp + 0x50], xmm4
movaps xmmword [rsp + 0x60], xmm4
movaps xmmword [rsp + 0x70], xmm4
movaps xmmword [rsp + 0x80], xmm4
mov qword [rsp + 0xe8], rdx
mov rbx, r8
mov rsi, qword [rcx]
mov edi, dword [rcx + 8]
movzx ebp, byte [rsp + 0xe8]
mov r14d, dword [rsp + 0xec]
lea rcx, [0x1402b1ae8]
call fcn.140003dd0
mov r15, rax
mov rcx, r15
mov edx, 0x3c
xor r8d, r8d
call fcn.1401d1a60
xor r13d, r13d
cmp r13d, edi
ja 0x1401b841f
mov r12d, r13d
add r12, rsi
mov edx, edi
sub edx, r13d
cmp edx, 0x100
jb 0x1401b8425
mov rax, qword [r12 + 0x50]
movsxd rdx, eax
cmp rax, rdx
jne 0x1401b82a3
mov dword [rsp + 0x94], eax
test ebp, ebp
je 0x1401b8108
cmp r14d, eax
mov eax, dword [rsp + 0x94]
je 0x1401b8108
mov ecx, dword [r12]
test ecx, ecx
je 0x1401b81f6
add r13d, ecx
jmp 0x1401b7ed1
movsxd rdx, edx
lea rcx, [0x1402e1748]
call fcn.140003ef0
mov r8, qword [rsp + 0x28]
lea rcx, [r8 + 8]
mov rdx, rax
call fcn.140003fe0
mov rax, qword [rsp + 0x38]
lea rcx, [rax + 8]
mov rdx, qword [rsp + 0x28]
call fcn.140003fe0
mov rax, qword [rsp + 0x38]
lea rcx, [rax + 0x10]
mov rdx, qword [rsp + 0x48]
call fcn.140003fe0
mov rax, qword [rsp + 0x38]
mov r10d, dword [rsp + 0x94]
mov dword [rax + 0x64], r10d
mov ecx, dword [r12 + 0x64]
mov dword [rax + 0x68], ecx
mov rcx, qword [r12 + 0xa0]
mov qword [rax + 0x18], rcx
mov rcx, qword [r12 + 0xb0]
mov qword [rax + 0x20], rcx
mov rcx, qword [r12 + 0x78]
mov qword [rax + 0x28], rcx
mov rcx, qword [r12 + 0x70]
mov qword [rax + 0x30], rcx
mov rcx, qword [r12 + 0x88]
mov qword [rax + 0x38], rcx
mov rcx, qword [r12 + 0x90]
mov qword [rax + 0x40], rcx
mov rcx, qword [r12 + 0xc0]
mov qword [rax + 0x48], rcx
mov rcx, qword [r12 + 0xb8]
mov qword [rax + 0x50], rcx
mov rcx, qword [r12 + 0xc8]
mov qword [rax + 0x58], rcx
mov ecx, dword [r12 + 0x48]
mov dword [rax + 0x60], ecx
mov ecx, dword [r12 + 0x60]
mov dword [rax + 0x6c], ecx
mov qword [rsp + 0x40], rax
mov edx, dword [rax + 0x64]
mov rcx, r15
mov r8, rax
mov r9d, 1
call fcn.1401d1e20
lea eax, [r13 + 0x100]
xor edx, edx
mov dword [rsp + 0x78], edx
cmp dword [r12 + 4], 0
je 0x1401b7f21
cmp eax, edi
ja 0x1401b841f
mov r8d, eax
add r8, rsi
mov dword [rsp + 0x7c], eax
mov ecx, edi
sub ecx, eax
mov qword [rsp + 0x20], r8
cmp ecx, 0x50
jb 0x1401b8425
lea rcx, [0x140296f68]
call fcn.140003dd0
mov rdx, rax
mov qword [rsp + 0x30], rdx
mov rcx, qword [rsp + 0x20]
mov eax, dword [rcx + 0x28]
mov dword [rdx + 0x18], eax
mov rax, qword [rcx + 0x30]
mov qword [rdx + 8], rax
mov eax, dword [rcx + 0x3c]
mov dword [rdx + 0x1c], eax
mov eax, dword [rcx + 0x38]
mov dword [rdx + 0x20], eax
mov rax, qword [rcx + 0x20]
mov qword [rdx + 0x10], rax
mov eax, dword [rcx + 0x44]
mov dword [rdx + 0x24], eax
mov ecx, dword [rcx + 0x48]
call fcn.1401b7860
mov rdx, qword [rsp + 0x30]
mov dword [rdx + 0x28], eax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 8]
inc dword [rcx + 0x14]
mov r8, qword [rcx + 8]
mov r10d, dword [rcx + 0x10]
cmp dword [r8 + 8], r10d
jbe 0x1401b81ec
lea r9d, [r10 + 1]
mov dword [rcx + 0x10], r9d
mov ecx, r10d
lea rcx, [r8 + rcx*8 + 0x10]
call fcn.140003fe0
mov eax, dword [rsp + 0x7c]
add eax, 0x50
mov edx, dword [rsp + 0x78]
inc edx
movsxd rcx, edx
mov r8d, dword [r12 + 4]
cmp rcx, r8
mov dword [rsp + 0x78], edx
jl 0x1401b8039
jmp 0x1401b7f21
xor r8d, r8d
mov qword [rsp + 0x48], r8
mov rdx, qword [r12 + 0x40]
test rdx, rdx
je 0x1401b82a8
movzx ecx, word [r12 + 0x38]
shr ecx, 1
js 0x1401b841f
mov qword [rsp + 0x50], rdx
mov dword [rsp + 0x58], ecx
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x68]
call fcn.1401b8440
movups xmm0, xmmword [rsp + 0x68]
movups xmmword [rsp + 0x80], xmm0
test rbx, rbx
jne 0x1401b81c3
mov rax, qword [rsp + 0x48]
test rax, rax
mov qword [rsp + 0x48], rax
jne 0x1401b8177
lea rcx, [rsp + 0x80]
call fcn.1401ca900
mov qword [rsp + 0x48], rax
lea rcx, [0x140296ee0]
call fcn.140003dd0
mov qword [rsp + 0x38], rax
mov edx, dword [r12 + 4]
mov dword [rsp + 0x64], edx
lea rcx, [0x140240ab0]
mov qword [rax + 0x10], rcx
lea rcx, [0x1402c94c0]
call fcn.140003dd0
mov qword [rsp + 0x28], rax
mov edx, dword [rsp + 0x64]
test edx, edx
jl 0x1401b840f
test edx, edx
jne 0x1401b7f32
jmp 0x1401b81ce
cmp dword [rbx + 8], 0
je 0x1401b8156
jmp 0x1401b83bc
mov rcx, qword [0x14043c078]
mov rdx, qword [rcx + 8]
mov rax, qword [rsp + 0x28]
lea rcx, [rax + 8]
call fcn.140003fe0
jmp 0x1401b7f52
call fcn.1401f76b0
jmp 0x1401b80e1
mov rax, qword [r15 + 0x28]
test rax, rax
je 0x1401b8274
mov rdx, qword [rax + 8]
mov ecx, dword [rdx + 0x38]
sub ecx, dword [rdx + 0x40]
movsxd rdx, ecx
lea rcx, [0x1402e1690]
call fcn.140003ef0
mov rsi, rax
mov rcx, qword [r15 + 0x28]
test rcx, rcx
je 0x1401b8248
mov rdx, rsi
xor r8d, r8d
cmp dword [rcx], ecx
call fcn.1401d2ba0
mov rax, rsi
add rsp, 0x98
pop rbx
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x1402b1da0]
call fcn.140003dd0
mov rdi, rax
lea rcx, [rdi + 8]
mov rdx, r15
call fcn.140003fe0
lea rcx, [r15 + 0x28]
mov rdx, rdi
call fcn.140003fe0
mov rcx, rdi
jmp 0x1401b8224
lea rcx, [0x1402b1da0]
call fcn.140003dd0
mov rbx, rax
lea rcx, [rbx + 8]
mov rdx, r15
call fcn.140003fe0
lea rcx, [r15 + 0x28]
mov rdx, rbx
call fcn.140003fe0
mov rax, rbx
jmp 0x1401b81ff
call fcn.140192810
cmp eax, 4
je 0x1401b838c
test eax, eax
je 0x1401b8383
lea rcx, [0x14026ffb8]
cmp qword [rcx - 8], 0
je 0x1401b82cc
call fcn.14000199c
mov rcx, qword [0x14043b028]
mov rcx, qword [rcx + 0x18]
cmp dword [rsp + 0x94], 0
jge 0x1401b8309
test rcx, rcx
je 0x1401b82ed
call fcn.140126520
jmp 0x1401b82f2
call fcn.140126390
mov r8, qword [rax + 0x28]
mov ecx, dword [rsp + 0x94]
mov edx, 0xffffffff
call fcn.1400feda0
jmp 0x1401b837e
cmp dword [rsp + 0x94], 0x12c
jae 0x1401b8363
lea rcx, [0x14026ff20]
cmp qword [rcx - 8], 0
je 0x1401b8329
call fcn.1400018bc
mov rcx, qword [0x14043afd0]
mov rcx, qword [rcx + 8]
mov eax, dword [rsp + 0x94]
cmp eax, dword [rcx + 8]
jae 0x1401b8430
mov edx, eax
mov rdx, qword [rcx + rdx*8 + 0x10]
test rdx, rdx
jne 0x1401b8361
mov ecx, eax
call fcn.140101370
mov rdx, rax
mov eax, dword [rsp + 0x94]
jmp 0x1401b837b
mov eax, dword [rsp + 0x94]
mov ecx, eax
call fcn.1400ff120
mov rdx, rax
mov eax, dword [rsp + 0x94]
mov rax, rdx
mov rdx, rax
jmp 0x1401b8393
lea rdx, [0x14024d3b8]
jmp 0x1401b8393
lea rdx, [0x140256180]
mov r10, rdx
test r10, r10
jne 0x1401b83a1
xor ecx, ecx
xor edx, edx
jmp 0x1401b83a9
lea rcx, [r10 + 0xc]
mov edx, dword [r10 + 8]
mov qword [rsp + 0x68], rcx
mov dword [rsp + 0x70], edx
mov qword [rsp + 0x48], r10
jmp 0x1401b8144
mov rcx, qword [rsp + 0x80]
mov r8d, dword [rsp + 0x88]
lea rdx, [rbx + 0xc]
mov r9d, dword [rbx + 8]
cmp r8d, r9d
jne 0x1401b7f21
test r9d, r9d
je 0x1401b8156
cmp r8d, 8
jge 0x1401b83f3
call fcn.1401268c0
jmp 0x1401b83f8
call fcn.140126720
test eax, eax
je 0x1401b7f21
mov r10, qword [rsp + 0x48]
mov qword [rsp + 0x48], r10
jmp 0x1401b8156
mov ecx, 0x16
mov edx, 0xd
call fcn.1401043d0
int3
call fcn.140103f10
int3
mov ecx, 0x28
call fcn.140104390
int3
call fcn.140192840
int3