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

Disassembly:
mov r11, rsp
push rbp
push rbx
push rsi
push rdi
push r14
push r15
lea rbp, [r11 - 0x58]
sub rsp, 0x128
mov rax, qword [0x14009b040]
xor rax, rsp
mov qword [rbp - 0x40], rax
cmp byte [0x14009c11c], 1
mov r14, r9
mov r15, qword [rbp + 0x80]
mov rdi, r8
mov qword [rsp + 0x50], r9
mov rbx, rdx
mov rsi, rcx
jne 0x140077956
mov rdx, qword [r8]
lea r8, [rbp - 0x68]
mov rax, qword [0x14009c0a8]
add rdx, 0x1924ef0
mov rcx, qword [rbx + 8]
mov qword [r11 - 0x38], r12
xor r12d, r12d
mov qword [r11 - 0x40], r13
mov r13, qword [rax + 0x48]
mov qword [rsp + 0x20], r12
lea r9d, [r12 + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp - 0x68]
lea r9d, [r12 + 1]
mov rcx, qword [rbx + 8]
lea r8, [rbp - 0x70]
test eax, eax
mov qword [rsp + 0x20], r12
cmove rdx, r12
add rdx, 0x9dd
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x140077946
cmp byte [rbp - 0x70], r12b
je 0x140077946
mov rdx, qword [rdi]
lea r9d, [r12 + 8]
mov rdi, qword [rbx + 8]
lea r8, [rbp - 0x50]
movaps xmmword [rsp + 0x100], xmm6
mov rcx, rdi
movups xmm6, xmmword [rbx]
add rdx, 0x192e0e8
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14007793e
mov rdx, qword [rbp - 0x50]
lea r9d, [r12 + 8]
lea r8, [rbp - 0x48]
mov qword [rsp + 0x20], r12
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14007793e
mov rdx, qword [rbp - 0x48]
test rdx, rdx
je 0x14007793e
psrldq xmm6, 8
lea r9d, [r12 + 8]
movq rdi, xmm6
mov qword [rsp + 0x20], r12
mov rcx, rdi
lea r8, [rbp - 0x58]
add rdx, 0x318
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
je 0x14007793e
mov rdx, qword [rbp - 0x58]
lea r9d, [r12 + 4]
movaps xmmword [rsp + 0xf0], xmm7
lea r8, [rbp - 0x60]
movaps xmmword [rsp + 0xe0], xmm8
sub rdx, 0xffffffffffffff80
mov rcx, rdi
movaps xmmword [rsp + 0xd0], xmm9
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp - 0x58]
lea r9d, [r12 + 4]
movss xmm9, dword [rbp - 0x60]
lea r8, [rbp - 0x60]
add rdx, 0x84
mov qword [rsp + 0x20], r12
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [rbp - 0x58]
lea r9d, [r12 + 4]
movss xmm6, dword [rbp - 0x60]
lea r8, [rbp - 0x60]
add rdx, 0x88
mov qword [rsp + 0x20], r12
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm8, dword [rbp - 0x60]
xorps xmm7, xmm7
ucomiss xmm9, xmm7
jp 0x1400774e0
jne 0x1400774e0
ucomiss xmm6, xmm7
jp 0x1400774e0
jne 0x1400774e0
ucomiss xmm8, xmm7
jp 0x1400774e0
je 0x140077924
movups xmm0, xmmword [rbx]
mov rdi, qword [rsi]
lea rax, [r14 + 8]
add rdi, 0x1929430
mov qword [rbp - 0x68], rax
lea r12, [rax + 0x40]
movaps xmmword [rsp + 0x60], xmm0
mov rbx, rax
cmp rax, r12
je 0x140077566
mov r14, qword [rsp + 0x68]
nop dword [rax + rax]
lea rsi, [rbx + 0x10]
cmp rbx, rsi
je 0x140077555
nop dword [rax]
mov r9d, 4
mov qword [rsp + 0x20], 0
lea r8, [rbp - 0x5c]
mov rdx, rdi
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm0, dword [rbp - 0x5c]
add rdi, 4
movss dword [rbx], xmm0
add rbx, 4
cmp rbx, rsi
jne 0x140077520
mov rbx, rsi
cmp rsi, r12
jne 0x140077510
mov rax, qword [rbp - 0x68]
mov r14, qword [rsp + 0x50]
mov rcx, qword [0x14009c0a8]
movaps xmm4, xmm9
mulss xmm4, dword [r14 + 0x38]
movaps xmm0, xmm6
mulss xmm0, dword [r14 + 0x3c]
movaps xmm1, xmm8
mulss xmm1, dword [r14 + 0x40]
movaps xmm3, xmm6
mulss xmm3, dword [r14 + 0xc]
addss xmm4, xmm0
mulss xmm6, dword [r14 + 0x1c]
movaps xmm0, xmm9
mulss xmm9, dword [r14 + 0x18]
mulss xmm0, dword [rax]
addss xmm4, xmm1
movss xmm2, dword [rcx + 0x14]
addss xmm9, xmm6
mulss xmm2, dword [0x14008c42c]
movaps xmm1, xmm8
mulss xmm8, dword [r14 + 0x20]
addss xmm3, xmm0
addss xmm4, dword [r14 + 0x44]
mulss xmm1, dword [r14 + 0x10]
movss xmm0, dword [rcx + 0x10]
addss xmm9, xmm8
mulss xmm0, dword [0x14008c42c]
addss xmm3, xmm1
addss xmm9, dword [r14 + 0x24]
addss xmm3, dword [r14 + 0x14]
divss xmm9, xmm4
divss xmm3, xmm4
movaps xmm6, xmm9
mulss xmm9, xmm2
movaps xmm8, xmm3
addss xmm6, xmm2
addss xmm3, xmm0
mulss xmm8, xmm0
movss xmm0, dword [0x14008c3e8]
comiss xmm0, xmm4
addss xmm8, xmm3
subss xmm6, xmm9
ja 0x140077924
mov eax, dword [0x14009c118]
lea rbx, [0x14008baba]
movss xmm9, dword [0x14008c4f4]
lea rdi, [0x14008bab8]
test eax, eax
jne 0x140077726
mov rax, qword [rcx + 0x4ad0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.14000c540
movss xmm0, dword [0x14009b1c0]
lea rcx, [rsp + 0x50]
movss xmm1, dword [0x14009b1c4]
mov r8, rax
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [0x14009b1c8]
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x54], xmm1
mov dword [rsp + 0x5c], 0x3f800000
call fcn.140007290
movss dword [rbp - 0x68], xmm8
mov rcx, r13
movss dword [rbp - 0x64], xmm6
test eax, 0xff000000
je 0x140077719
test r13, r13
jne 0x1400776d9
mov rcx, qword [r8 + 0x38]
mov rcx, qword [rcx + 8]
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], 0
lea rdx, [rsp + 0x50]
movss dword [rsp + 0x40], xmm7
lea r9, [rbp - 0x68]
mov qword [rsp + 0x38], rbx
movaps xmm2, xmm9
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rdx
mov rdx, r8
movups xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x20], eax
call fcn.140032580
mov rcx, qword [0x14009c0a8]
mov eax, dword [0x14009c118]
cmp eax, 1
jne 0x140077787
mov rax, qword [rcx + 0x4ad0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.14000c540
movss xmm0, dword [0x14009b170]
lea rcx, [rsp + 0x50]
movss xmm1, dword [0x14009b174]
mov r8, rax
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [0x14009b178]
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x54], xmm1
mov dword [rsp + 0x5c], 0x3f800000
call fcn.140007290
jmp 0x1400778ac
cmp eax, 2
jne 0x140077924
mov rax, qword [rcx + 0x4ad0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.14000c540
movss xmm0, dword [0x14009b1c0]
lea rcx, [rsp + 0x50]
movss xmm1, dword [0x14009b1c4]
mov r8, rax
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [0x14009b1c8]
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x54], xmm1
mov dword [rsp + 0x5c], 0x3f800000
call fcn.140007290
movss dword [rbp - 0x68], xmm8
movss dword [rbp - 0x64], xmm6
test eax, 0xff000000
je 0x140077849
test r13, r13
jne 0x140077806
mov rcx, qword [r8 + 0x38]
mov r13, qword [rcx + 8]
movups xmm0, xmmword [r8 + 0x88]
mov byte [rsp + 0x48], 0
lea rcx, [rsp + 0x50]
movss dword [rsp + 0x40], xmm7
lea r9, [rbp - 0x68]
mov qword [rsp + 0x38], rbx
movaps xmm2, xmm9
mov qword [rsp + 0x30], rdi
mov rdx, r8
mov qword [rsp + 0x28], rcx
mov rcx, r13
movups xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x20], eax
call fcn.140032580
mov rax, qword [0x14009c0a8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax + 0x4ad0]
mov rcx, qword [rcx]
call fcn.14000c540
movss xmm0, dword [0x14009b170]
lea rcx, [rsp + 0x50]
movss xmm1, dword [0x14009b174]
mov r8, rax
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [0x14009b178]
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x54], xmm1
mov dword [rsp + 0x5c], 0x3f800000
call fcn.140007290
addss xmm6, xmm9
movss dword [rbp - 0x64], xmm6
mov r9d, eax
movss dword [rbp - 0x68], xmm8
test eax, 0xff000000
je 0x140077924
test r15, r15
jne 0x1400778ce
mov rcx, qword [r8 + 0x38]
mov r15, qword [rcx + 8]
movups xmm0, xmmword [r8 + 0x88]
lea rax, [0x14008babd]
mov byte [rsp + 0x48], 0
movss xmm2, dword [0x14008c4fc]
mov rdx, r8
movss dword [rsp + 0x40], xmm7
mov rcx, r15
mov qword [rsp + 0x38], rax
lea rax, [0x14008babc]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r9d
lea r9, [rbp - 0x68]
movups xmmword [rsp + 0x50], xmm0
call fcn.140032580
movaps xmm8, xmmword [rsp + 0xe0]
movaps xmm7, xmmword [rsp + 0xf0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm6, xmmword [rsp + 0x100]
mov r12, qword [rsp + 0x120]
mov r13, qword [rsp + 0x118]
mov rcx, qword [rbp - 0x40]
xor rcx, rsp
call fcn.14007d3d0
add rsp, 0x128
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret