Function at 0x140006890
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0xb60
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x1405edab8]
xor rax, rsp
mov qword [rbp + 0xae0], rax
xor r14d, r14d
xorps xmm0, xmm0
movups xmmword [rbp + 0x550], xmm0
movups xmmword [rbp + 0x560], xmm0
movups xmmword [rbp + 0x570], xmm0
movups xmmword [rbp + 0x580], xmm0
movups xmmword [rbp + 0x590], xmm0
movups xmmword [rbp + 0x5a0], xmm0
lea rcx, [rbp + 0x550]
call fcn.140004cd0
nop
lea rcx, [rbp + 0x550]
call fcn.140003c40
mov dl, 1
lea rcx, [rbp + 0x550]
call fcn.140003ef0
lea rcx, [rbp + 0x550]
call fcn.1400047c0
mov dl, 1
lea rcx, [rbp + 0x550]
call fcn.140004050
lea rcx, [rbp + 0x550]
call fcn.1400042f0
mov dword [rbp + 0x6a0], 0x348
mov edi, r14d
xor edx, edx
xor r9d, r9d
lea r8, [rbp + 0x6a0]
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesW]
test eax, eax
je 0x14000efae
test byte [rbp + 0x7e4], 1
je 0x1400069bf
lea rdx, [rbp + 0x6e4]
lea rcx, [rbp + 0x4a0]
call fcn.14000fbe0
nop
cmp qword [rbp + 0x4b0], 0
je 0x1400069b3
lea rcx, [rbp + 0x4a0]
call fcn.140004fa0
test al, al
jne 0x1400069c5
lea rcx, [rbp + 0x4a0]
call fcn.14000fb70
inc edi
mov edx, edi
jmp 0x140006962
lea rcx, [rbp + 0x4a0]
call fcn.14000fb70
call fcn.1400067c0
mov ecx, 3
call fcn.140042ae0
call fcn.140042880
mov rdi, rax
mov qword [rbp + 0x80], rax
test rax, rax
je 0x14000ef9d
movabs rax, 0xe8986b54c5578e53
mov qword [rbp + 8], rax
mov rcx, qword [rbp + 8]
mov qword [rbp + 0x200], rcx
movabs rax, 0xed133017c195116c
mov qword [rbp + 8], rax
mov rcx, qword [rbp + 8]
mov qword [rbp + 0x208], rcx
movabs rax, 0x28b4947ee3afcad3
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x210], rax
movabs rax, 0x683d8841fea74c6e
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x218], rax
movabs rax, 0x830779d7c1f0e229
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x220], rax
movabs rax, 0x88cc917f7382e104
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x228], rax
movabs rax, 0x538a3f922e296c50
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x230], rax
movabs rax, 0x1f40a95ec3f84713
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x238], rax
movabs rax, 0xd3636ad55d8fd989
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x240], rax
movabs rax, 0x658fe1eb7a5c8d76
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x248], rax
movabs rax, 0xe504767fe5518c6d
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x250], rax
movabs rax, 0x80ca7e463c69b9e3
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x258], rax
movabs rax, 0x8919b6a18f19cf7f
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x260], rax
movabs rax, 0x1c5dc293271aef11
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x268], rax
movabs rax, 0xf06dfc6853c45354
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x270], rax
movabs rcx, 0x9fe0752dc3a9a246
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x278], rax
movabs rbx, 0xd9b7446eb523fa3b
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa60], rax
movabs rsi, 0xd93d0723f0bb2058
mov qword [rbp + 8], rsi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa68], rax
movabs r12, 0x198da244d49cfbfd
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa70], rax
movabs r15, 0x384eeb0992e4635a
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa78], rax
movabs rax, 0xfa350f9ab3bcae1f
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa80], rax
movabs rax, 0xd0f5db2f15b2883c
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa88], rax
movabs rax, 0xbf56f048113c01
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa90], rax
movabs rax, 0x72729015f695735e
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa98], rax
movabs rax, 0xeb072fa639c0a1c3
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xaa0], rax
movabs rax, 0x30c288db4b6ebf20
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xaa8], rax
movabs rax, 0xa2541d1c8663da05
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xab0], rax
movabs rax, 0xf0854a21573bf782
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xab8], rax
movabs rax, 0xff7cd492b770aa07
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xac0], rax
movabs rax, 0x730cb1c76f709e44
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xac8], rax
movabs rax, 0xf06dfc6853c46e69
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xad0], rax
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xad8], rax
vmovdqu ymm0, ymmword [rbp + 0xa60]
vpxor ymm0, ymm0, ymmword [rbp + 0x200]
vmovdqa ymmword [rbp + 0x200], ymm0
vmovdqu ymm1, ymmword [rbp + 0xa80]
vpxor ymm0, ymm1, ymmword [rbp + 0x220]
vmovdqa ymmword [rbp + 0x220], ymm0
vmovdqu ymm0, ymmword [rbp + 0x240]
vpxor ymm1, ymm0, ymmword [rbp + 0xaa0]
vmovdqa ymmword [rbp + 0x240], ymm1
vmovdqu ymm0, ymmword [rbp + 0xac0]
vpxor ymm0, ymm0, ymmword [rbp + 0x260]
vmovdqa ymmword [rbp + 0x260], ymm0
lea r8, [rbp + 0x200]
mov edx, 0x2712
mov rcx, rdi
vzeroupper
call fcn.140045850
lea rcx, [rbp + 0x4d8]
call fcn.140010140
nop
lea r8, [0x140006790]
mov edx, 0x4e2b
mov rcx, rdi
call fcn.140045850
lea r8, [rbp + 0x4d8]
mov edx, 0x2711
mov rcx, rdi
call fcn.140045850
mov rcx, rdi
call fcn.1400428f0
test eax, eax
jne 0x14000ef88
movsd xmm0, qword [str.k_I_UWQolmD]
movsd qword [rbp + 0x478], xmm0
mov eax, dword [0x14044c140]
mov dword [rbp + 0x480], eax
movzx eax, byte [0x14044c144]
mov byte [rbp + 0x484], al
movsd xmm0, qword [0x14044c1a8]
movsd qword [rbp + 0x518], xmm0
mov eax, dword [0x14044c1b0]
mov dword [rbp + 0x520], eax
movzx eax, word [0x14044c1b4]
mov word [rbp + 0x524], ax
movzx eax, byte [0x14044c1b6]
mov byte [rbp + 0x526], al
movups xmm0, xmmword [0x14044c1b8]
movups xmmword [rbp + 0x4c0], xmm0
mov eax, dword [0x14044c1c8]
mov dword [rbp + 0x4d0], eax
movzx eax, byte [0x14044c1cc]
mov byte [rbp + 0x4d4], al
movabs rax, 0xd9e7442fb577fa7c
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1d0], rax
movabs rax, 0xd9580740f0d4202a
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1d8], rax
movabs rax, 0x198da244d4effb8e
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1e0], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1e8], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa20], rax
mov qword [rbp + 8], rsi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa28], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa30], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa38], rax
vmovdqu ymm0, ymmword [rbp + 0x1d0]
vpxor ymm1, ymm0, ymmword [rbp + 0xa20]
vmovdqu ymmword [rbp + 0x1d0], ymm1
lea rdx, [rbp + 0x1d0]
lea rcx, [rbp + 0x5b0]
vzeroupper
call fcn.14000fbe0
nop
lea rcx, [rbp + 0x5b0]
call fcn.140006460
mov dword [rbp + 0x50], eax
test eax, eax
mov rax, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
jne 0x140008b27
mov qword [rbp + 0x488], rax
movabs rcx, 0xabe76423d055937d
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x4a0], rax
movabs rax, 0xb653275083de4337
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x4a8], rax
movabs rax, 0x37e9cc31bbfadb89
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x4b0], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0x4b8], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa00], rax
mov qword [rbp + 8], rsi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa08], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa10], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa18], rax
vmovdqu ymm0, ymmword [rbp + 0xa00]
vpxor ymm0, ymm0, ymmword [rbp + 0x4a0]
vmovdqa ymmword [rbp + 0x4a0], ymm0
lea rax, [rbp + 0x98]
mov qword [rbp + 0x80], rax
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x98]
vzeroupper
call fcn.14000ff00
nop
xor eax, eax
mov qword [rbp + 0xb8], rax
lea rax, [0x140002eb0]
cmp byte [0x1405f1603], 0
jne 0x140007035
mov qword [0x1405f1610], rax
mov byte [0x1405f1603], 1
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x1a8]
call fcn.14000ff00
mov qword [rbp + 0x30], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.140010990
mov r10, rax
mov qword [rbp + 8], rax
movabs rax, 0xfeeddccbbaa99887
lea r9, [0x1405f1620]
lea rdi, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r11d, 0xffffffff
cmp byte [0x1405f1605], 0
jne 0x1400070bc
mov rdx, rax
mov rcx, r9
nop word [rax + rax]
mov rax, rdx
xor rax, r8
mov qword [rcx], rax
sub rdx, r11
add rcx, 8
cmp rcx, rdi
jl 0x1400070a0
mov byte [0x1405f1605], 1
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x40], rax
mov r11, rax
mov qword [rbp + 0x460], rax
mov qword [rbp + 0x400], rax
mov r8d, r14d
test rbx, rbx
je 0x14000714f
mov rdi, r10
nop word [rax + rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140007100
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x460], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x1400070f0
movabs r9, 0xaebdccdb0a192837
movzx edi, byte [r10]
cmp rbx, 1
jbe 0x14000716b
movzx r12d, byte [r10 + rbx - 1]
jmp 0x14000716e
mov r12b, 0xae
mov byte [rbp], r12b
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor dl, dil
xor cl, r12b
inc eax
cmp eax, 8
jb 0x140007190
mov byte [rbp + 0x420], cl
mov byte [rbp + 0x410], dl
mov r15d, r14d
lea r13, [rbx*8]
mov rsi, r14
mov r11d, 1
lea r14d, [r11 + 7]
mov r12, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, r15d
test r15d, r15d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r12
mov qword [rbp + 0x418], rax
movzx eax, byte [rbp + rsi + 0x418]
xor byte [rbp + rsi + 0x400], al
lea r10d, [r15*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r15 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + rsi + 0x419]
xor byte [rbp + rsi + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r15 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x418], r8
movzx eax, byte [rbp + rsi + 0x41a]
xor byte [rbp + rsi + 0x402], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r15 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + rsi + 0x41b]
xor byte [rbp + rsi + 0x403], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r15 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x418], r8
movzx eax, byte [rbp + rsi + 0x41c]
xor byte [rbp + rsi + 0x404], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r15 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + rsi + 0x41d]
xor byte [rbp + rsi + 0x405], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r15 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x418], r8
movzx eax, byte [rbp + rsi + 0x41e]
xor byte [rbp + rsi + 0x406], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r15 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + rsi + 0x41f]
xor byte [rbp + rsi + 0x407], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x410]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r15d, r14d
lea rsi, [rsi + 8]
cmp r15d, r14d
jb 0x1400071d0
movzx r12d, byte [rbp]
imul rcx, r12, 0xff
not rcx
mov rax, qword [rbp + 8]
movzx eax, byte [rax]
shl rax, 7
sub rcx, rax
mov r11, qword [rbp + 0x460]
and r11, rdx
xor rcx, r11
mov qword [rbp + 0xb8], rcx
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x98]
call fcn.14000fed0
nop
mov rcx, qword [rbp + 0x30]
call fcn.140002d30
nop
cmp byte [0x1405f1604], 0
mov r14d, 0
jne 0x140007564
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1604], 1
lea rdx, [rbp + 0x4a0]
lea rcx, [rbp + 0x280]
call fcn.14000ff00
nop
mov rdx, rax
lea rcx, [rbp + 0xa00]
call fcn.140010020
mov r15, qword [rbp + 0xa10]
mov qword [rbp + 8], r15
lea rcx, [rbp + 0xa00]
call fcn.140010990
mov rbx, rax
movabs r13, 0x101010101010101
lea rsi, [0x140000000]
lea r12, [0x1405f1e19]
lea r11, [0x1405f1f20]
cmp byte [0x1405f1606], 0
jne 0x1400079ad
mov r15, r14
lea rcx, [rbp + 0x468]
call fcn.140001700
mov rdi, qword [rbp + 0x468]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r15 + rsi + 0x5f1f30], rax
lea rcx, [rbp + 0xc8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r15 + rsi + 0x5f1e20], rax
lea rcx, [rbp + 0xd0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r15 + rsi + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x1400075d0
lea rcx, [rbp + 0x428]
call fcn.140001700
mov r15d, r14d
lea rdi, [0x1405f1619]
nop
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400076fb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007727
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007752
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000777e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi + 2], dl
add r15d, 4
add rdi, 4
cmp r15d, 4
jb 0x1400076e0
lea rcx, [rbp + 0xd8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r13d, r14d
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400077d4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007801
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000782d
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000785a
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007887
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400078b4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400078e1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000790e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 6], dl
add r13d, 8
add r15, 8
cmp r13d, 8
jae 0x14000793a
mov rdi, qword [rbp + 0x428]
jmp 0x1400077c0
lea rcx, [rbp + 0xe0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r15d, r14d
lea r13, [0x1405f1f20]
nop word [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007974
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r13], dl
inc r15d
inc r13
cmp r15d, 0xc
jae 0x14000799b
mov rdi, qword [rbp + 0x428]
jmp 0x140007960
mov byte [0x1405f1606], 1
mov r15, qword [rbp + 8]
lea r11, [0x1405f1f20]
lea r13, [0x1405f1e18]
test r15, r15
je 0x140007af3
mov r10d, r14d
mov r8d, r14d
movzx ecx, byte [rbx]
lea r9, [0x1405f1618]
nop dword [rax]
mov edi, r14d
movzx eax, byte [r9]
lea rdx, [rsi + 0x5f1f31]
lea rdx, [rdx + rax*8]
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x1400079e2
inc r8d
inc r9
cmp r8d, 4
jb 0x1400079d0
mov r8d, r14d
mov r9, r13
nop word [rax + rax]
mov edi, r14d
movzx eax, byte [r9]
lea rdx, [rsi + 0x5f1e21]
lea rdx, [rdx + rax*8]
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x140007a42
inc r8d
inc r9
cmp r8d, 8
jb 0x140007a30
mov r8d, r14d
mov r9, r11
nop word [rax + rax]
mov edi, r14d
movzx eax, byte [r9]
lea rdx, [rsi + 0x5f1f31]
lea rdx, [rdx + rax*8]
xor cl, byte [rdx - 1]
mov byte [rbx], cl
xor cl, byte [rdx]
mov byte [rbx], cl
xor cl, byte [rdx + 1]
mov byte [rbx], cl
xor cl, byte [rdx + 2]
mov byte [rbx], cl
xor cl, byte [rdx + 3]
mov byte [rbx], cl
xor cl, byte [rdx + 4]
mov byte [rbx], cl
xor cl, byte [rdx + 5]
mov byte [rbx], cl
xor cl, byte [rdx + 6]
mov byte [rbx], cl
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x140007aa2
inc r8d
inc r9
cmp r8d, 0xc
jb 0x140007a90
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r15
jb 0x1400079c0
lea rdx, [rbp + 0xa00]
lea rcx, [rbp + 0x188]
call fcn.140010020
mov qword [rbp + 0x30], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.140010990
mov r10, rax
mov qword [rbp + 8], rax
lea r15, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x140007b7c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r15
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
nop word [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x140007b60
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x460], r11
mov qword [rbp + 0x400], r11
mov r8d, r14d
test rbx, rbx
je 0x140007bff
mov rdi, r10
nop
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140007bb0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r15 + rax*8]
mov qword [rbp + 0x460], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140007ba0
movabs r9, 0xaebdccdb0a192837
movzx r8d, byte [r10]
cmp rbx, 1
jbe 0x140007c1b
movzx edi, byte [r10 + rbx - 1]
jmp 0x140007c1e
mov dil, 0xae
mov byte [rbp], dil
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor cl, r8b
xor dl, dil
inc eax
cmp eax, 8
jb 0x140007c40
mov byte [rbp + 0x410], cl
mov byte [rbp + 0x420], dl
mov r13d, r14d
lea rsi, [rbx*8]
mov r15, r14
mov r14d, 8
mov r11, r9
mov eax, r13d
test r13d, r13d
mov ecx, 1
cmove eax, ecx
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r11
mov qword [rbp + 0x418], rax
movzx eax, byte [rbp + r15 + 0x418]
xor byte [rbp + r15 + 0x400], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + r15 + 0x419]
xor byte [rbp + r15 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r11
mov qword [rbp + 0x418], r8
movzx eax, byte [rbp + r15 + 0x41a]
xor byte [rbp + r15 + 0x402], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r11
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + r15 + 0x41b]
xor byte [rbp + r15 + 0x403], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r11
mov qword [rbp + 0x418], r8
movzx eax, byte [rbp + r15 + 0x41c]
xor byte [rbp + r15 + 0x404], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r11
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + r15 + 0x41d]
xor byte [rbp + r15 + 0x405], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r11
mov qword [rbp + 0x418], r8
movzx eax, byte [rbp + r15 + 0x41e]
xor byte [rbp + r15 + 0x406], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r11
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + r15 + 0x41f]
xor byte [rbp + r15 + 0x407], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdi, qword [rbp + 0x410]
shl rdi, cl
xor rdi, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdi
add r13d, r14d
lea r15, [r15 + 8]
cmp r13d, r14d
jb 0x140007c70
mov rax, qword [rbp + 8]
movzx edx, byte [rax]
shl rdx, 7
not rdx
movzx eax, byte [rbp]
imul rcx, rax, 0xff
sub rdx, rcx
and rdi, qword [rbp + 0x460]
xor rdx, rdi
mov qword [rbp + 0xb8], rdx
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x98]
call fcn.14000fed0
nop
mov rcx, qword [rbp + 0x30]
call fcn.140002d30
nop
lea rcx, [rbp + 0xa00]
call fcn.140002d30
nop
lea rcx, [rbp + 0x280]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0xa8]
lea rcx, [rbp + 0x98]
call fcn.140010990
mov r10, rax
mov qword [rbp + 0x448], rax
cmp byte [0x1405f1605], 0
mov r14d, 0
lea r9, [0x1405f1620]
jne 0x140008093
mov rdx, r9
lea rax, [0x1405f1e18]
movabs rdi, 0xababdbf33353735b
mov r10d, 0xffffffff
movabs r8, 0xfeeddccbbaa99887
nop dword [rax]
nop word [rax + rax]
mov rcx, r8
xor rcx, rdi
mov qword [rdx], rcx
sub r8, r10
add rdx, 8
cmp rdx, rax
jl 0x140008070
mov byte [0x1405f1605], 1
mov r10, qword [rbp + 0x448]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x400], rax
mov r8d, r14d
test rbx, rbx
je 0x140008113
mov rdi, r10
nop
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x1400080c0
not cl
movzx eax, cl
mov r10, qword [rbp + 0x400]
xor r10, qword [r9 + rax*8]
mov qword [rbp + 0x40], r10
mov qword [rbp + 0x400], r10
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x1400080b0
mov r10, qword [rbp + 0x448]
movabs r9, 0xaebdccdb0a192837
movzx edi, byte [r10]
cmp rbx, 1
jbe 0x14000812f
movzx r13d, byte [rbx + r10 - 1]
jmp 0x140008132
mov r13b, 0xae
mov byte [rbp], r13b
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor dl, dil
xor cl, r13b
inc eax
cmp eax, 8
jb 0x140008150
mov byte [rbp + 0x420], cl
mov byte [rbp + 0x410], dl
mov r15d, r14d
lea rsi, [rbx*8]
mov r11, r14
mov r14d, 8
mov r13, r9
mov eax, r15d
test r15d, r15d
mov ecx, 1
cmove eax, ecx
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r13
mov qword [rbp + 0x418], rax
movzx eax, byte [rbp + r11 + 0x418]
xor byte [rbp + r11 + 0x400], al
lea r10d, [r15*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r15 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + r11 + 0x419]
xor byte [rbp + r11 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r15 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x418], r8
movzx eax, byte [rbp + r11 + 0x41a]
xor byte [rbp + r11 + 0x402], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r15 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + r11 + 0x41b]
xor byte [rbp + r11 + 0x403], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r15 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x418], r8
movzx eax, byte [rbp + r11 + 0x41c]
xor byte [rbp + r11 + 0x404], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r15 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + r11 + 0x41d]
xor byte [rbp + r11 + 0x405], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r15 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x418], r8
movzx eax, byte [rbp + r11 + 0x41e]
xor byte [rbp + r11 + 0x406], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r15 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + r11 + 0x41f]
xor byte [rbp + r11 + 0x407], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x410]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r15d, r14d
lea r11, [r11 + 8]
cmp r15d, r14d
jb 0x140008180
mov rax, qword [rbp + 0x448]
movzx r8d, byte [rax]
shl r8, 7
not r8
movzx r13d, byte [rbp]
imul rcx, r13, 0xff
sub r8, rcx
mov rax, qword [rbp + 0x40]
and rax, rdx
xor r8, rax
mov rdx, qword [rbp + 0xb8]
cmp r8, rdx
lea rsi, [0x140000000]
mov r14d, 0
je 0x14000851b
mov rdi, qword [0x1405f1610]
lea rcx, [rbp + 0x150]
call fcn.140002d90
lea rdx, [rbp + 0x98]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0xf8]
call fcn.140010020
nop
lea rdx, [rbp + 0xf8]
lea rcx, [rbp + 0xa20]
call fcn.140010020
mov r13, qword [rbp + 0xa30]
mov qword [rbp + 8], r13
lea rcx, [rbp + 0xa20]
call fcn.140010990
mov rbx, rax
mov qword [rbp + 0x30], rax
cmp byte [0x1405f1606], 0
jne 0x140008954
mov r15, r14
movabs r13, 0x101010101010101
nop word [rax + rax]
lea rcx, [rbp + 0x470]
call fcn.140001700
mov rdi, qword [rbp + 0x470]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r15 + rsi + 0x5f1f30], rax
lea rcx, [rbp + 0xe8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r15 + rsi + 0x5f1e20], rax
lea rcx, [rbp + 0xf0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r15 + rsi + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x140008580
lea rcx, [rbp + 0x408]
call fcn.140001700
mov edi, r14d
mov r13, qword [rbp + 8]
lea rbx, [0x1405f1619]
mov r15, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400086ad
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx - 1], dl
mov r15, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400086d9
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx], dl
mov r15, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008704
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 1], dl
mov r15, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008730
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 2], dl
add edi, 4
add rbx, 4
cmp edi, 4
jb 0x140008692
lea rcx, [rbp + 0x88]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x408], rdi
mov r15d, r14d
mov rbx, qword [rbp + 0x30]
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008784
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12 - 1], dl
mov rdi, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400087b2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12], dl
mov rdi, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400087df
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12 + 1], dl
mov rdi, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000880d
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12 + 2], dl
mov rdi, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000883b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12 + 3], dl
mov rdi, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008869
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12 + 4], dl
mov rdi, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008897
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12 + 5], dl
mov rdi, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400088c5
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12 + 6], dl
add r15d, 8
add r12, 8
cmp r15d, 8
jae 0x1400088f2
mov rdi, qword [rbp + 0x408]
jmp 0x140008770
lea rcx, [rbp + 0x90]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x408], rdi
mov r15d, r14d
lea r12, [0x1405f1f20]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008926
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12], dl
inc r15d
inc r12
cmp r15d, 0xc
jae 0x14000894d
mov rdi, qword [rbp + 0x408]
jmp 0x140008912
mov byte [0x1405f1606], 1
test r13, r13
je 0x140008ab3
mov r10d, r14d
lea r11, [0x1405f1f20]
lea r15, [0x1405f1618]
lea r12, [0x1405f1e18]
nop word [rax + rax]
mov r8d, r14d
movzx eax, byte [rbx]
mov r9, r15
nop dword [rax]
mov edi, r14d
movzx ecx, byte [r9]
lea rdx, [rsi + 0x5f1f31]
lea rdx, [rdx + rcx*8]
xor al, byte [rdx - 1]
mov byte [rbx], al
xor al, byte [rdx]
mov byte [rbx], al
xor al, byte [rdx + 1]
mov byte [rbx], al
xor al, byte [rdx + 2]
mov byte [rbx], al
xor al, byte [rdx + 3]
mov byte [rbx], al
xor al, byte [rdx + 4]
mov byte [rbx], al
xor al, byte [rdx + 5]
mov byte [rbx], al
xor al, byte [rdx + 6]
mov byte [rbx], al
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x1400089a2
inc r8d
inc r9
cmp r8d, 4
jb 0x140008990
mov r8d, r14d
mov r9, r12
nop word [rax + rax]
mov edi, r14d
movzx ecx, byte [r9]
lea rdx, [rsi + 0x5f1e21]
lea rdx, [rdx + rcx*8]
xor al, byte [rdx - 1]
mov byte [rbx], al
xor al, byte [rdx]
mov byte [rbx], al
xor al, byte [rdx + 1]
mov byte [rbx], al
xor al, byte [rdx + 2]
mov byte [rbx], al
xor al, byte [rdx + 3]
mov byte [rbx], al
xor al, byte [rdx + 4]
mov byte [rbx], al
xor al, byte [rdx + 5]
mov byte [rbx], al
xor al, byte [rdx + 6]
mov byte [rbx], al
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x140008a02
inc r8d
inc r9
cmp r8d, 8
jb 0x1400089f0
mov r8d, r14d
mov r9, r11
nop word [rax + rax]
mov edi, r14d
movzx ecx, byte [r9]
lea rdx, [rsi + 0x5f1f31]
lea rdx, [rdx + rcx*8]
xor al, byte [rdx - 1]
mov byte [rbx], al
xor al, byte [rdx]
mov byte [rbx], al
xor al, byte [rdx + 1]
mov byte [rbx], al
xor al, byte [rdx + 2]
mov byte [rbx], al
xor al, byte [rdx + 3]
mov byte [rbx], al
xor al, byte [rdx + 4]
mov byte [rbx], al
xor al, byte [rdx + 5]
mov byte [rbx], al
xor al, byte [rdx + 6]
mov byte [rbx], al
add edi, 8
lea rdx, [rdx + 8]
cmp edi, 8
jb 0x140008a62
inc r8d
inc r9
cmp r8d, 0xc
jb 0x140008a50
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r13
jb 0x140008980
lea rcx, [rbp + 0xf8]
call fcn.140002d30
nop
lea rdx, [rbp + 0xa20]
mov rcx, qword [rbp + 0x488]
call fcn.140010da0
lea rdx, [0x140010dc0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp + 0xa20]
call fcn.140002d30
nop
lea rcx, [rbp + 0x98]
call fcn.140002f10
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
lea rcx, [rbp + 0x5b0]
call fcn.14000fb70
nop
lea rcx, [rbp + 0x4d8]
call fcn.140002d30
jmp 0x14000efae
mov qword [rbp + 0x20], rax
movabs rcx, 0xb7de2c0dc7429f68
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x140], rax
movabs rax, 0xd93d0723de950e3f
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x148], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa40], rax
mov qword [rbp + 8], rsi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa48], rax
movdqa xmm0, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rbp + 0xa40]
movdqa xmmword [rbp + 0x140], xmm0
lea rax, [rbp + 0x58]
mov qword [rbp + 0x30], rax
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x58]
call fcn.14000ff00
nop
xor eax, eax
mov qword [rbp + 0x78], rax
lea rax, [0x140002eb0]
cmp byte [0x1405f1603], 0
jne 0x140008bcf
mov qword [0x1405f1610], rax
mov byte [0x1405f1603], 1
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x370]
call fcn.14000ff00
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.140010990
mov r12, rax
movabs rax, 0xfeeddccbbaa99887
lea r9, [0x1405f1620]
lea rdi, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r10d, 0xffffffff
cmp byte [0x1405f1605], 0
jne 0x140008c4c
mov rdx, rax
mov rcx, r9
nop dword [rax]
mov rax, rdx
xor rax, r8
mov qword [rcx], rax
sub rdx, r10
add rcx, 8
cmp rcx, rdi
jl 0x140008c30
mov byte [0x1405f1605], 1
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x40], rax
mov r11, rax
mov qword [rbp + 0x430], rax
mov qword [rbp + 0x438], rax
mov r8d, r14d
test rbx, rbx
je 0x140008cdf
mov rdi, r12
nop word [rax + rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x439]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140008c90
not cl
movzx eax, cl
mov r11, qword [rbp + 0x438]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x430], r11
mov qword [rbp + 0x438], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140008c80
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r12]
mov byte [rbp + 0x10], r13b
cmp rbx, 1
jbe 0x140008d00
movzx r12d, byte [rbx + r12 - 1]
jmp 0x140008d03
mov r12b, 0xae
mov byte [rbp], r12b
mov qword [rbp + 0x448], rbx
mov qword [rbp + 0x410], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop
xor cl, r13b
xor dl, r12b
inc eax
cmp eax, 8
jb 0x140008d20
mov byte [rbp + 0x448], cl
mov byte [rbp + 0x410], dl
mov r15d, r14d
mov rsi, r14
mov r11d, 1
lea r13d, [r11 + 7]
lea r14, [rbx*8]
mov r12, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, r15d
test r15d, r15d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r12
mov qword [rbp + 0x458], rax
movzx eax, byte [rbp + rsi + 0x458]
xor byte [rbp + rsi + 0x438], al
lea r10d, [r15*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r13d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 8]
lea eax, [r15 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x458], r9
movzx eax, byte [rbp + rsi + 0x459]
xor byte [rbp + rsi + 0x439], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x448]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x10]
lea eax, [r15 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x458], r8
movzx eax, byte [rbp + rsi + 0x45a]
xor byte [rbp + rsi + 0x43a], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x18]
lea eax, [r15 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x458], r9
movzx eax, byte [rbp + rsi + 0x45b]
xor byte [rbp + rsi + 0x43b], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x448]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x20]
lea eax, [r15 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x458], r8
movzx eax, byte [rbp + rsi + 0x45c]
xor byte [rbp + rsi + 0x43c], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x28]
lea eax, [r15 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x458], r9
movzx eax, byte [rbp + rsi + 0x45d]
xor byte [rbp + rsi + 0x43d], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x448]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x30]
lea eax, [r15 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x458], r8
movzx eax, byte [rbp + rsi + 0x45e]
xor byte [rbp + rsi + 0x43e], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x38]
lea eax, [r15 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x458], r9
movzx eax, byte [rbp + rsi + 0x45f]
xor byte [rbp + rsi + 0x43f], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x448]
shl rdx, cl
xor rdx, qword [rbp + 0x438]
mov qword [rbp + 0x438], rdx
add r15d, r13d
lea rsi, [rsi + 8]
cmp r15d, r13d
jb 0x140008d60
movzx r12d, byte [rbp]
imul rax, r12, 0xff
not rax
movzx ecx, byte [rbp + 0x10]
shl rcx, 7
sub rax, rcx
and rdx, qword [rbp + 0x430]
xor rax, rdx
mov qword [rbp + 0x438], rax
mov qword [rbp + 0x78], rax
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x58]
call fcn.14000fed0
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
cmp byte [0x1405f1604], 0
mov r14d, 0
jne 0x1400090ef
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1604], 1
lea rdx, [rbp + 0x140]
lea rcx, [rbp + 0x330]
call fcn.14000ff00
nop
mov rdx, rax
lea rcx, [rbp + 0x2a0]
call fcn.140010020
mov rdi, qword [rbp + 0x2b0]
mov qword [rbp + 0x448], rdi
lea rcx, [rbp + 0x2a0]
call fcn.140010990
mov rbx, rax
movabs r13, 0x101010101010101
lea rsi, [0x140000000]
lea r12, [0x1405f1e19]
cmp byte [0x1405f1606], 0
jne 0x140009539
mov r15, r14
nop word [rax + rax]
lea rcx, [rbp + 0x488]
call fcn.140001700
mov rdi, qword [rbp + 0x488]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r15 + rsi + 0x5f1f30], rax
lea rcx, [rbp + 0x2d0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x488], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r15 + rsi + 0x5f1e20], rax
lea rcx, [rbp + 0x2d8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x488], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r15 + rsi + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x140009160
lea rcx, [rbp + 0x450]
call fcn.140001700
mov r15d, r14d
lea rdi, [0x1405f1619]
nop
mov r13, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000928b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r13, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400092b7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi], dl
mov r13, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400092e2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r13, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000930e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi + 2], dl
add r15d, 4
add rdi, 4
cmp r15d, 4
jb 0x140009270
lea rcx, [rbp + 0x2e0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x450], rdi
mov r13d, r14d
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009364
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009391
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400093bd
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400093ea
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009417
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009444
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009471
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000949e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 6], dl
add r13d, 8
add r15, 8
cmp r13d, 8
jae 0x1400094ca
mov rdi, qword [rbp + 0x450]
jmp 0x140009350
lea rcx, [rbp + 0x2e8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x450], rdi
mov r15d, r14d
lea r13, [0x1405f1f20]
nop word [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009504
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r13], dl
inc r15d
inc r13
cmp r15d, 0xc
jae 0x14000952b
mov rdi, qword [rbp + 0x450]
jmp 0x1400094f0
mov byte [0x1405f1606], 1
mov rdi, qword [rbp + 0x448]
test rdi, rdi
je 0x140009722
mov dword [rbp + 0x18], r14d
nop word [rax + rax]
mov r9d, r14d
movzx edx, byte [rbx]
lea r8, [0x1405f1618]
nop dword [rax]
mov edi, r14d
movzx eax, byte [r8]
lea rcx, [rsi + 0x5f1f31]
lea rcx, [rcx + rax*8]
xor dl, byte [rcx - 1]
mov byte [rbx], dl
xor dl, byte [rcx]
mov byte [rbx], dl
xor dl, byte [rcx + 1]
mov byte [rbx], dl
xor dl, byte [rcx + 2]
mov byte [rbx], dl
xor dl, byte [rcx + 3]
mov byte [rbx], dl
xor dl, byte [rcx + 4]
mov byte [rbx], dl
xor dl, byte [rcx + 5]
mov byte [rbx], dl
xor dl, byte [rcx + 6]
mov byte [rbx], dl
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 8
jb 0x140009572
inc r9d
inc r8
cmp r9d, 4
jb 0x140009560
mov r9d, r14d
lea r8, [0x1405f1e18]
nop dword [rax + rax]
mov edi, r14d
movzx eax, byte [r8]
lea rcx, [rsi + 0x5f1e21]
lea rcx, [rcx + rax*8]
xor dl, byte [rcx - 1]
mov byte [rbx], dl
xor dl, byte [rcx]
mov byte [rbx], dl
xor dl, byte [rcx + 1]
mov byte [rbx], dl
xor dl, byte [rcx + 2]
mov byte [rbx], dl
xor dl, byte [rcx + 3]
mov byte [rbx], dl
xor dl, byte [rcx + 4]
mov byte [rbx], dl
xor dl, byte [rcx + 5]
mov byte [rbx], dl
xor dl, byte [rcx + 6]
mov byte [rbx], dl
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 8
jb 0x1400095d2
inc r9d
inc r8
cmp r9d, 8
jb 0x1400095c0
mov dword [rbp + 0x38], r14d
lea rcx, [0x1405f1f20]
mov qword [rbp + 0x410], rcx
nop dword [rax]
nop word [rax + rax]
mov r8d, r14d
movzx eax, byte [rcx]
lea rcx, [rax*8]
lea rdi, [rsi + 0x5f1f32]
add rdi, rcx
lea r9, [rsi + 0x5f1f30]
add r9, rcx
lea r10, [0x1405f1f31]
sub r10, rdi
add r10, rcx
lea r11, [0x1405f1f33]
sub r11, rdi
add r11, rcx
lea r15, [0x1405f1f34]
sub r15, rdi
add r15, rcx
lea r12, [0x1405f1f35]
sub r12, rdi
add r12, rcx
lea r13, [0x1405f1f36]
sub r13, rdi
add r13, rcx
lea rax, [0x1405f1f37]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x1400096a0
mov eax, dword [rbp + 0x38]
inc eax
mov dword [rbp + 0x38], eax
mov rcx, qword [rbp + 0x410]
inc rcx
mov qword [rbp + 0x410], rcx
cmp eax, 0xc
jb 0x140009630
mov ecx, dword [rbp + 0x18]
inc ecx
mov dword [rbp + 0x18], ecx
inc rbx
movsxd rax, ecx
cmp rax, qword [rbp + 0x448]
jb 0x140009550
lea r12, [0x1405f1e19]
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x350]
call fcn.140010020
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.140010990
mov r15, rax
lea r9, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x14000979c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
mov esi, 0xffffffff
movabs r8, 0xababdbf33353735b
nop dword [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, rsi
add rdx, 8
cmp rdx, rax
jl 0x140009780
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x38], r11
mov qword [rbp + 0x440], r11
mov r8d, r14d
test rbx, rbx
je 0x14000981c
mov rdi, r15
nop dword [rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x441]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x1400097d0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x440]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x38], r11
mov qword [rbp + 0x440], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x1400097c0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r15]
mov byte [rbp + 0x10], r13b
cmp rbx, 1
jbe 0x14000983c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000983f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x430], rbx
mov qword [rbp + 0x410], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r13b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x140009860
mov byte [rbp + 0x430], cl
mov byte [rbp + 0x410], dl
lea r13, [rbx*8]
mov rsi, r14
mov r14d, esi
mov r15d, 8
mov r11, r9
mov eax, r14d
test r14d, r14d
mov ecx, 1
cmove eax, ecx
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r11
mov qword [rbp + 0x448], rax
movzx eax, byte [rbp + rsi + 0x448]
xor byte [rbp + rsi + 0x440], al
lea r10d, [r14*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 8]
lea eax, [r14 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + rsi + 0x449]
xor byte [rbp + rsi + 0x441], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x430]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x10]
lea eax, [r14 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r11
mov qword [rbp + 0x448], r8
movzx eax, byte [rbp + rsi + 0x44a]
xor byte [rbp + rsi + 0x442], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x18]
lea eax, [r14 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r11
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + rsi + 0x44b]
xor byte [rbp + rsi + 0x443], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x430]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x20]
lea eax, [r14 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r11
mov qword [rbp + 0x448], r8
movzx eax, byte [rbp + rsi + 0x44c]
xor byte [rbp + rsi + 0x444], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x28]
lea eax, [r14 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r11
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + rsi + 0x44d]
xor byte [rbp + rsi + 0x445], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x430]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x30]
lea eax, [r14 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r11
mov qword [rbp + 0x448], r8
movzx eax, byte [rbp + rsi + 0x44e]
xor byte [rbp + rsi + 0x446], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x38]
lea eax, [r14 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r11
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + rsi + 0x44f]
xor byte [rbp + rsi + 0x447], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x430]
shl rdx, cl
xor rdx, qword [rbp + 0x440]
mov qword [rbp + 0x440], rdx
add r14d, r15d
lea rsi, [rsi + 8]
cmp r14d, r15d
jb 0x140009890
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 0x38]
xor rcx, rdx
mov qword [rbp + 0x440], rcx
mov qword [rbp + 0x78], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x58]
call fcn.14000fed0
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
lea rcx, [rbp + 0x2a0]
call fcn.140002d30
nop
lea rcx, [rbp + 0x330]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0x68]
lea rcx, [rbp + 0x58]
call fcn.140010990
mov r9, rax
mov qword [rbp + 0x30], rax
cmp byte [0x1405f1605], 0
mov r14d, 0
lea r15, [0x1405f1620]
jne 0x140009c90
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r15
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
nop dword [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x140009c70
mov byte [0x1405f1605], 1
mov r9, qword [rbp + 0x30]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x430], r11
mov r8d, r14d
test rbx, rbx
je 0x140009d0c
mov rdi, r9
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x431]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140009cc0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x430]
xor r11, qword [r15 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x430], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140009cb0
movabs r10, 0xaebdccdb0a192837
movzx edi, byte [r9]
cmp rbx, 1
jbe 0x140009d28
movzx r15d, byte [rbx + r9 - 1]
jmp 0x140009d2b
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x38], rbx
mov qword [rbp + 0x18], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
xor cl, dil
xor dl, r15b
inc eax
cmp eax, 8
jb 0x140009d40
mov byte [rbp + 0x38], cl
mov byte [rbp + 0x18], dl
mov esi, r14d
mov r13, r14
lea r14, [rbx*8]
mov r15d, 8
mov r11, r10
nop word [rax + rax]
mov eax, esi
test esi, esi
mov ecx, 1
cmove eax, ecx
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r10
mov rax, r8
xor rax, r11
mov qword [rbp + 0x410], rax
movzx eax, byte [rbp + r13 + 0x410]
xor byte [rbp + r13 + 0x430], al
lea r10d, [rsi*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 8]
lea eax, [rsi + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + r13 + 0x411]
xor byte [rbp + r13 + 0x431], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x38]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x10]
lea eax, [rsi + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r11
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + r13 + 0x412]
xor byte [rbp + r13 + 0x432], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x18]
lea eax, [rsi + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r11
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + r13 + 0x413]
xor byte [rbp + r13 + 0x433], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x38]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x20]
lea eax, [rsi + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r11
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + r13 + 0x414]
xor byte [rbp + r13 + 0x434], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x28]
lea eax, [rsi + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r11
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + r13 + 0x415]
xor byte [rbp + r13 + 0x435], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x38]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x30]
lea eax, [rsi + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r11
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + r13 + 0x416]
xor byte [rbp + r13 + 0x436], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x38]
lea eax, [rsi + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r10, rbx
shl r10, cl
xor r10, r8
xor r10, r11
mov qword [rbp + 0x410], r10
movzx eax, byte [rbp + r13 + 0x417]
xor byte [rbp + r13 + 0x437], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x38]
shl rdx, cl
xor rdx, qword [rbp + 0x430]
mov qword [rbp + 0x430], rdx
add esi, r15d
lea r13, [r13 + 8]
cmp esi, r15d
jb 0x140009d70
movzx r15d, byte [rbp]
imul r8, r15, 0xff
not r8
mov rax, qword [rbp + 0x30]
movzx eax, byte [rax]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 8]
xor r8, rdx
mov qword [rbp + 0x430], r8
mov rdx, qword [rbp + 0x78]
cmp r8, rdx
lea rsi, [0x140000000]
mov r14d, 0
je 0x14000a0e4
mov rdi, qword [0x1405f1610]
lea rcx, [rbp + 0x3c8]
call fcn.140002d90
lea rdx, [rbp + 0x58]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0x2f0]
call fcn.140010020
nop
lea rdx, [rbp + 0x2f0]
lea rcx, [rbp + 0x118]
call fcn.140010020
mov rdi, qword [rbp + 0x128]
mov qword [rbp + 0x30], rdi
lea rcx, [rbp + 0x118]
call fcn.140010990
mov rbx, rax
cmp byte [0x1405f1606], 0
jne 0x14000a50d
mov r15, r14
movabs r13, 0x101010101010101
nop dword [rax]
lea rcx, [rbp + 0x460]
call fcn.140001700
mov rdi, qword [rbp + 0x460]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r15 + rsi + 0x5f1f30], rax
lea rcx, [rbp + 0x2c0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x460], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r15 + rsi + 0x5f1e20], rax
lea rcx, [rbp + 0x2c8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x460], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r15 + rsi + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x14000a140
lea rcx, [rbp + 0x420]
call fcn.140001700
mov r15d, r14d
lea rdi, [0x1405f1619]
nop
mov r13, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a26b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r13, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a297
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi], dl
mov r13, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a2c2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r13, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a2ee
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi + 2], dl
add r15d, 4
add rdi, 4
cmp r15d, 4
jb 0x14000a250
lea rcx, [rbp + 0xc0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x420], rdi
mov r13d, r14d
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a344
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a371
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a39d
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a3ca
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a3f7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a424
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a451
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a47e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 6], dl
add r13d, 8
add r15, 8
cmp r13d, 8
jae 0x14000a4aa
mov rdi, qword [rbp + 0x420]
jmp 0x14000a330
lea rcx, [rbp + 0x48]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x420], rdi
mov r15d, r14d
lea r12, [0x1405f1f20]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a4db
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12], dl
inc r15d
inc r12
cmp r15d, 0xc
jae 0x14000a502
mov rdi, qword [rbp + 0x420]
jmp 0x14000a4c7
mov byte [0x1405f1606], 1
mov rdi, qword [rbp + 0x30]
test rdi, rdi
je 0x14000a7d2
mov dword [rbp + 0x38], r14d
nop word [rax + rax]
mov dword [rbp + 0x18], r14d
movzx edx, byte [rbx]
lea rcx, [0x1405f1618]
mov qword [rbp + 8], rcx
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5f1f32]
add rdi, rcx
lea r9, [rsi + 0x5f1f30]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5f1f31]
add r10, rax
lea r11, [0x1405f1f33]
sub r11, rdi
add r11, rcx
lea r15, [0x1405f1f34]
sub r15, rdi
add r15, rcx
lea r12, [0x1405f1f35]
sub r12, rdi
add r12, rcx
lea r13, [0x1405f1f36]
sub r13, rdi
add r13, rcx
lea rax, [0x1405f1f37]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000a5a1
mov eax, dword [rbp + 0x18]
inc eax
mov dword [rbp + 0x18], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 4
jb 0x14000a532
mov dword [rbp + 0x18], r14d
lea rcx, [0x1405f1e18]
mov qword [rbp + 8], rcx
nop word [rax + rax]
mov r8d, r14d
movzx eax, byte [rcx]
lea rcx, [rax*8]
lea rdi, [rsi + 0x5f1e22]
add rdi, rcx
lea r9, [rsi + 0x5f1e20]
add r9, rcx
lea r10, [0x1405f1e21]
sub r10, rdi
add r10, rcx
lea r11, [0x1405f1e23]
sub r11, rdi
add r11, rcx
lea r15, [0x1405f1e24]
sub r15, rdi
add r15, rcx
lea r12, [0x1405f1e25]
sub r12, rdi
add r12, rcx
lea r13, [0x1405f1e26]
sub r13, rdi
add r13, rcx
lea rax, [0x1405f1e27]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000a680
mov eax, dword [rbp + 0x18]
inc eax
mov dword [rbp + 0x18], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 8
jb 0x14000a610
mov dword [rbp + 0x18], r14d
lea rcx, [0x1405f1f20]
mov qword [rbp + 8], rcx
nop dword [rax]
mov r8d, r14d
movzx eax, byte [rcx]
lea rcx, [rax*8]
lea rdi, [rsi + 0x5f1f32]
add rdi, rcx
lea r9, [rsi + 0x5f1f30]
add r9, rcx
lea r10, [0x1405f1f31]
sub r10, rdi
add r10, rcx
lea r11, [0x1405f1f33]
sub r11, rdi
add r11, rcx
lea r15, [0x1405f1f34]
sub r15, rdi
add r15, rcx
lea r12, [0x1405f1f35]
sub r12, rdi
add r12, rcx
lea r13, [0x1405f1f36]
sub r13, rdi
add r13, rcx
lea rax, [0x1405f1f37]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000a760
mov eax, dword [rbp + 0x18]
inc eax
mov dword [rbp + 0x18], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 0xc
jb 0x14000a6f0
mov edi, dword [rbp + 0x38]
inc edi
mov dword [rbp + 0x38], edi
inc rbx
movsxd rax, edi
cmp rax, qword [rbp + 0x30]
jb 0x14000a520
lea rcx, [rbp + 0x2f0]
call fcn.140002d30
nop
lea rdx, [rbp + 0x118]
mov rcx, qword [rbp + 0x20]
call fcn.140010da0
lea rdx, [0x140010dc0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp + 0x118]
call fcn.140002d30
nop
lea rcx, [rbp + 0x58]
call fcn.140002f10
mov r15d, 5
lea r12d, [r15 + 0x1a]
mov ebx, dword [reloc.WS2_32.dll_accept]
cmp byte [rbp + 0x484], 0
jne 0x14000a950
cmp ebx, 2
jl 0x14000a950
movdqa xmm4, xmmword [0x14044dea0]
movd xmm6, r15d
movd xmm5, r12d
movdqa xmm2, xmmword [0x14044de50]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14044de70]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.8888888888888888]
movd xmm0, dword [rbp + 0x478]
xorps xmm2, xmm0
movd dword [rbp + 0x478], xmm2
movdqa xmm3, xmmword [0x14044de60]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x14044de70]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.8888888888888888]
movd xmm0, dword [rbp + 0x47c]
xorps xmm2, xmm0
movd dword [rbp + 0x47c], xmm2
nop word [rax + rax]
mov qword [rbp + 0x478], r14
mov dword [rbp + 0x480], r14d
mov byte [rbp + 0x484], r14b
lea rcx, [rbp + 0x5d0]
lea rax, [rsi + 0x43ddb0]
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
movups xmm0, xmmword [rax + 0x80]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x90]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0xa0]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0xb0]
movups xmmword [rcx + 0x30], xmm1
movzx eax, byte [rax + 0xc0]
mov byte [rcx + 0x40], al
mov edi, r14d
cmp ebx, 2
jl 0x14000ab3e
movdqa xmm5, xmmword [0x14044de50]
movdqa xmm4, xmmword [0x14044dea0]
movd xmm6, r15d
movdqa xmm7, xmmword [0x14044de70]
movd xmm8, r12d
movdqa xmm0, xmmword [str.8888888888888888]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x5d4]
mov edx, dword [rbp + 0x20]
movd xmm2, edi
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 0xc0
jl 0x14000aa32
cmp edi, 0xc1
jge 0x14000ab82
movsxd rax, edi
lea r8, [rbp + 0x5d0]
add r8, rax
nop dword [rax + rax]
mov eax, 0x8fb823ef
imul edi
add edx, edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, dil
sub al, cl
add al, 0x38
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xc1
jl 0x14000ab50
lea rdx, [rbp + 0x5d0]
lea rcx, [rbp + 0x4f8]
call fcn.14000ff00
nop
lea r8, [rbp + 0x4d8]
lea rdx, [rbp + 0x4f8]
lea rcx, [rbp + 0x528]
call fcn.140005950
nop
lea rdi, [rbp + 0x4f8]
cmp qword [rbp + 0x510], 0x10
cmovae rdi, qword [rbp + 0x4f8]
xor eax, eax
mov rcx, qword [rbp + 0x508]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x4d8]
cmp qword [rbp + 0x4f0], 0x10
cmovae rdi, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x4e8]
rep stosb byte [rdi], al
cmp byte [rbp + 0x690], al
jne 0x14000ada2
mov edi, r14d
cmp ebx, 2
jl 0x14000ad5c
movdqa xmm5, xmmword [0x14044de50]
movdqa xmm4, xmmword [0x14044dea0]
movd xmm6, r15d
movdqa xmm7, xmmword [0x14044de70]
movd xmm8, r12d
movdqa xmm0, xmmword [str.8888888888888888]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x5d4]
mov edx, dword [rbp + 0x20]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, edi
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 0xc0
jl 0x14000ac50
cmp edi, 0xc1
jge 0x14000ada2
movsxd rax, edi
lea r8, [rbp + 0x5d0]
add r8, rax
nop dword [rax]
mov eax, 0x8fb823ef
imul edi
add edx, edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, dil
sub al, cl
add al, 0x38
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xc1
jl 0x14000ad70
lea rax, [rbp + 0x5d0]
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
lea rax, [rax + 0x80]
movups xmmword [rax - 0x10], xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov byte [rax + 0x40], cl
lea rdx, [rbp + 0x528]
mov ecx, dword [rbp + 0x50]
call fcn.1400063b0
movabs rdx, 0xd93d0723f0bb2058
test al, al
mov rax, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
je 0x14000cc68
mov qword [rbp + 0x460], rax
movabs rcx, 0xf9c42d4ec746896e
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x4a0], rax
movabs rax, 0xb67a27449ed2532d
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x4a8], rax
movabs rax, 0x198dc523faf48f8e
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x4b0], rax
movabs rdi, 0x384eeb0992e4635a
mov qword [rbp + 0x20], rdi
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x4b8], rax
movabs rcx, 0xd9b7446eb523fa3b
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xa00], rax
mov qword [rbp + 0x20], rdx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xa08], rax
movabs rax, 0x198da244d49cfbfd
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xa10], rax
mov qword [rbp + 0x20], rdi
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xa18], rax
vmovdqu ymm0, ymmword [rbp + 0x4a0]
vpxor ymm1, ymm0, ymmword [rbp + 0xa00]
vmovdqa ymmword [rbp + 0x4a0], ymm1
lea rax, [rbp + 0x58]
mov qword [rbp + 0x48], rax
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x58]
vzeroupper
call fcn.14000ff00
nop
xor eax, eax
mov qword [rbp + 0x78], rax
cmp byte [0x1405f1603], al
jne 0x14000af20
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1603], 1
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x280]
call fcn.14000ff00
mov qword [rbp + 0x30], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.140010990
mov r15, rax
lea r9, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x14000af9c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r13d, 0xffffffff
nop word [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r13
add rdx, 8
cmp rdx, rax
jl 0x14000af80
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
mov r8d, r14d
test rbx, rbx
je 0x14000b01c
mov rdi, r15
nop dword [rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000afd0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000afc0
movabs r9, 0xaebdccdb0a192837
movzx r12d, byte [r15]
mov byte [rbp + 0x10], r12b
cmp rbx, 1
jbe 0x14000b03c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000b03f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r12b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x14000b060
mov byte [rbp + 0x410], cl
mov byte [rbp + 0x420], dl
mov r13d, r14d
mov rsi, r14
lea r14, [rbx*8]
mov r12d, 8
mov r15, r9
mov r11d, 1
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r15
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + rsi + 0x408]
xor byte [rbp + rsi + 0x400], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r12d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + rsi + 0x409]
xor byte [rbp + rsi + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + rsi + 0x40a]
xor byte [rbp + rsi + 0x402], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + rsi + 0x40b]
xor byte [rbp + rsi + 0x403], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + rsi + 0x40c]
xor byte [rbp + rsi + 0x404], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + rsi + 0x40d]
xor byte [rbp + rsi + 0x405], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + rsi + 0x40e]
xor byte [rbp + rsi + 0x406], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + rsi + 0x40f]
xor byte [rbp + rsi + 0x407], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x410]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r13d, r12d
lea rsi, [rsi + 8]
cmp r13d, r12d
jb 0x14000b0a0
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x78], rcx
mov rdx, qword [rbp + 0x30]
lea rcx, [rbp + 0x58]
call fcn.14000fed0
nop
mov rcx, qword [rbp + 0x30]
call fcn.140002d30
nop
cmp byte [0x1405f1604], 0
lea rsi, [0x140000000]
mov r14d, 0
jne 0x14000b42c
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1604], 1
lea rdx, [rbp + 0x4a0]
lea rcx, [rbp + 0x188]
call fcn.14000ff00
nop
mov rdx, rax
lea rcx, [rbp + 0xa00]
call fcn.140010020
mov r13, qword [rbp + 0xa10]
mov qword [rbp + 0x20], r13
lea rcx, [rbp + 0xa00]
call fcn.140010990
mov rbx, rax
cmp byte [0x1405f1606], 0
jne 0x14000b852
mov r15, r14
movabs r12, 0x101010101010101
lea rcx, [rbp + 0x470]
call fcn.140001700
mov rdi, qword [rbp + 0x470]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r12
mov qword [r15 + rsi + 0x5f1f30], rax
lea rcx, [rbp + 0x90]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r12
mov qword [r15 + rsi + 0x5f1e20], rax
lea rcx, [rbp + 0x88]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r12
mov qword [r15 + rsi + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x14000b483
lea rcx, [rbp + 0x428]
call fcn.140001700
mov r15d, r14d
lea rdi, [0x1405f1619]
mov r12, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b5ac
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r12, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b5d8
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [rdi], dl
mov r12, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b603
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r12, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b62f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [rdi + 2], dl
add r15d, 4
add rdi, 4
cmp r15d, 4
jb 0x14000b591
lea rcx, [rbp + 0xf0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r12d, r14d
lea r15, [0x1405f1e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b686
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b6b3
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b6df
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b70c
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b739
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b766
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b793
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b7c0
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 6], dl
add r12d, 8
add r15, 8
cmp r12d, 8
jae 0x14000b7ec
mov rdi, qword [rbp + 0x428]
jmp 0x14000b672
lea rcx, [rbp + 0xe8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r15d, r14d
lea r12, [0x1405f1f20]
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b824
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12], dl
inc r15d
inc r12
cmp r15d, 0xc
jae 0x14000b84b
mov rdi, qword [rbp + 0x428]
jmp 0x14000b810
mov byte [0x1405f1606], 1
test r13, r13
je 0x14000bb12
mov dword [rbp + 0x38], r14d
nop
mov dword [rbp + 0x18], r14d
movzx edx, byte [rbx]
lea rcx, [0x1405f1618]
mov qword [rbp + 8], rcx
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5f1f32]
add rdi, rcx
lea r9, [rsi + 0x5f1f30]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5f1f31]
add r10, rax
lea r11, [0x1405f1f33]
sub r11, rdi
add r11, rcx
lea r15, [0x1405f1f34]
sub r15, rdi
add r15, rcx
lea r12, [0x1405f1f35]
sub r12, rdi
add r12, rcx
lea r13, [0x1405f1f36]
sub r13, rdi
add r13, rcx
lea rax, [0x1405f1f37]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000b8e1
mov eax, dword [rbp + 0x18]
inc eax
mov dword [rbp + 0x18], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 4
jb 0x14000b872
mov dword [rbp + 0x18], r14d
lea rcx, [0x1405f1e18]
mov qword [rbp + 8], rcx
nop word [rax + rax]
mov r8d, r14d
movzx eax, byte [rcx]
lea rcx, [rax*8]
lea rdi, [rsi + 0x5f1e22]
add rdi, rcx
lea r9, [rsi + 0x5f1e20]
add r9, rcx
lea r10, [0x1405f1e21]
sub r10, rdi
add r10, rcx
lea r11, [0x1405f1e23]
sub r11, rdi
add r11, rcx
lea r15, [0x1405f1e24]
sub r15, rdi
add r15, rcx
lea r12, [0x1405f1e25]
sub r12, rdi
add r12, rcx
lea r13, [0x1405f1e26]
sub r13, rdi
add r13, rcx
lea rax, [0x1405f1e27]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [rdi + r10]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r11]
mov byte [rbx], dl
xor dl, byte [rdi + r15]
mov byte [rbx], dl
xor dl, byte [rdi + r12]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rdi + rax]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000b9c0
mov eax, dword [rbp + 0x18]
inc eax
mov dword [rbp + 0x18], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 8
jb 0x14000b950
mov dword [rbp + 0x18], r14d
lea rcx, [0x1405f1f20]
mov qword [rbp + 8], rcx
nop dword [rax]
mov r8d, r14d
movzx eax, byte [rcx]
lea rcx, [rax*8]
lea rdi, [rsi + 0x5f1f32]
add rdi, rcx
lea r9, [rsi + 0x5f1f30]
add r9, rcx
lea r10, [0x1405f1f31]
sub r10, rdi
add r10, rcx
lea r11, [0x1405f1f33]
sub r11, rdi
add r11, rcx
lea r15, [0x1405f1f34]
sub r15, rdi
add r15, rcx
lea r12, [0x1405f1f35]
sub r12, rdi
add r12, rcx
lea r13, [0x1405f1f36]
sub r13, rdi
add r13, rcx
lea rax, [0x1405f1f37]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000baa0
mov eax, dword [rbp + 0x18]
inc eax
mov dword [rbp + 0x18], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 0xc
jb 0x14000ba30
mov edi, dword [rbp + 0x38]
inc edi
mov dword [rbp + 0x38], edi
inc rbx
movsxd rax, edi
cmp rax, qword [rbp + 0x20]
jb 0x14000b860
lea rdx, [rbp + 0xa00]
lea rcx, [rbp + 0x1a8]
call fcn.140010020
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.140010990
mov r12, rax
lea r9, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x14000bb8c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
mov esi, 0xffffffff
movabs r8, 0xababdbf33353735b
nop dword [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, rsi
add rdx, 8
cmp rdx, rax
jl 0x14000bb70
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
mov r8d, r14d
test rbx, rbx
je 0x14000bc0c
mov rdi, r12
nop dword [rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000bbc0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000bbb0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r12]
mov byte [rbp + 0x10], r13b
cmp rbx, 1
jbe 0x14000bc2d
movzx r12d, byte [rbx + r12 - 1]
jmp 0x14000bc30
mov r12b, 0xae
mov byte [rbp], r12b
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop dword [rax + rax]
xor cl, r13b
xor dl, r12b
inc eax
cmp eax, 8
jb 0x14000bc50
mov byte [rbp + 0x410], cl
mov byte [rbp + 0x420], dl
mov esi, r14d
mov r15, r14
lea r14, [rbx*8]
mov r13d, 8
mov r12, r9
mov r11d, 1
nop word [rax + rax]
mov eax, esi
test esi, esi
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r12
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r15 + 0x408]
xor byte [rbp + r15 + 0x400], al
lea r10d, [rsi*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r13d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [rsi + 1]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x409]
xor byte [rbp + r15 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [rsi + 2]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r15 + 0x40a]
xor byte [rbp + r15 + 0x402], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [rsi + 3]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x40b]
xor byte [rbp + r15 + 0x403], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [rsi + 4]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r15 + 0x40c]
xor byte [rbp + r15 + 0x404], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [rsi + 5]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x40d]
xor byte [rbp + r15 + 0x405], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [rsi + 6]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r15 + 0x40e]
xor byte [rbp + r15 + 0x406], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [rsi + 7]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x40f]
xor byte [rbp + r15 + 0x407], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x410]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add esi, r13d
lea r15, [r15 + 8]
cmp esi, r13d
jb 0x14000bc90
movzx r12d, byte [rbp]
imul rcx, r12, 0xff
not rcx
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x78], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x58]
call fcn.14000fed0
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
lea rcx, [rbp + 0xa00]
call fcn.140002d30
nop
lea rcx, [rbp + 0x188]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0x68]
lea rcx, [rbp + 0x58]
call fcn.140010990
mov r12, rax
cmp byte [0x1405f1605], 0
mov r14d, 0
jne 0x14000c07c
lea rdx, [0x1405f1620]
lea rax, [0x1405f1e18]
movabs rdi, 0xababdbf33353735b
mov r9d, 0xffffffff
movabs r8, 0xfeeddccbbaa99887
nop dword [rax]
mov rcx, r8
xor rcx, rdi
mov qword [rdx], rcx
sub r8, r9
add rdx, 8
cmp rdx, rax
jl 0x14000c060
mov byte [0x1405f1605], 1
lea r9, [0x1405f1620]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x400], rax
mov r8d, r14d
test rbx, rbx
je 0x14000c0fc
mov rdi, r12
nop
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000c0b0
not cl
movzx eax, cl
mov rsi, qword [rbp + 0x400]
xor rsi, qword [r9 + rax*8]
mov qword [rbp + 0x40], rsi
mov qword [rbp + 0x400], rsi
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000c0a0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r12]
mov byte [rbp + 0x10], r13b
cmp rbx, 1
jbe 0x14000c11d
movzx r12d, byte [rbx + r12 - 1]
jmp 0x14000c120
mov r12b, 0xae
mov byte [rbp], r12b
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop dword [rax + rax]
xor cl, r13b
xor dl, r12b
inc eax
cmp eax, 8
jb 0x14000c140
mov byte [rbp + 0x410], cl
mov byte [rbp + 0x420], dl
mov r15d, r14d
lea rsi, [rbx*8]
mov r11, r14
mov r14d, 8
mov r13, r9
mov r12d, 1
nop word [rax + rax]
mov eax, r15d
test r15d, r15d
cmove eax, r12d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r13
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r11 + 0x408]
xor byte [rbp + r11 + 0x400], al
lea r10d, [r15*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r15 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x409]
xor byte [rbp + r11 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r15 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r11 + 0x40a]
xor byte [rbp + r11 + 0x402], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r15 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x40b]
xor byte [rbp + r11 + 0x403], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r15 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r11 + 0x40c]
xor byte [rbp + r11 + 0x404], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r15 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x40d]
xor byte [rbp + r11 + 0x405], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r15 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r11 + 0x40e]
xor byte [rbp + r11 + 0x406], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r15 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x40f]
xor byte [rbp + r11 + 0x407], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x410]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r15d, r14d
lea r11, [r11 + 8]
cmp r15d, r14d
jb 0x14000c180
movzx r12d, byte [rbp]
imul r8, r12, 0xff
not r8
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 0x40]
xor r8, rdx
mov rdx, qword [rbp + 0x78]
cmp r8, rdx
lea rsi, [0x140000000]
mov r14d, 0
je 0x14000c507
mov rdi, qword [0x1405f1610]
lea rcx, [rbp + 0x150]
call fcn.140002d90
lea rdx, [rbp + 0x58]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x58]
lea rcx, [rbp + 0xf8]
call fcn.140010020
nop
lea rdx, [rbp + 0xf8]
lea rcx, [rbp + 0x118]
call fcn.140010020
mov r13, qword [rbp + 0x128]
mov qword [rbp + 0x30], r13
lea rcx, [rbp + 0x118]
call fcn.140010990
mov rbx, rax
mov qword [rbp + 0x20], rax
cmp byte [0x1405f1606], 0
jne 0x14000c932
mov r15, r14
movabs r12, 0x101010101010101
lea rcx, [rbp + 0x468]
call fcn.140001700
mov rdi, qword [rbp + 0x468]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r12
mov qword [r15 + rsi + 0x5f1f30], rax
lea rcx, [rbp + 0xe0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r12
mov qword [r15 + rsi + 0x5f1e20], rax
lea rcx, [rbp + 0xd8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r12
mov qword [r15 + rsi + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x14000c563
lea rcx, [rbp + 0x418]
call fcn.140001700
mov edi, r14d
lea r12, [0x1405f1619]
mov r15, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c68c
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r12 - 1], dl
mov r15, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c6ba
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r12], dl
mov r15, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c6e7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r12 + 1], dl
mov r15, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c715
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r12 + 2], dl
add edi, 4
add r12, 4
cmp edi, 4
jb 0x14000c671
lea rcx, [rbp + 0xd0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x418], rdi
mov r15d, r14d
lea rbx, [0x1405f1e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c76c
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx - 1], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c798
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c7c3
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 1], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c7ef
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 2], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c81b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 3], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c847
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 4], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c873
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 5], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c89f
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 6], dl
add r15d, 8
add rbx, 8
cmp r15d, 8
jae 0x14000c8ca
mov rdi, qword [rbp + 0x418]
jmp 0x14000c758
lea rcx, [rbp + 0xc8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x418], rdi
mov r15d, r14d
lea r12, [0x1405f1f20]
mov rbx, qword [rbp + 0x20]
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c904
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12], dl
inc r15d
inc r12
cmp r15d, 0xc
jae 0x14000c92b
mov rdi, qword [rbp + 0x418]
jmp 0x14000c8f0
mov byte [0x1405f1606], 1
test r13, r13
je 0x14000cc0d
mov dword [rbp + 0x18], r14d
nop
mov r13d, r14d
movzx edx, byte [rbx]
lea rax, [0x1405f1618]
mov qword [rbp + 8], rax
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5f1f32]
add rdi, rcx
lea r9, [rsi + 0x5f1f30]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5f1f31]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5f1f33]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5f1f34]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5f1f35]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5f1f36]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5f1f37]
add rcx, rsi
nop dword [rax]
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
xor dl, byte [rcx + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000c9d0
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 4
jb 0x14000c951
mov r13d, r14d
lea rax, [0x1405f1e18]
mov qword [rbp + 8], rax
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5f1e22]
add rdi, rcx
lea r9, [rsi + 0x5f1e20]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5f1e21]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5f1e23]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5f1e24]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5f1e25]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5f1e26]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5f1e27]
add rcx, rsi
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
xor dl, byte [rcx + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000cab0
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 8
jb 0x14000ca33
mov r13d, r14d
lea rax, [0x1405f1f20]
mov qword [rbp + 8], rax
nop dword [rax]
nop word [rax + rax]
mov r8d, r14d
movzx eax, byte [rax]
lea rcx, [rax*8]
lea rdi, [rsi + 0x5f1f32]
add rdi, rcx
lea r9, [rsi + 0x5f1f30]
add r9, rcx
lea r10, [0x1405f1f31]
sub r10, rdi
add r10, rcx
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5f1f33]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5f1f34]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5f1f35]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5f1f36]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5f1f37]
add rcx, rsi
nop dword [rax]
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
xor dl, byte [rcx + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000cba0
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 0xc
jb 0x14000cb20
mov ecx, dword [rbp + 0x18]
inc ecx
mov dword [rbp + 0x18], ecx
inc rbx
movsxd rax, ecx
cmp rax, qword [rbp + 0x30]
jb 0x14000c940
lea rcx, [rbp + 0xf8]
call fcn.140002d30
nop
lea rdx, [rbp + 0x118]
mov rcx, qword [rbp + 0x460]
call fcn.140010da0
lea rdx, [0x140010dc0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp + 0x118]
call fcn.140002d30
nop
lea rcx, [rbp + 0x58]
call fcn.140002f10
mov ebx, dword [reloc.WS2_32.dll_accept]
mov esi, 5
lea r15d, [rsi + 0x1a]
jmp 0x14000ed07
mov qword [rbp + 0x460], rax
movabs rcx, 0xd9b7446eb523fa3b
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xa00], rax
mov qword [rbp + 0x20], rdx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0xa08], rax
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x4a0], rax
mov qword [rbp + 0x20], rdx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x4a8], rax
movdqa xmm0, xmmword [rbp + 0xa00]
xorps xmm0, xmmword [rbp + 0x4a0]
movdqa xmmword [rbp + 0xa00], xmm0
lea rax, [rbp + 0x150]
mov qword [rbp + 0x48], rax
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x150]
call fcn.14000ff00
nop
xor eax, eax
mov qword [rbp + 0x170], rax
cmp byte [0x1405f1603], al
jne 0x14000cd11
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1603], 1
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x280]
call fcn.14000ff00
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.140010990
mov r12, rax
lea r9, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x14000cd8c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
mov esi, 0xffffffff
movabs r8, 0xababdbf33353735b
nop word [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, rsi
add rdx, 8
cmp rdx, rax
jl 0x14000cd70
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
mov r8d, r14d
test rbx, rbx
je 0x14000ce0c
mov rdi, r12
nop dword [rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000cdc0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000cdb0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r12]
mov byte [rbp + 0x10], r13b
cmp rbx, 1
jbe 0x14000ce2d
movzx r12d, byte [rbx + r12 - 1]
jmp 0x14000ce30
mov r12b, 0xae
mov byte [rbp], r12b
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop dword [rax + rax]
xor cl, r13b
xor dl, r12b
inc eax
cmp eax, 8
jb 0x14000ce50
mov byte [rbp + 0x410], cl
mov byte [rbp + 0x420], dl
mov esi, r14d
mov r15, r14
lea r14, [rbx*8]
mov r13d, 8
mov r12, r9
mov r11d, 1
nop word [rax + rax]
mov eax, esi
test esi, esi
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r12
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r15 + 0x408]
xor byte [rbp + r15 + 0x400], al
lea r10d, [rsi*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r13d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [rsi + 1]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x409]
xor byte [rbp + r15 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [rsi + 2]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r15 + 0x40a]
xor byte [rbp + r15 + 0x402], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [rsi + 3]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x40b]
xor byte [rbp + r15 + 0x403], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [rsi + 4]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r15 + 0x40c]
xor byte [rbp + r15 + 0x404], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [rsi + 5]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x40d]
xor byte [rbp + r15 + 0x405], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [rsi + 6]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r15 + 0x40e]
xor byte [rbp + r15 + 0x406], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [rsi + 7]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x40f]
xor byte [rbp + r15 + 0x407], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x410]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add esi, r13d
lea r15, [r15 + 8]
cmp esi, r13d
jb 0x14000ce90
movzx r12d, byte [rbp]
imul rcx, r12, 0xff
not rcx
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x170], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x150]
call fcn.14000fed0
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
cmp byte [0x1405f1604], 0
lea rsi, [0x140000000]
mov r14d, 0
jne 0x14000d229
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1604], 1
lea rdx, [rbp + 0xa00]
lea rcx, [rbp + 0x98]
call fcn.14000ff00
nop
mov rdx, rax
lea rcx, [rbp + 0x188]
call fcn.140010020
mov r13, qword [rbp + 0x198]
mov qword [rbp + 0x20], r13
lea rcx, [rbp + 0x188]
call fcn.140010990
mov rbx, rax
cmp byte [0x1405f1606], 0
jne 0x14000d652
mov r15, r14
movabs r12, 0x101010101010101
lea rcx, [rbp + 0x470]
call fcn.140001700
mov rdi, qword [rbp + 0x470]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r12
mov qword [r15 + rsi + 0x5f1f30], rax
lea rcx, [rbp + 0x90]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r12
mov qword [r15 + rsi + 0x5f1e20], rax
lea rcx, [rbp + 0x88]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r12
mov qword [r15 + rsi + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x14000d280
lea rcx, [rbp + 0x428]
call fcn.140001700
mov r15d, r14d
lea rdi, [0x1405f1619]
nop
mov r12, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d3ab
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r12, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d3d7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [rdi], dl
mov r12, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d402
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r12, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d42e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [rdi + 2], dl
add r15d, 4
add rdi, 4
cmp r15d, 4
jb 0x14000d390
lea rcx, [rbp + 0xf0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r12d, r14d
lea r15, [0x1405f1e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d485
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d4b2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d4de
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d50b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d538
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d565
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d592
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d5bf
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 6], dl
add r12d, 8
add r15, 8
cmp r12d, 8
jae 0x14000d5eb
mov rdi, qword [rbp + 0x428]
jmp 0x14000d471
lea rcx, [rbp + 0xe8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r15d, r14d
lea r12, [0x1405f1f20]
nop dword [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d624
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12], dl
inc r15d
inc r12
cmp r15d, 0xc
jae 0x14000d64b
mov rdi, qword [rbp + 0x428]
jmp 0x14000d610
mov byte [0x1405f1606], 1
test r13, r13
je 0x14000d91d
mov dword [rbp + 0x18], r14d
nop
mov r13d, r14d
movzx edx, byte [rbx]
lea rax, [0x1405f1618]
mov qword [rbp + 8], rax
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5f1f32]
add rdi, rcx
lea r9, [rsi + 0x5f1f30]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5f1f31]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5f1f33]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5f1f34]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5f1f35]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5f1f36]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5f1f37]
add rcx, rsi
nop dword [rax]
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
xor dl, byte [rcx + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000d6f0
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 4
jb 0x14000d671
mov r13d, r14d
lea rax, [0x1405f1e18]
mov qword [rbp + 8], rax
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5f1e22]
add rdi, rcx
lea r9, [rsi + 0x5f1e20]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5f1e21]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5f1e23]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5f1e24]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5f1e25]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5f1e26]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5f1e27]
add rcx, rsi
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
xor dl, byte [rcx + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000d7d0
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 8
jb 0x14000d753
mov r13d, r14d
lea rax, [0x1405f1f20]
mov qword [rbp + 8], rax
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5f1f32]
add rdi, rcx
lea r9, [rsi + 0x5f1f30]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5f1f31]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5f1f33]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5f1f34]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5f1f35]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5f1f36]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5f1f37]
add rcx, rsi
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
xor dl, byte [rcx + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000d8b0
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 0xc
jb 0x14000d833
mov ecx, dword [rbp + 0x18]
inc ecx
mov dword [rbp + 0x18], ecx
inc rbx
movsxd rax, ecx
cmp rax, qword [rbp + 0x20]
jb 0x14000d660
lea rdx, [rbp + 0x188]
lea rcx, [rbp + 0x310]
call fcn.140010020
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.140010990
mov r10, rax
mov qword [rbp + 8], rax
lea r9, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x14000d9a0
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r10d, 0xffffffff
nop dword [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r10
add rdx, 8
cmp rdx, rax
jl 0x14000d980
mov byte [0x1405f1605], 1
mov r10, qword [rbp + 8]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x30], r11
mov qword [rbp + 0x400], r11
mov r8d, r14d
test rbx, rbx
je 0x14000da1c
mov rdi, r10
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000d9d0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x30], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000d9c0
movabs r9, 0xaebdccdb0a192837
movzx edi, byte [r10]
cmp rbx, 1
jbe 0x14000da38
movzx r12d, byte [rbx + r10 - 1]
jmp 0x14000da3b
mov r12b, 0xae
mov byte [rbp], r12b
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, dil
xor dl, r12b
inc eax
cmp eax, 8
jb 0x14000da60
mov byte [rbp + 0x410], cl
mov byte [rbp + 0x420], dl
mov r13d, r14d
lea rsi, [rbx*8]
mov r15, r14
mov r14d, 8
mov r12, r9
mov r11d, 1
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r12
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r15 + 0x408]
xor byte [rbp + r15 + 0x400], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x409]
xor byte [rbp + r15 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r15 + 0x40a]
xor byte [rbp + r15 + 0x402], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x40b]
xor byte [rbp + r15 + 0x403], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r15 + 0x40c]
xor byte [rbp + r15 + 0x404], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x40d]
xor byte [rbp + r15 + 0x405], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r15 + 0x40e]
xor byte [rbp + r15 + 0x406], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r15 + 0x40f]
xor byte [rbp + r15 + 0x407], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x410]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r13d, r14d
lea r15, [r15 + 8]
cmp r13d, r14d
jb 0x14000daa0
movzx r12d, byte [rbp]
imul rcx, r12, 0xff
not rcx
mov rax, qword [rbp + 8]
movzx eax, byte [rax]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 0x30]
xor rcx, rdx
mov qword [rbp + 0x170], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x150]
call fcn.14000fed0
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
lea rcx, [rbp + 0x188]
call fcn.140002d30
nop
lea rcx, [rbp + 0x98]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0x160]
lea rcx, [rbp + 0x150]
call fcn.140010990
mov r12, rax
cmp byte [0x1405f1605], 0
mov r14d, 0
jne 0x14000deac
lea rdx, [0x1405f1620]
lea rax, [0x1405f1e18]
movabs rdi, 0xababdbf33353735b
mov r9d, 0xffffffff
movabs r8, 0xfeeddccbbaa99887
nop dword [rax]
nop word [rax + rax]
mov rcx, r8
xor rcx, rdi
mov qword [rdx], rcx
sub r8, r9
add rdx, 8
cmp rdx, rax
jl 0x14000de90
mov byte [0x1405f1605], 1
lea r9, [0x1405f1620]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x400], rax
mov r8d, r14d
test rbx, rbx
je 0x14000df2c
mov rdi, r12
nop
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000dee0
not cl
movzx eax, cl
mov rsi, qword [rbp + 0x400]
xor rsi, qword [r9 + rax*8]
mov qword [rbp + 0x40], rsi
mov qword [rbp + 0x400], rsi
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000ded0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r12]
mov byte [rbp + 0x10], r13b
cmp rbx, 1
jbe 0x14000df4d
movzx r12d, byte [rbx + r12 - 1]
jmp 0x14000df50
mov r12b, 0xae
mov byte [rbp], r12b
mov qword [rbp + 0x410], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop dword [rax + rax]
xor cl, r13b
xor dl, r12b
inc eax
cmp eax, 8
jb 0x14000df70
mov byte [rbp + 0x410], cl
mov byte [rbp + 0x420], dl
mov r15d, r14d
lea rsi, [rbx*8]
mov r11, r14
mov r14d, 8
mov r13, r9
mov r12d, 1
nop word [rax + rax]
mov eax, r15d
test r15d, r15d
cmove eax, r12d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r13
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r11 + 0x408]
xor byte [rbp + r11 + 0x400], al
lea r10d, [r15*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r15 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x409]
xor byte [rbp + r11 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r15 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r11 + 0x40a]
xor byte [rbp + r11 + 0x402], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r15 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x40b]
xor byte [rbp + r11 + 0x403], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r15 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r11 + 0x40c]
xor byte [rbp + r11 + 0x404], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r15 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x40d]
xor byte [rbp + r11 + 0x405], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x410]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r15 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r11 + 0x40e]
xor byte [rbp + r11 + 0x406], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r15 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x40f]
xor byte [rbp + r11 + 0x407], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x410]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r15d, r14d
lea r11, [r11 + 8]
cmp r15d, r14d
jb 0x14000dfb0
movzx r12d, byte [rbp]
imul r8, r12, 0xff
not r8
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 0x40]
xor r8, rdx
mov rdx, qword [rbp + 0x170]
cmp r8, rdx
lea rsi, [0x140000000]
mov r14d, 0
je 0x14000e33d
mov rdi, qword [0x1405f1610]
lea rcx, [rbp + 0x390]
call fcn.140002d90
lea rdx, [rbp + 0x150]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 0x1a8]
call fcn.140010020
nop
lea rdx, [rbp + 0x1a8]
lea rcx, [rbp + 0xf8]
call fcn.140010020
mov r13, qword [rbp + 0x108]
mov qword [rbp + 0x30], r13
lea rcx, [rbp + 0xf8]
call fcn.140010990
mov rbx, rax
mov qword [rbp + 0x20], rax
cmp byte [0x1405f1606], 0
jne 0x14000e772
mov r15, r14
movabs r12, 0x101010101010101
nop dword [rax]
lea rcx, [rbp + 0x468]
call fcn.140001700
mov rdi, qword [rbp + 0x468]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r12
mov qword [r15 + rsi + 0x5f1f30], rax
lea rcx, [rbp + 0xe0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r12
mov qword [r15 + rsi + 0x5f1e20], rax
lea rcx, [rbp + 0xd8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r12
mov qword [r15 + rsi + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x14000e3a0
lea rcx, [rbp + 0x418]
call fcn.140001700
mov edi, r14d
lea r12, [0x1405f1619]
nop
mov r15, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e4cb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r12 - 1], dl
mov r15, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e4f9
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r12], dl
mov r15, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e526
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r12 + 1], dl
mov r15, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e554
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [r12 + 2], dl
add edi, 4
add r12, 4
cmp edi, 4
jb 0x14000e4b0
lea rcx, [rbp + 0xd0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x418], rdi
mov r15d, r14d
lea rbx, [0x1405f1e19]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e5ab
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx - 1], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e5d7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e602
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 1], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e62e
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 2], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e65a
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 3], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e686
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 4], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e6b2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 5], dl
mov rdi, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e6de
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 6], dl
add r15d, 8
add rbx, 8
cmp r15d, 8
jae 0x14000e709
mov rdi, qword [rbp + 0x418]
jmp 0x14000e597
lea rcx, [rbp + 0xc8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x418], rdi
mov r15d, r14d
lea r12, [0x1405f1f20]
mov rbx, qword [rbp + 0x20]
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e744
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r12], dl
inc r15d
inc r12
cmp r15d, 0xc
jae 0x14000e76b
mov rdi, qword [rbp + 0x418]
jmp 0x14000e730
mov byte [0x1405f1606], 1
test r13, r13
je 0x14000e939
mov dword [rbp + 0x18], r14d
nop
mov r13d, r14d
movzx edx, byte [rbx]
lea rax, [0x1405f1618]
mov qword [rbp + 8], rax
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5f1f32]
add rdi, rcx
lea r9, [rsi + 0x5f1f30]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5f1f31]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5f1f33]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5f1f34]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5f1f35]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5f1f36]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5f1f37]
add rcx, rsi
nop dword [rax]
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [rdi + r10]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r11]
mov byte [rbx], dl
xor dl, byte [rdi + r15]
mov byte [rbx], dl
xor dl, byte [rdi + r12]
mov byte [rbx], dl
xor dl, byte [rdi + rax]
mov byte [rbx], dl
xor dl, byte [rdi + rcx]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000e810
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 4
jb 0x14000e791
mov r8d, r14d
lea r9, [0x1405f1e18]
nop
mov edi, r14d
movzx eax, byte [r9]
lea rcx, [rsi + 0x5f1e21]
lea rcx, [rcx + rax*8]
xor dl, byte [rcx - 1]
mov byte [rbx], dl
xor dl, byte [rcx]
mov byte [rbx], dl
xor dl, byte [rcx + 1]
mov byte [rbx], dl
xor dl, byte [rcx + 2]
mov byte [rbx], dl
xor dl, byte [rcx + 3]
mov byte [rbx], dl
xor dl, byte [rcx + 4]
mov byte [rbx], dl
xor dl, byte [rcx + 5]
mov byte [rbx], dl
xor dl, byte [rcx + 6]
mov byte [rbx], dl
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 8
jb 0x14000e882
inc r8d
inc r9
cmp r8d, 8
jb 0x14000e870
mov r8d, r14d
lea r9, [0x1405f1f20]
nop dword [rax + rax]
mov edi, r14d
movzx eax, byte [r9]
lea rcx, [rsi + 0x5f1f31]
lea rcx, [rcx + rax*8]
xor dl, byte [rcx - 1]
mov byte [rbx], dl
xor dl, byte [rcx]
mov byte [rbx], dl
xor dl, byte [rcx + 1]
mov byte [rbx], dl
xor dl, byte [rcx + 2]
mov byte [rbx], dl
xor dl, byte [rcx + 3]
mov byte [rbx], dl
xor dl, byte [rcx + 4]
mov byte [rbx], dl
xor dl, byte [rcx + 5]
mov byte [rbx], dl
xor dl, byte [rcx + 6]
mov byte [rbx], dl
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 8
jb 0x14000e8e2
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000e8d0
mov ecx, dword [rbp + 0x18]
inc ecx
mov dword [rbp + 0x18], ecx
inc rbx
movsxd rax, ecx
cmp rax, qword [rbp + 0x30]
jb 0x14000e780
lea rcx, [rbp + 0x1a8]
call fcn.140002d30
nop
lea rdx, [rbp + 0xf8]
mov rcx, qword [rbp + 0x460]
call fcn.140010da0
mov r9, rax
mov ebx, dword [reloc.WS2_32.dll_accept]
mov esi, 5
lea r15d, [rsi + 0x1a]
cmp byte [rbp + 0x4d4], 0
je 0x14000eb0f
mov edi, r14d
cmp ebx, 2
jl 0x14000eac6
movdqa xmm5, xmmword [0x14044de50]
movdqa xmm4, xmmword [0x14044dea0]
movd xmm6, esi
movdqa xmm7, xmmword [0x14044de70]
movd xmm8, r15d
movdqa xmm0, xmmword [str.8888888888888888]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x4c4]
mov edx, dword [rbp + 0x20]
nop dword [rax]
movd xmm2, edi
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 0x10
jl 0x14000e9c0
cmp edi, 0x15
jge 0x14000eb0f
movsxd rax, edi
lea r8, [rbp + 0x4c0]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x8fb823ef
imul edi
add edx, edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, dil
sub al, cl
add al, 0x38
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0x15
jl 0x14000eae0
lea rdx, [rbp + 0x4c0]
mov rcx, r9
call fcn.140010e00
lea rdx, [0x140010dc0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp + 0xf8]
call fcn.140002d30
nop
lea rcx, [rbp + 0x150]
call fcn.140002f10
cmp byte [rbp + 0x4d4], 0
jne 0x14000ecef
mov edi, r14d
cmp ebx, 2
jl 0x14000eca6
movdqa xmm5, xmmword [0x14044de50]
movdqa xmm4, xmmword [0x14044dea0]
movd xmm6, esi
movdqa xmm7, xmmword [0x14044de70]
movd xmm8, r15d
movdqa xmm0, xmmword [str.8888888888888888]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x4c4]
mov edx, dword [rbp + 0x20]
nop dword [rax]
movd xmm2, edi
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 0x10
jl 0x14000eba0
cmp edi, 0x15
jge 0x14000ecef
movsxd rax, edi
lea r8, [rbp + 0x4c0]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x8fb823ef
imul edi
add edx, edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, dil
sub al, cl
add al, 0x38
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0x15
jl 0x14000ecc0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x4c0], xmm0
mov dword [rbp + 0x4d0], eax
mov byte [rbp + 0x4d4], al
cmp byte [rbp + 0x690], 0
jne 0x14000eeb5
cmp ebx, 2
jl 0x14000ee72
movdqa xmm5, xmmword [0x14044de50]
movdqa xmm4, xmmword [0x14044dea0]
movd xmm6, esi
movdqa xmm7, xmmword [0x14044de70]
movd xmm8, r15d
movdqa xmm0, xmmword [str.8888888888888888]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x5d4]
mov edx, dword [rbp + 0x20]
nop word [rax + rax]
movd xmm2, r14d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r14 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044de80]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r14d, 8
mov eax, r14d
lea rcx, [rcx + 8]
cmp r14d, 0xc0
jl 0x14000ed60
cmp eax, 0xc1
jge 0x14000eeb5
movsxd rax, r14d
lea rdi, [rbp + 0x5d0]
add rdi, rax
nop
mov eax, 0x8fb823ef
imul r14d
add edx, r14d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, r14b
sub al, cl
add al, 0x38
xor byte [rdi], al
inc r14d
lea rdi, [rdi + 1]
cmp r14d, 0xc1
jl 0x14000ee80
lea rax, [rbp + 0x5d0]
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
lea rax, [rax + 0x80]
movups xmmword [rax - 0x10], xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov byte [rax + 0x40], cl
lea rdi, [rbp + 0x4d8]
cmp qword [rbp + 0x4f0], 0x10
cmovae rdi, qword [rbp + 0x4d8]
xor eax, eax
mov rcx, qword [rbp + 0x4e8]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x528]
cmp qword [rbp + 0x540], 0x10
cmovae rdi, qword [rbp + 0x528]
mov rcx, qword [rbp + 0x538]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x4f8]
cmp qword [rbp + 0x510], 0x10
cmovae rdi, qword [rbp + 0x4f8]
mov rcx, qword [rbp + 0x508]
rep stosb byte [rdi], al
lea rcx, [rbp + 0x528]
call fcn.140002d30
nop
lea rcx, [rbp + 0x4f8]
call fcn.140002d30
nop
lea rcx, [rbp + 0x5b0]
call fcn.14000fb70
mov rdi, qword [rbp + 0x80]
mov rcx, rdi
call fcn.140042850
nop
lea rcx, [rbp + 0x4d8]
call fcn.140002d30
call fcn.140042a80
mov ecx, 0x151a8d
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
lea rcx, [rbp + 0x550]
call fcn.140004d20
xor eax, eax
mov rcx, qword [rbp + 0xae0]
xor rcx, rsp
call fcn.1401df590
lea r11, [rsp + 0xb60]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret