Function at 0x14000e260
Capabilities:
Encrypt data using speck

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 - 0x528]
sub rsp, 0x5e8
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
xor esi, esi
mov dword [rsp + 0x50], esi
mov r15, qword [0x1400d92b8]
mov qword [rbp - 0x30], r15
mov dword [0x1400a34c0], 0x7f7fffff
mov qword [0x1400d9008], rsi
movss xmm1, dword [0x1400d9268]
subss xmm1, dword [0x140096870]
movd xmm0, dword [0x1400a4a08]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si ebx, xmm1
cmp byte [0x1400a34ca], sil
je 0x14000e42a
mov rax, qword [0x1400d9270]
lea r8, str.Foreground
mov edx, 1
mov rax, qword [rax + 0x48c0]
mov rcx, qword [rax]
cmp byte [0x1400d91ce], sil
je 0x14000e3a6
call fcn.140025250
mov r8, rax
movdqa xmm0, xmmword [0x1400970e0]
movups xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x40]
call fcn.140021810
mov r9d, eax
mov eax, dword [0x1400d9000]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400d9084]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x530], xmm0
movss dword [rbp + 0x534], xmm1
movd xmm2, ebx
movss xmm0, dword [0x1400966b0]
movss dword [rsp + 0x28], xmm0
jmp 0x14000e410
call fcn.140025250
mov r8, rax
movdqa xmm0, xmmword [0x1400970e0]
movups xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x40]
call fcn.140021810
mov r9d, eax
movd xmm2, dword [0x1400a4a08]
mov eax, dword [0x1400d9000]
cdq
sub eax, edx
sar eax, 1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
mov eax, dword [0x1400d9084]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x530], xmm0
movss dword [rbp + 0x534], xmm1
movss xmm1, dword [0x1400966b0]
movss dword [rsp + 0x28], xmm1
mov dword [rsp + 0x20], 0x40
cvtdq2ps xmm2, xmm2
lea rdx, [rbp + 0x530]
mov rcx, r8
call fcn.1400459c0
mov rcx, qword [0x1400d90a0]
mov qword [rbp + 0x530], rcx
mov rbx, qword [0x1400d9270]
mov rdi, rcx
test rcx, rcx
jne 0x14000e465
mov rcx, qword [rbx + 0x70]
test rcx, rcx
jne 0x14000e45b
mov rax, qword [rbx + 0x60]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx]
mov qword [rbp + 0x530], rcx
mov rdi, rcx
call fcn.14002e970
lea rcx, [rbx + 0x4850]
lea rdx, [rbp + 0x530]
call fcn.140039130
mov rax, qword [rbx + 0x3ee8]
mov rdx, qword [rdi + 0x40]
mov rdx, qword [rdx + 8]
mov rcx, qword [rax + 0x2a0]
call fcn.140041940
mov rax, qword [0x1400d9270]
movss xmm2, dword [rax + 0xe8]
cvtps2pd xmm2, xmm2
mov dword [rsp + 0x60], 0x1d2ef5c8
mov dword [rsp + 0x64], 0x19131a0d
mov dword [rsp + 0x68], 0x2d171909
mov dword [rsp + 0x6c], 0xd0d2dac2
mov word [rsp + 0x70], 0xe51c
xor eax, eax
mov qword [rsp + 0x72], rax
mov dword [rsp + 0x7a], eax
mov word [rsp + 0x7e], ax
mov qword [rbp + 0x530], rsi
mov rax, qword [rbp + 0x530]
movabs r9, 0x39ebbdeb23244f9d
nop dword [rax]
mov rcx, qword [rbp + 0x530]
mov rax, qword [rbp + 0x530]
movzx edx, byte [rsp + rax + 0x60]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x4b
mov rax, qword [rbp + 0x530]
mov byte [rsp + rax + 0x60], r8b
mov rax, qword [rbp + 0x530]
inc rax
mov qword [rbp + 0x530], rax
mov rax, qword [rbp + 0x530]
cmp rax, 0x20
jb 0x14000e500
movq r8, xmm2
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x2b0]
call fcn.14001cd20
mov dword [rbp - 0x20], 0xc6caf5c5
mov dword [rbp - 0x1c], 0xcaf3ccf6
mov dword [rbp - 0x18], 0xc5cc0962
mov dword [rbp - 0x14], 0xc6fcfd0c
mov word [rbp - 0x10], 0x51c6
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0xe], xmm0
mov qword [rbp + 2], rax
mov word [rbp + 0xa], ax
mov qword [rbp + 0x530], rsi
mov rax, qword [rbp + 0x530]
movabs r9, 0x8952637976b08750
nop word [rax + rax]
mov rcx, qword [rbp + 0x530]
mov rax, qword [rbp + 0x530]
movzx edx, byte [rbp + rax - 0x20]
add rcx, r9
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x30
mov rax, qword [rbp + 0x530]
mov byte [rbp + rax - 0x20], r8b
mov rax, qword [rbp + 0x530]
inc rax
mov qword [rbp + 0x530], rax
mov rax, qword [rbp + 0x530]
cmp rax, 0x2c
jb 0x14000e5c0
movdqa xmm0, xmmword [0x1400970e0]
movdqa xmmword [rbp + 0x40], xmm0
lea rax, [rbp - 0x20]
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], sil
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
mov r9d, 5
mov r8d, 0xa
movss xmm6, dword [0x1400967e4]
movaps xmm1, xmm6
movd edx, xmm1
mov rcx, r15
call fcn.14000c580
movdqa xmm0, xmmword [0x1400970e0]
movdqa xmmword [rbp + 0x40], xmm0
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], sil
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
mov r9d, 0x19
mov r8d, r9d
movaps xmm1, xmm6
movd edx, xmm1
mov rcx, r15
call fcn.14000c580
cmp byte [0x1400d91cb], sil
je 0x14000e6b2
call fcn.14000a5c0
mov rax, qword [0x1400d9280]
mov r8d, 4
lea rdx, [rbp + 0x530]
mov rcx, qword [rax + 0x30]
add rcx, 0x2750
cmp byte [0x1400d9012], sil
je 0x14000e707
movd xmm0, dword [0x1400a3850]
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x530], xmm0
call fcn.140008a10
movd xmm0, dword [0x1400a3850]
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x538], xmm0
jmp 0x14000e720
mov dword [rbp + 0x530], 0x42a00000
call fcn.140008a10
mov dword [rbp + 0x538], 0x42a00000
mov rax, qword [0x1400d9280]
mov rcx, qword [rax + 0x30]
mov r8d, 4
lea rdx, [rbp + 0x538]
add rcx, 0x2754
call fcn.140008a10
cmp byte [0x1400d9011], sil
je 0x14000e778
mov dword [rbp + 0x540], 0xbf800000
mov rax, qword [0x1400d9280]
mov rcx, qword [rax + 0x30]
add rcx, 0x68
mov r8d, 4
lea rdx, [rbp + 0x540]
call fcn.140008a10
cmp byte [0x1400d9035], sil
je 0x14000e7ea
mov rcx, qword [0x1400d9280]
mov rax, qword [rcx + 0x20]
test rax, rax
je 0x14000e7f1
cmp qword [rcx + 0x80], rsi
je 0x14000e7f1
lea rcx, [rax + 0x310]
call fcn.14001c7e0
mov rbx, rax
mov rcx, qword [0x1400d9280]
mov rcx, qword [rcx + 0x80]
add rcx, 0x399
call fcn.14001cdb0
test rbx, rbx
je 0x14000e7ea
lea rcx, [rbx + 0x9d8]
test al, al
je 0x14000e7dd
movss xmm1, dword [0x140096990]
jmp 0x14000e7e5
movss xmm1, dword [0x14009669c]
call fcn.14001cd80
mov rcx, qword [0x1400d9280]
mov rcx, qword [rcx + 0x30]
mov r8d, 1
lea rdx, [rbp + 0x530]
add rcx, 0x10c0
cmp byte [0x1400d9014], sil
mov byte [rbp + 0x530], r8b
jne 0x14000e820
mov byte [rbp + 0x530], sil
call fcn.140008a10
mov r14, qword [0x1400d92e0]
mov qword [rbp - 0x28], r14
mov rax, qword [0x1400d92e8]
mov qword [rbp + 0x238], rax
mov edi, 2
lea r12, [0x1400a4750]
movss xmm13, dword [0x1400966c8]
xorps xmm12, xmm12
cmp r14, rax
je 0x140011617
movabs rdi, 0xcccccccccccccccd
movdqa xmm7, xmmword [0x140097130]
xor r8d, r8d
mov rdx, qword [r14 + 8]
lea rcx, [rbp + 0x110]
call fcn.1400099d0
movups xmm8, xmmword [rbp + 0x110]
movaps xmmword [rbp + 0xd0], xmm8
movsd xmm9, qword [rbp + 0x120]
movsd qword [rbp + 0xe0], xmm9
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 0x298]
call fcn.140009640
mov r8d, 0x6e
mov rdx, qword [r14 + 8]
lea rcx, [rbp + 0x60]
call fcn.1400099d0
mov r8d, 0x6e
mov rdx, qword [r14 + 8]
lea rcx, [rbp - 0x50]
call fcn.1400099d0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0xd0], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0xe0], xmm1
lea rdx, [rbp + 0xd0]
lea rcx, [rbp + 0x268]
call fcn.140009640
mov r8d, 0x6e
mov rdx, qword [r14 + 8]
lea rcx, [rbp + 0x20]
call fcn.1400099d0
movsd xmm2, qword [rbp + 0x30]
addsd xmm2, qword [0x140096720]
movups xmm1, xmmword [rbp + 0x20]
movups xmmword [rbp - 0x50], xmm1
movaps xmmword [rbp + 0x20], xmm1
movsd qword [rbp - 0x40], xmm2
movsd qword [rbp + 0x30], xmm2
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x288]
call fcn.140009640
movsd xmm1, qword [rbp + 0x70]
movsd qword [rbp + 0x240], xmm1
subsd xmm1, qword [0x1400966d0]
movsd xmm15, qword [rbp + 0x60]
movsd xmm2, qword [rbp + 0x68]
movsd qword [rbp + 0xd0], xmm2
movaps xmm0, xmm15
unpcklpd xmm0, xmm2
movups xmmword [rbp - 0x50], xmm0
movaps xmmword [rbp + 0x20], xmm0
movsd qword [rbp - 0x40], xmm1
movsd qword [rbp + 0x30], xmm1
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x1c8]
call fcn.140009640
movsd xmm6, qword [rbp + 0x270]
movaps xmm0, xmm6
movsd xmm14, qword [rbp + 0x2a0]
subsd xmm0, xmm14
andps xmm0, xmm7
cvtpd2ps xmm10, xmm0
movaps xmm0, xmm8
unpckhpd xmm0, xmm8
subsd xmm0, qword [0x1400d9328]
cvtsd2ss xmm0, xmm0
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm7, xmm0
movaps xmm0, xmm8
subsd xmm0, qword [0x1400d9320]
cvtsd2ss xmm0, xmm0
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm7, xmm0
movaps xmm1, xmm9
subsd xmm1, qword [0x1400d9330]
cvtpd2ps xmm0, xmm1
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm7, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm7
ja 0x14000ea2f
xorps xmm0, xmm0
sqrtss xmm0, xmm7
jmp 0x14000ea37
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
cvtss2sd xmm0, xmm0
divsd xmm0, qword [0x140096760]
xorps xmm13, xmm13
cvtsd2ss xmm13, xmm0
movd xmm0, dword [0x1400a47c8]
cvtdq2ps xmm0, xmm0
comiss xmm13, xmm0
ja 0x1400115f4
mov rcx, qword [r14]
add rcx, 0x982
call fcn.14001cdb0
cmp byte [0x1400a34c9], 0
je 0x14000eb31
mov eax, dword [0x1400d9084]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd xmm1, qword [rbp + 0x268]
subsd xmm1, xmm0
mov eax, dword [0x1400d9000]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm6, xmm0
mulsd xmm6, xmm6
mulsd xmm1, xmm1
addsd xmm6, xmm1
cvtpd2ps xmm2, xmm6
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x14000ead1
sqrtss xmm2, xmm2
jmp 0x14000eadc
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm2, xmm0
cmp byte [0x1400d91cc], 0
je 0x14000eb02
movd xmm1, dword [0x1400a4a08]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm2
jbe 0x14000eb31
movss xmm1, dword [0x1400a34c0]
comiss xmm1, xmm2
jmp 0x14000eb1d
movd xmm0, dword [0x1400a4a08]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm2
jbe 0x14000eb31
movss xmm0, dword [0x1400a34c0]
comiss xmm0, xmm2
jbe 0x14000eb31
mov rax, qword [r14]
mov qword [0x1400d9008], rax
movss dword [0x1400a34c0], xmm2
xor r8d, r8d
mov rdx, qword [r14 + 8]
lea rcx, [rbp - 0x50]
call fcn.1400099d0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x20], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp + 0x30], xmm1
lea rdx, [rbp + 0x20]
lea rcx, [rbp + 0x80]
call fcn.140009640
movsd xmm11, qword [rbp + 0x290]
movaps xmm0, xmm11
subsd xmm0, qword [rbp + 0x88]
andps xmm0, xmmword [0x140097130]
cvtpd2ps xmm12, xmm0
mulss xmm10, dword [0x1400a47b0]
mov rbx, qword [r14 + 8]
lea rcx, [rbx + 0x2e0]
call fcn.14001c980
movaps xmm6, xmm0
lea rcx, [rbx + 0x2e8]
call fcn.14001c980
addss xmm0, dword [0x1400965f0]
comiss xmm0, xmm6
setae r13b
mov byte [rbp + 0x538], r13b
mov eax, dword [0x1400d9084]
cdq
sub eax, edx
sar eax, 1
mov r12d, eax
mov dword [rbp + 0x50], eax
movdqa xmm0, xmmword [0x140096e90]
movups xmmword [rbp + 0x20], xmm0
cmp byte [0x1400d91c5], 0
je 0x14000ecee
movzx r9d, r13b
mov r8, qword [0x1400d92e8]
sub r8, qword [0x1400d92e0]
sar r8, 3
imul r8, rdi
lea rdx, str.Rendered_Enemies:__d__Visible_Enemies:__d
lea rcx, [rbp + 0x2b0]
call fcn.14001cd20
mov rcx, qword [0x1400d9270]
movss xmm0, dword [rcx + 0x10]
movss xmm7, dword [0x140096640]
mulss xmm0, xmm7
cvttss2si edi, xmm0
movss xmm0, dword [rcx + 0x14]
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [0x1400966a8]
cvttsd2si ebx, xmm0
mov qword [rsp + 0x30], rsi
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x28], rax
movss xmm0, dword [0x1400969c4]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1400969ac]
movss xmm2, dword [rcx + 0x3c38]
lea rdx, [rbp + 0x178]
mov rcx, qword [rcx + 0x3c30]
call fcn.14004cfb0
movss xmm0, dword [rbp + 0x178]
addss xmm0, dword [0x140096694]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x178], xmm0
movd xmm1, dword [0x1400a47cc]
cvtdq2ps xmm1, xmm1
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 1
lea rax, [0x1400a47e0]
mov qword [rsp + 0x20], rax
mov r9d, ebx
mov r8d, edi
movd edx, xmm1
mov rcx, r15
call fcn.14000be90
jmp 0x14000ecf6
movss xmm7, dword [0x140096640]
cmp byte [0x1400d91cb], 0
je 0x14000ed17
movaps xmmword [rbp - 0x50], xmm8
movsd qword [rbp - 0x40], xmm9
movzx r8d, r13b
lea rcx, [rbp - 0x50]
call fcn.14000aa90
cmp byte [0x1400a34c4], 0
je 0x14000ed30
movzx r8d, r13b
lea rdx, [rbp + 0x110]
call fcn.14000d500
cmp byte [0x1400d9034], 0
je 0x14000ef3f
mov ecx, 0x1215c1a8
call fcn.14001c7e0
mov rbx, rax
test rax, rax
je 0x14000ef3f
lea rcx, [rax + 0xa0]
call fcn.14001ca50
mov r12d, eax
lea rcx, [rbx + 0x98]
call fcn.14001c7e0
mov qword [rbp + 0x110], rax
mov r15d, esi
test r12d, r12d
jle 0x14000ef37
movsxd rcx, r15d
lea rcx, [rax + rcx*8]
call fcn.14001c7e0
mov r13, rax
lea rcx, [rax + 0x18]
call fcn.14001ca50
mov edx, eax
lea rcx, [rbp + 0x198]
call fcn.14000a2b0
nop
lea rdx, [rbp + 0x198]
cmp qword [rbp + 0x1b0], 0xf
cmova rdx, qword [rbp + 0x198]
mov r8, qword [rbp + 0x1a8]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001e5a0
lea rdx, [0x14001c400]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
lea rdi, [rbp + 0x198]
mov rsi, qword [rbp + 0x198]
mov r14, qword [rbp + 0x1b0]
cmp r14, 0xf
cmova rdi, rsi
mov rax, qword [rbp + 0x1a8]
cmp rax, 6
jb 0x14000ee63
lea rbx, [rax + rdi]
lea r8, [rbx - 5]
sub r8, rdi
mov edx, 0x42
mov rcx, rdi
call sub.VCRUNTIME140.dll_memchr
test rax, rax
je 0x14000ee63
nop dword [rax]
cmp dword [rax], 0x6c6c7542
jne 0x14000ee40
cmp word [rax + 4], 0x7465
je 0x14000ee5e
inc rax
lea r8, [rbx - 5]
sub r8, rax
mov edx, 0x42
mov rcx, rax
call sub.VCRUNTIME140.dll_memchr
test rax, rax
jne 0x14000ee30
jmp 0x14000ee63
cmp rax, rdi
je 0x14000eee1
lea rcx, [r13 + 0x198]
call fcn.14001c7e0
mov rbx, rax
mov byte [rbp + 0x530], 0
lea rcx, [rax + 0x180]
mov r8d, 1
lea rdx, [rbp + 0x530]
call fcn.140008a10
movdqa xmm0, xmmword [0x1400970f0]
movups xmmword [rbp - 0x50], xmm0
movaps xmmword [rbp + 0xf0], xmm0
movsd xmm0, qword [0x140096700]
movsd qword [rbp - 0x40], xmm0
movsd qword [rbp + 0x100], xmm0
lea rcx, [rbx + 0x120]
mov r8d, 0x18
lea rdx, [rbp + 0xf0]
call fcn.140008a10
mov r14, qword [rbp + 0x1b0]
mov rsi, qword [rbp + 0x198]
cmp r14, 0xf
jbe 0x14000ef18
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14000ef10
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001166c
mov rcx, rsi
call fcn.14006f6c8
inc r15d
cmp r15d, r12d
mov rax, qword [rbp + 0x110]
jl 0x14000ed81
movzx r13d, byte [rbp + 0x538]
mov r14, qword [rbp - 0x28]
mov r15, qword [rbp - 0x30]
mov r12d, dword [rbp + 0x50]
mov rcx, qword [0x1400d9280]
cmp byte [0x1400d9036], 0
je 0x14000efb6
mov rax, qword [rcx + 0x80]
test rax, rax
je 0x14000efb6
mov dword [rbp + 0x530], 0
lea rcx, [rax + 0xe64]
mov r8d, 4
lea rdx, [rbp + 0x530]
call fcn.140008a10
mov dword [rbp + 0xb8], 0
mov rax, qword [0x1400d9280]
mov rcx, qword [rax + 0x80]
add rcx, 0xe68
mov r8d, 4
lea rdx, [rbp + 0xb8]
call fcn.140008a10
mov rcx, qword [0x1400d9280]
mov rcx, qword [rcx + 0x20]
mov r8d, 1
add rcx, 0x55e9
cmp byte [0x1400d9037], 0
je 0x14000efe0
mov byte [rbp + 0x540], r8b
lea rdx, [rbp + 0x540]
jmp 0x14000efee
mov byte [rbp + 0x548], 0
lea rdx, [rbp + 0x548]
call fcn.140008a10
cmp byte [0x1400d9015], 0
je 0x14000f186
mov rcx, qword [0x1400d9008]
test rcx, rcx
je 0x14000f186
call fcn.140009980
test al, al
je 0x140011bf7
lea rcx, [rbp + 0x110]
call fcn.140009d60
mov r8d, 0x6e
mov rdx, qword [0x1400d9008]
lea rcx, [rsp + 0x60]
call fcn.1400099d0
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x50], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp - 0x40], xmm1
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x278]
call fcn.140009640
mov rax, qword [0x1400d9280]
mov rcx, qword [rax + 0x30]
add rcx, 0x348
call fcn.14001c7e0
mov rsi, rax
movsd xmm0, qword [rbp + 0x278]
xorps xmm1, xmm1
ucomisd xmm0, xmm1
jp 0x14000f0a2
jne 0x14000f0a2
movsd xmm0, qword [rbp + 0x280]
ucomisd xmm0, xmm1
jp 0x14000f0a2
je 0x14000f186
mov rax, qword [0x1400d9280]
cmp qword [rax + 0x80], 0
je 0x14000f186
mov ebx, 4
mov rax, qword gs:[0x58]
mov rdi, qword [rax]
mov eax, dword [rbx + rdi]
cmp dword [0x1400d94cc], eax
jg 0x140011c50
mov eax, dword [rbx + rdi]
cmp dword [0x1400d9578], eax
jg 0x140011c8e
movsd xmm6, qword [rbp + 0x118]
cvtpd2ps xmm6, xmm6
movss dword [rbp + 0x530], xmm6
mov r8d, 4
lea rdx, [rbp + 0x530]
lea rcx, [rsi + 0x2494]
call fcn.140008a10
movss dword [rbp + 0x530], xmm6
mov r8d, 4
lea rdx, [rbp + 0x530]
lea rcx, [rsi + 0x2498]
call fcn.140008a10
movss xmm0, dword [0x1400d94c8]
movss dword [rbp + 0x530], xmm0
mov r8d, 4
lea rdx, [rbp + 0x530]
lea rcx, [rsi + 0x2494]
call fcn.140008a10
movss xmm0, dword [0x1400d9550]
movss dword [rbp + 0xc0], xmm0
mov r8d, 4
lea rdx, [rbp + 0xc0]
lea rcx, [rsi + 0x2498]
call fcn.140008a10
movsd xmm9, qword [rbp + 0x288]
cmp byte [0x1400d91c8], 0
je 0x14000f84e
mov rax, qword [0x1400d9280]
mov rcx, qword [rax + 0x28]
add rcx, 0x9e8
call fcn.14001c7e0
lea rcx, [rax + 0xc8]
call fcn.14001ca50
mov edi, eax
test eax, eax
jne 0x14000f1f5
xor r14d, r14d
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], 8
mov qword [rsp + 0x78], 0xf
mov rcx, qword [str.Bronze_1]
mov qword [rsp + 0x60], rcx
mov byte [rsp + 0x68], r14b
jmp 0x14000f30d
cmp edi, 1
jne 0x14000f206
lea rdx, str.Bronze_2
jmp 0x14000f300
cmp edi, 2
jne 0x14000f217
lea rdx, str.Bronze_3
jmp 0x14000f300
cmp edi, 3
jne 0x14000f228
lea rdx, str.Silver_1
jmp 0x14000f300
cmp edi, 4
jne 0x14000f239
lea rdx, str.Silver_2
jmp 0x14000f300
cmp edi, 5
jne 0x14000f24a
lea rdx, str.Silver_3
jmp 0x14000f300
cmp edi, 6
jne 0x14000f25b
lea rdx, str.Gold_1
jmp 0x14000f300
cmp edi, 7
jne 0x14000f26c
lea rdx, str.Gold_2
jmp 0x14000f300
cmp edi, 8
jne 0x14000f27d
lea rdx, str.Gold_3
jmp 0x14000f300
cmp edi, 9
jne 0x14000f28b
lea rdx, str.Platinum_1
jmp 0x14000f300
cmp edi, 0xa
jne 0x14000f299
lea rdx, str.Platinum_2
jmp 0x14000f300
cmp edi, 0xb
jne 0x14000f2a7
lea rdx, str.Platinum_3
jmp 0x14000f300
cmp edi, 0xc
jne 0x14000f2b5
lea rdx, str.Diamond_1
jmp 0x14000f300
cmp edi, 0xd
jne 0x14000f2c3
lea rdx, str.Diamond_2
jmp 0x14000f300
cmp edi, 0xe
jne 0x14000f2d1
lea rdx, str.Diamond_3
jmp 0x14000f300
cmp edi, 0xf
jne 0x14000f2df
lea rdx, str.Elite
jmp 0x14000f300
cmp edi, 0x10
jne 0x14000f2ed
lea rdx, str.Champion
jmp 0x14000f300
cmp edi, 0x11
lea rdx, str.Unreal
je 0x14000f300
lea rdx, str.Unranked
lea rcx, [rsp + 0x60]
call fcn.14001ba70
xor r14d, r14d
cmp qword [rsp + 0x70], 0
jne 0x14000f336
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
mov rax, r14
mov qword [rbp - 0x68], rax
mov ecx, 7
mov qword [rbp - 0x60], rcx
mov word [rbp - 0x78], r14w
jmp 0x14000f3ef
lea r8, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova r8, qword [rsp + 0x60]
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, dword [rsp + 0x70]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movsxd rbx, eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], r14
mov r8, rbx
lea rcx, [rbp - 0x50]
call fcn.14001d550
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 7
cmova rcx, qword [rbp - 0x50]
lea r8, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova r8, qword [rsp + 0x60]
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rcx
mov r9d, dword [rsp + 0x70]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movups xmm0, xmmword [rbp - 0x50]
movups xmmword [rbp - 0x78], xmm0
movups xmm1, xmmword [rbp - 0x40]
movups xmmword [rbp - 0x68], xmm1
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], r14w
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rcx, xmm0
movq rax, xmm1
mov esi, dword [rsp + 0x50]
or esi, 3
mov dword [rsp + 0x50], esi
test rax, rax
jne 0x14000f423
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], r14
mov ebx, 0xf
mov qword [rbp - 8], rbx
mov byte [rbp - 0x20], al
movups xmm1, xmmword [rbp - 0x10]
movups xmm7, xmmword [rbp - 0x20]
jmp 0x14000f5ad
lea r8, [rbp - 0x78]
cmp rcx, 7
cmova r8, qword [rbp - 0x78]
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, dword [rbp - 0x68]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movsxd r15, eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xor eax, eax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rax
movabs rcx, 0x7fffffffffffffff
cmp r15, rcx
ja 0x140011c4a
cmp r15, 0xf
ja 0x14000f4a7
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], 0xf
mov r8, r15
xor edx, edx
lea rcx, [rbp - 0x50]
call sub.VCRUNTIME140.dll_memset
mov byte [rbp + r15 - 0x50], 0
jmp 0x14000f53b
mov rsi, r15
or rsi, 0xf
cmp rsi, rcx
jbe 0x14000f4c6
mov rsi, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
jmp 0x14000f4f2
cmp rsi, 0x16
mov ecx, 0x16
cmovb rsi, rcx
lea rcx, [rsi + 1]
test rcx, rcx
je 0x14000f516
cmp rcx, 0x1000
jb 0x14000f511
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140011ccc
mov rcx, rax
call fcn.14006f7f0
test rax, rax
je 0x140011673
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x14000f519
call fcn.14006f7f0
mov rbx, rax
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x40], r15
mov qword [rbp - 0x38], rsi
mov r8, r15
xor edx, edx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memset
mov byte [rbx + r15], 0
mov esi, dword [rsp + 0x50]
lea rax, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rax, qword [rbp - 0x50]
lea r8, [rbp - 0x78]
cmp qword [rbp - 0x60], 7
cmova r8, qword [rbp - 0x78]
xor r14d, r14d
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], rax
mov r9d, dword [rbp - 0x68]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movups xmm7, xmmword [rbp - 0x50]
movups xmmword [rbp - 0x20], xmm7
movups xmm1, xmmword [rbp - 0x40]
movups xmmword [rbp - 0x10], xmm1
mov qword [rbp - 0x40], r14
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], r14b
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rbx, xmm0
mov eax, 4
or esi, eax
mov dword [rsp + 0x50], esi
movzx eax, word [0x140094e08]
mov word [rbp - 0x80], ax
movzx eax, byte [0x140094e0a]
mov byte [rbp - 0x80], 0x25
xor byte [rbp - 0x7f], 0x38
xor al, 0x39
mov byte [rbp - 0x7e], al
movaps xmmword [rbp - 0x50], xmm7
movaps xmmword [rbp - 0x40], xmm1
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x2b0]
call fcn.14001ce70
cmp edi, 2
jbe 0x14000f677
lea eax, [rdi - 3]
cmp eax, 2
jbe 0x14000f66d
lea eax, [rdi - 6]
cmp eax, 2
jbe 0x14000f663
lea eax, [rdi - 9]
cmp eax, 2
jbe 0x14000f659
lea eax, [rdi - 0xc]
cmp eax, 2
jbe 0x14000f64f
cmp edi, 0xf
jne 0x14000f627
movdqa xmm6, xmmword [0x140097020]
jmp 0x14000f67f
cmp edi, 0x10
jne 0x14000f636
movdqa xmm6, xmmword [0x140096eb0]
jmp 0x14000f67f
cmp edi, 0x11
jne 0x14000f645
movdqa xmm6, xmmword [0x140096fe0]
jmp 0x14000f67f
movdqa xmm6, xmmword [0x1400970d0]
jmp 0x14000f67f
movdqa xmm6, xmmword [0x140097000]
jmp 0x14000f67f
movdqa xmm6, xmmword [0x140097010]
jmp 0x14000f67f
movdqa xmm6, xmmword [0x140096ed0]
jmp 0x14000f67f
movdqa xmm6, xmmword [0x140097060]
jmp 0x14000f67f
movdqa xmm6, xmmword [0x140096f50]
mov rax, qword [0x1400d9270]
mov qword [rsp + 0x30], r14
lea rcx, str.Unranked
mov qword [rsp + 0x28], rcx
movss xmm0, dword [0x1400969c4]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1400969ac]
movss xmm2, dword [rax + 0x3c38]
lea rdx, [rbp + 0x180]
mov rcx, qword [rax + 0x3c30]
call fcn.14004cfb0
movss xmm0, dword [rbp + 0x180]
addss xmm0, dword [0x140096694]
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss dword [rbp + 0x180], xmm2
movdqa xmmword [rbp + 0x110], xmm6
movaps xmm0, xmm11
subsd xmm0, qword [0x140096720]
cvttsd2si r9d, xmm0
movaps xmm1, xmm9
subsd xmm1, qword [0x1400969d8]
mulss xmm2, dword [0x140096640]
cvtps2pd xmm0, xmm2
subsd xmm1, xmm0
cvttsd2si r8d, xmm1
lea rax, [rbp + 0x2b0]
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 1
lea rax, [rbp + 0x110]
mov qword [rsp + 0x20], rax
movss xmm1, dword [0x1400967dc]
movd edx, xmm1
mov r15, qword [rbp - 0x30]
mov rcx, r15
call fcn.14000b7b0
nop
cmp rbx, 0xf
jbe 0x14000f798
lea rdx, [rbx + 1]
movq rcx, xmm7
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000f793
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001167a
call fcn.14006f6c8
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
mov rdx, qword [rbp - 0x60]
cmp rdx, 7
jbe 0x14000f7e8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000f7e3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140011681
call fcn.14006f6c8
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], 7
mov word [rbp - 0x78], r14w
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x14000f836
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000f831
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140011688
call fcn.14006f6c8
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], 0
jmp 0x14000fb05
cmp byte [0x1400d91c6], 0
je 0x14000f989
mov rdx, qword [r14 + 0x18]
lea rcx, [rbp - 0x78]
call fcn.14000acb0
nop
lea rcx, [rbp - 0x78]
mov rdx, qword [rbp - 0x78]
mov r8, qword [rbp - 0x60]
cmp r8, 0xf
cmova rcx, rdx
mov rax, qword [0x1400d9270]
xor r14d, r14d
test rcx, rcx
jne 0x14000f891
xorps xmm2, xmm2
jmp 0x14000f8f7
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rcx
movss xmm0, dword [0x1400969c4]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x1400969ac]
movss xmm2, dword [rax + 0x3c38]
lea rdx, [rbp + 0x188]
mov rcx, qword [rax + 0x3c30]
call fcn.14004cfb0
movss xmm0, dword [rbp + 0x188]
addss xmm0, dword [0x140096694]
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss dword [rbp + 0x188], xmm2
mov r8, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x78]
lea rax, [rbp - 0x78]
movd xmm1, dword [0x1400a47cc]
movaps xmm0, xmm11
mulss xmm2, xmm7
mov rcx, r15
cvtdq2ps xmm1, xmm1
subsd xmm0, qword [0x140096718]
cvttsd2si r9d, xmm0
cvtps2pd xmm0, xmm2
movaps xmm2, xmm9
subsd xmm2, xmm0
cmp r8, 0xf
cmova rax, rdx
mov qword [rsp + 0x38], rax
movzx eax, byte [0x1400d9186]
mov byte [rsp + 0x30], al
mov byte [rsp + 0x28], 1
lea rax, [0x1400a47e0]
mov qword [rsp + 0x20], rax
movd edx, xmm1
cvttsd2si r8d, xmm2
call fcn.14000be90
nop
mov r8, qword [rbp - 0x60]
cmp r8, 0xf
jbe 0x14000f974
mov rdx, qword [rbp - 0x78]
call fcn.14001bfe0
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
jmp 0x14000fb01
cmp byte [0x1400d91c4], 0
je 0x14000fafe
mov rcx, qword [r14 + 0x18]
add rcx, 0x3f0
call fcn.14001c7e0
xorps xmm0, xmm0
movups xmmword [rbp + 0x2b0], xmm0
movups xmmword [rbp + 0x2c0], xmm0
movups xmmword [rbp + 0x2d0], xmm0
movups xmmword [rbp + 0x2e0], xmm0
movups xmmword [rbp + 0x2f0], xmm0
movups xmmword [rbp + 0x300], xmm0
movups xmmword [rbp + 0x310], xmm0
movups xmmword [rbp + 0x320], xmm0
mov r8d, 0x80
lea rdx, [rbp + 0x2b0]
mov rcx, rax
call fcn.140008950
lea rdx, [rbp + 0x2b0]
lea rcx, [rbp - 0x20]
call fcn.14001b880
nop
lea rdx, [rbp - 0x20]
cmp qword [rbp - 8], 7
cmova rdx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x10]
lea r8, [rdx + rax*2]
lea rdx, [rbp - 0x20]
cmova rdx, qword [rbp - 0x20]
lea rcx, [rbp - 0x78]
call fcn.14001cbf0
nop
lea rdx, [rbp - 0x78]
cmp qword [rbp - 0x60], 0xf
cmova rdx, qword [rbp - 0x78]
movss xmm6, dword [0x1400969c4]
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x248]
call fcn.140027fc0
lea rax, [rbp - 0x78]
cmp qword [rbp - 0x60], 0xf
cmova rax, qword [rbp - 0x78]
movaps xmm0, xmm11
subsd xmm0, qword [0x140096718]
cvttsd2si r9d, xmm0
movss xmm1, dword [rbp + 0x248]
mulss xmm1, xmm7
cvtps2pd xmm0, xmm1
movaps xmm2, xmm9
subsd xmm2, xmm0
cvttsd2si r8d, xmm2
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 1
lea rax, [0x1400a47e0]
mov qword [rsp + 0x20], rax
movss xmm1, dword [0x1400967dc]
movd edx, xmm1
mov rcx, r15
call fcn.14000be90
nop
mov r8, qword [rbp - 0x60]
cmp r8, 0xf
jbe 0x14000fadc
mov rdx, qword [rbp - 0x78]
call fcn.14001bfe0
xor r14d, r14d
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], r14b
lea rcx, [rbp - 0x20]
call fcn.14001b6b0
mov esi, dword [rsp + 0x50]
jmp 0x14000fb0d
xor r14d, r14d
mov esi, dword [rsp + 0x50]
movss xmm6, dword [0x1400969c4]
movsd xmm8, qword [rbp + 0x298]
cmp byte [0x1400d91c7], 0
je 0x14000fd6b
cvttss2si eax, xmm13
mov dword [rbp + 0x530], eax
lea rdx, [rbp + 0x530]
lea rcx, [rbp - 0x20]
call fcn.14001c440
mov rdi, rax
mov rcx, qword [rax + 0x10]
mov rdx, qword [rax + 0x18]
mov rax, rdx
sub rax, rcx
cmp rax, 3
jb 0x14000fb88
lea rax, [rcx + 3]
mov qword [rdi + 0x10], rax
mov rax, rdi
cmp rdx, 0xf
jbe 0x14000fb69
mov rax, qword [rdi]
lea rbx, [rax + rcx]
mov r8d, 3
lea rdx, [0x14008fa6c]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + 3], 0
jmp 0x14000fba8
mov qword [rsp + 0x20], 3
lea r9, [0x14008fa6c]
mov edx, 3
mov rcx, rdi
call fcn.14001d9c0
mov rdi, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], r14
movups xmm0, xmmword [rdi]
movups xmmword [rbp - 0x78], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbp - 0x68], xmm1
mov qword [rdi + 0x10], r14
mov qword [rdi + 0x18], 0xf
mov byte [rdi], 0
or esi, 8
mov dword [rsp + 0x50], esi
mov rdx, qword [rbp - 8]
cmp rdx, 0xf
jbe 0x14000fc17
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000fc12
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001168f
call fcn.14006f6c8
mov qword [rbp - 0x10], r14
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
lea rcx, [rbp - 0x78]
mov rdx, qword [rbp - 0x78]
mov r8, qword [rbp - 0x60]
cmp r8, 0xf
cmova rcx, rdx
mov rax, qword [0x1400d9270]
test rcx, rcx
jne 0x14000fc4c
xorps xmm2, xmm2
jmp 0x14000fcaa
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rcx
movss dword [rsp + 0x20], xmm6
movss xmm3, dword [0x1400969ac]
movss xmm2, dword [rax + 0x3c38]
lea rdx, [rbp + 0x130]
mov rcx, qword [rax + 0x3c30]
call fcn.14004cfb0
movss xmm0, dword [rbp + 0x130]
addss xmm0, dword [0x140096694]
cvttss2si eax, xmm0
movd xmm2, eax
cvtdq2ps xmm2, xmm2
movss dword [rbp + 0x130], xmm2
mov r8, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x78]
lea rax, [rbp - 0x78]
cmp r8, 0xf
cmova rax, rdx
movd xmm1, dword [0x1400a47cc]
cvtdq2ps xmm1, xmm1
movaps xmm0, xmm14
addsd xmm0, qword [0x140096730]
cvttsd2si r9d, xmm0
movss xmm13, dword [0x140096640]
mulss xmm2, xmm13
cvtps2pd xmm0, xmm2
movaps xmm2, xmm8
subsd xmm2, xmm0
cvttsd2si r8d, xmm2
mov qword [rsp + 0x38], rax
movzx eax, byte [0x1400d9186]
mov byte [rsp + 0x30], al
mov byte [rsp + 0x28], 1
lea rax, [0x1400a47e0]
mov qword [rsp + 0x20], rax
movd edx, xmm1
mov rcx, r15
call fcn.14000be90
nop
mov rdx, qword [rbp - 0x60]
cmp rdx, 0xf
jbe 0x14000fd59
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000fd54
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140011696
call fcn.14006f6c8
mov qword [rbp - 0x68], r14
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
jmp 0x14000fd74
movss xmm13, dword [0x140096640]
cmp byte [0x1400d90ae], 0
je 0x14000fdb1
cvttss2si eax, xmm12
cvttss2si r9d, xmm10
movaps xmm0, xmm10
mulss xmm0, xmm13
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
cvttsd2si r8d, xmm11
movaps xmm0, xmm9
mov dword [rsp + 0x20], eax
subsd xmm0, xmm1
cvttsd2si edx, xmm0
call fcn.14000d390
cmp byte [0x1400a34c7], 0
je 0x1400101b7
cmp dword [0x1400d91c0], 0
jne 0x14000ff3c
test r13b, r13b
je 0x14000fe86
cmp byte [0x1400d9185], 0
je 0x14000fe35
movss xmm0, dword [0x1400a3854]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x1400966f0]
cvttsd2si eax, xmm0
cvttss2si ecx, xmm12
cvttss2si r9d, xmm10
cvttsd2si r8d, xmm11
movaps xmm0, xmm10
mulss xmm0, xmm13
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movaps xmm2, xmm9
subsd xmm2, xmm1
cvttsd2si edx, xmm2
mov dword [rsp + 0x30], eax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
call fcn.14000cde0
cvttss2si eax, dword [0x1400a3854]
cvttss2si ecx, xmm12
cvttss2si r9d, xmm10
cvttsd2si r8d, xmm11
movaps xmm0, xmm10
mulss xmm0, xmm13
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movaps xmm2, xmm9
subsd xmm2, xmm1
cvttsd2si edx, xmm2
mov dword [rsp + 0x30], eax
lea rbx, [0x1400a47d0]
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], ecx
call fcn.14000cde0
jmp 0x14000ff43
cmp byte [0x1400d9185], 0
je 0x14000fee7
movss xmm0, dword [0x1400a3854]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x1400966f0]
cvttsd2si eax, xmm0
cvttss2si ecx, xmm12
cvttss2si r9d, xmm10
cvttsd2si r8d, xmm11
movaps xmm0, xmm10
mulss xmm0, xmm13
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movaps xmm2, xmm9
subsd xmm2, xmm1
cvttsd2si edx, xmm2
mov dword [rsp + 0x30], eax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
call fcn.14000cde0
cvttss2si eax, dword [0x1400a3854]
cvttss2si ecx, xmm12
cvttss2si r9d, xmm10
cvttsd2si r8d, xmm11
movaps xmm0, xmm10
mulss xmm0, xmm13
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movaps xmm2, xmm9
subsd xmm2, xmm1
cvttsd2si edx, xmm2
mov dword [rsp + 0x30], eax
lea rdi, [0x1400a47a0]
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], ecx
call fcn.14000cde0
lea rbx, [0x1400a47d0]
jmp 0x14000ff4a
lea rbx, [0x1400a47d0]
lea rdi, [0x1400a47a0]
cmp byte [0x1400a34c7], 0
je 0x1400101b7
cmp dword [0x1400d91c0], 1
jne 0x140010083
test r13b, r13b
je 0x14000ffdd
cmp byte [0x1400d9185], 0
je 0x14000ffca
movss xmm0, dword [0x1400a3854]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x1400966f0]
cvttsd2si eax, xmm0
cvttss2si ecx, xmm12
cvttss2si r9d, xmm10
cvttsd2si r8d, xmm11
movaps xmm0, xmm10
mulss xmm0, xmm13
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movaps xmm2, xmm9
subsd xmm2, xmm1
cvttsd2si edx, xmm2
mov dword [rsp + 0x30], eax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
call fcn.14000ced0
cvttss2si eax, dword [0x1400a3854]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rbx
jmp 0x14001004f
cmp byte [0x1400d9185], 0
je 0x14001003e
movss xmm0, dword [0x1400a3854]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x1400966f0]
cvttsd2si eax, xmm0
cvttss2si ecx, xmm12
cvttss2si r9d, xmm10
cvttsd2si r8d, xmm11
movaps xmm0, xmm10
mulss xmm0, xmm13
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movaps xmm2, xmm9
subsd xmm2, xmm1
cvttsd2si edx, xmm2
mov dword [rsp + 0x30], eax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
call fcn.14000ced0
cvttss2si eax, dword [0x1400a3854]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rdi
movaps xmm0, xmm10
xorps xmm1, xmm1
mulss xmm0, xmm13
cvtss2sd xmm1, xmm0
movaps xmm2, xmm9
cvttss2si ecx, xmm12
subsd xmm2, xmm1
mov dword [rsp + 0x20], ecx
cvttss2si r9d, xmm10
cvttsd2si r8d, xmm11
cvttsd2si edx, xmm2
call fcn.14000ced0
cmp byte [0x1400a34c7], 0
je 0x1400101b7
cmp dword [0x1400d91c0], 2
jne 0x1400101b7
test r13b, r13b
je 0x140010116
cmp byte [0x1400d9185], 0
je 0x140010103
movss xmm0, dword [0x1400a3854]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x1400966f0]
cvttsd2si eax, xmm0
cvttss2si ecx, xmm12
cvttss2si r9d, xmm10
cvttsd2si r8d, xmm11
movaps xmm0, xmm10
mulss xmm0, xmm13
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movaps xmm2, xmm9
subsd xmm2, xmm1
cvttsd2si edx, xmm2
mov dword [rsp + 0x30], eax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
call fcn.14000d290
cvttss2si eax, dword [0x1400a3854]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rbx
jmp 0x140010188
cmp byte [0x1400d9185], 0
je 0x140010177
movss xmm0, dword [0x1400a3854]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x1400966f0]
cvttsd2si eax, xmm0
cvttss2si ecx, xmm12
cvttss2si r9d, xmm10
cvttsd2si r8d, xmm11
movaps xmm0, xmm10
mulss xmm0, xmm13
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movaps xmm2, xmm9
subsd xmm2, xmm1
cvttsd2si edx, xmm2
mov dword [rsp + 0x30], eax
lea rax, [rbp + 0x20]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
call fcn.14000d290
cvttss2si eax, dword [0x1400a3854]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rdi
cvttss2si r9d, xmm10
xorps xmm0, xmm0
mulss xmm10, xmm13
cvtss2sd xmm0, xmm10
cvttss2si ecx, xmm12
subsd xmm9, xmm0
mov dword [rsp + 0x20], ecx
cvttsd2si r8d, xmm11
cvttsd2si edx, xmm9
call fcn.14000d290
cmp byte [0x1400d9187], 0
je 0x140010348
mov eax, dword [0x1400d91bc]
test eax, eax
jne 0x14001022b
movsd xmm6, qword [rbp + 0x1d0]
movsd xmm7, qword [rbp + 0x1c8]
test r13b, r13b
je 0x140010215
cvttss2si eax, dword [0x1400a3858]
cvttsd2si ecx, xmm6
cvttsd2si r9d, xmm7
cvttsd2si edx, xmm8
mov dword [rsp + 0x30], eax
lea rax, [0x1400a4780]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
xor r8d, r8d
call fcn.14000cc50
cvttsd2si ecx, xmm6
cvttsd2si r9d, xmm7
cvttsd2si edx, xmm8
xor r8d, r8d
jmp 0x140010327
cmp eax, 1
jne 0x1400102d4
movsd xmm6, qword [rbp + 0x1d0]
movsd xmm7, qword [rbp + 0x1c8]
test r13b, r13b
je 0x140010290
cvttss2si ecx, dword [0x1400a3858]
cvttsd2si r10d, xmm6
cvttsd2si r9d, xmm7
mov eax, dword [0x1400d9000]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
mov eax, dword [0x1400d9084]
cdq
sub eax, edx
sar eax, 1
mov edx, eax
mov dword [rsp + 0x30], ecx
lea rax, [0x1400a4780]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r10d
call fcn.14000cc50
cvttss2si ecx, dword [0x1400a3858]
cvttsd2si r10d, xmm6
cvttsd2si r9d, xmm7
mov eax, dword [0x1400d9000]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
mov eax, dword [0x1400d9084]
cdq
sub eax, edx
sar eax, 1
mov edx, eax
mov dword [rsp + 0x30], ecx
lea rax, [0x1400a47b8]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r10d
jmp 0x140010343
cmp eax, 2
jne 0x140010348
test r13b, r13b
je 0x140010313
cvttss2si eax, dword [0x1400a3858]
cvttsd2si ecx, xmm14
cvttsd2si r9d, xmm8
mov dword [rsp + 0x30], eax
lea rax, [0x1400a4780]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
mov r8d, dword [0x1400d9000]
mov edx, r12d
call fcn.14000cc50
cvttsd2si ecx, xmm14
cvttsd2si r9d, xmm8
mov r8d, dword [0x1400d9000]
mov edx, r12d
cvttss2si eax, dword [0x1400a3858]
mov dword [rsp + 0x30], eax
lea rax, [0x1400a47b8]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], ecx
call fcn.14000cc50
cmp byte [0x1400d9184], 0
je 0x140010980
mov rcx, qword [rbp - 0x28]
mov rcx, qword [rcx]
test rcx, rcx
je 0x140010980
xorps xmm0, xmm0
movups xmmword [rbp + 0x1e0], xmm0
xorps xmm1, xmm1
movups xmmword [rbp + 0x1f0], xmm1
mov rsi, r14
mov qword [rbp + 0x200], r14
mov edi, 0xf
mov qword [rbp + 0x208], rdi
mov byte [rbp + 0x1f0], 0
movups xmmword [rbp + 0x210], xmm0
mov qword [rbp + 0x220], r14
mov qword [rbp + 0x228], rdi
mov byte [rbp + 0x210], 0
add rcx, 0x9d8
call fcn.14001c7e0
mov rbx, rax
lea rcx, [rax - 0x400001]
movabs rax, 0x7fffffffffbffffe
cmp rcx, rax
ja 0x140010888
lea rcx, [rbx + 0xf0c]
call fcn.14001ca50
mov r12d, eax
mov dword [rbp + 0x1e0], eax
lea rcx, [rbx + 0x510]
call fcn.14001c7e0
mov rbx, rax
lea rcx, [rax - 0x400001]
movabs rax, 0x7fffffffffbffffe
cmp rcx, rax
ja 0x140010974
mov byte [rbp + 0x530], 0
lea rcx, [rbx + 0xa2]
mov r8d, 1
lea rdx, [rbp + 0x530]
call fcn.140008950
movzx r15d, byte [rbp + 0x530]
mov byte [rbp + 0x1e8], r15b
lea rcx, [rbx + 0x40]
call fcn.14001c7e0
mov rbx, rax
lea rcx, [rax - 0x400001]
movabs rax, 0x7fffffffffbffffe
cmp rcx, rax
ja 0x140010548
lea rcx, [rbx + 0x28]
call fcn.14001c7e0
lea rcx, [rbx + 0x30]
call fcn.14001ca50
test eax, eax
jle 0x140010548
cmp eax, 0x32
jge 0x140010548
movsxd rcx, eax
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovb rax, rcx
mov rcx, rax
call fcn.14006fb3c
mov r14, rax
mov rdx, rax
lea rcx, [rbp - 0x20]
call fcn.14001b880
nop
lea rdx, [rbp - 0x20]
cmp qword [rbp - 8], 7
cmova rdx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x10]
lea r8, [rdx + rax*2]
lea rdx, [rbp - 0x20]
cmova rdx, qword [rbp - 0x20]
lea rcx, [rbp - 0x78]
call fcn.14001cbf0
mov rbx, rax
lea rax, [rbp + 0x1f0]
cmp rax, rbx
je 0x14001052a
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x1f0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x200], xmm1
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], rdi
mov byte [rbx], al
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rdi, xmm0
movq rsi, xmm1
lea rcx, [rbp - 0x78]
call fcn.14000b750
mov rcx, r14
call fcn.14006f6c8
nop
lea rcx, [rbp - 0x20]
call fcn.14001b6b0
xor r14d, r14d
mov dword [0x1400d5140], r12d
mov eax, dword [rbp + 0x1e4]
mov dword [0x1400d5144], eax
mov byte [0x1400d5148], r15b
lea rdx, [rbp + 0x1f0]
cmp rdi, 0xf
cmova rdx, qword [rbp + 0x1f0]
mov r8, rsi
lea rdi, [0x1400d5150]
mov rcx, rdi
call fcn.14001bd00
lea rdx, [rbp + 0x210]
mov r8, qword [rbp + 0x220]
lea rcx, [0x1400d5170]
cmp qword [rbp + 0x228], 0xf
jbe 0x1400105bb
mov rdx, qword [rbp + 0x210]
call fcn.14001bd00
lea rax, [0x1400d5120]
jmp 0x1400105cc
call fcn.14001bd00
lea rax, [0x1400d5120]
cmp rax, rdi
je 0x1400105ee
mov rdx, rdi
cmp qword [0x1400d5168], 0xf
cmova rdx, qword [0x1400d5150]
mov r8, qword [0x1400d5160]
mov rcx, rax
call fcn.14001bd00
cmp byte [0x1400d9184], 0
je 0x140010970
mov r8, rdi
lea rdx, [0x14008f4f6]
lea rcx, [rbp - 0x78]
call fcn.14001c5f0
nop
mov rdx, qword [rax + 0x10]
mov qword [rax + 0x10], rdx
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x140010624
mov rcx, qword [rax]
mov byte [rcx + rdx], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], r14
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov eax, dword [rsp + 0x50]
or eax, 0x10
mov dword [rsp + 0x50], eax
lea rcx, [rbp - 0x78]
call fcn.14000b750
lea rdx, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
cmova rdx, qword [rsp + 0x60]
movss xmm6, dword [0x1400969c4]
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x138]
call fcn.140027fc0
mov ebx, 5
cmp byte [0x1400d91c7], 0
mov eax, 0x1e
cmovne ebx, eax
cmp byte [0x1400d5148], 0
jne 0x1400107af
mov rcx, rdi
cmp qword [0x1400d5168], 0xf
cmova rcx, qword [0x1400d5150]
lea rdx, str.Pickaxe
call qword [sym.imp.VCRUNTIME140.dll_strstr]
test rax, rax
jne 0x1400107af
lea rdx, str.Building_Plan
lea rcx, [rbp - 0x20]
call fcn.14001ba70
nop
lea rdx, [rbp - 0x20]
cmp qword [rbp - 8], 0xf
cmova rdx, qword [rbp - 0x20]
movss dword [rsp + 0x20], xmm6
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x230]
call fcn.140027fc0
lea rax, [rbp - 0x20]
cmp qword [rbp - 8], 0xf
cmova rax, qword [rbp - 0x20]
movd xmm1, dword [0x1400a47cc]
cvtdq2ps xmm1, xmm1
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [rbp + 0x88]
cvttsd2si r9d, xmm0
movss xmm2, dword [rbp + 0x230]
mulss xmm2, xmm13
cvtps2pd xmm0, xmm2
movsd xmm3, qword [rbp + 0x80]
subsd xmm3, xmm0
cvttsd2si r8d, xmm3
mov qword [rsp + 0x38], rax
movzx eax, byte [0x1400d9186]
mov byte [rsp + 0x30], al
mov byte [rsp + 0x28], 0
lea rax, [0x1400a47e0]
mov qword [rsp + 0x20], rax
movd edx, xmm1
mov r15, qword [rbp - 0x30]
mov rcx, r15
call fcn.14000be90
nop
lea rcx, [rbp - 0x20]
call fcn.14000b750
jmp 0x140010833
lea rax, [rsp + 0x60]
cmp qword [rsp + 0x78], 0xf
movd xmm0, ebx
cmova rax, qword [rsp + 0x60]
cvtdq2pd xmm0, xmm0
mov qword [rsp + 0x38], rax
addsd xmm0, qword [rbp + 0x88]
movss xmm2, dword [rbp + 0x138]
movzx eax, byte [0x1400d9186]
cvttsd2si r9d, xmm0
mulss xmm2, xmm13
mov byte [rsp + 0x30], al
movd xmm1, dword [0x1400a47cc]
cvtps2pd xmm0, xmm2
movsd xmm3, qword [rbp + 0x80]
mov byte [rsp + 0x28], 0
lea rax, [0x1400a47e0]
cvtdq2ps xmm1, xmm1
subsd xmm3, xmm0
mov r15, qword [rbp - 0x30]
mov qword [rsp + 0x20], rax
movd edx, xmm1
cvttsd2si r8d, xmm3
mov rcx, r15
call fcn.14000be90
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x140010870
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001086b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001169d
call fcn.14006f6c8
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], 0
jmp 0x140010974
cmp byte [0x1400d9184], 0
je 0x140010974
mov ebx, 5
cmp byte [0x1400d91c7], 0
mov eax, 0x1e
cmovne ebx, eax
lea rdx, str.No_Item
lea rcx, [rbp - 0x20]
call fcn.14001ba70
nop
lea rdx, [rbp - 0x20]
cmp qword [rbp - 8], 0xf
cmova rdx, qword [rbp - 0x20]
movss xmm0, dword [0x1400969c4]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0x250]
call fcn.140027fc0
lea rax, [rbp - 0x20]
cmp qword [rbp - 8], 0xf
cmova rax, qword [rbp - 0x20]
movd xmm1, dword [0x1400a47cc]
cvtdq2ps xmm1, xmm1
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [rbp + 0x88]
cvttsd2si r9d, xmm0
movss xmm2, dword [rbp + 0x250]
mulss xmm2, xmm13
cvtps2pd xmm0, xmm2
movsd xmm3, qword [rbp + 0x80]
subsd xmm3, xmm0
cvttsd2si r8d, xmm3
mov qword [rsp + 0x38], rax
movzx eax, byte [0x1400d9186]
mov byte [rsp + 0x30], al
mov byte [rsp + 0x28], 0
lea rax, [0x1400a47e0]
mov qword [rsp + 0x20], rax
movd edx, xmm1
mov rcx, r15
call fcn.14000be90
nop
lea rcx, [rbp - 0x20]
call fcn.14000b750
jmp 0x140010974
mov r15, qword [rbp - 0x30]
lea rcx, [rbp + 0x1e0]
call fcn.140008b90
movss xmm11, dword [0x1400967ec]
xor esi, esi
lea r12, [0x1400a4750]
cmp byte [0x1400d9016], sil
je 0x140010ada
mov ebx, r14d
mov r14, qword [rbp - 0x28]
nop word [rax + rax]
mov r8d, ebx
mov rdx, qword [r14 + 8]
lea rcx, [rsp + 0x60]
call fcn.1400099d0
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x50], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp - 0x40], xmm1
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x430]
call fcn.140009640
movsd xmm1, qword [rax]
movsd xmm2, qword [rax + 8]
mov word [rbp - 0x20], 0xc98d
mov byte [rbp - 0x1e], 0x64
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x1d], xmm0
mov dword [rbp - 0xd], eax
mov word [rbp - 9], ax
mov byte [rbp - 7], al
mov qword [rbp + 0x530], rsi
mov rax, qword [rbp + 0x530]
cmp rax, 0x1a
jae 0x140010a86
movabs rsi, 0x7c829ad8e469de11
nop word [rax + rax]
mov rcx, qword [rbp + 0x530]
mov rax, qword [rbp + 0x530]
movzx edx, byte [rbp + rax - 0x20]
add rcx, rsi
mov rax, rcx
and rax, rdx
imul r8, rax, 0xfffffffffffffffe
add r8, rcx
add r8, rdx
sub r8b, 0x77
mov rax, qword [rbp + 0x530]
mov byte [rbp + rax - 0x20], r8b
mov rax, qword [rbp + 0x530]
inc rax
mov qword [rbp + 0x530], rax
mov rax, qword [rbp + 0x530]
cmp rax, 0x1a
jb 0x140010a30
xor esi, esi
cvttsd2si r9d, xmm2
cvttsd2si r8d, xmm1
mov dword [rsp + 0x40], ebx
lea rax, [rbp - 0x20]
mov qword [rsp + 0x38], rax
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], 0
mov qword [rsp + 0x20], r12
movaps xmm1, xmm11
movd edx, xmm1
mov rcx, r15
call fcn.14000be90
inc ebx
cmp ebx, 0x6e
jl 0x1400109b0
movsd xmm7, qword [rbp + 0x70]
movsd xmm8, qword [rbp + 0x68]
movsd xmm15, qword [rbp + 0x60]
jmp 0x140010aef
movsd xmm7, qword [rbp + 0x240]
movsd xmm8, qword [rbp + 0xd0]
mov r14, qword [rbp - 0x28]
cmp byte [0x1400d90ad], 0
je 0x140010eaa
lea rax, [fcn.140008b80]
mov qword [rsp + 0x20], rax
lea r9, [0x140008b70]
mov edx, 0x10
mov r8d, edx
lea rcx, [rbp + 0x2b0]
call fcn.14006fb70
nop
movdqa xmm0, xmmword [0x140096c00]
movdqu xmmword [rbp - 0x20], xmm0
movdqa xmm0, xmmword [0x140096c30]
movdqu xmmword [rbp - 0x10], xmm0
movdqa xmm0, xmmword [0x140096cb0]
movdqu xmmword [rbp], xmm0
movdqa xmm0, xmmword [0x140096ca0]
movdqu xmmword [rbp + 0x10], xmm0
mov rbx, rsi
lea rdi, [rbp + 0x2b0]
mov r8d, dword [rbp + rbx*4 - 0x20]
mov rdx, qword [r14 + 8]
lea rcx, [rsp + 0x60]
call fcn.1400099d0
movups xmm0, xmmword [rax]
movaps xmmword [rbp - 0x50], xmm0
movsd xmm1, qword [rax + 0x10]
movsd qword [rbp - 0x40], xmm1
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0xa0]
call fcn.140009640
movups xmm0, xmmword [rax]
movups xmmword [rdi], xmm0
inc rbx
lea rdi, [rdi + 0x10]
cmp rbx, 0x10
jl 0x140010b62
movdqa xmm0, xmmword [0x140096bc0]
movdqu xmmword [rbp + 0x3b0], xmm0
movdqa xmm0, xmmword [0x140096bb0]
movdqu xmmword [rbp + 0x3c0], xmm0
movdqa xmm0, xmmword [0x140096be0]
movdqu xmmword [rbp + 0x3d0], xmm0
movdqa xmm0, xmmword [0x140096b90]
movdqu xmmword [rbp + 0x3e0], xmm0
movdqa xmm0, xmmword [0x140096c10]
movdqu xmmword [rbp + 0x3f0], xmm0
movdqa xmm0, xmmword [0x140096c40]
movdqu xmmword [rbp + 0x400], xmm0
movdqa xmm0, xmmword [0x140096c50]
movdqu xmmword [rbp + 0x410], xmm0
mov qword [rbp + 0x420], 0xf
mov rax, qword [0x1400d9270]
mov rax, qword [rax + 0x48c0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140025250
mov rcx, qword [rax + 0x38]
movss xmm1, dword [rcx + 0x28]
movss xmm0, dword [rcx + 0x24]
movss dword [rbp + 0x140], xmm0
movss dword [rbp + 0x144], xmm1
movss xmm2, dword [rcx + 0x20]
movss xmm0, dword [rcx + 0x1c]
movss dword [rbp + 0x148], xmm0
movss dword [rbp + 0x14c], xmm2
xor r9d, r9d
lea r8, [rbp + 0x140]
lea rdx, [rbp + 0x148]
mov rcx, rax
call fcn.1400417f0
lea rbx, [rbp + 0x3b0]
movdqa xmm13, xmmword [0x140096e90]
movss xmm10, dword [0x1400966c8]
lea rdi, [0x1400a4770]
movsxd rcx, dword [rbx]
mov rax, rcx
add rax, rax
movsd xmm1, qword [rbp + rax*8 + 0x2b8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + rax*8 + 0x2b0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x78], xmm0
movss dword [rbp + 0x7c], xmm1
movsxd rax, dword [rbx + 4]
add rax, rax
movsd xmm1, qword [rbp + rax*8 + 0x2b8]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp + rax*8 + 0x2b0]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x58], xmm0
movss dword [rbp + 0x5c], xmm1
cmp ecx, 0x6e
jne 0x140010d1b
addss xmm1, xmm11
movss dword [rbp + 0x5c], xmm1
cmp byte [0x1400d9185], 0
je 0x140010d7a
mov rax, qword [0x1400d9270]
mov rax, qword [rax + 0x48c0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140025250
mov r10, rax
movss xmm6, dword [0x1400a3858]
addss xmm6, xmm10
movups xmmword [rbp + 0x20], xmm13
lea rcx, [rbp + 0x20]
call fcn.140021810
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x78]
mov rcx, r10
call fcn.140043e70
test r13b, r13b
jne 0x140010dce
mov rax, qword [0x1400d9270]
mov rax, qword [rax + 0x48c0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140025250
mov r10, rax
lea rcx, [0x1400a4760]
call fcn.140021810
movss xmm0, dword [0x1400a3858]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x78]
mov rcx, r10
call fcn.140043e70
mov rax, qword [0x1400d9270]
mov rax, qword [rax + 0x48c0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140025250
mov r10, rax
mov rcx, rdi
call fcn.140021810
movss xmm0, dword [0x1400a3858]
movss dword [rsp + 0x20], xmm0
mov r9d, eax
lea r8, [rbp + 0x58]
lea rdx, [rbp + 0x78]
mov rcx, r10
call fcn.140043e70
add rbx, 8
lea rax, [rbp + 0x428]
cmp rbx, rax
jne 0x140010cb4
movss xmm13, dword [0x140096640]
mov rax, qword [0x1400d9270]
mov rax, qword [rax + 0x48c0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140025250
mov rdx, rax
mov eax, dword [rax + 0x58]
sub eax, 1
mov dword [rdx + 0x58], eax
jne 0x140010e6d
mov rcx, qword [rdx + 0x38]
add rcx, 0x1c
jmp 0x140010e7a
dec eax
movsxd rcx, eax
shl rcx, 4
add rcx, qword [rdx + 0x60]
movups xmm0, xmmword [rcx]
movups xmmword [rdx + 0x88], xmm0
mov rcx, rdx
call fcn.140041610
nop
lea r9, [fcn.140008b80]
mov edx, 0x10
mov r8d, edx
lea rcx, [rbp + 0x2b0]
call fcn.14006f82c
jmp 0x140010eba
movss xmm10, dword [0x1400966c8]
lea rdi, [0x1400a4770]
cmp byte [0x1400d90af], 0
je 0x1400115d3
lea rax, [0x1400a4760]
test r13b, r13b
cmovne rax, rdi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x20], xmm0
movaps xmm0, xmm15
lea rdx, [rbp - 0x50]
unpcklpd xmm0, xmm8
movups xmmword [rbp + 0x60], xmm0
movaps xmmword [rbp - 0x50], xmm0
cmp qword [r14], 0
jne 0x1400112a5
movaps xmm1, xmm7
addsd xmm1, qword [0x140096728]
movsd qword [rbp + 0x70], xmm1
movsd qword [rbp - 0x40], xmm1
lea rcx, [rbp + 0x258]
call fcn.140009640
subsd xmm15, qword [0x1400d9320]
subsd xmm8, qword [0x1400d9328]
subsd xmm7, qword [0x1400d9330]
mulsd xmm15, xmm15
mulsd xmm8, xmm8
addsd xmm15, xmm8
mulsd xmm7, xmm7
addsd xmm15, xmm7
xorps xmm0, xmm0
ucomisd xmm0, xmm15
ja 0x140010f62
xorps xmm0, xmm0
sqrtsd xmm0, xmm15
jmp 0x140010f6b
movaps xmm0, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
xorps xmm7, xmm7
cvtsi2ss xmm7, dword [0x1400d9000]
movss xmm0, dword [0x1400d9268]
mulss xmm0, dword [0x14009674c]
divss xmm0, dword [0x140096928]
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
addss xmm6, xmm6
mulss xmm0, xmm6
divss xmm7, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [0x1400a385c]
mulss xmm7, xmm0
movsd xmm6, qword [rbp + 0x260]
addsd xmm6, qword [0x140096758]
movsd qword [rbp + 0x260], xmm6
movsd xmm9, qword [rbp + 0x258]
cmp byte [0x1400d9185], 0
je 0x1400110b8
mov rax, qword [0x1400d9270]
mov rcx, qword [rax + 0x48c0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rcx]
call fcn.140025250
mov rbx, rax
movss xmm8, dword [0x1400a3858]
addss xmm8, xmm10
movdqa xmm10, xmmword [0x140096e90]
movups xmmword [rbp + 0xd0], xmm10
lea rcx, [rbp + 0xd0]
call fcn.140021810
mov edi, eax
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x150], xmm0
cvtpd2ps xmm1, xmm6
movss dword [rbp + 0x154], xmm1
test eax, 0xff000000
je 0x1400110c1
movss xmm11, dword [0x140096798]
xorps xmm12, xmm12
comiss xmm13, xmm7
ja 0x1400110ce
movaps xmm2, xmm7
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x31
movss dword [rsp + 0x20], xmm11
xorps xmm3, xmm3
lea rdx, [rbp + 0x150]
mov rcx, rbx
call fcn.140043690
movss dword [rsp + 0x28], xmm8
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140041c70
mov dword [rbx + 0x78], esi
jmp 0x1400110ce
movdqa xmm10, xmmword [0x140096e90]
movss xmm11, dword [0x140096798]
xorps xmm12, xmm12
cvttss2si r13d, dword [0x1400a3858]
lea rcx, [rbp + 0x20]
call fcn.140021810
mov ecx, eax
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
shufps xmm0, xmm0, 0
cvttss2si esi, xmm7
cvttsd2si r14d, xmm6
cvttsd2si r15d, xmm9
movups xmmword [rbp + 0x1b8], xmm0
lea rcx, [rbp + 0x1b8]
call fcn.140021810
mov r12d, eax
cmp byte [0x1400d9185], 0
je 0x1400111e9
mov rcx, qword [0x1400d9270]
mov rdx, qword [rcx + 0x48c0]
mov rcx, qword [rdx]
lea r8, str.Background
xor edx, edx
call fcn.140025250
mov rbx, rax
movups xmmword [rbp + 0x20], xmm10
lea rcx, [rbp + 0x20]
call fcn.140021810
mov edi, eax
movd xmm0, r15d
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x158], xmm0
movd xmm1, r14d
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x15c], xmm1
movd xmm2, esi
cvtdq2ps xmm2, xmm2
test eax, 0xff000000
je 0x1400111e9
comiss xmm13, xmm2
ja 0x1400111e9
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x31
movss dword [rsp + 0x20], xmm11
xorps xmm3, xmm3
lea rdx, [rbp + 0x158]
mov rcx, rbx
call fcn.140043690
movd xmm0, r13d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x1400966d8]
cvtpd2ps xmm0, xmm0
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140041c70
xor eax, eax
mov dword [rbx + 0x78], eax
mov rax, qword [0x1400d9270]
mov rcx, qword [rax + 0x48c0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rcx]
call fcn.140025250
mov rbx, rax
movd xmm0, r15d
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x160], xmm0
movd xmm1, r14d
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x164], xmm1
movd xmm2, esi
cvtdq2ps xmm2, xmm2
test r12d, 0xff000000
je 0x1400115d9
comiss xmm13, xmm2
ja 0x1400115d9
lea rdx, [rbp + 0x160]
mov dword [rsp + 0x28], 0x31
xorps xmm3, xmm3
movss dword [rsp + 0x20], xmm11
subss xmm2, xmm13
mov rcx, rbx
call fcn.140043690
movd xmm0, r13d
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, r12d
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140041c70
xor esi, esi
mov dword [rbx + 0x78], esi
jmp 0x1400115db
movsd qword [rbp + 0x70], xmm7
movsd qword [rbp - 0x40], xmm7
lea rcx, [rbp + 0x40]
call fcn.140009640
subsd xmm15, qword [0x1400d9320]
subsd xmm8, qword [0x1400d9328]
subsd xmm7, qword [0x1400d9330]
mulsd xmm15, xmm15
mulsd xmm8, xmm8
addsd xmm15, xmm8
mulsd xmm7, xmm7
addsd xmm15, xmm7
xorps xmm0, xmm0
ucomisd xmm0, xmm15
ja 0x1400112fe
xorps xmm0, xmm0
sqrtsd xmm0, xmm15
jmp 0x140011307
movaps xmm0, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
xorps xmm7, xmm7
cvtsi2ss xmm7, dword [0x1400d9000]
movss xmm0, dword [0x1400d9268]
mulss xmm0, dword [0x14009674c]
divss xmm0, dword [0x140096928]
call sub.api_ms_win_crt_math_l1_1_0.dll_tanf
addss xmm6, xmm6
mulss xmm0, xmm6
divss xmm7, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [0x1400a385c]
mulss xmm7, xmm0
movsd xmm8, qword [rbp + 0x48]
movsd xmm9, qword [rbp + 0x40]
cmp byte [0x1400d9185], 0
je 0x14001143e
mov rax, qword [0x1400d9270]
mov rcx, qword [rax + 0x48c0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rcx]
call fcn.140025250
mov rbx, rax
movss xmm6, dword [0x1400a3858]
addss xmm6, xmm10
movdqa xmm10, xmmword [0x140096e90]
movups xmmword [rbp + 0xd0], xmm10
lea rcx, [rbp + 0xd0]
call fcn.140021810
mov edi, eax
cvtpd2ps xmm0, xmm9
movss dword [rbp + 0x168], xmm0
cvtpd2ps xmm1, xmm8
movss dword [rbp + 0x16c], xmm1
test eax, 0xff000000
je 0x140011447
movss xmm11, dword [0x140096798]
xorps xmm12, xmm12
comiss xmm13, xmm7
ja 0x140011454
movaps xmm2, xmm7
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x31
movss dword [rsp + 0x20], xmm11
xorps xmm3, xmm3
lea rdx, [rbp + 0x168]
mov rcx, rbx
call fcn.140043690
movss dword [rsp + 0x28], xmm6
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140041c70
mov dword [rbx + 0x78], esi
jmp 0x140011454
movdqa xmm10, xmmword [0x140096e90]
movss xmm11, dword [0x140096798]
xorps xmm12, xmm12
cvttss2si r13d, dword [0x1400a3858]
lea rcx, [rbp + 0x20]
call fcn.140021810
mov ecx, eax
xorps xmm0, xmm0
cvtsi2ss xmm0, rcx
shufps xmm0, xmm0, 0
cvttss2si esi, xmm7
cvttsd2si r14d, xmm8
cvttsd2si r15d, xmm9
movups xmmword [rbp + 0x90], xmm0
lea rcx, [rbp + 0x90]
call fcn.140021810
mov r12d, eax
cmp byte [0x1400d9185], 0
je 0x14001156f
mov rcx, qword [0x1400d9270]
mov rdx, qword [rcx + 0x48c0]
mov rcx, qword [rdx]
lea r8, str.Background
xor edx, edx
call fcn.140025250
mov rbx, rax
movups xmmword [rbp + 0x20], xmm10
lea rcx, [rbp + 0x20]
call fcn.140021810
mov edi, eax
movd xmm0, r15d
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x170], xmm0
movd xmm1, r14d
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x174], xmm1
movd xmm2, esi
cvtdq2ps xmm2, xmm2
test eax, 0xff000000
je 0x14001156f
comiss xmm13, xmm2
ja 0x14001156f
subss xmm2, xmm13
mov dword [rsp + 0x28], 0x31
movss dword [rsp + 0x20], xmm11
xorps xmm3, xmm3
lea rdx, [rbp + 0x170]
mov rcx, rbx
call fcn.140043690
movd xmm0, r13d
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x1400966d8]
cvtpd2ps xmm0, xmm0
movss dword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.140041c70
xor eax, eax
mov dword [rbx + 0x78], eax
mov rax, qword [0x1400d9270]
mov rcx, qword [rax + 0x48c0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rcx]
call fcn.140025250
mov rbx, rax
movd xmm0, r15d
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0x190], xmm0
movd xmm1, r14d
cvtdq2ps xmm1, xmm1
movss dword [rbp + 0x194], xmm1
movd xmm2, esi
cvtdq2ps xmm2, xmm2
test r12d, 0xff000000
je 0x1400115d9
comiss xmm13, xmm2
ja 0x1400115d9
lea rdx, [rbp + 0x190]
jmp 0x140011250
xorps xmm12, xmm12
jmp 0x1400115ea
xor esi, esi
lea r12, [0x1400a4750]
mov r15, qword [rbp - 0x30]
mov r14, qword [rbp - 0x28]
movabs rdi, 0xcccccccccccccccd
add r14, 0x28
mov qword [rbp - 0x28], r14
movss xmm13, dword [0x1400966c8]
cmp r14, qword [rbp + 0x238]
jne 0x14000e86a
mov edi, 2
mov rcx, qword [0x1400d9008]
test rcx, rcx
je 0x140011be6
cmp byte [0x1400a34c9], 0
je 0x140011be6
add rcx, 0x310
call fcn.14001c7e0
mov rbx, rax
xorps xmm7, xmm7
movups xmmword [rbp + 0xa0], xmm7
xorps xmm14, xmm14
movsd qword [rbp + 0xb0], xmm14
mov eax, dword [0x1400d9218]
test eax, eax
jne 0x1400116a4
mov r8d, 0x6e
jmp 0x1400116af
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
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]
nop
cmp eax, 1
jne 0x1400116d7
mov r8d, 0x43
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.1400099d0
movups xmm7, xmmword [rax]
movups xmmword [rbp + 0xa0], xmm7
movsd xmm8, qword [rax + 0x10]
movsd qword [rbp + 0xb0], xmm8
jmp 0x1400116ea
cmp eax, 2
jne 0x1400116e1
mov r8d, edi
jmp 0x1400116af
movsd xmm8, qword [rbp + 0xb0]
movaps xmmword [rbp + 0xf0], xmm7
movsd qword [rbp + 0x100], xmm8
lea rdx, [rbp + 0xf0]
lea rcx, [rbp + 0x90]
call fcn.140009640
movsd xmm10, qword [rbp + 0x98]
movsd xmm11, qword [rbp + 0x90]
ucomisd xmm11, xmm14
jp 0x1400117cb
jne 0x1400117cb
ucomisd xmm10, xmm14
jp 0x14001173d
je 0x140011bf7
mov eax, dword [0x1400d9000]
cdq
sub eax, edx
sar eax, 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
subsd xmm0, xmm10
cvtpd2ps xmm0, xmm0
movss xmm1, dword [0x1400966c8]
call fcn.1400708d0
movaps xmm6, xmm0
mov eax, dword [0x1400d9084]
cdq
sub eax, edx
sar eax, 1
movd xmm2, eax
cvtdq2pd xmm2, xmm2
subsd xmm2, xmm11
cvtpd2ps xmm0, xmm2
movaps xmm1, xmm13
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm1, xmm0
addss xmm1, xmm6
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x1400117a6
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x1400117ae
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
movd xmm0, dword [0x1400a4a08]
cvtdq2pd xmm0, xmm0
comisd xmm0, xmm1
jb 0x140011bf7
cmp byte [0x1400a34cc], 0
je 0x1400117e4
mov rcx, rbx
call fcn.140009980
test al, al
je 0x140011bf7
cmp byte [0x1400d91cf], 0
je 0x1400118eb
mov dword [rbp - 0x20], 0x53f78df3
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x1c], xmm0
mov word [rbp - 0xc], ax
mov qword [rbp + 0x530], rsi
mov rax, qword [rbp + 0x530]
cmp rax, 0x16
jae 0x140011882
movabs r9, 0xeccf639fc64b6b3
nop dword [rax]
nop word [rax + rax]
mov r8, qword [rbp + 0x530]
mov rax, qword [rbp + 0x530]
movzx edx, byte [rbp + rax - 0x20]
add r8, r9
movzx eax, r8b
and al, dl
add al, al
sub r8b, al
add r8b, 0x1b
add r8b, dl
mov rax, qword [rbp + 0x530]
mov byte [rbp + rax - 0x20], r8b
mov rax, qword [rbp + 0x530]
inc rax
mov qword [rbp + 0x530], rax
mov rax, qword [rbp + 0x530]
cmp rax, 0x16
jb 0x140011830
movsd xmm10, qword [rbp + 0x98]
movaps xmm0, xmm10
subsd xmm0, qword [0x140096738]
cvttsd2si r9d, xmm0
movsd xmm11, qword [rbp + 0x90]
movaps xmm1, xmm11
subsd xmm1, qword [0x140096708]
cvttsd2si r8d, xmm1
movd xmm1, dword [0x1400a47cc]
cvtdq2ps xmm1, xmm1
lea rax, [rbp - 0x20]
mov qword [rsp + 0x38], rax
movzx eax, byte [0x1400d9186]
mov byte [rsp + 0x30], al
mov byte [rsp + 0x28], 1
mov qword [rsp + 0x20], r12
movd edx, xmm1
mov rcx, r15
call fcn.14000be90
cmp byte [0x1400d91cd], 0
je 0x14001192f
cvttsd2si ecx, xmm10
cvttsd2si r9d, xmm11
mov eax, dword [0x1400d9000]
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
mov eax, dword [0x1400d9084]
cdq
sub eax, edx
sar eax, 1
mov edx, eax
mov dword [rsp + 0x30], 1
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], ecx
call fcn.14000cc50
mov eax, dword [0x1400d9220]
test eax, eax
jne 0x140011941
mov dword [0x1400a4a10], edi
jmp 0x14001197a
cmp eax, 1
jne 0x140011950
mov edi, eax
mov dword [0x1400a4a10], eax
jmp 0x14001197a
cmp eax, 2
jne 0x140011962
mov edi, 5
mov dword [0x1400a4a10], edi
jmp 0x14001197a
cmp eax, 3
jne 0x140011974
mov edi, 6
mov dword [0x1400a4a10], edi
jmp 0x14001197a
mov edi, dword [0x1400a4a10]
mov ecx, edi
call fcn.140008290
test ax, ax
je 0x140011bf7
cmp byte [0x1400a34cb], 0
je 0x140011bf7
mov rax, qword [0x1400d9280]
mov rcx, qword [rax + 0x80]
add rcx, 0x1e40
call fcn.14001c980
movaps xmm9, xmm0
mov rax, qword [0x1400d9280]
mov rcx, qword [rax + 0x80]
add rcx, 0x1e44
call fcn.14001c980
movaps xmm6, xmm0
lea rdx, str._speed_
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001c220
movaps xmm1, xmm9
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___float____ptr64]
mov rcx, rax
lea rdx, str._gravity_scale_
call fcn.14001c220
movaps xmm1, xmm6
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___float____ptr64]
lea rdx, [0x14001c400]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
ucomiss xmm9, xmm12
jp 0x140011a42
jne 0x140011a42
lea rdx, [rbp + 0x530]
call fcn.14000e1e0
movss xmm9, dword [rbp + 0x530]
movss xmm6, dword [rbp + 0x534]
ucomiss xmm6, xmm12
jp 0x140011a67
jne 0x140011a67
lea rdx, [rbp + 0x530]
call fcn.14000e1e0
movss xmm9, dword [rbp + 0x530]
movss xmm6, dword [rbp + 0x534]
mov rcx, qword [0x1400d9008]
add rcx, 0x198
call fcn.14001c7e0
mov rbx, rax
movaps xmmword [rbp + 0xf0], xmm7
movsd qword [rbp + 0x100], xmm8
lea rdx, [rbp + 0xf0]
call fcn.140008c40
movaps xmm12, xmm0
movups xmmword [rbp + 0x68], xmm14
movsd qword [rbp + 0x60], xmm14
lea rcx, [rbx + 0x168]
mov r8d, 0x18
lea rdx, [rbp + 0x60]
call fcn.140008950
xorps xmm0, xmm0
ucomiss xmm9, xmm0
jp 0x140011acd
je 0x140011bb1
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm12
divss xmm0, xmm9
cvtps2pd xmm3, xmm0
movsd xmm7, qword [rbp + 0x60]
mulsd xmm7, xmm3
addsd xmm7, qword [rbp + 0xa0]
movsd xmm2, qword [rbp + 0x68]
mulsd xmm2, xmm3
addsd xmm2, qword [rbp + 0xa8]
mulss xmm6, dword [0x1400969ec]
andps xmm6, xmmword [0x140097120]
mulss xmm6, dword [0x140096640]
mulss xmm0, xmm0
mulss xmm6, xmm0
xorps xmm1, xmm1
cvtss2sd xmm1, xmm6
movsd xmm8, qword [rbp + 0x70]
mulsd xmm8, xmm3
addsd xmm8, xmm1
addsd xmm8, qword [rbp + 0xb0]
unpcklpd xmm7, xmm2
mov rax, qword [0x1400d9270]
mov rcx, qword [rax + 0x48c0]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rcx]
call fcn.140025250
mov r8, rax
movdqa xmm0, xmmword [0x140097030]
movups xmmword [rbp + 0x40], xmm0
cvtpd2ps xmm0, xmm11
movss dword [rbp + 0x530], xmm0
cvtpd2ps xmm1, xmm10
movss dword [rbp + 0x534], xmm1
lea rcx, [rbp + 0x40]
call fcn.140021810
mov r9d, eax
mov dword [rsp + 0x20], esi
movss xmm2, dword [0x140096744]
lea rdx, [rbp + 0x530]
mov rcx, r8
call fcn.140045aa0
movaps xmmword [rbp + 0xf0], xmm7
movsd qword [rbp + 0x100], xmm8
lea rdx, [rbp + 0xf0]
lea rcx, [rbp + 0xa0]
call fcn.140009640
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x40]
call fcn.14000afb0
jmp 0x140011bf7
mov dword [0x1400a34c0], 0x7f7fffff
mov qword [0x1400d9008], rsi
lea r11, [rsp + 0x5e8]
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.140002e70
nop
lea rcx, [0x1400d94cc]
call fcn.14006f778
cmp dword [0x1400d94cc], 0xffffffff
jne 0x14000f0d7
lea rcx, [rsi + 0x2494]
call fcn.14001c980
movss dword [0x1400d94c8], xmm0
lea rcx, [0x1400d94cc]
call fcn.14006f70c
jmp 0x14000f0d7
lea rcx, [0x1400d9578]
call fcn.14006f778
cmp dword [0x1400d9578], 0xffffffff
jne 0x14000f0e6
lea rcx, [rsi + 0x2498]
call fcn.14001c980
movss dword [0x1400d9550], xmm0
lea rcx, [0x1400d9578]
call fcn.14006f70c
jmp 0x14000f0e6
call fcn.140002dd0
int3