Function at 0x14041c260
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, 0xc8
xorps xmm4, xmm4
movaps xmmword [rsp + 0x40], xmm4
movaps xmmword [rsp + 0x50], xmm4
movabs rax, 0xffffffffffffffa0
movaps xmmword [rsp + rax + 0xc0], xmm4
movaps xmmword [rsp + rax + 0xd0], xmm4
movaps xmmword [rsp + rax + 0xe0], xmm4
add rax, 0x30
jne 0x14041c28a
mov rbx, rcx
mov rbp, rdx
mov r14d, r8d
mov rsi, r9
mov r8, qword [rbp]
test r8, r8
je 0x14041c8ce
mov r15d, dword [rbp + 0x10]
mov edi, dword [rbp + 0x14]
xor r13d, r13d
cmp r8, qword [rbp + 8]
setne r13b
mov edx, r15d
or edx, edi
jl 0x14041c9dc
mov rax, r8
lea rdx, [0x14073fa88]
cmp qword [rax], rdx
jne 0x14041c4c6
mov r12, qword [rax + 0x18]
mov edx, dword [rax + 0x20]
mov eax, dword [rax + 0x24]
test r13d, r13d
jne 0x14041c8de
sub edi, r15d
mov ecx, r15d
mov r8d, edi
add rcx, r8
cmp rcx, rax
ja 0x14041c9f4
add edx, r15d
mov qword [rsp + 0xb0], r12
mov dword [rsp + 0xb8], edx
mov dword [rsp + 0xbc], edi
mov rcx, qword [rsp + 0xb0]
mov edi, dword [rsp + 0xb8]
mov r15d, dword [rsp + 0xbc]
xor r13d, r13d
xor r12d, r12d
test rcx, rcx
je 0x14041c388
mov rdx, qword [rcx]
cmp dword [rdx], 0
jge 0x14041c74a
lea r13, [rcx + 0x10]
mov r12d, dword [rcx + 8]
and edi, 0x7fffffff
mov eax, edi
mov ecx, r15d
add rcx, rax
mov edx, r12d
cmp rcx, rdx
ja 0x14041c7ec
add r13, rax
mov r12d, r15d
mov rax, r13
mov qword [rbx + 0x30], rax
mov dword [rbx + 0x38], r12d
mov byte [rbx + 0x24], r14b
mov byte [rbx + 0x25], 1
mov rax, qword [rsi]
mov qword [rbx], rax
mov rax, qword [rsi + 8]
mov qword [rbx + 8], rax
movzx eax, byte [rsi + 0x10]
mov byte [rbx + 0x26], al
movzx eax, byte [rsi + 0x11]
mov byte [rbx + 0x27], al
movzx eax, byte [rsi + 0x12]
mov byte [rbx + 0x2e], al
movzx eax, byte [rsi + 0x13]
mov byte [rbx + 0x2c], al
movzx eax, byte [rsi + 0x14]
mov byte [rbx + 0x28], al
movzx eax, byte [rsi + 0x15]
mov byte [rbx + 0x29], al
mov rax, qword [rsi + 0x18]
mov qword [rbx + 0x40], rax
cmp dword [rbx + 0x40], 0
jne 0x14041c3e8
mov dword [rbx + 0x40], 0x40
add rsi, 0x20
lea rdi, [rbx + 0x48]
call fcn.14000f250
movsq qword [rdi], qword [rsi]
movsq qword [rdi], qword [rsi]
xor eax, eax
mov dword [rbx + 0x20], eax
mov qword [rbx + 0x18], rax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x98], rax
mov qword [rbx + 0xa0], rax
lea rdi, [rbx + 0x80]
mov rsi, rbp
call fcn.14000f250
call fcn.14000f250
movsq qword [rdi], qword [rsi]
mov byte [rbx + 0x2d], 0
lea rax, [0x140714890]
cmp qword [rax - 8], 0
jne 0x14041c9ff
mov rax, qword [0x140cc2658]
movups xmm0, xmmword [rax + 8]
movups xmmword [rsp + 0x88], xmm0
mov rcx, qword [rax + 0x18]
mov qword [rsp + 0x98], rcx
lea rdi, [rbx + 0xa8]
lea rsi, [rsp + 0x88]
call fcn.14000f250
call fcn.14000f250
movsq qword [rdi], qword [rsi]
mov rcx, qword [rbp]
cmp rcx, qword [rbp + 8]
jne 0x14041c4da
lea r15, [rbx + 0x60]
xor ecx, ecx
mov qword [r15], rcx
mov qword [r15 + 8], rcx
mov rdx, qword [rbp]
mov ebp, dword [rbp + 0x10]
and ebp, 0x7fffffff
lea rcx, [rbx + 0x70]
call fcn.14000f0d0
mov dword [rbx + 0x78], ebp
mov byte [rbx + 0x2a], r14b
mov byte [rbx + 0x2b], 0
add rsp, 0xc8
pop rbx
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
mov rdx, r8
lea rcx, [0x1407d95d0]
call fcn.14034a150
jmp 0x14041c2f1
mov rdx, qword [rbp]
mov r15d, dword [rbp + 0x10]
and r15d, 0x7fffffff
lea rcx, [rbx + 0x70]
call fcn.14000f0d0
mov dword [rbx + 0x78], r15d
lea rsi, [rbx + 0x70]
lea r15, [rbx + 0x60]
mov rdi, r15
call fcn.14000f250
movsq qword [rdi], qword [rsi]
xor esi, esi
cmp dword [rbx + 0x38], 0
sete sil
mov dword [rsp + 0xc4], esi
test esi, esi
je 0x14041c6b8
mov rdx, qword [rbx + 0x60]
mov rdi, rdx
mov r13d, dword [rbx + 0x68]
mov r12, r15
xor eax, eax
mov qword [rsp + 0x28], rax
test rdx, rdx
je 0x14041ca09
mov ecx, dword [rbp + 0x10]
sar ecx, 0x1f
mov r8d, dword [rbp + 0x14]
mov r10d, r8d
sar r10d, 0x1f
lea ecx, [r10 + rcx*2]
mov r10d, ecx
neg r10d
mov r9, qword [rbp + 8]
mov qword [rsp + 0x30], r9
mov r11d, dword [r12 + 8]
mov dword [rsp + 0x80], r11d
and r8d, 0x7fffffff
mov dword [rsp + 0x7c], r8d
test r10d, r10d
jne 0x14041c90b
mov r10, rdx
lea rcx, [0x14073fa88]
cmp qword [r10], rcx
jne 0x14041c736
cmp r10, qword [rsp + 0x30]
je 0x14041c5df
mov rax, qword [r10 + 8]
test rax, rax
je 0x14041c85a
mov r9, qword [r10 + 0x18]
mov ecx, dword [r10 + 0x20]
mov edx, dword [r10 + 0x24]
mov r11d, dword [rsp + 0x80]
cmp r11d, edx
ja 0x14041c9f4
add ecx, r11d
sub edx, r11d
mov r8, r9
mov dword [rsp + 0x38], edx
mov dword [rsp + 0x3c], ecx
mov rsi, r8
jmp 0x14041c627
mov rax, qword [rsp + 0x28]
mov r9, qword [r10 + 0x18]
mov ecx, dword [r10 + 0x20]
mov edx, dword [r10 + 0x24]
mov r8d, dword [rsp + 0x7c]
mov r11d, dword [rsp + 0x80]
sub r8d, r11d
mov r10d, r11d
mov esi, r8d
add r10, rsi
cmp r10, rdx
ja 0x14041c9f4
add r11d, ecx
mov rcx, r9
mov edx, r8d
mov rsi, rcx
mov dword [rsp + 0x3c], r11d
mov dword [rsp + 0x38], edx
mov dword [rsp + 0x84], 1
mov rcx, r12
mov rdx, rax
call fcn.14000f0d0
xor ecx, ecx
mov dword [r12 + 8], ecx
cmp dword [rsp + 0x84], 0
je 0x14041c6b8
lea rcx, [rbx + 0x70]
mov rdx, rdi
call fcn.14000f0d0
mov dword [rbx + 0x78], r13d
mov edi, dword [rsp + 0x38]
test edi, edi
je 0x14041c521
mov rcx, rsi
mov r13d, dword [rsp + 0x3c]
xor r12d, r12d
xor eax, eax
test rcx, rcx
je 0x14041c6ae
mov rax, qword [rcx]
cmp dword [rax], 0
jge 0x14041c806
lea r12, [rcx + 0x10]
mov eax, dword [rcx + 8]
and r13d, 0x7fffffff
mov edx, r13d
mov ecx, edi
add rcx, rdx
mov eax, eax
cmp rcx, rax
ja 0x14041c7ec
add r12, rdx
mov eax, edi
mov rdx, r12
mov qword [rbx + 0x30], rdx
mov dword [rbx + 0x38], eax
mov rdx, qword [r15]
xor edi, edi
test rdx, rdx
je 0x14041c8c7
mov ecx, dword [rbp + 0x10]
sar ecx, 0x1f
mov r13d, dword [rbp + 0x14]
mov eax, r13d
sar eax, 0x1f
lea ecx, [rax + rcx*2]
mov r12d, ecx
neg r12d
mov rbp, qword [rbp + 8]
mov eax, dword [r15 + 8]
mov dword [rsp + 0x54], eax
and r13d, 0x7fffffff
test r12d, r12d
jne 0x14041c855
mov r8, rdx
lea rcx, [0x14073fa88]
cmp qword [r8], rcx
jne 0x14041c82b
cmp r8, rbp
je 0x14041c7c5
mov rdi, qword [r8 + 8]
test rdi, rdi
je 0x14041c85a
mov ecx, dword [r8 + 0x24]
mov eax, dword [rsp + 0x54]
cmp eax, ecx
ja 0x14041c9f4
jmp 0x14041c77d
lea rcx, [0x1407d95d0]
call fcn.14034a150
mov r10, rax
jmp 0x14041c598
lea rdx, [0x1407da950]
cmp qword [rcx], rdx
je 0x14041c7e1
lea rdx, [rsp + 0xa0]
mov rax, qword [rcx]
call qword [rax + 0x38]
mov r13, qword [rsp + 0xa0]
mov r12d, dword [rsp + 0xa8]
jmp 0x14041c368
mov ebp, 1
cmp dword [rsp + 0xc4], 0
jne 0x14041c79d
mov rcx, r15
mov rdx, rdi
call fcn.14000f0d0
xor edx, edx
mov dword [r15 + 8], edx
xor edx, edx
test ebp, ebp
sete dl
movzx ecx, r14b
and edx, ecx
mov byte [rbx + 0x2a], dl
mov byte [rbx + 0x2b], 1
add rsp, 0xc8
pop rbx
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
mov ecx, dword [r8 + 0x24]
mov eax, dword [rsp + 0x54]
sub r13d, eax
mov edx, r13d
add rdx, rax
cmp rdx, rcx
ja 0x14041c9f4
jmp 0x14041c77d
mov rdx, qword [rcx + 8]
mov ecx, dword [rcx + 0x10]
test ecx, ecx
jge 0x14041c7f2
call fcn.1402e9300
int3
mov qword [rsp + 0xa0], rdx
mov dword [rsp + 0xa8], ecx
jmp 0x14041c768
lea rdx, [0x1407da950]
cmp qword [rcx], rdx
je 0x14041c83f
lea rdx, [rsp + 0x58]
mov rax, qword [rcx]
call qword [rax + 0x38]
mov r12, qword [rsp + 0x58]
mov eax, dword [rsp + 0x60]
jmp 0x14041c68f
lea rcx, [0x1407d95d0]
call fcn.14034a150
mov r8, rax
jmp 0x14041c70e
mov rdx, qword [rcx + 8]
mov ecx, dword [rcx + 0x10]
test ecx, ecx
jl 0x14041c7ec
mov qword [rsp + 0x58], rdx
mov dword [rsp + 0x60], ecx
jmp 0x14041c81d
cmp rdx, rbp
je 0x14041c860
call fcn.1401d94a0
int3
mov ebp, dword [rsp + 0x54]
cmp r12d, 1
jne 0x14041c891
lea rcx, [0x140899128]
call fcn.140349fa0
mov edx, r13d
sub edx, ebp
mov ecx, ebp
add rdx, rcx
mov ecx, dword [rax + 8]
cmp rdx, rcx
ja 0x14041c7ec
jmp 0x14041c77d
lea rcx, [0x1407da200]
call fcn.14034a150
mov rcx, rax
lea rdx, [rsp + 0x40]
mov rax, qword [rax]
call qword [rax + 0x30]
mov eax, r13d
sub eax, ebp
mov ecx, ebp
add rax, rcx
mov ecx, dword [rsp + 0x4c]
cmp rax, rcx
jbe 0x14041c77d
jmp 0x14041c7ec
xor ebp, ebp
jmp 0x14041c782
xorps xmm0, xmm0
movups xmmword [rsp + 0xb0], xmm0
jmp 0x14041c332
cmp r15d, eax
ja 0x14041c9f4
add edx, r15d
sub eax, r15d
mov rcx, r12
mov qword [rsp + 0xb0], rcx
mov dword [rsp + 0xb8], edx
mov dword [rsp + 0xbc], eax
jmp 0x14041c332
cmp rdx, qword [rsp + 0x30]
jne 0x14041c85a
cmp r10d, 1
jne 0x14041c973
lea rcx, [0x140899128]
call fcn.140349fa0
mov r8d, dword [rsp + 0x7c]
mov r10d, dword [rsp + 0x80]
mov r9d, r8d
sub r9d, r10d
mov edx, r10d
mov ecx, r9d
add rdx, rcx
mov ecx, dword [rax + 8]
cmp rdx, rcx
ja 0x14041c7ec
mov r8, rax
mov rax, r8
mov r8d, r10d
mov r10d, r9d
mov dword [rsp + 0x38], r10d
mov dword [rsp + 0x3c], r8d
mov rsi, rax
mov rax, qword [rsp + 0x28]
jmp 0x14041c627
lea rcx, [0x1407da200]
call fcn.14034a150
mov rcx, rax
lea rdx, [rsp + 0x68]
mov rax, qword [rax]
call qword [rax + 0x30]
mov ecx, dword [rsp + 0x7c]
mov r11d, dword [rsp + 0x80]
mov r10d, ecx
sub r10d, r11d
mov ecx, r11d
mov eax, r10d
add rcx, rax
mov eax, dword [rsp + 0x74]
cmp rcx, rax
ja 0x14041c7ec
mov rax, qword [rsp + 0x68]
mov r8d, r11d
add r8d, dword [rsp + 0x70]
mov rcx, rax
mov dword [rsp + 0x38], r10d
mov dword [rsp + 0x3c], r8d
mov rsi, rcx
mov rax, qword [rsp + 0x28]
jmp 0x14041c627
lea rdx, [rsp + 0xb0]
mov rcx, rbp
mov r9d, r13d
call fcn.140485bb0
jmp 0x14041c332
mov ecx, 0x21
call fcn.1402e97d0
int3
call fcn.140004347
jmp 0x14041c440
xor ecx, ecx
xor r8d, r8d
xor r10d, r10d
xor r9d, r9d
xor edx, edx
mov dword [rsp + 0x38], r9d
mov dword [rsp + 0x84], edx
mov dword [rsp + 0x3c], r10d
mov rsi, r8
mov rax, qword [rsp + 0x28]
jmp 0x14041c632