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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x20
mov ebx, r8d
mov esi, edx
mov rdi, rcx
mov r13, qword [rcx + 0x20]
mov rax, qword [r13 + 0xc0]
test rax, rax
je 0x140342fba
mov r14, rax
mov rcx, r14
mov rdx, rdi
mov r8d, esi
mov r9d, ebx
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp 0x140343040
lea r14, [0x1405d7500]
mov r12, qword [r13 + 0x48]
test r12, r12
je 0x140342f9a
mov ecx, 1
mov edx, 0x30
call fcn.14056f5a0
test rax, rax
je 0x140343021
mov r15, rax
mov rcx, rax
mov rdx, r12
call fcn.140347f30
xor eax, eax
lock cmpxchg qword [r13 + 0xc0], r15
je 0x140343034
cmp r15, r14
je 0x14034300f
mov rcx, qword [r15 + 0x28]
call fcn.14034c9e0
mov rcx, r15
call fcn.140568364
mov rax, qword [r13 + 0xc0]
test rax, rax
jne 0x140342f97
jmp 0x140342fc1
xor eax, eax
lock cmpxchg qword [r13 + 0xc0], r14
je 0x140342f9a
jmp 0x14034300f
mov r14, r15
jmp 0x140342f9a
push rsi
push rdi
push rbx
sub rsp, 0x90
mov rax, qword [0x1406a7e00]
xor rax, rsp
mov qword [rsp + 0x88], rax
cmp dword [rcx + 0x1c], r8d
jbe 0x14034319e
mov ebx, r9d
mov esi, r8d
mov rdi, rcx
mov word [rsp + 0x58], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x5c], 0
mov word [rsp + 0x64], 0
mov qword [rsp + 0x68], 0
mov word [rsp + 0x70], 0
mov qword [rsp + 0x74], 0
mov word [rsp + 0x7c], 0
cmp dword [rdx + 0x78], 0
je 0x140343104
movaps xmm0, xmmword [0x1405b5280]
movups xmmword [rsp + 0x3c], xmm0
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x28], 0
lea rax, [rsp + 0x50]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x38], 0
lea r9, [rsp + 0x20]
mov rcx, rdi
mov r8d, esi
call fcn.140343440
test al, al
je 0x140343104
test bl, bl
je 0x14034313d
movss xmm0, dword [rsp + 0x6c]
subss xmm0, dword [rsp + 0x78]
jmp 0x140343149
test bl, bl
je 0x140343170
mov rax, qword [rdi + 0x10]
cmp dword [rax + 4], esi
jbe 0x140343179
mov rcx, qword [rax + 0x18]
test rcx, rcx
lea rdx, [0x1405d7500]
cmovne rdx, rcx
mov rcx, qword [rdx + 0x10]
mov eax, dword [rax]
dec eax
cmp eax, esi
cmovae eax, esi
movzx eax, word [rcx + rax*4]
rol ax, 8
movzx esi, ax
jmp 0x140343181
movss xmm0, dword [rsp + 0x5c]
subss xmm0, dword [rsp + 0x50]
addss xmm0, dword [0x14059b040]
call fcn.14056fa9c
xorps xmm1, xmm1
cmpless xmm1, xmm0
andps xmm1, xmm0
minss xmm1, dword [0x14059bdec]
cvttss2si rsi, xmm1
jmp 0x140343181
mov rax, qword [rdi + 8]
cmp dword [rax + 4], esi
ja 0x140343111
xor esi, esi
cmp dword [rax + 8], 0
je 0x1403431a2
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.1405602f0
mov eax, esi
add rsp, 0x90
pop rbx
pop rdi
pop rsi
ret
xor esi, esi
jmp 0x140343181
mov esi, dword [rax + 0x10]
jmp 0x140343181
push rsi
sub rsp, 0x40
movaps xmmword [rsp + 0x30], xmm6
mov r10, rcx
cmp dword [rcx + 4], edx
jbe 0x1403568ed
mov rax, qword [r10 + 0x18]
test rax, rax
lea rcx, [0x1405d7500]
cmove rax, rcx
mov r11d, dword [r10]
dec r11d
cmp r11d, edx
cmovae r11d, edx
mov rax, qword [rax + 0x10]
movzx eax, word [rax + r11*4]
rol ax, 8
movzx eax, ax
mov r11d, dword [r8 + 0x78]
test r11d, r11d
je 0x1403568f6
mov r10, qword [r10 + 0x20]
test r10, r10
cmove r10, rcx
mov esi, dword [r10 + 0x18]
test esi, esi
je 0x140356901
xorps xmm6, xmm6
cvtsi2ss xmm6, eax
cmp esi, 0x14
jb 0x1403568c1
mov rcx, qword [r10 + 0x10]
mov r8, qword [r8 + 0x80]
mov qword [rsp + 0x20], r9
mov r9d, r11d
call fcn.1403569a0
addss xmm0, dword [0x14059b040]
call fcn.14056fa9c
addss xmm0, xmm6
cvttss2si rax, xmm0
jmp 0x1403568f6
xor eax, eax
cmp dword [r10 + 8], 0
je 0x140356916
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x40
pop rsi
ret
mov rcx, r8
xor r8d, r8d
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x40
pop rsi
jmp 0x140342f70
mov eax, dword [r10 + 0x10]
jmp 0x1403568f6