Function at 0x140009c40
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x288]
sub rsp, 0x360
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x14004b040]
xor rax, rsp
mov qword [rbp + 0x1b0], rax
xor r14d, r14d
mov ecx, r14d
mov esi, 0x19
mov rdi, qword [rbp - 0x30]
nop word [rax + rax]
lea rbx, [rcx + 0x1000]
mov rax, qword [0x14004b878]
add rax, 0x250
add rcx, rax
call fcn.14000fde0
cmp eax, 0x260e020b
jne 0x140009d24
mov rdi, qword [0x14004b878]
add rdi, 0x118011a8
add rdi, rbx
mov rdx, rdi
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
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___long_long___int64_____ptr64]
lea rdx, [0x14000ffb0]
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]
mov rcx, rbx
sub rsi, 1
jne 0x140009cd0
mov rcx, rdi
call fcn.14000fc90
mov qword [0x14004b830], rax
lea rdx, str.gworld___
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14000fff0
mov rdx, qword [0x14004b830]
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___unsigned_long_long_unsigned___int64_____ptr64]
lea rdx, [0x14000ffb0]
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]
mov rcx, qword [0x14004b830]
add rcx, 0x1d8
call fcn.14000fc90
mov qword [0x14004b840], rax
lea rcx, [rax + 0x38]
call fcn.14000fc90
mov rcx, rax
call fcn.14000fc90
mov qword [0x14004b868], rax
mov rcx, rax
call fcn.14000fc90
mov rcx, qword [0x14004b868]
add rcx, 0x30
call fcn.14000fc90
mov qword [0x14004b838], rax
lea rcx, [rax + 0x338]
call fcn.14000fc90
mov qword [0x14004b860], rax
test rax, rax
je 0x140009ec8
lea rcx, [rax + 0x2b0]
call fcn.14000fc90
mov qword [0x14004b870], rax
mov rcx, qword [0x14004b860]
add rcx, 0x198
call fcn.14000fc90
mov qword [0x14004b848], rax
mov rcx, qword [0x14004b830]
add rcx, 0x30
call fcn.14000fc90
mov rax, qword [0x14004b848]
add rax, 0x120
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
xorps xmm10, xmm10
movsd qword [rbp + 0x40], xmm10
mov dword [rbp + 0x91], r14d
mov word [rbp + 0x95], r14w
mov byte [rbp + 0x97], r14b
mov dword [rbp + 0x70], 0x83b5b69
mov qword [rbp + 0x78], rax
lea rax, [rbp + 0x30]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], 0x18
mov eax, dword [0x14004b780]
mov dword [rbp + 0x74], eax
mov byte [rbp + 0x90], r14b
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, 0x28
lea r8, [rbp + 0x70]
mov edx, 0x225514
mov rcx, qword [0x14004b778]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movups xmm0, xmmword [rbp + 0x30]
movups xmmword [0x14004b938], xmm0
movsd xmm1, qword [rbp + 0x40]
movsd qword [0x14004b948], xmm1
jmp 0x140009ecc
xorps xmm10, xmm10
mov rcx, qword [0x14004b830]
add rcx, 0x160
call fcn.14000fc90
mov qword [0x14004b858], rax
lea rcx, [rax + 0x2a8]
call fcn.14000fc90
mov qword [0x14004b850], rax
movss xmm11, dword [0x1400446c4]
movss dword [rsp + 0x54], xmm11
mov qword [rbp - 0x30], r14
mov edi, 4
mov rax, qword gs:[0x58]
mov rbx, qword [rax]
mov eax, dword [rdi + rbx]
cmp dword [0x14004b9f0], eax
jle 0x140009f6b
lea rcx, [0x14004b9f0]
call fcn.14003c334
cmp dword [0x14004b9f0], 0xffffffff
jne 0x140009f6b
mov rax, qword [0x14004b898]
movss xmm0, dword [rax + 0x10]
movss dword [0x14004b9e8], xmm0
movss xmm1, dword [rax + 0x14]
movss dword [0x14004b9ec], xmm1
lea rcx, [0x14004b9f0]
call fcn.14003c2c8
movss xmm14, dword [0x140044564]
mov eax, dword [rdi + rbx]
cmp dword [0x14004b9e0], eax
jle 0x140009fca
lea rcx, [0x14004b9e0]
call fcn.14003c334
cmp dword [0x14004b9e0], 0xffffffff
jne 0x140009fca
movss xmm1, dword [0x14004b9ec]
mulss xmm1, xmm14
movss xmm0, dword [0x14004b9e8]
mulss xmm0, xmm14
movss dword [0x14004b9d8], xmm0
movss dword [0x14004b9dc], xmm1
lea rcx, [0x14004b9e0]
call fcn.14003c2c8
mov rcx, qword [0x14004b858]
add rcx, 0x2b0
call fcn.14000fde0
mov dword [rbp - 0x7c], eax
mov r12d, r14d
test eax, eax
je 0x14000b346
movdqa xmm15, xmmword [0x140044d00]
movss xmm12, dword [0x1400445c8]
xorps xmm9, xmm9
movss xmm13, dword [0x140044670]
nop word [rax + rax]
lea ecx, [r12*8]
add rcx, qword [0x14004b850]
call fcn.14000fc90
mov r13, rax
lea rcx, [rax + 0x308]
call fcn.14000fc90
mov rbx, rax
test rax, rax
je 0x14000b339
lea rcx, [rax + 0x318]
call fcn.14000fc90
mov r15, rax
mov rcx, qword [0x14004b870]
add rcx, 0x1211
call fcn.14000fde0
lea rcx, [rbx + 0x2b0]
call fcn.14000fc90
lea rcx, [rax + 0x1211]
call fcn.14000fde0
mov byte [rbp + 0x28], 0
mov dword [rbp + 0x91], r14d
mov word [rbp + 0x95], r14w
mov byte [rbp + 0x97], 0
mov dword [rbp + 0x70], 0x83b5b69
lea rax, [rbx + 0x93a]
mov qword [rbp + 0x78], rax
lea rax, [rbp + 0x28]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], 1
mov eax, dword [0x14004b780]
mov dword [rbp + 0x74], eax
mov byte [rbp + 0x90], 0
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, 0x28
lea r8, [rbp + 0x70]
mov edx, 0x225514
mov rcx, qword [0x14004b778]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp rbx, qword [0x14004b860]
je 0x14000b339
mov r8d, 0x42
mov rdx, r15
lea rcx, [rbp + 0xb0]
call fcn.140003b50
mov r8d, 0x6e
mov rdx, r15
lea rcx, [rsp + 0x60]
call fcn.140003b50
mov r8d, dword [0x14004b884]
mov rdx, r15
lea rcx, [rbp - 0x70]
call fcn.140003b50
movsd xmm0, qword [rbp - 0x60]
subsd xmm0, qword [0x1400445e8]
cvtpd2ps xmm4, xmm0
movsd xmm1, qword [rbp - 0x68]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rbp - 0x70]
cvtpd2ps xmm0, xmm0
cvtps2pd xmm2, xmm0
cvtps2pd xmm3, xmm1
cvtps2pd xmm5, xmm4
unpcklpd xmm2, xmm3
movaps xmmword [rbp - 0x70], xmm2
movsd qword [rbp + 0x80], xmm5
movsd qword [rbp - 0x60], xmm5
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x50]
call fcn.1400036c0
movsd xmm8, qword [rsp + 0x70]
movaps xmm0, xmm8
addsd xmm0, qword [0x140044620]
cvtpd2ps xmm2, xmm0
movsd xmm1, qword [rsp + 0x68]
cvtpd2ps xmm1, xmm1
movsd xmm0, qword [rsp + 0x60]
cvtpd2ps xmm0, xmm0
cvtps2pd xmm7, xmm0
cvtps2pd xmm6, xmm1
cvtps2pd xmm3, xmm2
movaps xmm0, xmm7
unpcklpd xmm0, xmm6
movaps xmmword [rbp - 0x70], xmm0
movsd qword [rbp + 0x80], xmm3
movsd qword [rbp - 0x60], xmm3
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 8]
call fcn.1400036c0
cvtpd2ps xmm0, xmm8
cvtps2pd xmm2, xmm0
movaps xmm1, xmm7
unpcklpd xmm1, xmm6
movaps xmmword [rbp - 0x70], xmm1
movsd qword [rbp + 0x80], xmm2
movsd qword [rbp - 0x60], xmm2
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x10]
call fcn.1400036c0
movsd xmm0, qword [rbp + 0xc0]
addsd xmm0, qword [0x140044618]
cvtpd2ps xmm4, xmm0
movsd xmm3, qword [rbp + 0xb8]
cvtpd2ps xmm3, xmm3
movsd xmm1, qword [rbp + 0xb0]
subsd xmm1, qword [0x1400445b0]
cvtpd2ps xmm0, xmm1
cvtps2pd xmm2, xmm0
cvtps2pd xmm3, xmm3
cvtps2pd xmm1, xmm4
unpcklpd xmm2, xmm3
movaps xmmword [rbp + 0xb0], xmm2
movsd qword [rbp + 0x80], xmm1
movsd qword [rbp + 0xc0], xmm1
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0xf0]
call fcn.1400036c0
mov byte [rbp + 0x28], 0
mov dword [rbp + 0x91], r14d
mov word [rbp + 0x95], r14w
mov byte [rbp + 0x97], 0
mov dword [rbp + 0x70], 0x83b5b69
lea rax, [r13 + 0x29a]
mov qword [rbp + 0x78], rax
lea rax, [rbp + 0x28]
mov qword [rbp + 0x80], rax
mov qword [rbp + 0x88], 1
mov eax, dword [0x14004b780]
mov dword [rbp + 0x74], eax
mov byte [rbp + 0x90], 0
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, 0x28
lea r8, [rbp + 0x70]
mov edx, 0x225514
mov rcx, qword [0x14004b778]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movzx eax, byte [rbp + 0x28]
mov byte [rsp + 0x50], al
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
movsd qword [rbp + 0x40], xmm10
mov dword [rbp + 0xd1], r14d
mov word [rbp + 0xd5], r14w
mov byte [rbp + 0xd7], 0
mov dword [rbp + 0xb0], 0x83b5b69
lea rax, [rbx + 0x120]
mov qword [rbp + 0xb8], rax
lea rax, [rbp + 0x30]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], 0x18
mov eax, dword [0x14004b780]
mov dword [rbp + 0xb4], eax
mov byte [rbp + 0xd0], 0
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, 0x28
lea r8, [rbp + 0xb0]
mov edx, 0x225514
mov rcx, qword [0x14004b778]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
movsd xmm0, qword [rbp + 0x30]
subsd xmm0, qword [0x14004b938]
cvtpd2ps xmm0, xmm0
movaps xmm1, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
movaps xmm6, xmm0
movsd xmm0, qword [rbp + 0x38]
subsd xmm0, qword [0x14004b940]
cvtpd2ps xmm0, xmm0
movaps xmm1, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
movsd xmm1, qword [rbp + 0x40]
subsd xmm1, qword [0x14004b948]
cvtpd2ps xmm0, xmm1
movaps xmm1, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_powf
addss xmm6, xmm0
xorps xmm1, xmm1
ucomiss xmm1, xmm6
ja 0x14000a40f
xorps xmm12, xmm12
sqrtss xmm12, xmm6
jmp 0x14000a41b
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm12, xmm0
divss xmm12, dword [0x1400446a4]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
movsd xmm8, qword [rbp]
movaps xmm1, xmm8
subsd xmm1, qword [rbp + 0x58]
andps xmm1, xmmword [0x140044d40]
cvtpd2ps xmm10, xmm1
cvtps2pd xmm0, xmm10
mulsd xmm0, qword [0x1400445b8]
cvtpd2ps xmm6, xmm0
movss xmm1, dword [0x14004b9e8]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm3, qword [rbp + 0x10]
subsd xmm3, xmm0
movss xmm1, dword [0x14004b9ec]
mulss xmm1, xmm14
cvtps2pd xmm0, xmm1
movsd xmm2, qword [rbp + 0x18]
subsd xmm2, xmm0
mulsd xmm2, xmm2
mulsd xmm3, xmm3
addsd xmm2, xmm3
cvtpd2ps xmm1, xmm2
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x14000a4b5
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14000a4bd
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [0x14004b0c0]
comiss xmm1, xmm0
jbe 0x14000a4da
comiss xmm11, xmm0
jbe 0x14000a4da
movss dword [rsp + 0x54], xmm0
mov qword [rbp - 0x30], rbx
movaps xmm7, xmm9
movsd xmm11, qword [rbp - 8]
cmp byte [0x14004b7c4], 0
je 0x14000a58c
movdqa xmm0, xmmword [0x140044af0]
movups xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call fcn.140012dd0
mov dword [rbp - 0x80], eax
cvttss2si edi, xmm10
cvttss2si esi, xmm6
cvttsd2si r14d, xmm8
movaps xmm0, xmm6
mulss xmm0, xmm14
cvtps2pd xmm1, xmm0
movaps xmm2, xmm11
subsd xmm2, xmm1
cvttsd2si ebx, xmm2
mov dword [rsp + 0x28], 4
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
mov r9d, edi
mov r8d, esi
mov edx, r14d
mov ecx, ebx
call fcn.140003e00
movdqa xmm0, xmmword [0x140044b30]
movups xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call fcn.140012dd0
mov dword [rbp - 0x80], eax
mov dword [rsp + 0x28], 1
lea rax, [rbp - 0x80]
mov qword [rsp + 0x20], rax
mov r9d, edi
mov r8d, esi
mov edx, r14d
mov ecx, ebx
call fcn.140003e00
cmp byte [0x14004b82e], 0
je 0x14000a61b
movdqa xmm0, xmmword [0x140044af0]
movdqa xmmword [rsp + 0x60], xmm0
cvttss2si edi, xmm10
cvttss2si esi, xmm6
cvttsd2si r14d, xmm8
mulss xmm6, xmm14
cvtps2pd xmm0, xmm6
movaps xmm1, xmm11
subsd xmm1, xmm0
cvttsd2si ebx, xmm1
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9d, edi
mov r8d, esi
mov edx, r14d
mov ecx, ebx
call fcn.140007e60
movdqa xmm0, xmmword [0x140044b30]
movdqa xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x28], 1
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9d, edi
mov r8d, esi
mov edx, r14d
mov ecx, ebx
call fcn.140007e60
movdqa xmm6, xmmword [0x140044c70]
cmp byte [0x14004b817], 0
je 0x14000a662
movdqa xmmword [rsp + 0x60], xmm6
movss xmm2, dword [0x140044648]
lea rdx, [rsp + 0x60]
mov rcx, r15
call fcn.1400043b0
movdqa xmmword [rsp + 0x60], xmm6
movss xmm2, dword [0x140044598]
lea rdx, [rsp + 0x60]
mov rcx, r15
call fcn.1400043b0
cmp byte [0x14004b82d], 0
je 0x14000a681
movss xmm0, dword [0x14004467c]
movss dword [rsp + 0x20], xmm0
mov rdx, r15
call fcn.140008a20
cmp byte [0x14004b881], 0
je 0x14000a7fe
mov rax, qword [0x14004b898]
mov rax, qword [rax + 0x4878]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140015e10
mov rbx, rax
movups xmmword [rsp + 0x60], xmm6
lea rcx, [rsp + 0x60]
call fcn.140012dd0
mov edi, eax
movsd xmm6, qword [rbp + 0xf0]
cvtpd2ps xmm6, xmm6
movss dword [rbp - 0x28], xmm6
movsd xmm10, qword [rbp + 0xf8]
cvtpd2ps xmm10, xmm10
movss dword [rbp - 0x24], xmm10
test eax, 0xff000000
je 0x14000a74e
mov dword [rsp + 0x28], 0x1d
movss xmm0, dword [0x140044660]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm9
movss xmm2, dword [0x14004464c]
lea rdx, [rbp - 0x28]
mov rcx, rbx
call fcn.140032830
movss xmm0, dword [0x140044648]
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.140030de0
mov dword [rbx + 0x78], 0
mov rax, qword [0x14004b898]
mov rax, qword [rax + 0x4878]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140015e10
mov rbx, rax
movdqa xmm0, xmmword [0x140044af0]
movups xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x60]
call fcn.140012dd0
mov edi, eax
movss dword [rbp - 0x20], xmm6
movss dword [rbp - 0x1c], xmm10
test eax, 0xff000000
je 0x14000a7fe
mov dword [rsp + 0x28], 0x1d
movss xmm0, dword [0x140044660]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm9
movss xmm2, dword [0x14004464c]
lea rdx, [rbp - 0x20]
mov rcx, rbx
call fcn.140032830
movss xmm6, dword [0x140044598]
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.140030de0
mov dword [rbx + 0x78], 0
jmp 0x14000a806
movss xmm6, dword [0x140044598]
cmp byte [0x14004b815], 0
je 0x14000a887
mov rax, qword [0x14004b898]
mov rax, qword [rax + 0x4878]
lea r8, str.Background
xor edx, edx
mov rcx, qword [rax]
call fcn.140015e10
mov r10, rax
movups xmmword [rsp + 0x60], xmm15
lea rcx, [rsp + 0x60]
call fcn.140012dd0
cvtpd2ps xmm0, xmm11
movss dword [rbp - 0x18], xmm0
cvtpd2ps xmm1, xmm8
movss dword [rbp - 0x14], xmm1
movss xmm0, dword [0x14004b9e8]
mulss xmm0, xmm14
movss dword [rbp - 0x10], xmm0
mov dword [rbp - 0xc], 0
movss dword [rsp + 0x20], xmm6
mov r9d, eax
lea r8, [rbp - 0x18]
lea rdx, [rbp - 0x10]
mov rcx, r10
call fcn.140033090
xor r14d, r14d
mov edi, dword [0x14004b090]
cmp byte [0x14004b882], r14b
je 0x14000aaa0
movups xmm0, xmmword [str.pECYWY]
movups xmmword [rbp - 0x70], xmm0
movzx eax, byte [0x14003ea60]
mov byte [rbp - 0x60], al
mov r8d, r14d
cmp edi, 2
jl 0x14000a9e7
movdqa xmm0, xmmword [0x1400447d0]
movdqa xmmword [rsp + 0x60], xmm0
lea rcx, [rbp - 0x6c]
mov edx, dword [rsp + 0x60]
movdqa xmm3, xmmword [0x140044d10]
movdqa xmm4, xmmword [0x140044760]
movdqa xmm5, xmmword [0x140044790]
movdqa xmm6, xmmword [0x140044780]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm4
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm5
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm4
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm3
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm5
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x14000a900
cmp r8d, 0x11
jge 0x14000aa30
movsxd rax, r8d
lea r9, [rbp - 0x70]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x14000aa00
xorps xmm2, xmm2
cvtss2sd xmm2, xmm12
movq r8, xmm2
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x70]
call fcn.1400101d0
movaps xmm7, xmm13
movdqa xmmword [rsp + 0x60], xmm15
movaps xmm0, xmm8
movsd xmm12, qword [0x140044610]
subsd xmm0, xmm12
cvttsd2si r8d, xmm0
movaps xmm1, xmm11
subsd xmm1, xmm12
cvttsd2si edx, xmm1
lea rax, [rbp + 0x70]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x60]
movaps xmm0, xmm13
movd ecx, xmm0
call fcn.140008220
jmp 0x14000aaa9
movsd xmm12, qword [0x140044610]
cmp byte [0x14004b814], 0
je 0x14000ae28
lea rcx, [r13 + 0x438]
call fcn.14000fc90
xorps xmm0, xmm0
movups xmmword [rbp + 0x130], xmm0
movups xmmword [rbp + 0x140], xmm0
movups xmmword [rbp + 0x150], xmm0
movups xmmword [rbp + 0x160], xmm0
movups xmmword [rbp + 0x170], xmm0
movups xmmword [rbp + 0x180], xmm0
movups xmmword [rbp + 0x190], xmm0
movups xmmword [rbp + 0x1a0], xmm0
mov dword [rbp + 0x111], r14d
mov word [rbp + 0x115], r14w
mov byte [rbp + 0x117], 0
mov dword [rbp + 0xf0], 0x83b5b69
mov qword [rbp + 0xf8], rax
lea rax, [rbp + 0x130]
mov qword [rbp + 0x100], rax
mov qword [rbp + 0x108], 0x80
mov eax, dword [0x14004b780]
mov dword [rbp + 0xf4], eax
mov byte [rbp + 0x110], 0
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
mov r9d, 0x28
lea r8, [rbp + 0xf0]
mov edx, 0x225514
mov rcx, qword [0x14004b778]
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
lea rdx, [rbp + 0x130]
lea rcx, [rbp + 0x70]
call fcn.14000f610
nop
lea rdx, [rbp + 0x70]
cmp qword [rbp + 0x88], 7
cmova rdx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x80]
lea r8, [rdx + rax*2]
lea rdx, [rbp + 0x70]
cmova rdx, qword [rbp + 0x70]
lea rcx, [rbp + 0x50]
call fcn.14000fe80
nop
mov rdx, qword [rbp + 0x88]
cmp rdx, 7
jbe 0x14000ac07
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000ac01
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000b3ae
call fcn.14003c2c0
nop
movsd xmm0, qword [str.dYWCVHV]
movsd qword [rbp - 0x50], xmm0
mov eax, dword [0x1400434f0]
mov dword [rbp - 0x48], eax
movzx eax, word [0x1400434f4]
mov word [rbp - 0x44], ax
movzx eax, byte [0x1400434f6]
mov byte [rbp - 0x42], al
mov r8d, r14d
cmp edi, 2
jl 0x14000ad2f
movdqa xmm3, xmmword [0x140044760]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movdqa xmm2, xmmword [0x140044d10]
pmuldq xmm1, xmm2
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140044780]
movdqa xmm1, xmm3
psubd xmm1, xmm0
andps xmm1, xmmword [0x140044790]
packuswb xmm1, xmm1
packuswb xmm1, xmm1
mov eax, dword [0x1400447d0]
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.dYWCVHV]
xorps xmm1, xmm0
movd dword [rbp - 0x50], xmm1
movdqa xmm5, xmmword [0x140044770]
movdqa xmm1, xmm5
punpckldq xmm1, xmm5
pmuldq xmm1, xmm2
movdqa xmm0, xmm5
punpckhdq xmm0, xmm5
pmuldq xmm0, xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140044780]
movdqa xmm2, xmm5
psubd xmm2, xmm0
andps xmm2, xmmword [0x140044790]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x4c]
xorps xmm2, xmm1
movd dword [rbp - 0x4c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x50]
add r9, rax
nop dword [rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x14000ad40
movups xmm0, xmmword [rbp + 0x50]
movaps xmmword [rbp + 0x70], xmm0
movups xmm1, xmmword [rbp + 0x60]
movaps xmmword [rbp + 0x80], xmm1
lea r8, [rbp + 0x70]
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0xb0]
call fcn.1400101d0
addss xmm7, xmm13
movdqa xmmword [rsp + 0x60], xmm15
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
movaps xmm1, xmm8
subsd xmm1, xmm0
cvttsd2si r8d, xmm1
movaps xmm2, xmm11
subsd xmm2, xmm12
cvttsd2si edx, xmm2
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x60]
movaps xmm0, xmm13
movd ecx, xmm0
call fcn.140008220
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 0xf
jbe 0x14000ae28
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000ae23
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000b3b5
call fcn.14003c2c0
cmp byte [0x14004b880], 0
je 0x14000b071
mov r8, r13
lea rdx, [rbp + 0x70]
call fcn.140009170
nop
movsd xmm0, qword [str.aFSEVXW]
movsd qword [rbp - 0x40], xmm0
mov eax, dword [0x1400434d8]
mov dword [rbp - 0x38], eax
movzx eax, word [0x1400434dc]
mov word [rbp - 0x34], ax
movzx eax, byte [0x1400434de]
mov byte [rbp - 0x32], al
mov r8d, r14d
cmp edi, 2
jl 0x14000af6a
movdqa xmm3, xmmword [0x140044760]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
movdqa xmm2, xmmword [0x140044d10]
pmuldq xmm1, xmm2
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140044780]
movdqa xmm1, xmm3
psubd xmm1, xmm0
andps xmm1, xmmword [0x140044790]
packuswb xmm1, xmm1
packuswb xmm1, xmm1
mov eax, dword [0x1400447d0]
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str.aFSEVXW]
xorps xmm1, xmm0
movd dword [rbp - 0x40], xmm1
movdqa xmm5, xmmword [0x140044770]
movdqa xmm1, xmm5
punpckldq xmm1, xmm5
pmuldq xmm1, xmm2
movdqa xmm0, xmm5
punpckhdq xmm0, xmm5
pmuldq xmm0, xmm2
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140044780]
movdqa xmm2, xmm5
psubd xmm2, xmm0
andps xmm2, xmmword [0x140044790]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x3c]
xorps xmm2, xmm1
movd dword [rbp - 0x3c], xmm2
mov r8d, 8
movsxd rax, r8d
lea r9, [rbp - 0x40]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x36
movzx eax, r8b
sub al, cl
add al, 0x34
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x14000af80
movups xmm10, xmmword [rbp + 0x70]
movaps xmmword [rbp + 0x50], xmm10
movups xmm6, xmmword [rbp + 0x80]
movaps xmmword [rbp + 0x60], xmm6
lea r8, [rbp + 0x50]
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0xf0]
call fcn.1400101d0
addss xmm7, xmm13
movdqa xmmword [rsp + 0x60], xmm15
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
movaps xmm1, xmm8
subsd xmm1, xmm0
cvttsd2si r8d, xmm1
movaps xmm2, xmm11
subsd xmm2, xmm12
cvttsd2si edx, xmm2
lea rax, [rbp + 0xf0]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x60]
movaps xmm0, xmm13
movd ecx, xmm0
call fcn.140008220
nop
psrldq xmm6, 8
movq rdx, xmm6
cmp rdx, 0xf
jbe 0x14000b071
inc rdx
movq rcx, xmm10
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000b06c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000b3bc
call fcn.14003c2c0
cmp byte [0x14004b7c6], 0
je 0x14000b143
cmp byte [rsp + 0x50], 0
je 0x14000b143
movsd xmm0, qword [0x1400434c0]
movsd qword [rsp + 0x40], xmm0
movzx eax, word [0x1400434c8]
mov word [rsp + 0x48], ax
cmp byte [0x1400434c9], 0
je 0x14000b0de
mov byte [rsp + 0x40], 0x42
xor byte [rsp + 0x41], 0x35
xor byte [rsp + 0x42], 0x36
xor byte [rsp + 0x43], 0x37
xor byte [rsp + 0x44], 0x38
xor byte [rsp + 0x45], 0x39
xor byte [rsp + 0x46], 0x3a
xor byte [rsp + 0x47], 0x3b
xor byte [rsp + 0x48], 0x3c
xor byte [rsp + 0x49], 0x3d
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x70]
call fcn.1400101d0
movdqa xmm0, xmmword [0x140044b00]
movdqa xmmword [rsp + 0x60], xmm0
addss xmm7, xmm13
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
subsd xmm8, xmm0
cvttsd2si r8d, xmm8
subsd xmm11, qword [0x1400445f8]
cvttsd2si edx, xmm11
lea rax, [rbp + 0x70]
mov qword [rsp + 0x30], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 1
lea r9, [rsp + 0x60]
movaps xmm0, xmm13
movd ecx, xmm0
call fcn.140008220
cmp byte [0x14004b82c], 0
je 0x14000b325
mov rdi, qword [rbp - 0x30]
test rdi, rdi
je 0x14000b325
lea rcx, [rdi + 0x318]
call fcn.14000fc90
test rax, rax
je 0x14000b346
mov r8d, 0x6e
mov rdx, rax
lea rcx, [rbp + 0xb0]
call fcn.140003b50
movsd xmm6, qword [0x1400445c0]
comisd xmm6, xmmword [rbp + 0xb0]
ja 0x14000b346
movups xmm0, xmmword [rbp + 0xb0]
movaps xmmword [rbp + 0xf0], xmm0
movsd xmm1, qword [rbp + 0xc0]
movsd qword [rbp + 0x100], xmm1
lea rdx, [rbp + 0xf0]
lea rcx, [rbp - 8]
call fcn.1400036c0
movsd xmm0, qword [rbp - 8]
comisd xmm6, xmm0
ja 0x14000b346
movsd xmm1, qword [rbp]
xorps xmm10, xmm10
ucomisd xmm0, xmm10
jp 0x14000b1f9
jne 0x14000b1f9
ucomisd xmm1, xmm10
jp 0x14000b1f9
je 0x14000b329
cvtpd2ps xmm6, xmm1
cvtpd2ps xmm0, xmm0
mov eax, dword [0x14004b7c0]
xorps xmm5, xmm5
cvtsi2ss xmm5, rax
mov eax, dword [0x14004b784]
xorps xmm4, xmm4
cvtsi2ss xmm4, rax
cvttss2si eax, dword [0x14004b0bc]
movaps xmm3, xmm9
movaps xmm2, xmm9
ucomiss xmm0, xmm9
jp 0x14000b235
je 0x14000b297
movss xmm7, dword [0x140044d50]
comiss xmm0, xmm5
jbe 0x14000b26a
movaps xmm3, xmm0
subss xmm3, xmm5
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm3, xmm0
movaps xmm1, xmm3
addss xmm1, xmm5
addss xmm5, xmm5
comiss xmm1, xmm5
jbe 0x14000b29f
movaps xmm3, xmm9
jmp 0x14000b29f
comiss xmm5, xmm0
jbe 0x14000b29f
movaps xmm3, xmm5
subss xmm3, xmm0
xorps xmm3, xmm7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm3, xmm0
movaps xmm1, xmm3
addss xmm1, xmm5
comiss xmm9, xmm1
jbe 0x14000b29f
movaps xmm3, xmm9
jmp 0x14000b29f
movss xmm7, dword [0x140044d50]
ucomiss xmm6, xmm9
jp 0x14000b2a7
je 0x14000b2f6
comiss xmm6, xmm4
jbe 0x14000b2ce
movaps xmm2, xmm6
subss xmm2, xmm4
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm2, xmm0
movaps xmm1, xmm4
addss xmm1, xmm2
addss xmm4, xmm4
comiss xmm1, xmm4
jmp 0x14000b2f0
comiss xmm4, xmm6
jbe 0x14000b2f6
movaps xmm2, xmm4
subss xmm2, xmm6
xorps xmm2, xmm7
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm2, xmm0
addss xmm4, xmm2
comiss xmm9, xmm4
jbe 0x14000b2f6
movaps xmm2, xmm9
mov dword [rbp + 0x70], r14d
mov dword [rbp + 0x80], r14d
mov qword [rbp + 0x84], 0x4001
cvttss2si eax, xmm3
mov dword [rbp + 0x78], eax
cvttss2si eax, xmm2
mov dword [rbp + 0x7c], eax
lea rdx, [rbp + 0x70]
call fcn.140002aa0
jmp 0x14000b329
xorps xmm10, xmm10
movss xmm12, dword [0x1400445c8]
movss xmm11, dword [rsp + 0x54]
inc r12d
cmp r12d, dword [rbp - 0x7c]
jb 0x14000a010
mov rcx, qword [rbp + 0x1b0]
xor rcx, rsp
call fcn.14003c2a0
lea r11, [rsp + 0x360]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
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]
int3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3