Function at 0x140033eac
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rax - 0x2d8]
sub rsp, 0x3c0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x78], xmm11
movaps xmmword [rax - 0x88], xmm12
movaps xmmword [rax - 0x98], xmm13
movaps xmmword [rax - 0xa8], xmm14
movaps xmmword [rax - 0xb8], xmm15
mov rax, qword [0x140047040]
xor rax, rsp
mov qword [rbp + 0x210], rax
xor r12d, r12d
mov esi, r12d
mov dword [rsp + 0x30], r12d
cmp byte [0x1400470a4], r12b
je 0x140033fa7
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movd xmm0, dword [0x1400470a8]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x140042368]
cvtpd2ps xmm2, xmm0
mov eax, dword [0x140047ff8]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x140048028]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x180], xmm0
movss dword [rbp + 0x184], xmm1
movss xmm1, dword [0x140042338]
movss dword [rsp + 0x28], xmm1
lea rdx, [rbp + 0x180]
call fcn.14001e8a0
mov ecx, 5
lea edx, [rcx - 3]
mov eax, dword [0x14004804c]
test eax, eax
jne 0x140033fc5
mov dword [0x140048328], 0x6a
jmp 0x140033fed
cmp eax, 1
jne 0x140033fd6
mov dword [0x140048328], 0x42
jmp 0x140033fed
cmp eax, edx
jne 0x140033fe2
mov dword [0x140048328], ecx
jmp 0x140033fed
cmp eax, 3
jne 0x140033fed
mov dword [0x140048328], edx
mov edi, 8
lea r14d, [rdi - 4]
mov eax, dword [0x14004760c]
test eax, eax
jne 0x14003400f
mov dword [0x140048048], 1
jmp 0x1400340b0
cmp eax, 1
jne 0x14003401f
mov dword [0x140048048], edx
jmp 0x1400340b0
cmp eax, edx
jne 0x14003402f
mov dword [0x140048048], r14d
jmp 0x1400340b0
cmp eax, 3
jne 0x14003403c
mov dword [0x140048048], ecx
jmp 0x1400340b0
cmp eax, r14d
jne 0x14003404d
mov dword [0x140048048], 6
jmp 0x1400340b0
cmp eax, ecx
jne 0x14003405d
mov dword [0x140048048], 3
jmp 0x1400340b0
cmp eax, 6
jne 0x14003406a
mov dword [0x140048048], edi
jmp 0x1400340b0
cmp eax, 7
jne 0x14003407b
mov dword [0x140048048], 9
jmp 0x1400340b0
cmp eax, edi
jne 0x14003408b
mov dword [0x140048048], 0xc
jmp 0x1400340b0
cmp eax, 9
je 0x1400340b0
cmp eax, 0xa
jne 0x1400340a1
mov dword [0x140048048], 0x10
jmp 0x1400340b0
cmp eax, 0xb
jne 0x1400340b0
mov dword [0x140048048], 0x11
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1c8], xmm1
mov qword [rbp + 0x1d8], r12
mov rax, qword [0x140048498]
sub rax, qword [0x140048490]
sar rax, 3
movabs r15, 0xaaaaaaaaaaaaaaab
imul rax, r15
test rax, rax
je 0x1400341b2
movabs rcx, 0xaaaaaaaaaaaaaaa
cmp rax, rcx
ja 0x1400355a4
lea rax, [rax + rax*2]
lea rbx, [rax*8]
cmp rbx, 0x1000
jb 0x14003413f
lea rcx, [rbx + 0x27]
cmp rcx, rbx
jbe 0x14003559e
call fcn.140037304
test rax, rax
je 0x140034138
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140034154
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
test rbx, rbx
je 0x140034151
mov rcx, rbx
call fcn.140037304
mov rdi, rax
jmp 0x140034154
mov rdi, r12
mov qword [rbp + 0x1c8], rdi
mov qword [rbp + 0x1d0], rdi
lea rax, [rbx + rdi]
mov qword [rbp + 0x1d8], rax
mov rbx, qword [0x140048498]
mov rdx, qword [0x140048490]
sub rbx, rdx
mov r8, rbx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
sar rbx, 3
imul rbx, r15
lea rax, [rbx + rbx*2]
lea rcx, [rdi + rax*8]
mov qword [rbp + 0x1d0], rcx
mov qword [rbp - 0x80], r12
lea rcx, [rbp - 0x80]
call fcn.140036ba0
mov edi, 8
movss xmm12, dword [0x14004246c]
movss dword [rsp + 0x34], xmm12
mov r15, r12
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1f8], xmm1
mov qword [rbp + 0x208], r12
mov r8, qword [0x140048900]
add r8, 0x10567408
mov qword [rbp + 0x180], r12
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x180]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov rax, qword [rbp + 0x180]
mov qword [0x140048040], rax
lea r8, [rax + 0x1b8]
mov qword [rbp + 0x180], r12
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x180]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov qword [rbp + 0x1a8], r12
mov r8, qword [rbp + 0x180]
add r8, 0x38
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x1a8]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov qword [rbp + 0x180], r12
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x180]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov r8, qword [rbp + 0x1a8]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov rax, qword [rbp + 0x180]
mov qword [0x140048020], rax
lea r8, [rax + 0x30]
mov qword [rbp + 0x180], r12
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x180]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov rax, qword [rbp + 0x180]
mov qword [0x140047f58], rax
lea r8, [rax + 0x330]
mov qword [rbp + 0x180], r12
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x180]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov rax, qword [rbp + 0x180]
mov qword [0x140047ff0], rax
lea r8, [rax + 0x2a8]
mov qword [rbp + 0x180], r12
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x180]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov rax, qword [rbp + 0x180]
mov qword [0x140047fe0], rax
mov r8, qword [0x140047ff0]
add r8, 0x190
mov qword [rbp + 0x180], r12
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x180]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov rax, qword [rbp + 0x180]
mov qword [0x140048030], rax
mov r8, qword [0x140048040]
add r8, 0x30
mov qword [rbp + 0x180], r12
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x180]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov rax, qword [rbp + 0x180]
mov qword [0x140048008], rax
lea r8, [rax + 0xa0]
mov dword [rbp + 0x1a0], r12d
mov qword [rsp + 0x28], r14
lea rax, [rbp + 0x1a0]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov r8, qword [0x140048008]
add r8, 0x98
mov qword [rbp + 0x1e0], r12
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x1e0]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov r14d, r12d
cmp dword [rbp + 0x1a0], r12d
jbe 0x14003545d
movss xmm13, dword [0x140042310]
mov r12d, dword [rsp + 0x30]
xor ebx, ebx
mov r8, qword [0x140047ff0]
add r8, 0x8f8
mov qword [rbp + 0x1e8], rbx
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x1e8]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov qword [rbp + 0x198], rbx
movsxd rax, r14d
mov rcx, qword [rbp + 0x1e0]
lea r8, [rcx + rax*8]
mov qword [rsp + 0x28], rdi
lea rax, [rbp + 0x198]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov qword [rbp + 0x1b0], rbx
mov rdi, qword [rbp + 0x198]
lea r8, [rdi + 0x310]
mov qword [rsp + 0x28], 8
lea rax, [rbp + 0x1b0]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
and dword [rbp + 0x18c], 0
lea r8, [rdi + 0x4530]
mov qword [rsp + 0x28], 4
lea rax, [rbp + 0x18c]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
movss xmm0, dword [rbp + 0x18c]
ucomiss xmm0, dword [0x140042420]
jp 0x140035445
jne 0x140035445
mov r8, qword [0x140047fe0]
add r8, 0x10b0
mov dword [rbp + 0x190], ebx
mov qword [rsp + 0x28], 4
lea rax, [rbp + 0x190]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov qword [rbp + 0x198], rbx
lea r8, [rdi + 0x2a8]
mov qword [rsp + 0x28], 8
lea rax, [rbp + 0x198]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov dword [rbp + 0x18c], ebx
mov r8, qword [rbp + 0x198]
add r8, 0x10b0
mov qword [rsp + 0x28], 4
lea rax, [rbp + 0x18c]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
mov eax, dword [rbp + 0x18c]
cmp dword [rbp + 0x190], eax
je 0x140035445
cmp rdi, qword [0x140047ff0]
je 0x140035445
mov r8d, 0x6a
mov rbx, qword [rbp + 0x1b0]
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.14002fe54
mov r8, qword [0x140048030]
add r8, 0x128
xorps xmm0, xmm0
movups xmmword [rbp + 0x1b0], xmm0
xorps xmm14, xmm14
movsd qword [rbp + 0x1c0], xmm14
mov qword [rsp + 0x28], 0x18
lea rax, [rbp + 0x1b0]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
test sil, 1
je 0x1400346e9
and esi, 0xfffffffe
movsd xmm6, qword [rbp + 0x1b0]
movsd qword [0x1400483c8], xmm6
movsd xmm1, qword [rbp + 0x1b8]
movsd qword [0x1400483d0], xmm1
movsd xmm8, qword [rbp + 0x1c0]
movsd qword [0x1400483d8], xmm8
movsd xmm10, qword [rsp + 0x68]
movaps xmm0, xmm10
subsd xmm0, xmm1
cvtpd2ps xmm0, xmm0
movss xmm11, dword [0x140042374]
movaps xmm1, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm7, xmm0
movsd xmm9, qword [rsp + 0x60]
movaps xmm0, xmm9
subsd xmm0, xmm6
cvtpd2ps xmm0, xmm0
movaps xmm1, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm7, xmm0
movsd xmm6, qword [rsp + 0x70]
movaps xmm1, xmm6
subsd xmm1, xmm8
cvtpd2ps xmm0, xmm1
movaps xmm1, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm7, xmm0
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm8, xmm0
divss xmm8, dword [0x140042458]
xor r8d, r8d
mov rdx, rbx
lea rcx, [rbp + 0x50]
call fcn.14002fe54
movups xmm15, xmmword [rbp + 0x50]
movaps xmmword [rsp + 0x60], xmm15
movsd xmm0, qword [rbp + 0x60]
movsd qword [rsp + 0x70], xmm0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x80]
call fcn.1400308d0
movaps xmm0, xmm6
addsd xmm0, qword [0x1400423a8]
cvtpd2ps xmm3, xmm0
cvtpd2ps xmm2, xmm10
cvtpd2ps xmm0, xmm9
cvtps2pd xmm1, xmm0
movsd qword [rsp + 0x60], xmm1
cvtps2pd xmm2, xmm2
movsd qword [rsp + 0x68], xmm2
cvtps2pd xmm0, xmm3
movsd qword [rsp + 0x70], xmm0
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x68]
call fcn.1400308d0
movaps xmm0, xmm9
unpcklpd xmm0, xmm10
movaps xmmword [rsp + 0x60], xmm0
movsd qword [rsp + 0x70], xmm6
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x168]
call fcn.1400308d0
mov r8d, 2
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.14002fe54
movsd xmm0, qword [rsp + 0x50]
addsd xmm0, qword [0x1400423a8]
cvtpd2ps xmm3, xmm0
movsd xmm2, qword [rsp + 0x48]
cvtpd2ps xmm2, xmm2
movsd xmm0, qword [rsp + 0x40]
cvtpd2ps xmm0, xmm0
cvtps2pd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
cvtps2pd xmm2, xmm2
movsd qword [rsp + 0x48], xmm2
cvtps2pd xmm0, xmm3
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0xa0]
call fcn.1400308d0
movsd xmm11, qword [rbp + 0x70]
movaps xmm0, xmm11
subsd xmm0, qword [rbp + 0x88]
andps xmm0, xmmword [0x1400425a0]
cvtpd2ps xmm7, xmm0
movss dword [rsp + 0x30], xmm7
cvtps2pd xmm0, xmm7
mulsd xmm0, qword [0x140042358]
cvtpd2ps xmm6, xmm0
movss dword [rbp + 0x198], xmm6
cmp byte [0x140047f4e], 0
je 0x1400348f7
mov edx, 0x11
mov rcx, qword [0x1400483f8]
call qword [sym.imp.USER32.dll_SetWindowDisplayAffinity]
cmp byte [0x140047f4e], 0
jne 0x140034906
xor edx, edx
mov rcx, qword [0x1400483f8]
call qword [sym.imp.USER32.dll_SetWindowDisplayAffinity]
movd xmm0, dword [0x140047628]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm8
jbe 0x1400353be
cmp byte [0x1400470ac], 0
je 0x1400349ca
mov eax, dword [0x140047ff8]
cdq
sub eax, edx
sar eax, 1
mov r10d, eax
mov eax, dword [0x140048028]
cdq
sub eax, edx
sar eax, 1
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movaps xmm0, xmm2
addss xmm0, dword [0x140042420]
cvttss2si r8d, xmm0
subss xmm2, dword [0x140042420]
cvttss2si ecx, xmm2
lea rax, [0x140047280]
mov qword [rsp + 0x20], rax
mov r9d, r10d
mov edx, r10d
call fcn.140030b44
mov eax, dword [0x140047ff8]
cdq
sub eax, edx
sar eax, 1
movd xmm2, eax
cvtdq2ps xmm2, xmm2
mov eax, dword [0x140048028]
cdq
sub eax, edx
sar eax, 1
movaps xmm0, xmm2
addss xmm0, dword [0x140042420]
cvttss2si r9d, xmm0
subss xmm2, dword [0x140042420]
cvttss2si edx, xmm2
lea rcx, [0x140047280]
mov qword [rsp + 0x20], rcx
mov r8d, eax
mov ecx, eax
call fcn.140030b44
movsd xmm12, qword [rbp + 0x68]
cmp byte [0x140047f4c], 0
je 0x14003505c
movsd xmm15, qword [rbp + 0x78]
ucomisd xmm12, xmm14
jp 0x140034a02
jne 0x140034a02
ucomisd xmm11, xmm14
jp 0x140034a02
jne 0x140034a02
ucomisd xmm15, xmm14
jp 0x140034a02
je 0x140035057
mov rcx, rbx
call fcn.140033dfc
test al, al
je 0x140034a17
movaps xmm0, xmmword [0x140042560]
jmp 0x140034a2a
mov rcx, rbx
call fcn.140033dfc
test al, al
jne 0x140034a40
movaps xmm0, xmmword [0x140042550]
movups xmmword [rbp + 0x1b0], xmm0
lea rcx, [rbp + 0x1b0]
call fcn.140004330
mov r12d, eax
movsd xmm2, qword [rbp + 0x60]
cvtpd2ps xmm2, xmm2
movups xmm7, xmmword [rbp + 0x50]
movaps xmm10, xmm7
unpckhpd xmm10, xmm7
movaps xmm0, xmm10
movsd xmm13, qword [0x1400423c0]
subsd xmm0, xmm13
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm7
addsd xmm0, xmm13
cvtsd2ss xmm0, xmm0
xorps xmm8, xmm8
cvtss2sd xmm8, xmm0
cvtps2pd xmm6, xmm1
cvtps2pd xmm9, xmm2
movsd qword [rsp + 0x40], xmm8
movsd qword [rsp + 0x48], xmm6
movsd qword [rsp + 0x50], xmm9
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0xc0]
call fcn.1400308d0
movaps xmm0, xmm7
subsd xmm0, xmm13
cvtsd2ss xmm0, xmm0
xorps xmm7, xmm7
cvtss2sd xmm7, xmm0
movsd qword [rsp + 0x40], xmm7
movsd qword [rsp + 0x48], xmm6
movsd qword [rsp + 0x50], xmm9
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x150]
call fcn.1400308d0
addsd xmm10, xmm13
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm10
cvtps2pd xmm6, xmm0
movsd qword [rsp + 0x40], xmm7
movsd qword [rsp + 0x48], xmm6
movsd qword [rsp + 0x50], xmm9
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x108]
call fcn.1400308d0
movsd qword [rsp + 0x40], xmm8
movsd qword [rsp + 0x48], xmm6
movsd qword [rsp + 0x50], xmm9
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x138]
call fcn.1400308d0
addsd xmm15, qword [0x1400423a8]
cvtpd2ps xmm3, xmm15
movaps xmm0, xmm11
subsd xmm0, xmm13
cvtpd2ps xmm2, xmm0
movaps xmm1, xmm12
addsd xmm1, xmm13
cvtpd2ps xmm0, xmm1
cvtps2pd xmm8, xmm0
cvtps2pd xmm6, xmm2
cvtps2pd xmm9, xmm3
movsd qword [rsp + 0x40], xmm8
movsd qword [rsp + 0x48], xmm6
movsd qword [rsp + 0x50], xmm9
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x60]
call fcn.1400308d0
movaps xmm0, xmm12
subsd xmm0, xmm13
cvtpd2ps xmm0, xmm0
cvtps2pd xmm7, xmm0
movsd qword [rsp + 0x40], xmm7
movsd qword [rsp + 0x48], xmm6
movsd qword [rsp + 0x50], xmm9
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0xd8]
call fcn.1400308d0
movaps xmm0, xmm11
addsd xmm0, xmm13
cvtpd2ps xmm0, xmm0
cvtps2pd xmm6, xmm0
movsd qword [rsp + 0x40], xmm7
movsd qword [rsp + 0x48], xmm6
movsd qword [rsp + 0x50], xmm9
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0xf0]
call fcn.1400308d0
movsd qword [rsp + 0x40], xmm8
movsd qword [rsp + 0x48], xmm6
movsd qword [rsp + 0x50], xmm9
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x120]
call fcn.1400308d0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movsd xmm1, qword [rsp + 0x68]
cvtpd2ps xmm1, xmm1
movss dword [rbp + 0x18c], xmm1
movsd xmm0, qword [rsp + 0x60]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x180], xmm0
movss dword [rbp + 0x184], xmm1
movsd xmm13, qword [rbp + 0xc8]
cvtpd2ps xmm13, xmm13
movsd xmm12, qword [rbp + 0xc0]
cvtpd2ps xmm12, xmm12
movss dword [rbp + 0x34], xmm12
movss dword [rbp + 0x38], xmm13
movss xmm6, dword [0x140042374]
movss dword [rsp + 0x20], xmm6
mov r9d, r12d
lea r8, [rbp + 0x180]
lea rdx, [rbp + 0x34]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movsd xmm1, qword [rbp + 0xe0]
cvtpd2ps xmm1, xmm1
movss dword [rbp + 0x190], xmm1
movsd xmm0, qword [rbp + 0xd8]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1a8], xmm0
movss dword [rbp + 0x1ac], xmm1
movsd xmm11, qword [rbp + 0x158]
cvtpd2ps xmm11, xmm11
movsd xmm10, qword [rbp + 0x150]
cvtpd2ps xmm10, xmm10
movss dword [rbp - 0x3c], xmm10
movss dword [rbp - 0x38], xmm11
movss dword [rsp + 0x20], xmm6
mov r9d, r12d
lea r8, [rbp + 0x1a8]
lea rdx, [rbp - 0x3c]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movsd xmm0, qword [rbp + 0xf8]
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x78], xmm0
movsd xmm15, qword [rbp + 0xf0]
cvtpd2ps xmm15, xmm15
movss dword [rbp - 0x34], xmm15
movss dword [rbp - 0x30], xmm0
movsd xmm9, qword [rbp + 0x110]
cvtpd2ps xmm9, xmm9
movsd xmm7, qword [rbp + 0x108]
cvtpd2ps xmm7, xmm7
movss dword [rbp - 0x2c], xmm7
movss dword [rbp - 0x28], xmm9
movss dword [rsp + 0x20], xmm6
mov r9d, r12d
lea r8, [rbp - 0x34]
lea rdx, [rbp - 0x2c]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movsd xmm0, qword [rbp + 0x128]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x1b0], xmm0
movsd xmm14, qword [rbp + 0x120]
cvtpd2ps xmm14, xmm14
movss dword [rbp - 0x24], xmm14
movss dword [rbp - 0x20], xmm0
movsd xmm8, qword [rbp + 0x140]
cvtpd2ps xmm8, xmm8
movsd xmm6, qword [rbp + 0x138]
cvtpd2ps xmm6, xmm6
movss dword [rbp - 0x1c], xmm6
movss dword [rbp - 0x18], xmm8
movss xmm0, dword [0x140042374]
movss dword [rsp + 0x20], xmm0
mov r9d, r12d
lea r8, [rbp - 0x24]
lea rdx, [rbp - 0x1c]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movss dword [rbp - 0x14], xmm10
movss dword [rbp - 0x10], xmm11
movss dword [rbp - 0xc], xmm12
movss dword [rbp - 8], xmm13
movss xmm0, dword [0x140042374]
movss dword [rsp + 0x20], xmm0
mov r9d, r12d
lea r8, [rbp - 0x14]
lea rdx, [rbp - 0xc]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movss dword [rbp - 4], xmm7
movss dword [rbp], xmm9
movss dword [rbp + 4], xmm10
movss dword [rbp + 8], xmm11
movss xmm11, dword [0x140042374]
movss dword [rsp + 0x20], xmm11
mov r9d, r12d
lea r8, [rbp - 4]
lea rdx, [rbp + 4]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movss dword [rbp + 0xc], xmm6
movss dword [rbp + 0x10], xmm8
movss dword [rbp + 0x14], xmm7
movss dword [rbp + 0x18], xmm9
movss dword [rsp + 0x20], xmm11
mov r9d, r12d
lea r8, [rbp + 0xc]
lea rdx, [rbp + 0x14]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movss dword [rbp + 0x1c], xmm12
movss dword [rbp + 0x20], xmm13
movss dword [rbp + 0x24], xmm6
movss dword [rbp + 0x28], xmm8
movss dword [rsp + 0x20], xmm11
mov r9d, r12d
lea r8, [rbp + 0x1c]
lea rdx, [rbp + 0x24]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movss xmm6, dword [rbp + 0x1a8]
movss dword [rbp + 0x2c], xmm6
movss xmm8, dword [rbp + 0x190]
movss dword [rbp + 0x30], xmm8
movss xmm9, dword [rbp + 0x180]
movss dword [rbp - 0x6c], xmm9
movss xmm10, dword [rbp + 0x18c]
movss dword [rbp - 0x68], xmm10
movss dword [rsp + 0x20], xmm11
mov r9d, r12d
lea r8, [rbp + 0x2c]
lea rdx, [rbp - 0x6c]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movss dword [rbp - 0x44], xmm15
movss xmm7, dword [rbp - 0x78]
movss dword [rbp - 0x40], xmm7
movss dword [rbp - 0x4c], xmm6
movss dword [rbp - 0x48], xmm8
movss dword [rsp + 0x20], xmm11
mov r9d, r12d
lea r8, [rbp - 0x44]
lea rdx, [rbp - 0x4c]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movss dword [rbp - 0x54], xmm14
movss xmm6, dword [rbp + 0x1b0]
movss dword [rbp - 0x50], xmm6
movss dword [rbp - 0x5c], xmm15
movss dword [rbp - 0x58], xmm7
movss dword [rsp + 0x20], xmm11
mov r9d, r12d
lea r8, [rbp - 0x54]
lea rdx, [rbp - 0x5c]
call fcn.14001e3f0
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movss dword [rbp - 0x64], xmm9
movss dword [rbp - 0x60], xmm10
movss dword [rbp - 0x74], xmm14
movss dword [rbp - 0x70], xmm6
movss dword [rsp + 0x20], xmm11
mov r9d, r12d
lea r8, [rbp - 0x64]
lea rdx, [rbp - 0x74]
call fcn.14001e3f0
movss xmm6, dword [rbp + 0x198]
movsd xmm11, qword [rbp + 0x70]
movsd xmm12, qword [rbp + 0x68]
movss xmm7, dword [rsp + 0x30]
movss xmm13, dword [0x140042310]
movups xmm15, xmmword [rbp + 0x50]
cmp byte [0x1400470a5], 0
je 0x1400350b7
mov rcx, rbx
call fcn.140033dfc
test al, al
jne 0x14003507d
mov rcx, rbx
call fcn.140033dfc
test al, al
jne 0x1400350b7
movaps xmm0, xmm6
mulss xmm0, xmm13
cvtps2pd xmm1, xmm0
movaps xmm2, xmm12
lea rax, [rsp + 0x30]
subsd xmm2, xmm1
mov qword [rsp + 0x20], rax
or dword [rsp + 0x30], 0xffffffff
cvttss2si r9d, xmm7
cvttss2si r8d, xmm6
cvttsd2si edx, xmm11
cvttsd2si ecx, xmm2
call fcn.140030bf8
cmp byte [0x140047ffc], 0
je 0x140035112
mov rcx, rbx
call fcn.140033dfc
test al, al
jne 0x1400350d8
mov rcx, rbx
call fcn.140033dfc
test al, al
jne 0x140035112
movaps xmm0, xmm6
mulss xmm0, xmm13
cvtps2pd xmm1, xmm0
movaps xmm2, xmm12
lea rax, [rsp + 0x30]
subsd xmm2, xmm1
mov qword [rsp + 0x20], rax
or dword [rsp + 0x30], 0xffffffff
cvttss2si r9d, xmm7
cvttss2si r8d, xmm6
cvttsd2si edx, xmm11
cvttsd2si ecx, xmm2
call fcn.1400311e0
cmp byte [0x140047f4b], 0
je 0x1400351a7
mov byte [rbp + 0x188], 0
mov r8, qword [rbp + 0x1e8]
add r8, 0x348
mov qword [rsp + 0x28], 1
lea rax, [rbp + 0x188]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x140048918]
mov r9, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
call fcn.140001ef0
cmp byte [rbp + 0x188], 0
je 0x1400351a7
mov rcx, qword [0x140047f50]
add rcx, 0x1cc8
movsd xmm0, qword [rbp + 0xa8]
addsd xmm0, qword [0x1400423b0]
cvtpd2ps xmm1, xmm0
movsd xmm0, qword [rbp + 0xa0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x44], xmm0
movss dword [rbp + 0x48], xmm1
lea rdx, [rbp + 0x44]
call fcn.14001eb98
movsd xmm7, qword [rbp + 0x80]
cmp byte [0x140047f4d], 0
je 0x14003524e
mov r10, qword [0x140047f50]
movaps xmm0, xmmword [0x140042530]
movups xmmword [rbp + 0x1e8], xmm0
lea rcx, [rbp + 0x1e8]
call fcn.140004330
movsd xmm5, qword [rbp + 0x88]
cvtpd2ps xmm5, xmm5
mulss xmm6, xmm13
cvtps2pd xmm2, xmm6
movaps xmm0, xmm7
addsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x3c], xmm0
movss dword [rbp + 0x40], xmm5
cvtpd2ps xmm1, xmm11
movaps xmm0, xmm12
subsd xmm0, xmm2
cvtpd2ps xmm0, xmm0
movss dword [rbp - 0x80], xmm0
movss dword [rbp - 0x7c], xmm1
mov dword [rsp + 0x28], 0xf
movss xmm0, dword [0x140042324]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x3c]
lea rdx, [rbp - 0x80]
lea rcx, [r10 + 0x1cc8]
call fcn.14001e68c
cmp byte [0x140047f4a], 0
je 0x140035278
movaps xmmword [rbp + 0xa0], xmm15
movsd xmm0, qword [rbp + 0x60]
movsd qword [rbp + 0xb0], xmm0
lea rcx, [rbp + 0xa0]
call fcn.140033c44
cmp byte [0x1400470a7], 0
je 0x1400353b7
mov rcx, rbx
call fcn.140033dfc
test al, al
je 0x14003531e
mov ecx, dword [0x14004802c]
test ecx, ecx
je 0x1400352ec
sub ecx, 1
je 0x1400352dc
cmp ecx, 1
jne 0x14003531e
mov eax, 0x431bde83
imul dword [0x140047ff8]
mov r10d, edx
sar r10d, 0x12
mov eax, r10d
shr eax, 0x1f
add r10d, eax
cvttsd2si r8d, xmm12
cvttsd2si r9d, xmm11
mov eax, dword [0x140048028]
cdq
sub eax, edx
mov edx, r10d
jmp 0x140035309
mov eax, dword [0x140047ff8]
cdq
sub eax, edx
sar eax, 1
mov r10d, eax
jmp 0x1400352c4
cvttsd2si r9d, qword [rbp + 0x88]
cvttsd2si r8d, xmm7
mov eax, dword [0x140048028]
cdq
sub eax, edx
mov edx, dword [0x140047ff8]
sar eax, 1
mov ecx, eax
lea rax, [0x140047280]
mov qword [rsp + 0x20], rax
call fcn.140030b44
mov rcx, rbx
call fcn.140033dfc
test al, al
jne 0x1400353b7
mov ecx, dword [0x14004802c]
test ecx, ecx
je 0x140035385
sub ecx, 1
je 0x140035375
cmp ecx, 1
jne 0x1400353b7
mov eax, 0x6b5fca6b
imul dword [0x140047ff8]
mov r10d, edx
sar r10d, 0x16
mov eax, r10d
shr eax, 0x1f
add r10d, eax
cvttsd2si r8d, xmm12
cvttsd2si r9d, xmm11
mov eax, dword [0x140048028]
cdq
sub eax, edx
mov edx, r10d
jmp 0x1400353a2
mov eax, dword [0x140047ff8]
cdq
sub eax, edx
sar eax, 1
mov r10d, eax
jmp 0x14003535d
cvttsd2si r9d, qword [rbp + 0x88]
cvttsd2si r8d, xmm7
mov eax, dword [0x140048028]
cdq
sub eax, edx
mov edx, dword [0x140047ff8]
sar eax, 1
mov ecx, eax
lea rax, [0x140047280]
mov qword [rsp + 0x20], rax
call fcn.140030b44
movss xmm12, dword [rsp + 0x34]
mov eax, dword [0x140048028]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd xmm2, qword [rbp + 0x168]
subsd xmm2, xmm0
mov eax, dword [0x140047ff8]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd xmm1, qword [rbp + 0x170]
subsd xmm1, xmm0
mulsd xmm1, xmm1
mulsd xmm2, xmm2
addsd xmm1, xmm2
cvtpd2ps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
mov rcx, rbx
call fcn.140033dfc
xor ebx, ebx
test al, al
je 0x140035445
movd xmm1, dword [0x1400470a8]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm6
jbe 0x140035445
comiss xmm12, xmm6
jbe 0x140035445
movaps xmm12, xmm6
movss dword [rsp + 0x34], xmm6
mov r15, rdi
inc r14d
cmp r14d, dword [rbp + 0x1a0]
mov edi, 8
jb 0x1400344a4
xor r12d, r12d
cmp byte [0x1400470a6], r12b
je 0x14003551d
test r15, r15
je 0x14003551d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r8, qword [rax + 0x30]
movsxd rcx, dword [r8 + 0x3c]
mov r10d, dword [rcx + r8 + 0x88]
add r10, r8
cmp r10, r8
je 0x1400354e9
mov r9d, dword [r10 + 0x18]
test r9d, r9d
je 0x1400354e9
mov edi, dword [r10 + 0x20]
dec r9d
lea rcx, [r8 + r9*4]
mov edx, dword [rcx + rdi]
add rdx, r8
mov r11d, 0x570b4643
mov cl, byte [rdx]
inc rdx
test cl, cl
je 0x1400354e4
movsx ecx, cl
xor ecx, r11d
imul r11d, ecx, 0x1000193
mov cl, byte [rdx]
inc rdx
test cl, cl
jne 0x1400354c5
cmp r11d, 0x5481c5c3
je 0x1400354ee
test r9d, r9d
jne 0x1400354a9
mov rax, qword [rax]
jmp 0x140035484
mov edx, dword [r10 + 0x1c]
add rdx, r8
mov eax, dword [r10 + 0x24]
add rax, r8
movzx eax, word [rax + r9*2]
mov edx, dword [rdx + rax*4]
add rdx, r8
mov ecx, dword [0x140048048]
call rdx
test ax, ax
jns 0x14003551d
mov rcx, r15
call fcn.140033d44
nop
lea rcx, [rbp + 0x1f8]
call fcn.1400365c0
nop
lea rcx, [rbp + 0x1c8]
call fcn.1400365c0
mov rcx, qword [rbp + 0x210]
xor rcx, rsp
call fcn.140037200
lea r11, [rsp + 0x3c0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1400014ec
int3
call fcn.140036c18
int3