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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movaps xmmword [rsp + 0xb0], xmm8
movaps xmmword [rsp + 0xa0], xmm7
movaps xmmword [rsp + 0x90], xmm6
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x1406a7e00]
xor rax, rsp
mov qword [rsp + 0x88], rax
mov rax, qword [rdx]
mov qword [rdx], 0
mov qword [rsp + 0x60], rax
lea rdx, [rsp + 0x60]
call fcn.140308c50
lea rax, [0x14060dd50]
mov qword [rsi], rax
lea rcx, [rsi + 0x80]
mov edx, 1
call fcn.1400ba650
lea r14, [rsi + 0x98]
movss xmm8, dword [0x1406908dc]
movups xmmword [rsi + 0x98], xmm8
movups xmmword [rsi + 0xa8], xmm8
movabs rax, 0x103f800000
mov qword [rsi + 0xb8], rax
mov rbx, qword [rsi + 0x40]
mov rcx, qword [rbx + 0x58]
mov rax, qword [rcx]
call qword [rax + 0x48]
movzx eax, ax
mov dword [rsi + 0xe0], eax
lea rcx, [rsi + 8]
xorps xmm6, xmm6
movups xmmword [rsp + 0x20], xmm6
mov qword [rsp + 0x30], 0
lea r8, [rsp + 0x58]
mov edx, 1
mov r9, r14
call fcn.14030ba90
movss xmm0, dword [rsi + 0x98]
movss xmm1, dword [rsi + 0x9c]
movss dword [rsi + 0xc0], xmm0
movss xmm0, dword [rsi + 0xa4]
movss dword [rsi + 0xc4], xmm0
movss dword [rsi + 0xc8], xmm1
movss xmm0, dword [rsi + 0xa8]
movss dword [rsi + 0xcc], xmm0
movlps qword [rsi + 0xd0], xmm6
movss xmm6, dword [rsp + 0x5c]
movss xmm0, dword [0x1405a2598]
mulss xmm0, xmm6
cvtss2sd xmm0, xmm0
addsd xmm0, qword [0x1406908e8]
call fcn.14056f630
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [0x14059f080]
xorps xmm7, xmm7
cmpeqss xmm7, xmm0
andps xmm8, xmm7
andnps xmm7, xmm0
orps xmm7, xmm8
test byte [rsi + 0x3e], 4
jne 0x140434470
xor eax, eax
xor r12d, r12d
jmp 0x1404346de
movaps xmm0, xmm7
minss xmm0, dword [0x140599e80]
maxss xmm0, dword [0x140599e84]
cvttss2si ebp, xmm0
mov dword [rsp + 0x48], ebp
mov dword [rsp + 0x4c], ebp
mov word [rsp + 0x54], 0
lea r8, [rsp + 0x48]
mov rcx, rbx
mov edx, ebp
call fcn.140434b70
test al, al
je 0x1404344d1
movzx eax, word [rsp + 0x54]
cmp eax, 0x100
je 0x1404344d1
mov dword [rsp + 0x48], ebp
mov dword [rsp + 0x4c], ebp
mov dword [rsp + 0x50], 0
mov word [rsp + 0x54], 0
mov r13d, ebp
jmp 0x1404344da
mov r13d, dword [rsp + 0x48]
mov ebp, dword [rsp + 0x4c]
mov eax, dword [0x1406ae4c0]
mov ecx, dword [0x1406affd8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x30]
jg 0x140434ae0
mov r15, qword [rbx + 0x70]
xor r14d, r14d
lea rax, [0x1406ae498]
test r15, r15
cmove r14, rax
jne 0x14043451e
mov rcx, r14
call fcn.1404d7c10
mov rcx, qword [rbx + 0x58]
lea rdx, [rsp + 0x74]
mov dword [rsp + 0x74], 0
mov qword [rsp + 0x78], rcx
lea r8, [rsp + 0x80]
lea r9, [rsp + 0x70]
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r8
lea r8, [rsp + 0x68]
mov edx, 0x434c4245
call qword [rax + 0x60]
cmp dword [rsp + 0x74], 0
je 0x140434678
mov ecx, dword [rsp + 0x70]
cmp rcx, 8
mov dword [rsp + 0x44], r13d
jb 0x1404345ab
mov rax, qword [rsp + 0x68]
cmp dword [rax], 0x200
jne 0x1404345ab
mov r8d, dword [rax + 4]
mov edx, r8d
bswap edx
cmp edx, 0x400
ja 0x1404345ab
mov r9d, edx
shl r9, 4
lea r9, [r9 + r9*2]
or r9, 8
cmp r9, rcx
jbe 0x14043487c
xor r12d, r12d
xor r13d, r13d
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
mov rax, qword [rcx]
call qword [rax + 0x68]
test r13b, r13b
je 0x14043468d
mov rcx, qword [rbx + 0x58]
mov dword [rsp + 0x74], 0
mov qword [rsp + 0x78], rcx
lea r9, [rsp + 0x70]
mov rax, qword [rcx]
lea rdx, [rsp + 0x74]
mov qword [rsp + 0x28], rdx
lea rdx, [rsp + 0x80]
mov qword [rsp + 0x20], rdx
lea r8, [rsp + 0x68]
mov edx, 0x43425345
call qword [rax + 0x60]
cmp dword [rsp + 0x74], 0
je 0x14043468a
mov edx, dword [rsp + 0x70]
mov al, 1
cmp rdx, 8
jb 0x140434658
mov rcx, qword [rsp + 0x68]
cmp dword [rcx], 0x200
jne 0x140434658
mov r9d, dword [rcx + 4]
mov r8d, r9d
bswap r8d
cmp r8d, 0x400
ja 0x140434658
mov r10d, r8d
lea r11, [r10 + r10*8]
lea r11, [r11 + r11*2]
add r10, r11
add r10, 8
cmp r10, rdx
jbe 0x140434a8a
xor r12d, r12d
and r12b, al
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
mov rax, qword [rcx]
call qword [rax + 0x68]
test r15, r15
jne 0x140434692
jmp 0x140434680
xor r12d, r12d
test r15, r15
jne 0x140434692
mov rcx, r14
call fcn.1404d7c40
jmp 0x140434692
xor r12d, r12d
test r15, r15
je 0x140434680
movss xmm1, dword [rsi + 0x14]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jne 0x1404346dc
jp 0x1404346dc
movss xmm1, dword [rsi + 0x20]
ucomiss xmm1, xmm0
jne 0x1404346be
jp 0x1404346be
movss xmm0, dword [rsi + 0x1c]
mov al, 1
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x1404346be
jnp 0x1404346de
xorps xmm0, xmm0
movss xmm1, dword [rsi + 0x18]
movss xmm2, dword [rsi + 0x24]
cmpeqps xmm1, xmm0
cmpeqps xmm2, xmm0
andps xmm2, xmm1
movd eax, xmm2
jmp 0x1404346de
xor eax, eax
movabs rcx, 0xffff00000000
mov qword [rsp + 0x48], rcx
mov dword [rsp + 0x50], 0
mov word [rsp + 0x54], 0
cmp byte [rsi + 0x3c], 0
je 0x140434724
and al, r12b
cmp al, 1
jne 0x14043473f
movss dword [rsi + 0xd8], xmm7
movaps xmm0, xmmword [0x140598930]
mov ecx, 2
xor eax, eax
jmp 0x140434938
movss dword [rsi + 0xd8], xmm7
movaps xmm0, xmmword [0x1405bf250]
mov ecx, 1
xor eax, eax
jmp 0x140434938
test r12b, r12b
je 0x14043475f
movss dword [rsi + 0xd8], xmm7
movaps xmm0, xmmword [0x140598930]
mov ecx, 5
xor eax, eax
jmp 0x140434938
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
addsd xmm0, qword [0x1406908e8]
call fcn.14056f630
cvtsd2ss xmm0, xmm0
minss xmm0, dword [0x140599e80]
maxss xmm0, dword [0x140599e84]
cvttss2si edx, xmm0
lea r8, [rsp + 0x48]
mov rcx, rbx
call fcn.140434b70
test al, al
je 0x1404347c6
cmp dword [rsp + 0x50], 0
jle 0x1404347c6
movss dword [rsi + 0xd8], xmm6
xor ecx, ecx
test byte [rsp + 0x55], 8
sete cl
xor ecx, 5
movaps xmm0, xmmword [0x1405a0f20]
mov al, 1
jmp 0x140434935
ucomiss xmm6, dword [0x1405e0f00]
ja 0x14043491f
mov eax, dword [0x1406ae4c0]
mov ecx, dword [0x1406affd8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x30]
jg 0x140434b22
mov r15, qword [rbx + 0x70]
xor r14d, r14d
lea rax, [0x1406ae498]
test r15, r15
cmove r14, rax
jne 0x140434817
mov rcx, r14
call fcn.1404d7c10
mov rcx, qword [rbx + 0x58]
lea rax, [rsp + 0x74]
mov dword [rsp + 0x74], 0
mov qword [rsp + 0x78], rcx
lea rdx, [rsp + 0x80]
lea r9, [rsp + 0x70]
mov r10, qword [rcx]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rsp + 0x68]
mov edx, 0x7078616d
call qword [r10 + 0x60]
mov eax, dword [rsp + 0x74]
test eax, eax
je 0x1404348d0
cmp dword [rsp + 0x70], 0x20
jb 0x1404348d0
mov rax, qword [rsp + 0x68]
cmp dword [rax], 0x100
jne 0x1404348e0
cmp word [rax + 0x1a], 0
setne bpl
jmp 0x1404348e2
mov r12b, 1
test r8d, r8d
je 0x1404348d8
cmp edx, 2
mov ecx, 1
cmovae ecx, edx
add rax, 0x35
jmp 0x1404348a8
add rax, 0x30
dec ecx
je 0x1404348d8
movzx edx, byte [rax - 1]
cmp dl, byte [rax]
jne 0x1404348a0
cmp r13d, edx
jg 0x1404348a0
cmp ebp, edx
jl 0x1404348a0
movzx edx, word [rax - 3]
movzx r8d, word [rax - 5]
add r8d, 3
cmp r8d, edx
ja 0x1404348a0
jmp 0x1404345ae
xor ebp, ebp
test eax, eax
jne 0x1404348e2
jmp 0x1404348f5
mov r13b, 1
jmp 0x1404345b1
xor ebp, ebp
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
mov rax, qword [rcx]
call qword [rax + 0x68]
test r15, r15
jne 0x140434902
mov rcx, r14
call fcn.1404d7c40
test bpl, bpl
je 0x14043491f
movss dword [rsi + 0xd8], xmm7
movaps xmm0, xmmword [0x1405a0f20]
mov al, 1
mov ecx, 4
jmp 0x140434935
movss dword [rsi + 0xd8], xmm6
movaps xmm0, xmmword [0x1405a0f20]
mov al, 1
mov ecx, 5
movaps xmm7, xmm6
mov dword [rsi + 0xe4], ecx
movss dword [rsi + 0xdc], xmm7
movlps qword [rsi + 0xe8], xmm0
mov dword [rsi + 0xf0], 0
cmp qword [rbx + 0x40], 0
je 0x140434985
cmp qword [rbx + 0x68], 0
je 0x140434985
cmp byte [rsi + 0x3c], 1
jne 0x140434985
test byte [rsi + 0x3f], 8
jne 0x140434985
mov dword [rsi + 0xe8], 0
mov dword [rsi + 0xf0], 1
mov dword [rsi + 0xf4], 2
movzx edx, word [rsi + 0x3e]
test edx, 0x180
jne 0x1404349b4
mov dword [rsi + 0xf4], 1
cmp ecx, 1
je 0x1404349b4
mov dword [rsi + 0xe4], 5
test edx, 0x1000
jne 0x140434a24
test al, al
jne 0x140434a36
mov rcx, qword [rbx + 0x58]
lea rax, [rsp + 0x74]
mov dword [rsp + 0x74], 0
mov qword [rsp + 0x78], rcx
lea rdx, [rsp + 0x80]
lea r9, [rsp + 0x70]
mov r10, qword [rcx]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rsp + 0x68]
mov edx, 0x54444243
call qword [r10 + 0x60]
cmp dword [rsp + 0x74], 0
je 0x140434a36
mov dword [rsi + 0xec], 0
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x80]
mov rax, qword [rcx]
call qword [rax + 0x68]
jmp 0x140434a36
movss dword [rsi + 0xdc], xmm6
mov dword [rsi + 0xec], 0
mov rcx, qword [rdi]
test rcx, rcx
je 0x140434a4a
lock dec dword [rcx + 8]
jne 0x140434a4a
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.1405602f0
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x90]
movaps xmm7, xmmword [rsp + 0xa0]
movaps xmm8, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
test r9d, r9d
je 0x140434acf
cmp r8d, 2
mov edx, 1
cmovae edx, r8d
add rcx, 0x21
mov r10d, dword [rsp + 0x44]
movzx eax, byte [rcx - 1]
cmp al, byte [rcx]
setne r8b
cmp r10d, eax
setg r9b
cmp ebp, eax
setl al
or al, r9b
or al, r8b
cmp al, 1
jne 0x140434ad6
add rcx, 0x1c
dec edx
jne 0x140434aa5
jmp 0x140434ad9
xor eax, eax
jmp 0x14043465b
mov r12b, 1
xor al, 1
jmp 0x14043465b
lea rcx, [0x1406ae4c0]
call fcn.140560470
cmp dword [0x1406ae4c0], 0xffffffff
jne 0x1404344ff
lea rcx, [0x1406ae498]
call fcn.1404d7bb0
lea rcx, [0x140438590]
call fcn.1405607f4
lea rcx, [0x1406ae4c0]
call fcn.140560410
jmp 0x1404344ff
lea rcx, [0x1406ae4c0]
call fcn.140560470
cmp dword [0x1406ae4c0], 0xffffffff
jne 0x1404347f8
lea rcx, [0x1406ae498]
call fcn.1404d7bb0
lea rcx, [0x140438590]
call fcn.1405607f4
lea rcx, [0x1406ae4c0]
call fcn.140560410
jmp 0x1404347f8