Function at 0x18004d410
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2f8]
sub rsp, 0x3c8
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rax - 0xd8], xmm14
movaps xmmword [rax - 0xe8], xmm15
mov rax, qword [0x18006f9a8]
mov rax, qword [rax + 0x48a8]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.1800226c0
mov r13, rax
mov qword [rbp + 0x308], rax
movabs rax, 0x1419a16b0
movabs rdx, 0x14020a870
movabs rsi, 0x140f3eb00
movabs r12, 0x141980228
movss xmm11, dword [0x1800649f4]
movss xmm12, dword [0x1800649d0]
movss xmm13, dword [0x180064a6c]
movss xmm14, dword [0x1800649d4]
mov rcx, qword [0x18006f068]
cmp byte [rcx + 2], 0
je 0x18004d673
mov rcx, qword [rax]
movsd xmm7, qword [rcx + 0x24c]
mov eax, dword [rcx + 0x254]
mov dword [rbp - 0x48], eax
movss xmm6, dword [rcx + 0x17d4]
call rdx
movaps xmm8, xmm0
addss xmm8, xmm6
xor edi, edi
movaps xmm1, xmm7
shufps xmm1, xmm1, 0x55
movsd qword [rbp - 0x50], xmm7
movss dword [rbp - 0x5c], xmm1
movss xmm9, dword [rbp - 0x48]
movss xmm10, dword [rbp - 0x50]
movd xmm7, edi
cvtdq2ps xmm7, xmm7
mulss xmm7, xmm11
mulss xmm7, xmm12
divss xmm7, xmm13
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm6, xmm0
mulss xmm6, xmm8
addss xmm6, xmm9
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm0, xmm8
addss xmm0, xmm10
movss dword [rbp - 0x58], xmm6
movsd xmm1, qword [rbp - 0x60]
movss xmm1, xmm0
movsd qword [rbp - 0x60], xmm1
movsd qword [rbp - 0x50], xmm1
mov eax, dword [rbp - 0x58]
mov dword [rbp - 0x48], eax
mov rcx, qword [r12]
add rcx, 0x270
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x50]
call rsi
movss xmm0, dword [rbp - 0x30]
movss dword [rbp + 0x300], xmm0
movss xmm1, dword [rbp - 0x2c]
movss dword [rbp + 0x304], xmm1
mov r8d, dword [r13 + 0x7c]
mov eax, dword [r13 + 0x78]
cmp eax, r8d
jne 0x18004d607
lea ecx, [rax + 1]
test r8d, r8d
je 0x18004d5ee
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x18004d5f3
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [r13 + 0x78]
call fcn.180034bc0
mov eax, dword [r13 + 0x78]
movsxd rdx, eax
mov rcx, qword [r13 + 0x80]
mov rax, qword [rbp + 0x300]
mov qword [rcx + rdx*8], rax
mov r8d, dword [r13 + 0x78]
inc r8d
mov dword [r13 + 0x78], r8d
inc edi
cmp edi, 0x63
jle 0x18004d542
mov rax, qword [0x18006f068]
movups xmm0, xmmword [rax + 0x4c]
movups xmmword [rbp - 0x60], xmm0
lea rcx, [rbp - 0x60]
call fcn.180020750
movss dword [rsp + 0x28], xmm14
mov dword [rsp + 0x20], 1
mov r9d, eax
mov rdx, qword [r13 + 0x80]
mov rcx, r13
call fcn.18003d230
mov dword [r13 + 0x78], 0
movss xmm7, dword [0x1800649c4]
xorps xmm12, xmm12
mov rax, qword [0x18006f068]
cmp byte [rax + 0xa], 0
je 0x18004dd0d
xor esi, esi
mov rbx, qword [0x18006faf8]
mov r15, qword [0x18006faf0]
mov rcx, rbx
sub rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x18004d7e9
mov r8, rbx
mov r13, rbx
mov r12, rbx
lea rdi, [r15 + 0x10]
nop dword [rax]
nop dword [rax + rax]
mov r14, qword [rdi - 0x10]
movss xmm6, dword [r14 + 0x1068]
ucomiss xmm6, xmm12
jp 0x18004d6f9
je 0x18004d798
lea rdx, str.JammerDevice
mov rcx, qword [rdi - 8]
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x18004d72f
ucomiss xmm6, xmm12
jp 0x18004d754
jne 0x18004d754
movsxd rax, esi
lea rcx, [rax + rax*2]
lea rcx, [r15 + rcx*8]
lea rdx, [rcx + 0x18]
sub r13, rdx
mov r8, r13
jmp 0x18004d7c1
movabs rax, 0x14198a1b8
movss xmm0, dword [rax]
movss xmm1, dword [r14 + 0x360]
subss xmm0, dword [rdi]
subss xmm1, xmm0
comiss xmm12, xmm1
jae 0x18004d7ac
inc esi
add rdi, 0x18
mov r8, rbx
mov r15, qword [0x18006faf0]
mov rcx, rbx
sub rcx, r15
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov r13, rbx
mov r12, rbx
movsxd rax, esi
cmp rax, rdx
jae 0x18004d7d8
jmp 0x18004d6e0
movsxd rax, esi
lea rcx, [rax + rax*2]
lea rcx, [r15 + rcx*8]
lea rdx, [rcx + 0x18]
sub r8, rdx
jmp 0x18004d7c1
movsxd rax, esi
lea rcx, [rax + rax*2]
lea rcx, [r15 + rcx*8]
lea rdx, [rcx + 0x18]
sub r12, rdx
mov r8, r12
call sub.VCRUNTIME140.dll_memmove
mov rbx, qword [0x18006faf8]
sub rbx, 0x18
mov qword [0x18006faf8], rbx
movabs r12, 0x141980228
mov r13, qword [rbp + 0x308]
sub rbx, qword [0x18006faf0]
movabs r15, 0x2aaaaaaaaaaaaaab
mov rax, r15
imul rbx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x18004dd0d
xor r14d, r14d
xor esi, esi
nop dword [rax]
xor edx, edx
mov r8d, 0xc8
lea rcx, [rbp + 0xe0]
call sub.VCRUNTIME140.dll_memset
mov rax, qword [0x18006faf0]
mov rcx, qword [rsi + rax]
movsd xmm0, qword [rcx + 0x24c]
movsd qword [rbp - 0x60], xmm0
mov eax, dword [rcx + 0x254]
mov dword [rbp - 0x58], eax
mov rcx, qword [r12]
add rcx, 0x270
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x60]
movabs rax, 0x140f3eb00
call rax
mov rdi, qword [0x18006faf0]
mov rbx, qword [rsi + rdi + 8]
lea rdx, str.SightWard
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x18004daa7
mov rax, qword [rsi + rdi]
movss xmm0, dword [rax + 0x1090]
ucomiss xmm0, xmm7
jp 0x18004d8aa
je 0x18004d8c2
movss xmm6, dword [rax + 0x360]
ucomiss xmm6, xmm12
jp 0x18004d9a1
jne 0x18004d9a1
xor ebx, ebx
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], bl
lea r8d, [rbx + 8]
lea rdx, [0x180064858]
lea rcx, [rbp - 0x80]
call fcn.1800091b0
nop
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x30]
call fcn.18004ba10
cmp qword [rax + 0x18], 0x10
jb 0x18004d903
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 0xe0]
call fcn.180050fb0
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x18004d94d
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004d948
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004de25
call fcn.18005631c
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], 0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18004dc1c
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004d997
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004de2c
call fcn.18005631c
jmp 0x18004dc1c
movabs rcx, 0x14198a1b8
movss xmm0, dword [rcx]
subss xmm0, dword [rsi + rdi + 0x10]
subss xmm6, xmm0
mov byte [rax + 0x2f8], 1
xor ebx, ebx
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], bl
lea r8d, [rbx + 0xd]
lea rdx, [0x180064848]
lea rcx, [rbp - 0x80]
call fcn.1800091b0
nop
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x30]
call fcn.18004ba10
cmp qword [rax + 0x18], 0x10
jb 0x18004da01
mov rax, qword [rax]
cvtps2pd xmm2, xmm6
movq r8, xmm2
mov rdx, rax
lea rcx, [rbp + 0xe0]
call fcn.180050fb0
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x18004da53
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004da4e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004de33
call fcn.18005631c
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], 0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18004dc1c
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004da9d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004de3a
call fcn.18005631c
jmp 0x18004dc1c
lea rdx, str.JammerDevice
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x18004dba5
mov rax, qword [rsi + rdi]
mov byte [rax + 0x2f8], 1
xor ebx, ebx
mov qword [rbp - 0x80], rbx
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], bl
lea r8d, [rbx + 8]
lea rdx, [0x180064878]
lea rcx, [rbp - 0x80]
call fcn.1800091b0
nop
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x30]
call fcn.18004ba10
cmp qword [rax + 0x18], 0x10
jb 0x18004db0a
mov rax, qword [rax]
mov rdx, rax
lea rcx, [rbp + 0xe0]
call fcn.180050fb0
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x18004db54
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004db4f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004de41
call fcn.18005631c
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], 0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x18004dc1c
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004db9e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004de48
call fcn.18005631c
jmp 0x18004dc1c
lea rdx, str.Jack_In_The_Box
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
je 0x18004dbcb
lea rdx, str.Noxious_Trap
mov rcx, rbx
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
jne 0x18004dc1c
mov rax, qword [rsi + rdi]
mov byte [rax + 0x2f8], 1
movabs rax, 0x14198a1b8
movss xmm1, dword [rax]
mov rcx, qword [0x18006faf0]
mov rax, qword [rsi + rcx]
movss xmm0, dword [rax + 0x360]
subss xmm1, dword [rsi + rcx + 0x10]
subss xmm0, xmm1
cvtps2pd xmm2, xmm0
movq r8, xmm2
lea rdx, str._.0f
lea rcx, [rbp + 0xe0]
call fcn.180050fb0
movaps xmm0, xmmword [0x180064e40]
movups xmmword [rbp - 0x30], xmm0
lea rcx, [rbp - 0x30]
call fcn.180020750
mov r8d, eax
movss xmm0, dword [rbp - 0x50]
movss dword [rbp + 0x300], xmm0
movss xmm1, dword [rbp - 0x4c]
movss dword [rbp + 0x304], xmm1
test eax, 0xff000000
je 0x18004dcd8
lea rax, [rbp + 0xe0]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x18004dc66
lea rdx, [rbp + 0xe0]
add rdx, rcx
lea rax, [rbp + 0xe0]
cmp rax, rdx
je 0x18004dcd8
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x30], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x30]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp + 0x300]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.180043430
inc r14d
add rsi, 0x18
mov rcx, qword [0x18006faf8]
sub rcx, qword [0x18006faf0]
mov rax, r15
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
movsxd rax, r14d
cmp rax, rdx
jb 0x18004d820
movabs r8, 0x140243080
movss xmm14, dword [0x180064990]
movss xmm13, dword [0x180064a44]
movss xmm15, dword [0x180064a1c]
mov rax, qword [0x18006f068]
cmp byte [rax + 3], 0
jne 0x18004dd49
cmp byte [rax + 1], 0
je 0x18004ec1f
mov rax, qword [0x18006f068]
cmp dword [rax + 0x18], 1
jne 0x18004ec1f
mov r14, qword [0x18006fbb0]
mov rsi, qword [0x18006fba8]
cmp rsi, r14
je 0x18004ec1f
lea r15, [0x18006325d]
lea r12, [0x18006325c]
lea rbx, [0x180063275]
movss xmm6, dword [0x180064a24]
movss xmm9, dword [0x180064a4c]
movss xmm7, dword [0x180064a2c]
movss xmm8, dword [0x180064a64]
movss xmm10, dword [0x180064a30]
movss xmm11, dword [0x180064a68]
nop word [rax + rax]
movups xmm0, xmmword [rsi]
movaps xmmword [rbp + 0x1b0], xmm0
movups xmm0, xmmword [rsi + 0x20]
movaps xmmword [rbp + 0x1d0], xmm0
movups xmm1, xmmword [rsi + 0x30]
movaps xmmword [rbp + 0x1e0], xmm1
mov rax, qword [0x18006f068]
movzx edx, byte [rax + 3]
movzx ecx, byte [rax + 1]
mov rdi, qword [rbp + 0x1b0]
cmp cl, dl
je 0x18004de8b
movabs r9, 0x1419a16b0
test cl, cl
je 0x18004de61
mov rax, qword [r9]
mov ecx, dword [rax + 0x3c]
cmp ecx, 0x64
jne 0x18004de4f
cmp dword [rdi + 0x3c], 0xc8
jne 0x18004de61
jmp 0x18004ec12
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
cmp ecx, 0xc8
jne 0x18004de61
cmp dword [rdi + 0x3c], 0x64
je 0x18004ec12
test dl, dl
je 0x18004de8b
mov rax, qword [r9]
mov ecx, dword [rax + 0x3c]
cmp ecx, 0x64
jne 0x18004de7a
cmp dword [rdi + 0x3c], ecx
jne 0x18004de8b
jmp 0x18004ec12
cmp ecx, 0xc8
jne 0x18004de8b
cmp dword [rdi + 0x3c], ecx
je 0x18004ec12
mov rcx, rdi
call r8
test al, al
je 0x18004ec08
movss xmm0, dword [rdi + 0x1068]
comiss xmm0, xmm12
jbe 0x18004ec08
cmp byte [rdi + 0x2f8], 0
je 0x18004ec08
lea rcx, [rdi + 0x44f8]
call fcn.180055d40
mov rcx, rax
movabs rax, qword [0x141980228]
lea r8, [rax + 0x270]
lea rdx, [rbp + 0x300]
movabs rax, 0x14094a5e0
call rax
xor edx, edx
mov r8d, 0xc8
lea rcx, [rbp + 0xe0]
call sub.VCRUNTIME140.dll_memset
movss xmm0, dword [rbp + 0x304]
addss xmm0, xmm14
movss dword [rbp + 0x304], xmm0
mov rcx, qword [rdi + 0x3c28]
cmp dword [rcx + 0x28], 0
je 0x18004e07d
xor r8d, r8d
mov rdx, rdi
call fcn.180050b60
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
comiss xmm0, xmm12
jbe 0x18004e1df
xor r8d, r8d
mov rdx, rdi
mov rcx, qword [rdi + 0x3c28]
call fcn.180050b60
mov rbx, qword [rdi + 0x3c28]
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call fcn.1800508e0
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call fcn.180050b60
xor r8d, r8d
mov rdx, rdi
mov rcx, qword [rdi + 0x3c28]
call fcn.180050b60
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
movq r9, xmm3
lea r8, str._.0f
mov edx, 0xc8
lea rcx, [rbp + 0xe0]
call fcn.18004b9b0
movaps xmm0, xmmword [0x180064e80]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r8d, eax
movss xmm1, dword [rbp + 0x304]
addss xmm1, dword [0x1800649d4]
movss xmm0, dword [rbp + 0x300]
subss xmm0, dword [0x180064a50]
movss dword [rbp + 0x310], xmm0
movss dword [rbp + 0x314], xmm1
test eax, 0xff000000
je 0x18004e076
lea rax, [rbp + 0xe0]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x18004e006
lea rdx, [rbp + 0xe0]
add rdx, rcx
lea rax, [rbp + 0xe0]
cmp rax, rdx
je 0x18004e076
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp + 0x310]
movaps xmm2, xmm6
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.180043430
lea rbx, [0x180063275]
mov rcx, qword [rdi + 0x3c30]
cmp dword [rcx + 0x28], 0
je 0x18004e30a
mov r8d, 1
mov rdx, rdi
call fcn.180050b60
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
comiss xmm0, xmm12
jbe 0x18004e27c
mov r8d, 1
mov rdx, rdi
mov rcx, qword [rdi + 0x3c30]
call fcn.180050b60
mov rbx, qword [rdi + 0x3c30]
mov r8d, 1
mov rdx, rdi
mov rcx, rbx
call fcn.1800508e0
mov r8d, 1
mov rdx, rdi
mov rcx, rbx
call fcn.180050b60
mov r8d, 1
mov rdx, rdi
mov rcx, qword [rdi + 0x3c30]
call fcn.180050b60
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
movq r9, xmm3
lea r8, str._.0f
mov edx, 0xc8
lea rcx, [rbp + 0xe0]
call fcn.18004b9b0
movaps xmm0, xmmword [0x180064e80]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r8d, eax
movss xmm1, dword [rbp + 0x304]
addss xmm1, dword [0x1800649d4]
movss xmm0, dword [rbp + 0x300]
subss xmm0, xmm6
movss dword [rbp + 0x60], xmm0
movss dword [rbp + 0x64], xmm1
test eax, 0xff000000
je 0x18004e30a
lea rax, [rbp + 0xe0]
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x18004e180
lea rdx, [rbp + 0xe0]
add rdx, rcx
lea rax, [rbp + 0xe0]
cmp rax, rdx
je 0x18004e30a
mov rax, qword [r13 + 0x38]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp + 0x60]
mov rcx, qword [rax + 8]
jmp 0x18004e2f3
movaps xmm0, xmmword [0x180064d60]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
movss xmm1, dword [rbp + 0x304]
addss xmm1, dword [0x1800649d4]
movss xmm0, dword [rbp + 0x300]
subss xmm0, dword [0x180064a50]
movss dword [rbp + 0x318], xmm0
movss dword [rbp + 0x31c], xmm1
test eax, 0xff000000
je 0x18004e07d
mov rcx, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r12
lea rdx, [rbp - 0x80]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x318]
movaps xmm2, xmm6
mov rdx, r13
mov rcx, qword [rcx + 8]
call fcn.180043430
jmp 0x18004e07d
movaps xmm0, xmmword [0x180064d60]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
movss xmm1, dword [rbp + 0x304]
addss xmm1, dword [0x1800649d4]
movss xmm0, dword [rbp + 0x300]
subss xmm0, xmm6
movss dword [rbp + 0x68], xmm0
movss dword [rbp + 0x6c], xmm1
test eax, 0xff000000
je 0x18004e30a
mov rcx, qword [r13 + 0x38]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
mov qword [rsp + 0x38], rbx
lea rdx, [0x180063274]
mov qword [rsp + 0x30], rdx
lea rdx, [rbp - 0x80]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x68]
mov rcx, qword [rcx + 8]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
movaps xmm2, xmm6
mov rdx, r13
call fcn.180043430
mov rcx, qword [rdi + 0x3c38]
cmp dword [rcx + 0x28], 0
je 0x18004e508
mov r8d, 2
mov rdx, rdi
call fcn.180050b60
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
comiss xmm0, xmm12
jbe 0x18004e46f
mov r8d, 2
mov rdx, rdi
mov rcx, qword [rdi + 0x3c38]
call fcn.180050b60
mov rbx, qword [rdi + 0x3c38]
mov r8d, 2
mov rdx, rdi
mov rcx, rbx
call fcn.1800508e0
mov r8d, 2
mov rdx, rdi
mov rcx, rbx
call fcn.180050b60
mov r8d, 2
mov rdx, rdi
mov rcx, qword [rdi + 0x3c38]
call fcn.180050b60
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
movq r9, xmm3
lea r8, str._.0f
mov edx, 0xc8
lea rcx, [rbp + 0xe0]
call fcn.18004b9b0
movaps xmm0, xmmword [0x180064e80]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r8d, eax
movss xmm1, dword [rbp + 0x304]
addss xmm1, dword [0x1800649d4]
movss xmm0, dword [rbp + 0x300]
addss xmm0, dword [0x180064a18]
movss dword [rbp + 0x70], xmm0
movss dword [rbp + 0x74], xmm1
test eax, 0xff000000
je 0x18004e508
lea rax, [rbp + 0xe0]
mov rcx, 0xffffffffffffffff
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x18004e410
lea rdx, [rbp + 0xe0]
add rdx, rcx
lea rax, [rbp + 0xe0]
cmp rax, rdx
je 0x18004e508
mov rax, qword [r13 + 0x38]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp + 0x70]
mov rcx, qword [rax + 8]
jmp 0x18004e4f1
movaps xmm0, xmmword [0x180064d60]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
movss xmm1, dword [rbp + 0x304]
addss xmm1, dword [0x1800649d4]
movss xmm0, dword [rbp + 0x300]
addss xmm0, dword [0x180064a18]
movss dword [rbp + 0x78], xmm0
movss dword [rbp + 0x7c], xmm1
test eax, 0xff000000
je 0x18004e508
mov rcx, qword [r13 + 0x38]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
lea rdx, [0x18006322d]
mov qword [rsp + 0x38], rdx
lea rdx, [0x18006322c]
mov qword [rsp + 0x30], rdx
lea rdx, [rbp - 0x80]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x78]
mov rcx, qword [rcx + 8]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
movaps xmm2, xmm6
mov rdx, r13
call fcn.180043430
mov rcx, qword [rdi + 0x3c40]
cmp dword [rcx + 0x28], 0
je 0x18004e711
mov r8d, 3
mov rdx, rdi
call fcn.180050b60
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
comiss xmm0, xmm12
jbe 0x18004e672
mov r8d, 3
mov rdx, rdi
mov rcx, qword [rdi + 0x3c40]
call fcn.180050b60
mov rbx, qword [rdi + 0x3c40]
mov r8d, 3
mov rdx, rdi
mov rcx, rbx
call fcn.1800508e0
mov r8d, 3
mov rdx, rdi
mov rcx, rbx
call fcn.180050b60
mov r8d, 3
mov rdx, rdi
mov rcx, qword [rdi + 0x3c40]
call fcn.180050b60
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
movq r9, xmm3
lea r8, str._.0f
mov edx, 0xc8
lea rcx, [rbp + 0xe0]
call fcn.18004b9b0
movaps xmm0, xmmword [0x180064e80]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r8d, eax
movss xmm1, dword [rbp + 0x304]
addss xmm1, dword [0x1800649d4]
movss xmm0, dword [rbp + 0x300]
addss xmm0, xmm13
movss dword [rbp + 0x80], xmm0
movss dword [rbp + 0x84], xmm1
test eax, 0xff000000
je 0x18004e711
lea rax, [rbp + 0xe0]
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x18004e610
lea rdx, [rbp + 0xe0]
add rdx, rcx
lea rax, [rbp + 0xe0]
cmp rax, rdx
je 0x18004e711
mov rax, qword [r13 + 0x38]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp + 0x80]
mov rcx, qword [rax + 8]
jmp 0x18004e6fa
movaps xmm0, xmmword [0x180064d60]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
movss xmm1, dword [rbp + 0x304]
addss xmm1, dword [0x1800649d4]
movss xmm0, dword [rbp + 0x300]
addss xmm0, xmm13
movss dword [rbp + 0x88], xmm0
movss dword [rbp + 0x8c], xmm1
test eax, 0xff000000
je 0x18004e711
mov rcx, qword [r13 + 0x38]
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
lea rdx, [0x180063261]
mov qword [rsp + 0x38], rdx
lea rdx, [0x180063260]
mov qword [rsp + 0x30], rdx
lea rdx, [rbp - 0x80]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x88]
mov rcx, qword [rcx + 8]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
movaps xmm2, xmm6
mov rdx, r13
call fcn.180043430
mov dword [rbp + 0x90], 0x3f800000
mov dword [rbp + 0x94], 0x3f800000
mov qword [rbp + 0x98], 0
movss xmm3, dword [rbp + 0x304]
subss xmm3, xmm9
movaps xmm2, xmm3
addss xmm2, xmm7
movss xmm1, dword [rbp + 0x300]
addss xmm1, xmm8
movaps xmm0, xmm1
addss xmm0, xmm7
movss dword [rbp + 0xa0], xmm0
movss dword [rbp + 0xa4], xmm2
movss dword [rbp + 0xa8], xmm1
movss dword [rbp + 0xac], xmm3
mov rdx, qword [rbp + 0x1d8]
cmp rdx, qword [r13 + 0x98]
setne bl
je 0x18004e793
mov rcx, r13
call fcn.18003cf40
mov edx, 6
lea r8d, [rdx - 2]
mov rcx, r13
call fcn.18003cfc0
mov dword [rsp + 0x28], 0xffffffff
lea rax, [rbp + 0x90]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x98]
lea r8, [rbp + 0xa0]
lea rdx, [rbp + 0xa8]
mov rcx, r13
call fcn.18003d0e0
test bl, bl
je 0x18004e804
movsxd rcx, dword [r13 + 0x68]
lea eax, [rcx - 1]
mov dword [r13 + 0x68], eax
test eax, eax
jne 0x18004e7ec
xor eax, eax
jmp 0x18004e7f5
mov rax, qword [r13 + 0x70]
mov rax, qword [rax + rcx*8 - 0x10]
mov qword [r13 + 0x98], rax
mov rcx, r13
call fcn.18003ccf0
mov r8d, 4
mov rdx, rdi
mov rcx, qword [rdi + 0x3c48]
call fcn.180050b60
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
ucomiss xmm0, xmm12
jp 0x18004e82a
je 0x18004e99f
movaps xmm0, xmmword [0x180064c90]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
movss xmm3, dword [rbp + 0x304]
subss xmm3, xmm9
movaps xmm2, xmm3
addss xmm2, xmm10
movss xmm1, dword [rbp + 0x300]
addss xmm1, xmm8
movaps xmm0, xmm1
addss xmm0, xmm10
movss dword [rbp + 0xb8], xmm0
movss dword [rbp + 0xbc], xmm2
movss dword [rbp + 0x40], xmm1
movss dword [rbp + 0x44], xmm3
mov dword [rsp + 0x28], 0
movss dword [rsp + 0x20], xmm12
mov r9d, eax
lea r8, [rbp + 0xb8]
lea rdx, [rbp + 0x40]
mov rcx, r13
call fcn.18003f7d0
mov r8d, 4
mov rdx, rdi
mov rcx, qword [rdi + 0x3c48]
call fcn.180050b60
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
movq r9, xmm3
lea r8, str._.0f
mov edx, 0xc8
lea rcx, [rbp + 0xe0]
call fcn.18004b9b0
movaps xmm0, xmmword [0x180064e40]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r8d, eax
movss xmm1, dword [rbp + 0x304]
subss xmm1, xmm13
movss xmm0, dword [rbp + 0x300]
addss xmm0, xmm11
movss dword [rbp + 0x50], xmm0
movss dword [rbp + 0x54], xmm1
test eax, 0xff000000
je 0x18004e99f
lea rax, [rbp + 0xe0]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x18004e930
lea rdx, [rbp + 0xe0]
add rdx, rcx
lea rax, [rbp + 0xe0]
cmp rax, rdx
je 0x18004e99f
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp + 0x50]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.180043430
mov dword [rbp - 0x10], 0x3f800000
mov dword [rbp - 0xc], 0x3f800000
mov qword [rbp], 0
movss xmm3, dword [rbp + 0x304]
subss xmm3, xmm6
movaps xmm2, xmm3
addss xmm2, xmm7
movss xmm1, dword [rbp + 0x300]
addss xmm1, xmm8
movaps xmm0, xmm1
addss xmm0, xmm7
movss dword [rbp + 0x10], xmm0
movss dword [rbp + 0x14], xmm2
movss dword [rbp + 0x20], xmm1
movss dword [rbp + 0x24], xmm3
mov rdx, qword [rbp + 0x1e0]
cmp rdx, qword [r13 + 0x98]
setne bl
je 0x18004ea0b
mov rcx, r13
call fcn.18003cf40
mov edx, 6
lea r8d, [rdx - 2]
mov rcx, r13
call fcn.18003cfc0
mov dword [rsp + 0x28], 0xffffffff
lea rax, [rbp - 0x10]
mov qword [rsp + 0x20], rax
lea r9, [rbp]
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x20]
mov rcx, r13
call fcn.18003d0e0
test bl, bl
je 0x18004ea70
movsxd rcx, dword [r13 + 0x68]
lea eax, [rcx - 1]
mov dword [r13 + 0x68], eax
test eax, eax
jne 0x18004ea58
xor eax, eax
jmp 0x18004ea61
mov rax, qword [r13 + 0x70]
mov rax, qword [rax + rcx*8 - 0x10]
mov qword [r13 + 0x98], rax
mov rcx, r13
call fcn.18003ccf0
mov r8d, 5
mov rdx, rdi
mov rcx, qword [rdi + 0x3c50]
call fcn.180050b60
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
ucomiss xmm0, xmm12
jp 0x18004ea96
je 0x18004ec01
movaps xmm0, xmmword [0x180064c90]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
movss xmm3, dword [rbp + 0x304]
subss xmm3, xmm6
movaps xmm2, xmm3
addss xmm2, xmm10
movss xmm1, dword [rbp + 0x300]
addss xmm1, xmm8
movaps xmm0, xmm1
addss xmm0, xmm10
movss dword [rbp - 0x30], xmm0
movss dword [rbp - 0x2c], xmm2
movss dword [rbp - 0x50], xmm1
movss dword [rbp - 0x4c], xmm3
mov dword [rsp + 0x28], 0
movss dword [rsp + 0x20], xmm12
mov r9d, eax
lea r8, [rbp - 0x30]
lea rdx, [rbp - 0x50]
mov rcx, r13
call fcn.18003f7d0
mov r8d, 5
mov rdx, rdi
mov rcx, qword [rdi + 0x3c50]
call fcn.180050b60
xorps xmm3, xmm3
cvtss2sd xmm3, xmm0
movq r9, xmm3
lea r8, str._.0f
mov edx, 0xc8
lea rcx, [rbp + 0xe0]
call fcn.18004b9b0
movaps xmm0, xmmword [0x180064e40]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r8d, eax
movss xmm1, dword [rbp + 0x304]
subss xmm1, xmm15
movss xmm0, dword [rbp + 0x300]
addss xmm0, xmm11
movss dword [rbp - 0x60], xmm0
movss dword [rbp - 0x5c], xmm1
test eax, 0xff000000
je 0x18004ec01
lea rax, [rbp + 0xe0]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x18004eb92
lea rdx, [rbp + 0xe0]
add rdx, rcx
lea rax, [rbp + 0xe0]
cmp rax, rdx
je 0x18004ec01
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm12
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp - 0x60]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.180043430
lea rbx, [0x180063275]
movabs r8, 0x140243080
add rsi, 0x58
cmp rsi, r14
jne 0x18004ddc0
mov ecx, dword [0x18006f358]
mov rax, qword gs:[0x58]
mov r12d, 4
mov r15, qword [rax + rcx*8]
mov qword [rbp - 0x30], r15
mov eax, dword [r15 + r12]
cmp dword [0x18006fcac], eax
jle 0x18004ec75
lea rcx, [0x18006fcac]
call fcn.1800564a8
cmp dword [0x18006fcac], 0xffffffff
jne 0x18004ec75
lea rcx, [0x180059210]
call fcn.1800562fc
lea rcx, [0x18006fcac]
call fcn.180056448
mov rdx, qword [0x18006fbf8]
mov qword [0x18006fc00], rdx
movabs rax, 0x14197d318
mov rax, qword [rax]
mov rsi, qword [rax + 8]
mov edi, dword [rax + 0x10]
xor ebx, ebx
test edi, edi
je 0x18004ecf2
nop dword [rax]
lea eax, [rbx*8]
mov rax, qword [rax + rsi]
mov qword [rbp + 0x300], rax
cmp rdx, qword [0x18006fc08]
je 0x18004ecd2
mov qword [rdx], rax
mov rdx, qword [0x18006fc00]
add rdx, 8
mov qword [0x18006fc00], rdx
jmp 0x18004ecec
lea r8, [rbp + 0x300]
lea rcx, [0x18006fbf8]
call fcn.180014a10
mov rdx, qword [0x18006fc00]
inc ebx
cmp ebx, edi
jb 0x18004eca0
xor r14d, r14d
sub rdx, qword [0x18006fbf8]
sar rdx, 3
test rdx, rdx
je 0x18004f2ea
xor esi, esi
movss xmm11, dword [0x180064a74]
movss xmm12, dword [0x180064a58]
movabs r12, 0x141980228
movabs r15, 0x14020a870
mov rax, qword [0x18006fbf8]
mov rbx, qword [rsi + rax]
mov rcx, rbx
movabs rax, 0x140243080
call rax
test al, al
je 0x18004f2bb
movss xmm0, dword [rbx + 0x1068]
xorps xmm8, xmm8
comiss xmm0, xmm8
jbe 0x18004f2bb
mov rax, qword [0x18006fbf8]
mov rcx, qword [rsi + rax]
cmp byte [rcx + 0x2f8], 0
je 0x18004f2bb
movabs rax, 0x1419a16b0
mov rax, qword [rax]
mov edx, dword [rax + 0x3c]
cmp edx, 0x64
jne 0x18004ed9f
cmp dword [rcx + 0x3c], 0xc8
jmp 0x18004edaf
cmp edx, 0xc8
jne 0x18004ef74
cmp dword [rcx + 0x3c], 0x64
jne 0x18004ef74
mov rax, qword [0x18006f068]
cmp byte [rax + 8], 0
je 0x18004ef74
movsd xmm7, qword [rcx + 0x24c]
mov eax, dword [rcx + 0x254]
mov dword [rbp + 0x18], eax
movss xmm6, dword [rcx + 0x17d4]
call r15
movaps xmm8, xmm0
addss xmm8, xmm6
xor edi, edi
movaps xmm1, xmm7
shufps xmm1, xmm1, 0x55
movsd qword [rbp + 0x10], xmm7
movss dword [rbp + 0x24], xmm1
movss xmm9, dword [rbp + 0x18]
movss xmm10, dword [rbp + 0x10]
movabs r15, 0x140f3eb00
nop dword [rax]
nop dword [rax + rax]
movd xmm7, edi
cvtdq2ps xmm7, xmm7
mulss xmm7, dword [0x1800649f4]
mulss xmm7, dword [0x1800649d0]
divss xmm7, dword [0x180064a6c]
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm6, xmm0
mulss xmm6, xmm8
addss xmm6, xmm9
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm0, xmm8
addss xmm0, xmm10
movss dword [rbp + 0x28], xmm6
movsd xmm1, qword [rbp + 0x20]
movss xmm1, xmm0
movsd qword [rbp + 0x20], xmm1
movsd qword [rbp], xmm1
mov eax, dword [rbp + 0x28]
mov dword [rbp + 8], eax
mov rcx, qword [r12]
add rcx, 0x270
lea r8, [rbp - 0x10]
lea rdx, [rbp]
call r15
movss xmm0, dword [rbp - 0x10]
movss dword [rbp + 0x310], xmm0
movss xmm1, dword [rbp - 0xc]
movss dword [rbp + 0x314], xmm1
mov r8d, dword [r13 + 0x7c]
mov eax, dword [r13 + 0x78]
cmp eax, r8d
jne 0x18004eeef
lea ecx, [rax + 1]
test r8d, r8d
je 0x18004eed6
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x18004eedb
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [r13 + 0x78]
call fcn.180034bc0
mov eax, dword [r13 + 0x78]
movsxd rdx, eax
mov rcx, qword [r13 + 0x80]
mov rax, qword [rbp + 0x310]
mov qword [rcx + rdx*8], rax
mov r8d, dword [r13 + 0x78]
inc r8d
mov dword [r13 + 0x78], r8d
inc edi
cmp edi, 0x63
jle 0x18004ee20
mov rax, qword [0x18006f068]
movups xmm0, xmmword [rax + 0x5c]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
movss xmm9, dword [0x1800649d4]
movss dword [rsp + 0x28], xmm9
mov dword [rsp + 0x20], 1
mov r9d, eax
mov rdx, qword [r13 + 0x80]
mov rcx, r13
call fcn.18003d230
mov dword [r13 + 0x78], 0
xorps xmm8, xmm8
movabs r15, 0x14020a870
jmp 0x18004ef7d
movss xmm9, dword [0x1800649d4]
mov rax, qword [0x18006fbf8]
mov rcx, qword [rsi + rax]
add rcx, 0x44f8
call fcn.180055d40
mov rcx, rax
movabs rax, qword [0x141980228]
lea r8, [rax + 0x270]
lea rdx, [rbp + 0x300]
movabs rax, 0x14094a5e0
call rax
xor edx, edx
mov r8d, 0xc8
lea rcx, [rbp + 0xe0]
call sub.VCRUNTIME140.dll_memset
movss xmm0, dword [rbp + 0x304]
addss xmm0, xmm14
movss dword [rbp + 0x304], xmm0
mov rax, qword [0x18006f068]
cmp byte [rax + 4], 0
je 0x18004f2bb
mov rax, qword [0x18006fbf8]
mov rbx, qword [rsi + rax]
movss xmm3, dword [rbx + 0x1068]
cvtps2pd xmm3, xmm3
movq r9, xmm3
lea r8, str.H:_.0f
mov edx, 0xc8
lea rcx, [rbp + 0xe0]
call fcn.18004b9b0
movaps xmm0, xmmword [0x180064e40]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r8d, eax
movss xmm1, dword [rbp + 0x304]
subss xmm1, xmm13
movss xmm0, dword [rbp + 0x300]
subss xmm0, xmm11
movss dword [rbp + 0x318], xmm0
movss dword [rbp + 0x31c], xmm1
test eax, 0xff000000
je 0x18004f0f4
lea rax, [rbp + 0xe0]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rax + rcx], 0
jne 0x18004f082
lea rdx, [rbp + 0xe0]
add rdx, rcx
lea rax, [rbp + 0xe0]
cmp rax, rdx
je 0x18004f0f4
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rdx
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp + 0x318]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.180043430
movss xmm3, dword [rbx + 0x338]
cvtps2pd xmm3, xmm3
movq r9, xmm3
lea r8, str.M:_.0f
mov edx, 0xc8
lea rcx, [rbp + 0xe0]
call fcn.18004b9b0
movaps xmm0, xmmword [0x180064e40]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r8d, eax
movss xmm7, dword [rbp + 0x304]
movaps xmm1, xmm7
subss xmm1, xmm15
movss xmm6, dword [rbp + 0x300]
movaps xmm0, xmm6
subss xmm0, xmm11
movss dword [rbp - 0x60], xmm0
movss dword [rbp - 0x5c], xmm1
test eax, 0xff000000
je 0x18004f1f5
lea rcx, [rbp + 0xe0]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x18004f176
lea rcx, [rbp + 0xe0]
add rcx, rax
lea rax, [rbp + 0xe0]
cmp rax, rcx
je 0x18004f1f5
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rcx
lea rcx, [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp - 0x60]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.180043430
movss xmm7, dword [rbp + 0x304]
movss xmm6, dword [rbp + 0x300]
mov rax, qword [0x18006f068]
cmp byte [rax + 1], 1
je 0x18004f2bb
cmp byte [rax + 3], 1
je 0x18004f2bb
lea r8, [rbx + 0x4390]
cmp dword [r8 + 0x18], 0x10
jbe 0x18004f221
mov r8, qword [r8]
movaps xmm0, xmmword [0x180064d60]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r9d, eax
addss xmm7, xmm9
subss xmm6, xmm12
movss dword [rbp - 0x50], xmm6
movss dword [rbp - 0x4c], xmm7
test eax, 0xff000000
je 0x18004f2bb
mov rcx, 0xffffffffffffffff
nop word [rax + rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x18004f260
add rcx, r8
cmp r8, rcx
je 0x18004f2bb
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm8
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], r8
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r9d
lea r9, [rbp - 0x50]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.180043430
inc r14d
add rsi, 8
mov rcx, qword [0x18006fc00]
sub rcx, qword [0x18006fbf8]
sar rcx, 3
movsxd rax, r14d
cmp rax, rcx
jb 0x18004ed31
mov r15, qword [rbp - 0x30]
mov r12d, 4
mov eax, dword [r15 + r12]
cmp dword [0x18006fcb0], eax
jle 0x18004f323
lea rcx, [0x18006fcb0]
call fcn.1800564a8
cmp dword [0x18006fcb0], 0xffffffff
jne 0x18004f323
lea rcx, [0x1800591a0]
call fcn.1800562fc
lea rcx, [0x18006fcb0]
call fcn.180056448
mov r14, qword [0x18006fbe0]
mov rbx, r14
mov qword [0x18006fbe8], rbx
movabs rax, 0x1419838e8
mov rax, qword [rax]
mov r15, qword [rax + 8]
mov esi, dword [rax + 0x10]
xor edi, edi
test esi, esi
je 0x18004f3ac
nop
lea eax, [rdi*8]
mov rax, qword [rax + r15]
mov qword [rbp + 0x300], rax
cmp rbx, qword [0x18006fbf0]
je 0x18004f382
mov qword [rbx], rax
mov rbx, qword [0x18006fbe8]
add rbx, 8
mov qword [0x18006fbe8], rbx
jmp 0x18004f39f
lea r8, [rbp + 0x300]
mov rdx, rbx
lea rcx, [0x18006fbe0]
call fcn.180014a10
mov rbx, qword [0x18006fbe8]
inc edi
cmp edi, esi
jb 0x18004f350
mov r14, qword [0x18006fbe0]
xor r12d, r12d
mov dword [rbp + 0x300], r12d
mov rax, rbx
sub rax, r14
sar rax, 3
xorps xmm14, xmm14
test rax, rax
je 0x18004f734
xor r15d, r15d
movsd xmm11, qword [0x1800649d8]
movss xmm13, dword [0x180064ab0]
movss xmm12, dword [0x180064aa4]
movss xmm10, dword [0x180064aa0]
nop dword [rax]
nop dword [rax + rax]
mov rdi, qword [r15 + r14]
movabs rax, 0x1419a16b0
mov rsi, qword [rax]
mov eax, dword [rsi + 0x3c]
cmp eax, 0x64
jne 0x18004f422
cmp dword [rdi + 0x3c], 0xc8
jmp 0x18004f431
cmp eax, 0xc8
jne 0x18004f710
cmp dword [rdi + 0x3c], 0x64
jne 0x18004f710
mov rax, qword [0x18006f068]
cmp byte [rax + 9], 0
je 0x18004f710
movss xmm0, dword [rdi + 0x1068]
comiss xmm0, xmm14
jbe 0x18004f710
movsd xmm1, qword [rdi + 0x24c]
mov eax, dword [rdi + 0x254]
mov dword [rbp + 0x18], eax
movsd xmm0, qword [rsi + 0x24c]
mov eax, dword [rsi + 0x254]
mov dword [rbp + 0x28], eax
movsd qword [rbp + 0x20], xmm0
subss xmm0, xmm1
cvtss2sd xmm0, xmm0
movaps xmm1, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movss xmm1, dword [rbp + 0x28]
subss xmm1, dword [rbp + 0x18]
cvtps2pd xmm0, xmm1
movaps xmm1, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm0, xmm6
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x18004f4be
sqrtsd xmm0, xmm0
jmp 0x18004f4c3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
cvtsd2ss xmm0, xmm0
comiss xmm13, xmm0
jb 0x18004f710
movsd xmm1, qword [rdi + 0x24c]
mov eax, dword [rdi + 0x254]
mov dword [rbp - 8], eax
movsd xmm0, qword [rsi + 0x24c]
mov eax, dword [rsi + 0x254]
mov dword [rbp + 8], eax
movsd qword [rbp], xmm0
movsd qword [rbp - 0x10], xmm1
subss xmm0, xmm1
cvtss2sd xmm0, xmm0
movaps xmm1, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm6, xmm0
movss xmm1, dword [rbp + 8]
subss xmm1, dword [rbp - 8]
cvtps2pd xmm0, xmm1
movaps xmm1, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm0, xmm6
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x18004f53a
sqrtsd xmm0, xmm0
jmp 0x18004f53f
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
cvtsd2ss xmm0, xmm0
comiss xmm12, xmm0
jb 0x18004f55a
movaps xmm0, xmmword [0x180064d20]
movups xmmword [rbp - 0x80], xmm0
lea rsi, [rbp - 0x80]
jmp 0x18004f56f
movaps xmm0, xmmword [0x180064d50]
movups xmmword [rbp + 0xb8], xmm0
lea rsi, [rbp + 0xb8]
movsd xmm1, qword [rdi + 0x24c]
mov eax, dword [rdi + 0x254]
mov dword [rbp - 0x48], eax
xor edi, edi
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
movsd qword [rbp - 0x50], xmm1
movss dword [rbp - 0x5c], xmm0
lea rbx, [r13 + 0x78]
movss xmm8, dword [rbp - 0x48]
movss xmm9, dword [rbp - 0x50]
movabs r13, 0x141980228
movabs r12, 0x140f3eb00
nop word [rax + rax]
movd xmm7, edi
cvtdq2ps xmm7, xmm7
mulss xmm7, dword [0x1800649f4]
mulss xmm7, dword [0x1800649d0]
divss xmm7, dword [0x180064a6c]
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm6, xmm0
mulss xmm6, xmm10
addss xmm6, xmm8
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm0, xmm10
addss xmm0, xmm9
movss dword [rbp - 0x58], xmm6
movsd xmm1, qword [rbp - 0x60]
movss xmm1, xmm0
movsd qword [rbp - 0x60], xmm1
movsd qword [rbp + 0x50], xmm1
mov eax, dword [rbp - 0x58]
mov dword [rbp + 0x58], eax
mov rcx, qword [r13]
add rcx, 0x270
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x50]
call r12
movss xmm0, dword [rbp + 0x40]
movss dword [rbp + 0x310], xmm0
movss xmm1, dword [rbp + 0x44]
movss dword [rbp + 0x314], xmm1
mov r8d, dword [rbx + 4]
mov eax, dword [rbx]
cmp eax, r8d
jne 0x18004f68a
lea ecx, [rax + 1]
test r8d, r8d
je 0x18004f674
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x18004f679
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, rbx
call fcn.180034bc0
mov eax, dword [rbx]
movsxd rdx, eax
mov rcx, qword [rbx + 8]
mov rax, qword [rbp + 0x310]
mov qword [rcx + rdx*8], rax
mov r8d, dword [rbx]
inc r8d
mov dword [rbx], r8d
inc edi
cmp edi, 0x63
jle 0x18004f5c0
movups xmm0, xmmword [rsi]
movups xmmword [rbp + 0xa8], xmm0
lea rcx, [rbp + 0xa8]
call fcn.180020750
movss xmm0, dword [0x1800649d4]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, eax
mov r13, qword [rbp + 0x308]
mov rdx, qword [r13 + 0x80]
mov rcx, r13
call fcn.18003d230
mov dword [rbx], 0
mov rbx, qword [0x18006fbe8]
mov r14, qword [0x18006fbe0]
mov r12d, dword [rbp + 0x300]
inc r12d
mov dword [rbp + 0x300], r12d
add r15, 8
mov rcx, rbx
sub rcx, r14
sar rcx, 3
movsxd rax, r12d
cmp rax, rcx
jb 0x18004f400
mov rax, qword [rbp - 0x30]
mov ecx, 4
mov eax, dword [rax + rcx]
cmp dword [0x18006fca8], eax
jle 0x18004f775
lea rcx, [0x18006fca8]
call fcn.1800564a8
cmp dword [0x18006fca8], 0xffffffff
jne 0x18004f775
lea rcx, [0x180059130]
call fcn.1800562fc
lea rcx, [0x18006fca8]
call fcn.180056448
mov rax, qword [0x18006fbc8]
mov qword [0x18006fbd0], rax
movabs rax, 0x141980268
mov rax, qword [rax]
mov rsi, qword [rax + 8]
mov edi, dword [rax + 0x10]
xor ebx, ebx
test edi, edi
je 0x18004f7ef
nop dword [rax]
lea eax, [rbx*8]
mov rax, qword [rax + rsi]
mov qword [rbp + 0x300], rax
mov rcx, qword [0x18006fbd0]
cmp rcx, qword [0x18006fbd8]
je 0x18004f7cf
mov qword [rcx], rax
add qword [0x18006fbd0], 8
jmp 0x18004f7e9
lea r8, [rbp + 0x300]
mov rdx, qword [0x18006fbd0]
lea rcx, [0x18006fbc8]
call fcn.180014a10
inc ebx
cmp ebx, edi
jb 0x18004f7a0
xor r12d, r12d
mov rax, qword [0x18006fbd0]
sub rax, qword [0x18006fbc8]
sar rax, 3
test rax, rax
je 0x180050129
xor r15d, r15d
movabs rsi, 0x100000001b3
movss xmm7, dword [0x180064a38]
movss xmm8, dword [0x180064a40]
movss xmm9, dword [0x180064a48]
mov rax, qword [0x18006fbc8]
mov rbx, qword [rax + r15*8]
movabs rdi, 0x1419a16b0
mov rcx, qword [rdi]
mov eax, dword [rcx + 0x3c]
cmp eax, 0x64
jne 0x18004f85d
cmp dword [rbx + 0x3c], 0xc8
jmp 0x18004f86c
cmp eax, 0xc8
jne 0x18004fa18
cmp dword [rbx + 0x3c], 0x64
jne 0x18004fa18
mov rax, qword [0x18006f068]
cmp byte [rax + 5], 0
je 0x18004fa18
movss xmm6, dword [rcx + 0x16e8]
addss xmm6, dword [rcx + 0x178c]
mov rcx, rbx
movabs rax, 0x140243080
call rax
test al, al
je 0x18004fa18
movss xmm0, dword [rbx + 0x1068]
comiss xmm0, xmm14
jbe 0x18004fa18
mov rax, qword [0x18006fbc8]
mov rcx, qword [rax + r15*8]
comiss xmm6, dword [rcx + 0x1068]
jb 0x18004fa18
movss xmm0, dword [rcx + 0x178c]
comiss xmm0, dword [0x180064a18]
jbe 0x18004fa18
add rcx, 0x44f8
call fcn.180055d40
mov rcx, rax
movabs rax, qword [0x141980228]
lea r8, [rax + 0x270]
lea rdx, [rbp + 0x308]
movabs rax, 0x14094a5e0
call rax
mov rbx, qword [0x18006f9d0]
test rbx, rbx
je 0x18004fa18
mov dword [rbp + 0x310], 0x3f800000
mov dword [rbp + 0x314], 0x3f800000
mov qword [rbp + 0x318], 0
movss xmm3, dword [rbp + 0x30c]
subss xmm3, dword [0x180064a50]
movaps xmm2, xmm3
addss xmm2, xmm7
movss xmm1, dword [rbp + 0x308]
subss xmm1, xmm8
movaps xmm0, xmm1
addss xmm0, xmm9
movss dword [rbp - 0x60], xmm0
movss dword [rbp - 0x5c], xmm2
movss dword [rbp - 0x50], xmm1
movss dword [rbp - 0x4c], xmm3
mov rdi, qword [r13 + 0x98]
cmp rbx, rdi
je 0x18004f9a2
mov rdx, rbx
mov rcx, r13
call fcn.18003cf40
mov edx, 6
lea r8d, [rdx - 2]
mov rcx, r13
call fcn.18003cfc0
mov dword [rsp + 0x28], 0xffffffff
lea rax, [rbp + 0x310]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x318]
lea r8, [rbp - 0x60]
lea rdx, [rbp - 0x50]
mov rcx, r13
call fcn.18003d0e0
cmp rbx, rdi
je 0x18004fa0e
movsxd rcx, dword [r13 + 0x68]
lea eax, [rcx - 1]
mov dword [r13 + 0x68], eax
test eax, eax
jne 0x18004f9f6
xor eax, eax
jmp 0x18004f9ff
mov rax, qword [r13 + 0x70]
mov rax, qword [rax + rcx*8 - 0x10]
mov qword [r13 + 0x98], rax
mov rcx, r13
call fcn.18003ccf0
movabs rdi, 0x1419a16b0
mov rax, qword [0x18006f068]
movabs rbx, 0xcbf29ce484222325
cmp byte [rax + 0x14], 0
je 0x18004fb4a
mov rax, qword [0x18006fbc8]
mov r9, qword [rax + r15*8]
mov r8, qword [r9 + 0x4140]
mov rdx, rbx
nop dword [rax + rax]
movsx rcx, byte [r8]
lea r8, [r8 + 1]
xor rdx, rcx
imul rdx, rsi
test cl, cl
jne 0x18004fa50
mov rcx, qword [0x18006fb60]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x18004fa8c
cmp qword [rax + 0x20], rdx
jge 0x18004fa80
mov rax, qword [rax + 0x10]
jmp 0x18004fa86
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x18004fa74
cmp byte [rcx + 0x19], 0
jne 0x18004fb4a
cmp rdx, qword [rcx + 0x20]
jl 0x18004fb4a
cmp rcx, qword [0x18006fb60]
je 0x18004fb4a
mov rcx, qword [0x18006fb30]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x18004fad8
nop
cmp qword [rax + 0x20], r9
jae 0x18004facc
mov rax, qword [rax + 0x10]
jmp 0x18004fad2
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x18004fac0
cmp byte [rcx + 0x19], 0
jne 0x18004fae8
cmp r9, qword [rcx + 0x20]
jb 0x18004fae8
mov al, 1
jmp 0x18004faea
xor al, al
test al, al
jne 0x18004fb4a
mov qword [rbp - 0x80], rdx
movsd xmm1, qword [r9 + 0x24c]
mov eax, dword [r9 + 0x254]
mov dword [rbp - 0x70], eax
mov dword [rbp - 0x6c], 0
mov qword [rbp + 0xb8], r9
movups xmm0, xmmword [rbp - 0x80]
unpcklpd xmm0, xmm1
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp + 0xc0], xmm0
movsd xmm0, qword [rbp - 0x70]
movsd qword [rbp + 0xd0], xmm0
lea r8, [rbp + 0xb8]
lea rdx, [rbp + 0x50]
lea rcx, [0x18006fb30]
call fcn.180051010
mov rax, qword [0x18006f068]
cmp byte [rax + 0x13], 0
je 0x180050105
mov r14, qword [rdi]
test r14, r14
je 0x18004fb85
mov rdx, qword [r14 + 0x4140]
mov rdi, rbx
nop dword [rax]
movsx rcx, byte [rdx]
lea rdx, [rdx + 1]
xor rdi, rcx
imul rdi, rsi
test cl, cl
jne 0x18004fb70
jmp 0x18004fb87
xor edi, edi
xor r9d, r9d
lea r8, [rbp + 0x300]
xor edx, edx
lea rcx, [0x18006fc10]
call qword [sym.imp.KERNEL32.dll_InitOnceBeginInitialize]
test eax, eax
je 0x1800501a1
cmp dword [rbp + 0x300], 0
je 0x18004fc3a
test r14, r14
je 0x18004fc20
mov rax, qword [0x18006f068]
cmp dword [rax + 0x28], 0
jbe 0x18004fc20
mov r9, qword [r14 + 0x4140]
mov r8, rbx
movsx rdx, byte [r9]
lea r9, [r9 + 1]
xor r8, rdx
imul r8, rsi
test dl, dl
jne 0x18004fbd1
mov qword [rbp + 0x20], r8
lea rdx, [rbp + 0x20]
mov rcx, qword [0x18006f070]
call fcn.180017980
mov rcx, qword [0x18006f068]
mov edx, dword [rcx + 0x28]
dec edx
lea r9, [rdx + rdx*2]
add r9, r9
mov rdx, qword [rax]
mov r8d, dword [rdx + r9*8 + 0x28]
mov rdx, qword [rdx + r9*8]
mov rcx, r14
call fcn.180055a00
nop
xor r8d, r8d
xor edx, edx
lea rcx, [0x18006fc10]
call qword [sym.imp.KERNEL32.dll_InitOnceComplete]
test eax, eax
je 0x1800501a1
mov rcx, qword [r14 + 0x4130]
sub rcx, qword [r14 + 0x4128]
movabs rax, 0xe38e38e38e38e39
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x18004fcd5
mov r8, qword [r14 + 0x4140]
mov rdx, rbx
nop
movsx rcx, byte [r8]
lea r8, [r8 + 1]
xor rdx, rcx
imul rdx, rsi
test cl, cl
jne 0x18004fc70
movabs rax, 0xf984545cfa78101f
cmp rdx, rax
je 0x180050105
movabs rax, 0x2d0a42b1a4f18a79
cmp rdx, rax
je 0x180050105
mov rax, qword [r14 + 0x4128]
mov edx, dword [r14 + 0x4160]
cmp dword [rax + 0x20], edx
je 0x18004fcd5
mov dword [rax + 0x20], edx
mov dl, 1
lea rcx, [r14 + 0x4128]
movabs rax, 0x1401a4050
call rax
nop
mov rax, qword [0x18006fbc8]
mov rcx, qword [rax + r15*8]
mov r8, qword [rcx + 0x4140]
nop word [rax + rax]
movsx rdx, byte [r8]
lea r8, [r8 + 1]
xor rbx, rdx
imul rbx, rsi
test dl, dl
jne 0x18004fcf0
movabs rax, 0x14020d910
call rax
mov rsi, rax
test rax, rax
je 0x180050068
mov rcx, qword [0x18006f068]
cmp byte [rcx + 0x15], 0
je 0x18004fe4a
movabs rax, 0xdccb83f12e64ce0
cmp rbx, rax
je 0x18004fd4e
movabs rax, 0x80dccc539a84ddb5
cmp rbx, rax
jne 0x18004fe4a
mov rax, qword [0x18006fbc8]
mov rcx, qword [rax + r15*8]
movsd xmm0, qword [rcx + 0x24c]
movsd qword [rbp], xmm0
mov eax, dword [rcx + 0x254]
mov dword [rbp + 8], eax
movabs rax, qword [0x141980228]
lea rcx, [rax + 0x270]
lea r8, [rbp - 0x10]
lea rdx, [rbp]
movabs rax, 0x140f3eb00
call rax
movaps xmm0, xmmword [0x180064e80]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r8d, eax
movss xmm0, dword [rbp - 0x10]
movss dword [rbp - 0x30], xmm0
movss xmm1, dword [rbp - 0xc]
movss dword [rbp - 0x2c], xmm1
lea rdx, str.Timo
movabs rax, 0xdccb83f12e64ce0
cmp rbx, rax
lea rax, str.Clown
cmove rdx, rax
test r8d, 0xff000000
je 0x18004fe4a
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp byte [rdx + rcx], 0
jne 0x18004fdf0
add rcx, rdx
cmp rdx, rcx
je 0x18004fe4a
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm14
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rdx
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r8d
lea r9, [rbp - 0x30]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.180043430
movabs rax, 0x37d1bfa7d195ebf9
cmp rbx, rax
je 0x18004ff1b
movabs rax, 0x92fe97d6caa88c20
cmp rbx, rax
je 0x18004ff1b
movabs rax, 0xa854d43ddb55ddcc
cmp rbx, rax
je 0x18004ff1b
movabs rax, 0xb8f3ad4931029355
cmp rbx, rax
je 0x18004ff1b
movabs rax, 0xaedcd71796ade290
cmp rbx, rax
movabs rax, 0xdb76082138fdee7f
je 0x18004ff25
cmp rbx, rax
je 0x18004ff25
movabs rax, 0xf17870527758213f
cmp rbx, rax
je 0x1800500fb
movabs rax, 0x8499db0ed7bb81cf
cmp rbx, rax
je 0x1800500fb
mov edx, dword [rsi + 0x4160]
mov rax, qword [0x18006fbc8]
mov rcx, qword [rax + r15*8]
cmp edx, 0xffffffff
je 0x1800500fb
add rcx, 0x4128
cmp dword [rcx + 0x38], edx
je 0x1800500fb
mov dword [rcx + 0x38], edx
mov dl, 1
movabs rax, 0x1401a4050
call rax
nop
jmp 0x1800500fb
movabs rax, 0xdb76082138fdee7f
test r14, r14
je 0x18004ff33
cmp rsi, r14
jne 0x1800500fb
cmp rbx, rax
jne 0x180050023
movabs rax, 0x222b948fbf568318
cmp rdi, rax
mov rax, qword [0x18006fbc8]
mov rcx, qword [rax + r15*8]
jne 0x18004fff7
mov r8d, dword [rsi + 0x4160]
cmp r8d, 0xffffffff
je 0x1800500fb
add rcx, 0x4128
cmp dword [rcx + 0x38], r8d
je 0x1800500fb
mov dword [rcx + 0x38], r8d
mov rax, qword [rcx]
mov qword [rcx + 8], rax
mov dword [rsp + 0x80], 1
mov byte [rsp + 0x78], 0
mov dword [rsp + 0x70], 0
lea rdi, [0x180064518]
mov qword [rsp + 0x68], rdi
mov dword [rsp + 0x60], 0
mov qword [rsp + 0x58], rdi
mov byte [rsp + 0x50], 0xff
mov byte [rsp + 0x48], 0
mov byte [rsp + 0x40], 1
mov byte [rsp + 0x38], 0
mov byte [rsp + 0x30], 0
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
xor r9d, r9d
lea rdx, str.Yone
movabs rax, 0x1401ba4a0
call rax
nop
jmp 0x1800500fb
add rcx, 0x4128
cmp dword [rcx + 0x38], 0
je 0x1800500fb
mov dword [rcx + 0x38], 0
mov dl, 1
movabs rax, 0x1401a4050
call rax
nop
jmp 0x1800500fb
mov rax, qword [0x18006f068]
mov edx, dword [rax + 0x30]
mov rax, qword [0x18006fbc8]
mov rcx, qword [rax + r15*8]
cmp edx, 0xffffffff
je 0x1800500fb
add rcx, 0x4128
cmp dword [rcx + 0x38], edx
je 0x1800500fb
mov dword [rcx + 0x38], edx
mov dl, 1
movabs rax, 0x1401a4050
call rax
nop
jmp 0x1800500fb
movabs rax, 0x1ecf7680ae6d72bd
cmp rbx, rax
jne 0x180050088
movabs rax, 0xfca7b000ade2abcb
cmp rdi, rax
je 0x1800500c6
jmp 0x1800500fb
movabs rax, 0xfcb981acde90c192
cmp rbx, rax
jne 0x1800500a8
movabs rax, 0x6972baf895e90386
cmp rdi, rax
je 0x1800500c6
jmp 0x1800500fb
movabs rax, 0xfc61c19e80fc9d68
cmp rbx, rax
jne 0x1800500fb
movabs rax, 0xf01bf70c1ff22b66
cmp rdi, rax
jne 0x1800500fb
mov edx, dword [r14 + 0x4160]
mov rax, qword [0x18006fbc8]
mov rcx, qword [rax + r15*8]
cmp edx, 0xffffffff
je 0x1800500fb
add rcx, 0x4128
cmp dword [rcx + 0x38], edx
je 0x1800500fb
mov dword [rcx + 0x38], edx
mov dl, 1
movabs rax, 0x1401a4050
call rax
nop
movabs rsi, 0x100000001b3
inc r12d
inc r15
mov rcx, qword [0x18006fbd0]
sub rcx, qword [0x18006fbc8]
sar rcx, 3
movsxd rax, r12d
cmp rax, rcx
jb 0x18004f834
mov rax, qword [0x18006f068]
cmp byte [rax + 0x14], 0
je 0x18005087d
mov rbx, qword [0x18006fb40]
mov rbx, qword [rbx]
movss xmm10, dword [0x180064ab8]
cmp byte [rbx + 0x19], 0
jne 0x180050429
movabs r15, 0x555555555555555
lea r14, [0x18006fb60]
movss xmm8, dword [0x180064a0c]
movss xmm9, dword [0x1800649fc]
nop word [rax + rax]
mov rcx, qword [0x18006fb30]
mov rax, qword [rcx + 8]
cmp byte [rax + 0x19], 0
jne 0x1800501b4
mov rdx, qword [rbx + 0x20]
cmp qword [rax + 0x20], rdx
jae 0x1800501a8
mov rax, qword [rax + 0x10]
jmp 0x1800501ae
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180050195
cmp byte [rcx + 0x19], 0
jne 0x1800501c8
mov rax, qword [rcx + 0x20]
cmp qword [rbx + 0x20], rax
jb 0x1800501c8
mov al, 1
jmp 0x1800501ca
xor al, al
test al, al
jne 0x1800502fa
mov rax, qword [rbx + 0x20]
mov qword [rbp + 0x20], rax
movsd xmm0, qword [rbx + 0x30]
movsd qword [rbp + 0x28], xmm0
mov eax, dword [rbx + 0x38]
mov dword [rbp + 0x30], eax
mov rsi, qword [rbx + 0x28]
movabs rax, 0x14198a1b8
movss xmm6, dword [rax]
mov rcx, qword [0x18006fb60]
mov rax, qword [rcx + 8]
mov qword [rbp - 0x80], rax
xor r12d, r12d
mov dword [rbp - 0x78], r12d
cmp byte [rax + 0x19], r12b
jne 0x180050247
nop dword [rax + rax]
mov qword [rbp - 0x80], rax
cmp qword [rax + 0x20], rsi
jge 0x180050234
mov dword [rbp - 0x78], r12d
mov rax, qword [rax + 0x10]
jmp 0x180050241
mov dword [rbp - 0x78], 1
mov rcx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], r12b
je 0x180050220
cmp byte [rcx + 0x19], r12b
jne 0x180050253
cmp rsi, qword [rcx + 0x20]
jge 0x1800502b1
cmp qword [0x18006fb68], r15
je 0x1800508d0
mov rdi, qword [0x18006fb60]
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x48], r12
mov ecx, 0x30
call fcn.180055f58
nop
mov qword [rax + 0x20], rsi
mov dword [rax + 0x28], r12d
mov qword [rax], rdi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], rdi
mov word [rax + 0x18], 0
mov qword [rbp - 0x48], r12
movups xmm0, xmmword [rbp - 0x80]
movaps xmmword [rbp - 0x80], xmm0
mov r8, rax
lea rdx, [rbp - 0x80]
mov rcx, r14
call fcn.180014d70
mov rcx, rax
addss xmm6, dword [rcx + 0x28]
mov rax, qword [rbx + 0x20]
mov qword [rbp - 0x80], rax
movups xmm0, xmmword [rbp + 0x20]
movups xmmword [rbp - 0x78], xmm0
movsd xmm1, qword [rbp + 0x30]
shufps xmm1, xmm1, 0xe1
movss xmm1, xmm6
shufps xmm1, xmm1, 0xe1
movsd qword [rbp + 0x30], xmm1
movsd qword [rbp - 0x68], xmm1
lea r8, [rbp - 0x80]
lea rdx, [rbp - 0x30]
lea rcx, [0x18006fb50]
call fcn.180051010
jmp 0x1800503cc
movsd xmm7, qword [rbx + 0x30]
mov eax, dword [rbx + 0x38]
mov dword [rbp - 0x58], eax
movabs rax, qword [0x14198a208]
mov rcx, qword [rax + 0x240]
movss xmm6, dword [rcx + 0x6c]
movss xmm1, dword [rcx + 0x74]
movss xmm0, dword [rbp - 0x58]
divss xmm0, xmm10
divss xmm7, xmm10
mulss xmm7, dword [rcx + 0x70]
addss xmm7, dword [rcx + 0x68]
addss xmm6, xmm1
mulss xmm1, xmm0
subss xmm6, xmm1
movaps xmm0, xmmword [0x180064e80]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov edi, eax
movss dword [rbp + 0x300], xmm7
movss dword [rbp + 0x304], xmm6
test eax, 0xff000000
je 0x1800503cc
mov dword [rsp + 0x28], 0x63
movss dword [rsp + 0x20], xmm8
movaps xmm3, xmm14
movaps xmm2, xmm9
lea rdx, [rbp + 0x300]
mov rcx, r13
call fcn.18003ebe0
movss xmm0, dword [0x1800649d4]
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [r13 + 0x78]
mov rdx, qword [r13 + 0x80]
mov rcx, r13
call fcn.18003d230
mov dword [r13 + 0x78], 0
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x1800503f8
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1800503f3
cmp rbx, qword [rax + 0x10]
jne 0x1800503f3
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1800503e0
mov rbx, rax
jmp 0x18005041f
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x18005041f
nop dword [rax]
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180050410
cmp byte [rbx + 0x19], 0
je 0x180050180
lea rcx, [0x18006fb40]
call fcn.180050c30
movzx r9d, byte [rbp + 0x300]
mov r8, qword [0x18006fb40]
mov rdx, qword [0x18006fb30]
mov rdx, qword [rdx + 8]
lea rcx, [0x18006fb40]
call fcn.1800530e0
mov rcx, qword [0x18006fb40]
mov qword [rcx + 8], rax
mov rax, qword [0x18006fb38]
mov qword [0x18006fb48], rax
mov r8, qword [0x18006fb40]
mov rdx, qword [r8 + 8]
cmp byte [rdx + 0x19], 0
jne 0x1800504d3
mov rcx, qword [rdx]
cmp byte [rcx + 0x19], 0
jne 0x18005049f
nop
mov rdx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180050490
mov qword [r8], rdx
mov rdx, qword [0x18006fb40]
mov rcx, qword [rdx + 8]
mov rax, qword [rcx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1800504cd
nop word [rax + rax]
mov rcx, rax
mov rax, qword [rax + 0x10]
cmp byte [rax + 0x19], 0
je 0x1800504c0
mov qword [rdx + 0x10], rcx
jmp 0x1800504e1
mov qword [r8], r8
mov rax, qword [0x18006fb40]
mov qword [rax + 0x10], rax
mov rdi, qword [0x18006fb30]
mov rbx, qword [rdi + 8]
cmp byte [rbx + 0x19], 0
jne 0x18005051f
mov r8, qword [rbx + 0x10]
lea rdx, [0x18006fb30]
lea rcx, [0x18006fb30]
call fcn.18001c6b0
mov rcx, rbx
mov rbx, qword [rbx]
mov edx, 0x40
call fcn.18005631c
cmp byte [rbx + 0x19], 0
je 0x1800504f2
mov qword [rdi + 8], rdi
mov qword [rdi], rdi
mov qword [rdi + 0x10], rdi
xor r10d, r10d
mov qword [0x18006fb38], r10
mov rax, qword [0x18006fb50]
mov rbx, qword [rax]
cmp rbx, rax
je 0x18005087d
movabs rdi, 0x14198a208
movss xmm8, dword [0x180064a00]
nop word [rax + rax]
movsd xmm6, qword [rbx + 0x30]
mov eax, dword [rbx + 0x38]
mov dword [rbp - 0x58], eax
mov rax, qword [rdi]
mov rcx, qword [rax + 0x240]
movss xmm7, dword [rcx + 0x6c]
movss xmm1, dword [rbp - 0x58]
divss xmm1, xmm10
divss xmm6, xmm10
mulss xmm6, dword [rcx + 0x70]
addss xmm6, dword [rcx + 0x68]
addss xmm7, dword [rcx + 0x74]
mulss xmm1, dword [rcx + 0x74]
subss xmm7, xmm1
movss xmm0, dword [rbx + 0x3c]
movabs rax, 0x14198a1b8
subss xmm0, dword [rax]
comiss xmm0, xmm14
jbe 0x1800507b4
cvttss2si r8d, xmm0
lea r9, [rbp - 0x3b]
test r8d, r8d
jns 0x180050610
neg r8d
nop
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x1800505d0
dec r9
mov byte [r9], 0x2d
jmp 0x18005063a
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x180050610
mov qword [rbp - 0x30], r10
mov qword [rbp - 0x20], r10
mov r10d, 0xf
mov qword [rbp - 0x18], r10
mov byte [rbp - 0x30], 0
lea rax, [rbp - 0x3b]
cmp r9, rax
je 0x180050670
lea r8, [rbp - 0x3b]
sub r8, r9
mov rdx, r9
lea rcx, [rbp - 0x30]
call fcn.1800091b0
mov r10, qword [rbp - 0x18]
lea r8, [rbp - 0x30]
mov r9, qword [rbp - 0x30]
cmp r10, 0x10
cmovae r8, r9
movaps xmm0, xmmword [0x180064e80]
movups xmmword [rbp - 0x80], xmm0
lea rcx, [rbp - 0x80]
call fcn.180020750
mov r11d, eax
subss xmm7, xmm8
subss xmm6, dword [0x180064a18]
movss dword [rbp + 0x300], xmm6
movss dword [rbp + 0x304], xmm7
test eax, 0xff000000
je 0x180050728
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800506c2
add rcx, r8
cmp r8, rcx
je 0x180050728
mov rax, qword [r13 + 0x38]
movups xmm0, xmmword [r13 + 0x88]
movups xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm14
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], r8
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r11d
lea r9, [rbp + 0x300]
movss xmm2, dword [rax + 0x10]
mov rdx, r13
mov rcx, qword [rax + 8]
call fcn.180043430
mov r10, qword [rbp - 0x18]
mov r9, qword [rbp - 0x30]
cmp r10, 0x10
jb 0x18005075f
lea rdx, [r10 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x180050757
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180050876
mov rcx, r9
call fcn.18005631c
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x18005078e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x180050786
cmp rbx, qword [rax + 0x10]
jne 0x180050786
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180050773
mov rbx, rax
jmp 0x180050865
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x180050865
nop
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x1800507a0
jmp 0x180050865
mov rdx, rbx
lea r8, [rbx + 0x10]
mov rax, qword [r8]
cmp byte [rax + 0x19], 0
je 0x180050808
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x1800507e3
nop
cmp rbx, qword [rax + 0x10]
jne 0x1800507e3
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x1800507d0
mov rbx, rax
mov rcx, qword [rdx + 8]
cmp byte [rcx + 0x19], 0
jne 0x18005084c
mov rax, rdx
cmp rax, qword [rcx + 0x10]
jne 0x18005084c
mov rax, rcx
mov rcx, qword [rcx + 8]
cmp byte [rcx + 0x19], 0
je 0x1800507f3
jmp 0x18005084c
mov rbx, rax
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x18005082f
nop dword [rax]
nop dword [rax + rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180050820
mov rax, qword [r8]
mov rcx, qword [rax]
cmp byte [rcx + 0x19], 0
jne 0x18005084c
nop dword [rax + rax]
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x180050840
lea rcx, [0x18006fb50]
call fcn.180015df0
mov edx, 0x40
mov rcx, rax
call fcn.18005631c
cmp rbx, qword [0x18006fb50]
je 0x18005087d
xor r10d, r10d
jmp 0x180050560
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
lea r11, [rsp + 0x3c8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.180003d10
int3