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

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rdi
push r12
push r13
push r14
sub rsp, 0x38
xor r14d, r14d
mov r12, rdx
mov rdi, rcx
mov ebp, r14d
mov r13d, r14d
test rdx, rdx
je 0x14002226e
mov ebx, dword [rdx + 0x18]
mov ecx, 0x200
call fcn.140014fd0
mov r13, rax
test rax, rax
je 0x140022250
lea rcx, [rax + 4]
xor edx, edx
mov r8d, 0x1fc
call fcn.1400a6c90
mov dword [r13], ebx
test r13, r13
jne 0x140022267
lea eax, [r13 + 7]
add rsp, 0x38
pop r14
pop r13
pop r12
pop rdi
pop rbp
pop rbx
ret
mov eax, dword [r12 + 0x18]
jmp 0x140022271
mov eax, dword [rcx + 0x24]
mov dword [rdi + 0x20], eax
movzx eax, byte [rdi + 0x11]
mov qword [rsp + 0x70], rsi
mov byte [rdi + 0x17], al
mov qword [rsp + 0x30], r15
test r12, r12
jne 0x140022397
mov rsi, qword [rdi + 0x140]
test rsi, rsi
je 0x140022397
mov eax, dword [rdi + 0x24]
mov dword [rdi + 0x20], eax
cmp byte [rsi + 0x40], bpl
je 0x14002233c
mov r15d, dword [rsi + 0x58]
mov rax, qword [rsi + 0x30]
mov rcx, qword [rax]
movups xmm0, xmmword [rcx]
movups xmmword [rsi + 0x48], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rsi + 0x58], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rsi + 0x68], xmm0
mov ebx, dword [rsi + 0x58]
inc ebx
lea ebp, [rbx + 0x1000]
nop dword [rax + rax]
cmp ebx, r15d
ja 0x14002232e
mov r8, qword [rsi + 0x30]
mov eax, ebp
sub rax, 0xfdf
shr rax, 0xc
test eax, eax
jne 0x140022305
mov rax, qword [r8]
mov edx, dword [rax + rbx*4 + 0x84]
jmp 0x14002231b
cdqe
lea edx, [rbx - 1]
add rdx, 0x22
and edx, 0xfff
mov rcx, qword [r8 + rax*8]
mov edx, dword [rcx + rdx*4]
mov rcx, rdi
call fcn.140021f70
inc ebx
inc ebp
mov r14d, eax
test eax, eax
je 0x1400222e0
cmp r15d, dword [rsi + 0x58]
je 0x14002233c
mov rcx, rsi
call fcn.140025c00
mov rdx, qword [rdi + 0x138]
mov rcx, qword [rdx]
test rcx, rcx
je 0x140022363
nop dword [rax + rax]
mov rax, qword [rcx + 0x38]
mov qword [rcx + 0x18], rax
mov rcx, rax
test rax, rax
jne 0x140022350
mov rcx, qword [rdx]
call fcn.14001eb50
test rax, rax
je 0x14002238f
nop dword [rax]
test r14d, r14d
jne 0x14002238f
mov edx, dword [rax + 0x28]
mov rcx, rdi
mov rbx, qword [rax + 0x18]
call fcn.140021f70
mov r14d, eax
mov rax, rbx
test rbx, rbx
jne 0x140022370
mov eax, r14d
jmp 0x14002256a
mov r15, qword [rdi + 0x60]
test r12, r12
je 0x1400223f8
cmp qword [rdi + 0x140], rbp
jne 0x1400223f8
mov rsi, qword [r12 + 8]
mov rax, qword [r12]
test rsi, rsi
mov qword [rdi + 0x60], rax
cmove rsi, r15
nop dword [rax]
cmp qword [rdi + 0x60], rsi
jge 0x1400223ee
mov r9d, 1
mov dword [rsp + 0x20], 1
mov r8, r13
lea rdx, [rdi + 0x60]
mov rcx, rdi
call fcn.140021380
mov ebp, eax
test eax, eax
je 0x1400223c0
jmp 0x1400224ac
test ebp, ebp
jne 0x1400224ac
jmp 0x140022400
mov qword [rdi + 0x60], r14
nop dword [rax]
cmp qword [rdi + 0x60], r15
jge 0x1400224a7
lea rax, [rsp + 0x88]
mov dword [rsp + 0x80], r14d
lea r9, [rsp + 0x80]
mov qword [rsp + 0x20], rax
mov r8, r15
xor edx, edx
mov rcx, rdi
call fcn.140020720
mov r12d, dword [rsp + 0x80]
mov ebp, eax
test r12d, r12d
jne 0x140022470
mov eax, dword [rdi + 0xb8]
add rax, qword [rdi + 0x68]
mov rdx, qword [rdi + 0x60]
cmp rax, rdx
jne 0x140022470
mov eax, dword [rdi + 0xbc]
add eax, 8
movsxd rcx, eax
mov rax, r15
sub rax, rdx
cqo
idiv rcx
mov r12, rax
mov esi, r14d
test ebp, ebp
jne 0x1400224a7
cmp esi, r12d
jae 0x140022400
cmp qword [rdi + 0x60], r15
jge 0x1400224a7
mov r9d, 1
mov dword [rsp + 0x20], 1
mov r8, r13
lea rdx, [rdi + 0x60]
mov rcx, rdi
call fcn.140021380
inc esi
mov ebp, eax
test eax, eax
je 0x140022477
mov r12, qword [rsp + 0x78]
test r12, r12
je 0x140022558
mov eax, dword [rdi + 0xbc]
mov esi, dword [r12 + 0x1c]
add eax, 4
movsxd rcx, eax
imul rcx, rsi
mov qword [rsp + 0x78], rcx
mov rcx, qword [rdi + 0x140]
test rcx, rcx
je 0x140022527
mov eax, dword [rcx + 0x88]
cmp dword [r12 + 0x2c], eax
je 0x1400224fd
mov dword [r12 + 0x20], r14d
mov eax, dword [rcx + 0x88]
mov dword [r12 + 0x2c], eax
mov eax, r14d
jmp 0x140022502
mov eax, dword [r12 + 0x20]
cmp eax, dword [rcx + 0x58]
jae 0x14002251f
mov dword [rcx + 0x58], eax
mov eax, dword [r12 + 0x24]
mov dword [rcx + 0x60], eax
mov eax, dword [r12 + 0x28]
mov dword [rcx + 0x64], eax
call fcn.140025c00
mov esi, dword [r12 + 0x1c]
mov ebp, r14d
test ebp, ebp
jne 0x140022558
nop dword [rax + rax]
cmp esi, dword [rdi + 0x3c]
jae 0x140022558
xor r9d, r9d
mov dword [rsp + 0x20], 1
mov r8, r13
lea rdx, [rsp + 0x78]
mov rcx, rdi
call fcn.140021380
inc esi
mov ebp, eax
test eax, eax
je 0x140022530
mov rcx, r13
call fcn.14001e200
test ebp, ebp
jne 0x140022568
mov qword [rdi + 0x60], r15
mov eax, ebp
mov rsi, qword [rsp + 0x70]
mov r15, qword [rsp + 0x30]
add rsp, 0x38
pop r14
pop r13
pop r12
pop rdi
pop rbp
pop rbx
ret