Function at 0x140006890
Capabilities:
Encode data using xor
Suspend thread

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, 0xb40
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 + 0xac0], rax
xor esi, esi
xorps xmm0, xmm0
movups xmmword [rbp + 0x580], xmm0
movups xmmword [rbp + 0x590], xmm0
movups xmmword [rbp + 0x5a0], xmm0
movups xmmword [rbp + 0x5b0], xmm0
movups xmmword [rbp + 0x5c0], xmm0
movups xmmword [rbp + 0x5d0], xmm0
lea rcx, [rbp + 0x580]
call fcn.140004cd0
nop
lea rcx, [rbp + 0x580]
call fcn.140003c40
mov dl, 1
lea rcx, [rbp + 0x580]
call fcn.140003ef0
lea rcx, [rbp + 0x580]
call fcn.1400047c0
mov dl, 1
lea rcx, [rbp + 0x580]
call fcn.140004050
lea rcx, [rbp + 0x580]
call fcn.1400042f0
mov dword [rbp + 0x6b0], 0x348
mov edi, esi
xor edx, edx
xor r9d, r9d
lea r8, [rbp + 0x6b0]
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesW]
test eax, eax
je 0x14000efab
test byte [rbp + 0x7f4], 1
je 0x1400069bd
lea rdx, [rbp + 0x6f4]
lea rcx, [rbp + 0x500]
call fcn.14000fbf0
nop
cmp qword [rbp + 0x510], 0
je 0x1400069b1
lea rcx, [rbp + 0x500]
call fcn.140004fa0
test al, al
jne 0x1400069c3
lea rcx, [rbp + 0x500]
call fcn.14000fb80
inc edi
mov edx, edi
jmp 0x140006960
lea rcx, [rbp + 0x500]
call fcn.14000fb80
call fcn.1400067c0
mov ecx, 3
call fcn.140042c50
call fcn.1400429f0
mov rdi, rax
mov qword [rbp + 0x88], rax
test rax, rax
je 0x14000ef99
movabs rax, 0xcbf864a77ccb2e9d
mov qword [rbp + 8], rax
mov rcx, qword [rbp + 8]
mov qword [rbp + 0x200], rcx
movabs rax, 0xc00cf6484b3b2c02
mov qword [rbp + 8], rax
mov rcx, qword [rbp + 8]
mov qword [rbp + 0x208], rcx
movabs rax, 0xad2ecdd17141dee9
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x210], rax
movabs rax, 0xec2c3292af77b0fc
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x218], rax
movabs rax, 0xc2d2d0d400879e3f
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x220], rax
movabs rax, 0xf2c442c89c100a72
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x228], rax
movabs rax, 0xc627c005c1c8451a
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x230], rax
movabs rax, 0xaefcde6d367063d1
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x238], rax
movabs rax, 0x82ffae7666d2e717
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x240], rax
movabs rax, 0x51f0c5545d0c6348
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x248], rax
movabs rax, 0x1a321c308a534347
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x250], rax
movabs rax, 0x94a78045834094b1
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x258], rax
movabs rax, 0xfeedf752bef0bbe9
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x260], rax
movabs rax, 0x1a584a34990d5a87
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x268], rax
movabs rax, 0xc3f3a0af3e23354e
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x270], rax
movabs rcx, 0x6936b06e4bdfde44
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x278], rax
movabs r15, 0xfad74b9d0cbf5af5
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa40], rax
movabs r12, 0xf422c17c7a151d36
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa48], rax
movabs r14, 0x9c17fbeb4672efc7
mov qword [rbp + 8], r14
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa50], rax
movabs rbx, 0xbc5f51dac3349fc8
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa58], rax
movabs rax, 0xbbe0a69972cbd209
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa60], rax
movabs rax, 0xaafd0898fa20634a
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa68], rax
movabs rax, 0x9512a967a7f0154b
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa70], rax
movabs rax, 0xc3cee726031d579c
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa78], rax
movabs rax, 0xba9beb05029d9f5d
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa80], rax
movabs rax, 0x4bdac646c3e511e
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa88], rax
movabs rax, 0x5d627753e961152f
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa90], rax
movabs rax, 0xe4e8b422e812dad0
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa98], rax
movabs rax, 0x888895618699de91
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xaa0], rax
movabs rax, 0x75093960d1672bd2
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xaa8], rax
movabs rax, 0xc3f3a0af3e230873
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xab0], rax
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xab8], rax
vmovdqu ymm0, ymmword [rbp + 0xa40]
vpxor ymm0, ymm0, ymmword [rbp + 0x200]
vmovdqa ymmword [rbp + 0x200], ymm0
vmovdqu ymm1, ymmword [rbp + 0xa60]
vpxor ymm0, ymm1, ymmword [rbp + 0x220]
vmovdqa ymmword [rbp + 0x220], ymm0
vmovdqu ymm0, ymmword [rbp + 0x240]
vpxor ymm1, ymm0, ymmword [rbp + 0xa80]
vmovdqa ymmword [rbp + 0x240], ymm1
vmovdqu ymm0, ymmword [rbp + 0xaa0]
vpxor ymm0, ymm0, ymmword [rbp + 0x260]
vmovdqa ymmword [rbp + 0x260], ymm0
lea r8, [rbp + 0x200]
mov edx, 0x2712
mov rcx, rdi
vzeroupper
call fcn.1400459c0
movzx edx, byte [rbp + 1]
lea rcx, [rbp + 0x4d8]
call fcn.140011070
lea rcx, [rbp + 0x4d8]
call fcn.140010820
nop
lea r8, [0x140006790]
mov edx, 0x4e2b
mov rcx, rdi
call fcn.1400459c0
lea r8, [rbp + 0x4d8]
mov edx, 0x2711
mov rcx, rdi
call fcn.1400459c0
mov rcx, rdi
call fcn.140042a60
test eax, eax
jne 0x14000ef84
movsd xmm0, qword [str.fSVJZRRRZ]
movsd qword [rbp + 0x478], xmm0
mov eax, dword [0x14044c180]
mov dword [rbp + 0x480], eax
movzx eax, byte [0x14044c184]
mov byte [rbp + 0x484], al
movups xmm0, xmmword [str.s_A_t]
movups xmmword [rbp + 0x4b8], xmm0
movsd xmm0, qword [0x14044c098]
movsd qword [rbp + 0x4c8], xmm0
movzx eax, byte [0x14044c0a0]
mov byte [rbp + 0x4d0], al
movsd xmm0, qword [str.rYDLQ]
movsd qword [rbp + 0x488], xmm0
mov eax, dword [0x14044c1f0]
mov dword [rbp + 0x490], eax
movzx eax, word [0x14044c1f4]
mov word [rbp + 0x494], ax
movzx eax, byte [0x14044c1f6]
mov byte [rbp + 0x496], al
movups xmm0, xmmword [0x14043dec8]
movups xmmword [rbp + 0x4a0], xmm0
mov eax, dword [0x14043ded8]
mov dword [rbp + 0x4b0], eax
movzx eax, byte [0x14043dedc]
mov byte [rbp + 0x4b4], al
movabs rax, 0xfa874bdc0ceb5ab2
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1b0], rax
movabs rax, 0xf447c11f7a7a1d44
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1b8], rax
movabs rax, 0x9c17fbeb4601efb4
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1c0], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1c8], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa00], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa08], rax
mov qword [rbp + 8], r14
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa10], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa18], rax
vmovdqu ymm0, ymmword [rbp + 0xa00]
vpxor ymm0, ymm0, ymmword [rbp + 0x1b0]
vmovdqu ymmword [rbp + 0x1b0], ymm0
movzx edx, byte [rbp + 1]
lea rcx, [rbp + 0x560]
vzeroupper
call fcn.140011070
nop
lea rax, [rbp + 0x1b0]
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140006f60
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0x560]
call fcn.140011090
nop
lea rcx, [rbp + 0x560]
call fcn.140006460
mov dword [rbp + 0x58], eax
lea rdx, [0x14043d9a0]
test eax, eax
mov rax, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov qword [rbp + 8], r15
jne 0x140008eb1
mov qword [rbp + 0x18], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x40], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0x48], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0x500], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0x508], rax
movdqa xmm0, xmmword [rbp + 0x500]
xorps xmm0, xmmword [rbp + 0x40]
movdqa xmmword [rbp + 0x40], xmm0
lea rax, [rbp + 0xb0]
mov qword [rbp + 0x88], rax
lea rcx, [rbp + 0xb0]
call fcn.14000ff10
nop
xor eax, eax
mov qword [rbp + 0xd0], rax
lea rax, [0x140002eb0]
cmp byte [0x1405f1603], 0
jne 0x140007031
mov qword [0x1405f1610], rax
mov byte [0x1405f1603], 1
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x1d0]
call fcn.14000ff10
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400109a0
mov r15, rax
movabs rax, 0xfeeddccbbaa99887
lea r9, [0x1405f1620]
lea rdi, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r10d, 0xffffffff
cmp byte [0x1405f1605], 0
jne 0x1400070ac
mov rdx, rax
mov rcx, r9
nop
mov rax, rdx
xor rax, r8
mov qword [rcx], rax
sub rdx, r10
add rcx, 8
cmp rcx, rdi
jl 0x140007090
mov byte [0x1405f1605], 1
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x30], rax
mov r11, rax
mov qword [rbp + 0x450], rax
mov qword [rbp + 0x400], rax
mov r8d, esi
test rbx, rbx
je 0x14000713f
mov rdi, r15
nop word [rax + rax]
mov edx, esi
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 0x1400070f0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x450], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x1400070e0
movabs r9, 0xaebdccdb0a192837
movzx r12d, byte [r15]
mov byte [rbp + 1], r12b
cmp rbx, 1
jbe 0x14000715f
movzx r15d, byte [rbx + r15 - 1]
jmp 0x140007162
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x440], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor dl, r12b
xor cl, r15b
inc eax
cmp eax, 8
jb 0x140007180
mov byte [rbp + 0x440], cl
mov byte [rbp + 0x418], dl
mov r13d, esi
mov r14, rsi
mov r11d, 1
lea r15d, [r11 + 7]
lea rsi, [rbx*8]
mov r12, r9
nop dword [rax]
nop dword [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 + 0x410], rax
movzx eax, byte [rbp + r14 + 0x410]
xor byte [rbp + r14 + 0x400], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x410], r9
movzx eax, byte [rbp + r14 + 0x411]
xor byte [rbp + r14 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x410], r8
movzx eax, byte [rbp + r14 + 0x412]
xor byte [rbp + r14 + 0x402], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x410], r9
movzx eax, byte [rbp + r14 + 0x413]
xor byte [rbp + r14 + 0x403], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x410], r8
movzx eax, byte [rbp + r14 + 0x414]
xor byte [rbp + r14 + 0x404], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x410], r9
movzx eax, byte [rbp + r14 + 0x415]
xor byte [rbp + r14 + 0x405], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x410], r8
movzx eax, byte [rbp + r14 + 0x416]
xor byte [rbp + r14 + 0x406], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x410], r9
movzx eax, byte [rbp + r14 + 0x417]
xor byte [rbp + r14 + 0x407], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdi, qword [rbp + 0x418]
shl rdi, cl
xor rdi, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdi
add r13d, r15d
lea r14, [r14 + 8]
cmp r13d, r15d
jb 0x1400071c0
movzx edx, byte [rbp + 1]
shl rdx, 7
not rdx
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
sub rdx, rcx
and rdi, qword [rbp + 0x450]
xor rdx, rdi
mov qword [rbp + 0xd0], rdx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0xb0]
call fcn.14000fee0
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
cmp byte [0x1405f1604], 0
mov esi, 0
jne 0x14000755d
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1604], 1
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x280]
call fcn.14000ff10
nop
mov rdx, rax
lea rcx, [rbp + 0x90]
call fcn.140010030
mov r15, qword [rbp + 0xa0]
mov qword [rbp + 8], r15
lea rcx, [rbp + 0x90]
call fcn.1400109a0
mov rbx, rax
movabs r13, 0x101010101010101
lea r14, [0x140000000]
lea r12, [0x1405f1e19]
mov qword [rbp + 0x10], r12
lea r11, [0x1405f1f20]
cmp byte [0x1405f1606], 0
jne 0x1400079ad
mov r15, rsi
nop word [rax + 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, r13
mov qword [r15 + r14 + 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, r13
mov qword [r15 + r14 + 0x5f1e20], rax
lea rcx, [rbp + 0xe8]
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 + r14 + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x1400075d0
lea rcx, [rbp + 0x420]
call fcn.140001700
mov r15d, esi
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 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 + 0x420]
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 + 0x420]
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 + 0x420]
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 + 0xf0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x420], rdi
mov r13d, esi
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 + 0x420]
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 + 0x420]
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 + 0x420]
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 + 0x420]
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 + 0x420]
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 + 0x420]
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 + 0x420]
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 + 0x420]
jmp 0x1400077c0
lea rcx, [rbp + 0xf8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x420], rdi
mov r15d, esi
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 + 0x420]
jmp 0x140007960
mov byte [0x1405f1606], 1
mov r15, qword [rbp + 8]
lea r11, [0x1405f1f20]
lea r13, [0x1405f1e18]
test r15, r15
je 0x140007af2
mov r10d, esi
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f1618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x1400079e1
inc r8d
inc r9
cmp r8d, 4
jb 0x1400079d0
mov r8d, esi
mov r9, r13
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x140007a41
inc r8d
inc r9
cmp r8d, 8
jb 0x140007a30
mov r8d, esi
mov r9, r11
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x140007aa1
inc r8d
inc r9
cmp r8d, 0xc
jb 0x140007a90
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r15
jb 0x1400079c0
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x2a0]
call fcn.140010030
mov qword [rbp + 0x498], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400109a0
mov r9, rax
mov qword [rbp + 8], rax
lea r10, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x140007b7c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r10
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r11d, 0xffffffff
nop dword [rax]
nop word [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r11
add rdx, 8
cmp rdx, rax
jl 0x140007b60
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x450], r11
mov qword [rbp + 0x400], r11
mov r8d, esi
test rbx, rbx
je 0x140007bff
mov rdi, r9
nop
mov edx, esi
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 [r10 + rax*8]
mov qword [rbp + 0x450], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140007ba0
movabs r10, 0xaebdccdb0a192837
movzx edi, byte [r9]
cmp rbx, 1
jbe 0x140007c1b
movzx r15d, byte [rbx + r9 - 1]
jmp 0x140007c1e
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x440], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop dword [rax + rax]
xor cl, dil
xor dl, r15b
inc eax
cmp eax, 8
jb 0x140007c40
mov byte [rbp + 0x418], cl
mov byte [rbp + 0x440], dl
mov r12d, esi
lea r14, [rbx*8]
mov r13, rsi
mov rsi, r10
mov r15d, 8
mov r11d, 1
nop word [rax + rax]
mov eax, r12d
test r12d, r12d
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, r10
mov rax, r8
xor rax, rsi
mov qword [rbp + 0x410], rax
movzx eax, byte [rbp + r13 + 0x410]
xor byte [rbp + r13 + 0x400], al
lea r10d, [r12*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r12 + 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 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r12 + 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, rsi
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + r13 + 0x412]
xor byte [rbp + r13 + 0x402], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r12 + 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, rsi
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + r13 + 0x413]
xor byte [rbp + r13 + 0x403], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r12 + 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, rsi
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + r13 + 0x414]
xor byte [rbp + r13 + 0x404], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r12 + 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, rsi
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + r13 + 0x415]
xor byte [rbp + r13 + 0x405], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r12 + 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, rsi
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + r13 + 0x416]
xor byte [rbp + r13 + 0x406], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r12 + 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, rsi
mov qword [rbp + 0x410], r10
movzx eax, byte [rbp + r13 + 0x417]
xor byte [rbp + r13 + 0x407], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x418]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r12d, r15d
lea r13, [r13 + 8]
cmp r12d, r15d
jb 0x140007c80
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
mov rax, qword [rbp + 8]
movzx eax, byte [rax]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 0x450]
xor rcx, rdx
mov qword [rbp + 0xd0], rcx
mov rdx, qword [rbp + 0x498]
lea rcx, [rbp + 0xb0]
call fcn.14000fee0
nop
mov rcx, qword [rbp + 0x498]
call fcn.140002d30
nop
lea rcx, [rbp + 0x90]
call fcn.140002d30
nop
lea rcx, [rbp + 0x280]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0xc0]
lea rcx, [rbp + 0xb0]
call fcn.1400109a0
mov r10, rax
mov qword [rbp + 0x450], rax
cmp byte [0x1405f1605], 0
mov esi, 0
lea r9, [0x1405f1620]
jne 0x1400080a3
mov rdx, r9
lea rax, [0x1405f1e18]
movabs rdi, 0xababdbf33353735b
mov r10d, 0xffffffff
movabs r8, 0xfeeddccbbaa99887
nop word [rax + rax]
mov rcx, r8
xor rcx, rdi
mov qword [rdx], rcx
sub r8, r10
add rdx, 8
cmp rdx, rax
jl 0x140008080
mov byte [0x1405f1605], 1
mov r10, qword [rbp + 0x450]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x400], rax
mov r8d, esi
test rbx, rbx
je 0x14000811c
mov rdi, r10
nop
mov edx, esi
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 0x1400080d0
not cl
movzx eax, cl
mov r12, qword [rbp + 0x400]
xor r12, qword [r9 + rax*8]
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x400], r12
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x1400080c0
movabs r9, 0xaebdccdb0a192837
movzx edi, byte [r10]
cmp rbx, 1
jbe 0x140008138
movzx r15d, byte [rbx + r10 - 1]
jmp 0x14000813b
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x440], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor dl, dil
xor cl, r15b
inc eax
cmp eax, 8
jb 0x140008160
mov byte [rbp + 0x440], cl
mov byte [rbp + 0x418], dl
mov r13d, esi
lea r14, [rbx*8]
mov r11, rsi
mov esi, 8
mov r12, r9
mov r15d, 1
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r15d
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 + 0x410], rax
movzx eax, byte [rbp + r11 + 0x410]
xor byte [rbp + r11 + 0x400], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, esi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, esi
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 + r11 + 0x411]
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 + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, esi
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 + 0x410], r8
movzx eax, byte [rbp + r11 + 0x412]
xor byte [rbp + r11 + 0x402], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, esi
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 + 0x410], r9
movzx eax, byte [rbp + r11 + 0x413]
xor byte [rbp + r11 + 0x403], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, esi
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 + 0x410], r8
movzx eax, byte [rbp + r11 + 0x414]
xor byte [rbp + r11 + 0x404], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, esi
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 + 0x410], r9
movzx eax, byte [rbp + r11 + 0x415]
xor byte [rbp + r11 + 0x405], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, esi
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 + 0x410], r8
movzx eax, byte [rbp + r11 + 0x416]
xor byte [rbp + r11 + 0x406], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x440]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, esi
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 + 0x410], r9
movzx eax, byte [rbp + r11 + 0x417]
xor byte [rbp + r11 + 0x407], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x418]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r13d, esi
lea r11, [r11 + 8]
cmp r13d, esi
jb 0x1400081a0
mov rax, qword [rbp + 0x450]
movzx r8d, byte [rax]
shl r8, 7
not r8
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
sub r8, rcx
mov rax, qword [rbp + 0x30]
and rax, rdx
xor r8, rax
mov rdx, qword [rbp + 0xd0]
cmp r8, rdx
mov esi, 0
lea r14, [0x140000000]
je 0x140008528
mov rdi, qword [0x1405f1610]
lea rcx, [rbp + 0x170]
call fcn.140002d90
lea rdx, [rbp + 0xb0]
mov rcx, rax
call rdi
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x120]
call fcn.140010030
nop
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0xa00]
call fcn.140010030
mov r13, qword [rbp + 0xa10]
lea rcx, [rbp + 0xa00]
call fcn.1400109a0
mov rbx, rax
mov qword [rbp + 8], rax
cmp byte [0x1405f1606], 0
jne 0x140008968
mov r15, rsi
movabs rbx, 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, rbx
mov qword [r15 + r14 + 0x5f1f30], rax
lea rcx, [rbp + 0x100]
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, rbx
mov qword [r15 + r14 + 0x5f1e20], rax
lea rcx, [rbp + 0x108]
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, rbx
mov qword [r15 + r14 + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x140008583
lea rcx, [rbp + 0x408]
call fcn.140001700
mov edi, esi
mov rbx, qword [rbp + 8]
lea r12, [0x1405f1619]
nop dword [rax]
nop dword [rax + rax]
mov r15, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400086bb
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 + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400086e9
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 + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008716
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 + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008744
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 0x1400086a0
lea rcx, [rbp + 0x110]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x408], rdi
mov r15d, esi
mov r12, qword [rbp + 0x10]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008798
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 0x1400087c6
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 0x1400087f3
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 0x140008821
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 0x14000884f
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 0x14000887d
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 0x1400088ab
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 0x1400088d9
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 0x140008906
mov rdi, qword [rbp + 0x408]
jmp 0x140008784
lea rcx, [rbp + 0x118]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x408], rdi
mov r15d, esi
lea r12, [0x1405f1f20]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000893a
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 0x140008961
mov rdi, qword [rbp + 0x408]
jmp 0x140008926
mov byte [0x1405f1606], 1
test r13, r13
je 0x140008ac2
mov r10d, esi
lea r11, [0x1405f1f20]
lea r15, [0x1405f1618]
lea r12, [0x1405f1e18]
nop dword [rax]
mov r8d, esi
movzx eax, byte [rbx]
mov r9, r15
nop dword [rax]
mov edi, esi
movzx ecx, byte [r9]
lea rdx, [r14 + 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 0x1400089b1
inc r8d
inc r9
cmp r8d, 4
jb 0x1400089a0
mov r8d, esi
mov r9, r12
nop word [rax + rax]
mov edi, esi
movzx ecx, byte [r9]
lea rdx, [r14 + 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 0x140008a11
inc r8d
inc r9
cmp r8d, 8
jb 0x140008a00
mov r8d, esi
mov r9, r11
nop word [rax + rax]
mov edi, esi
movzx ecx, byte [r9]
lea rdx, [r14 + 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 0x140008a71
inc r8d
inc r9
cmp r8d, 0xc
jb 0x140008a60
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r13
jb 0x140008990
lea rcx, [rbp + 0x120]
call fcn.140002d30
nop
lea rdx, [rbp + 0xa00]
mov rcx, qword [rbp + 0x18]
call fcn.140010db0
mov r9, rax
mov r14d, 5
lea r15d, [r14 + 0x1a]
mov ebx, dword [reloc.WS2_32.dll_accept]
cmp byte [rbp + 0x4d0], 0
je 0x140008c8f
mov edi, esi
cmp ebx, 2
jl 0x140008c49
movdqa xmm5, xmmword [0x14044de80]
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, r14d
movdqa xmm7, xmmword [0x14044dea0]
movd xmm8, r15d
movdqa xmm0, xmmword [str.5555555555555555]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x4bc]
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 [0x14044deb0]
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 [0x14044deb0]
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, 0x18
jl 0x140008b43
cmp edi, 0x19
jge 0x140008c8f
movsxd rax, edi
lea r8, [rbp + 0x4b8]
add r8, 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, 0x35
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0x19
jl 0x140008c60
lea rdx, [rbp + 0x4b8]
mov rcx, r9
call fcn.140010dd0
lea rdx, [0x140010fa0]
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 + 0xa00]
call fcn.140002d30
nop
lea rcx, [rbp + 0xb0]
call fcn.140002f10
cmp byte [rbp + 0x4d0], 0
jne 0x140008e6e
cmp ebx, 2
jl 0x140008e28
movdqa xmm5, xmmword [0x14044de80]
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, r14d
movdqa xmm7, xmmword [0x14044dea0]
movd xmm8, r15d
movdqa xmm0, xmmword [str.5555555555555555]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x4bc]
mov edx, dword [rbp + 0x20]
nop word [rax + rax]
movd xmm2, esi
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 [0x14044deb0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rsi + 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 [0x14044deb0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add esi, 8
mov eax, esi
lea rcx, [rcx + 8]
cmp esi, 0x18
jl 0x140008d20
cmp eax, 0x19
jge 0x140008e6e
movsxd rax, esi
lea rdi, [rbp + 0x4b8]
add rdi, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, sil
sub al, cl
add al, 0x35
xor byte [rdi], al
inc esi
lea rdi, [rdi + 1]
cmp esi, 0x19
jl 0x140008e40
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x4b8], xmm0
mov qword [rbp + 0x4c8], rax
mov byte [rbp + 0x4d0], al
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
lea rcx, [rbp + 0x560]
call fcn.14000fb80
nop
lea rcx, [rbp + 0x4d8]
call fcn.140002d30
jmp 0x14000efbb
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x160], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0x168], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa20], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa28], rax
movdqa xmm0, xmmword [rbp + 0x160]
xorps xmm0, xmmword [rbp + 0xa20]
movdqa xmmword [rbp + 0x160], xmm0
lea rax, [rbp + 0x60]
mov qword [rbp + 0x18], rax
lea rcx, [rbp + 0x60]
call fcn.14000ff10
nop
xor eax, eax
mov qword [rbp + 0x80], rax
lea rax, [0x140002eb0]
cmp byte [0x1405f1603], 0
jne 0x140008f3d
mov qword [0x1405f1610], rax
mov byte [0x1405f1603], 1
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x370]
call fcn.14000ff10
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400109a0
mov r15, rax
movabs rax, 0xfeeddccbbaa99887
lea r9, [0x1405f1620]
lea rdi, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r10d, 0xffffffff
cmp byte [0x1405f1605], 0
jne 0x140008fbc
mov rdx, rax
mov rcx, r9
nop word [rax + rax]
mov rax, rdx
xor rax, r8
mov qword [rcx], rax
sub rdx, r10
add rcx, 8
cmp rcx, rdi
jl 0x140008fa0
mov byte [0x1405f1605], 1
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x30], rax
mov r11, rax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x430], rax
mov r8d, esi
test rbx, rbx
je 0x14000904c
mov rdi, r15
nop dword [rax]
nop word [rax + rax]
mov edx, esi
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 0x140009000
not cl
movzx eax, cl
mov r11, qword [rbp + 0x430]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x10], r11
mov qword [rbp + 0x430], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140008ff0
movabs r9, 0xaebdccdb0a192837
movzx r12d, byte [r15]
mov byte [rbp + 1], r12b
cmp rbx, 1
jbe 0x14000906c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000906f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x448], rbx
mov qword [rbp + 0x418], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor cl, r12b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x140009090
mov byte [rbp + 0x448], cl
mov byte [rbp + 0x418], dl
mov r13d, esi
mov r14, rsi
mov r11d, 1
lea r15d, [r11 + 7]
lea rsi, [rbx*8]
mov r12, r9
nop dword [rax]
nop dword [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 + 0x460], rax
movzx eax, byte [rbp + r14 + 0x460]
xor byte [rbp + r14 + 0x430], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x460], r9
movzx eax, byte [rbp + r14 + 0x461]
xor byte [rbp + r14 + 0x431], 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 + 0x430], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x460], r8
movzx eax, byte [rbp + r14 + 0x462]
xor byte [rbp + r14 + 0x432], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x460], r9
movzx eax, byte [rbp + r14 + 0x463]
xor byte [rbp + r14 + 0x433], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x448]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x460], r8
movzx eax, byte [rbp + r14 + 0x464]
xor byte [rbp + r14 + 0x434], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x460], r9
movzx eax, byte [rbp + r14 + 0x465]
xor byte [rbp + r14 + 0x435], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x448]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x460], r8
movzx eax, byte [rbp + r14 + 0x466]
xor byte [rbp + r14 + 0x436], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r15d
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 + 0x460], r9
movzx eax, byte [rbp + r14 + 0x467]
xor byte [rbp + r14 + 0x437], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x448]
shl rdx, cl
xor rdx, qword [rbp + 0x430]
mov qword [rbp + 0x430], rdx
add r13d, r15d
lea r14, [r14 + 8]
cmp r13d, r15d
jb 0x1400090d0
movzx r15d, byte [rbp]
imul rax, r15, 0xff
not rax
movzx ecx, byte [rbp + 1]
shl rcx, 7
sub rax, rcx
and rdx, qword [rbp + 0x10]
xor rax, rdx
mov qword [rbp + 0x430], rax
mov qword [rbp + 0x80], rax
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x60]
call fcn.14000fee0
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
cmp byte [0x1405f1604], 0
mov esi, 0
jne 0x14000946e
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1604], 1
lea rdx, [rbp + 0x160]
lea rcx, [rbp + 0x330]
call fcn.14000ff10
nop
mov rdx, rax
lea rcx, [rbp + 0x2c0]
call fcn.140010030
mov r15, qword [rbp + 0x2d0]
mov qword [rbp + 8], r15
lea rcx, [rbp + 0x2c0]
call fcn.1400109a0
mov rbx, rax
movabs r13, 0x101010101010101
lea r14, [0x140000000]
lea r12, [0x1405f1e19]
lea r11, [0x1405f1f20]
cmp byte [0x1405f1606], 0
jne 0x1400098bd
mov r15, rsi
nop word [rax + rax]
lea rcx, [rbp + 0x498]
call fcn.140001700
mov rdi, qword [rbp + 0x498]
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 + r14 + 0x5f1f30], rax
lea rcx, [rbp + 0x2e0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x498], 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 + r14 + 0x5f1e20], rax
lea rcx, [rbp + 0x2e8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x498], 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 + r14 + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x1400094e0
lea rcx, [rbp + 0x458]
call fcn.140001700
mov r15d, esi
lea rdi, [0x1405f1619]
nop
mov r13, qword [rbp + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000960b
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 + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009637
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 + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009662
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 + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000968e
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 0x1400095f0
lea rcx, [rbp + 0x2f0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x458], rdi
mov r13d, esi
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400096e4
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 + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009711
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 + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000973d
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 + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000976a
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 + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009797
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 + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400097c4
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 + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400097f1
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 + 0x458]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000981e
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 0x14000984a
mov rdi, qword [rbp + 0x458]
jmp 0x1400096d0
lea rcx, [rbp + 0x2f8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x458], rdi
mov r15d, esi
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 0x140009884
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 0x1400098ab
mov rdi, qword [rbp + 0x458]
jmp 0x140009870
mov byte [0x1405f1606], 1
mov r15, qword [rbp + 8]
lea r11, [0x1405f1f20]
lea r13, [0x1405f1e18]
test r15, r15
je 0x140009a02
mov r10d, esi
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f1618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x1400098f1
inc r8d
inc r9
cmp r8d, 4
jb 0x1400098e0
mov r8d, esi
mov r9, r13
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x140009951
inc r8d
inc r9
cmp r8d, 8
jb 0x140009940
mov r8d, esi
mov r9, r11
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x1400099b1
inc r8d
inc r9
cmp r8d, 0xc
jb 0x1400099a0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r15
jb 0x1400098d0
lea rdx, [rbp + 0x2c0]
lea rcx, [rbp + 0x350]
call fcn.140010030
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400109a0
mov r15, rax
lea r9, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x140009a7c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r12d, 0xffffffff
nop dword [rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r12
add rdx, 8
cmp rdx, rax
jl 0x140009a60
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x10], r11
mov qword [rbp + 0x438], r11
mov r8d, esi
test rbx, rbx
je 0x140009afc
mov rdi, r15
nop dword [rax]
mov edx, esi
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 0x140009ab0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x438]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x10], r11
mov qword [rbp + 0x438], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140009aa0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r15]
mov byte [rbp + 1], r13b
cmp rbx, 1
jbe 0x140009b1c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x140009b1f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x428], rbx
mov qword [rbp + 0x418], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor cl, r13b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x140009b40
mov byte [rbp + 0x428], cl
mov byte [rbp + 0x418], dl
mov r14d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r13, r9
mov r15d, 8
mov r11d, 1
nop word [rax + rax]
mov eax, r14d
test r14d, r14d
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, r13
mov qword [rbp + 0x448], rax
movzx eax, byte [rbp + r12 + 0x448]
xor byte [rbp + r12 + 0x438], al
lea r10d, [r14*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x438], 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, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + r12 + 0x449]
xor byte [rbp + r12 + 0x439], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x428]
shl rax, cl
xor qword [rbp + 0x438], 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, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x448], r8
movzx eax, byte [rbp + r12 + 0x44a]
xor byte [rbp + r12 + 0x43a], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x438], 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, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + r12 + 0x44b]
xor byte [rbp + r12 + 0x43b], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x428]
shl rax, cl
xor qword [rbp + 0x438], 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, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x448], r8
movzx eax, byte [rbp + r12 + 0x44c]
xor byte [rbp + r12 + 0x43c], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x438], 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, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + r12 + 0x44d]
xor byte [rbp + r12 + 0x43d], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x428]
shl rax, cl
xor qword [rbp + 0x438], 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, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r13
mov qword [rbp + 0x448], r8
movzx eax, byte [rbp + r12 + 0x44e]
xor byte [rbp + r12 + 0x43e], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x438], 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, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r13
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + r12 + 0x44f]
xor byte [rbp + r12 + 0x43f], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x428]
shl rdx, cl
xor rdx, qword [rbp + 0x438]
mov qword [rbp + 0x438], rdx
add r14d, r15d
lea r12, [r12 + 8]
cmp r14d, r15d
jb 0x140009b80
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 0x10]
xor rcx, rdx
mov qword [rbp + 0x438], rcx
mov qword [rbp + 0x80], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x60]
call fcn.14000fee0
nop
mov rcx, qword [rbp + 8]
call fcn.140002d30
nop
lea rcx, [rbp + 0x2c0]
call fcn.140002d30
nop
lea rcx, [rbp + 0x330]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0x70]
lea rcx, [rbp + 0x60]
call fcn.1400109a0
mov r15, rax
cmp byte [0x1405f1605], 0
mov esi, 0
lea r9, [0x1405f1620]
jne 0x140009f7c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r12d, 0xffffffff
nop
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r12
add rdx, 8
cmp rdx, rax
jl 0x140009f60
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x428], r11
mov r8d, esi
test rbx, rbx
je 0x140009ffc
mov rdi, r15
nop dword [rax]
mov edx, esi
movzx ecx, byte [rdi]
lea rax, [rbp + 0x429]
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 0x140009fb0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x428]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x428], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140009fa0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r15]
mov byte [rbp + 1], r13b
cmp rbx, 1
jbe 0x14000a01c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000a01f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x18], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r13b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x14000a033
mov byte [rbp + 0x10], cl
mov byte [rbp + 0x18], dl
mov r14d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r13, r9
mov r15d, 8
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r14d
test r14d, r14d
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, r13
mov qword [rbp + 0x418], rax
movzx eax, byte [rbp + r12 + 0x418]
xor byte [rbp + r12 + 0x428], al
lea r10d, [r14*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 + 0x428], 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, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x418], r9
movzx eax, byte [rbp + r12 + 0x419]
xor byte [rbp + r12 + 0x429], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x428], 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, 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 + r12 + 0x41a]
xor byte [rbp + r12 + 0x42a], 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 + 0x428], 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, 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 + r12 + 0x41b]
xor byte [rbp + r12 + 0x42b], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x428], 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, 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 + r12 + 0x41c]
xor byte [rbp + r12 + 0x42c], 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 + 0x428], 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, 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 + r12 + 0x41d]
xor byte [rbp + r12 + 0x42d], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x428], 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, 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 + r12 + 0x41e]
xor byte [rbp + r12 + 0x42e], 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 + 0x428], 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, 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 + r12 + 0x41f]
xor byte [rbp + r12 + 0x42f], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x10]
shl rdx, cl
xor rdx, qword [rbp + 0x428]
mov qword [rbp + 0x428], rdx
add r14d, r15d
lea r12, [r12 + 8]
cmp r14d, r15d
jb 0x14000a070
movzx r15d, byte [rbp]
imul r8, r15, 0xff
not r8
movzx eax, byte [rbp + 1]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 8]
xor r8, rdx
mov qword [rbp + 0x428], r8
mov rdx, qword [rbp + 0x80]
cmp r8, rdx
mov esi, 0
lea r14, [0x140000000]
lea r12, [0x1405f1e19]
je 0x14000a3f0
mov rdi, qword [0x1405f1610]
lea rcx, [rbp + 0x3c8]
call fcn.140002d90
lea rdx, [rbp + 0x60]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x310]
call fcn.140010030
nop
lea rdx, [rbp + 0x310]
lea rcx, [rbp + 0x140]
call fcn.140010030
mov r15, qword [rbp + 0x150]
mov qword [rbp + 8], r15
lea rcx, [rbp + 0x140]
call fcn.1400109a0
mov rbx, rax
cmp byte [0x1405f1606], 0
jne 0x14000a81d
mov r15, rsi
movabs r13, 0x101010101010101
nop dword [rax + rax]
lea rcx, [rbp + 0x450]
call fcn.140001700
mov rdi, qword [rbp + 0x450]
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 + r14 + 0x5f1f30], rax
lea rcx, [rbp + 0x300]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x450], 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 + r14 + 0x5f1e20], rax
lea rcx, [rbp + 0x308]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x450], 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 + r14 + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x14000a450
lea rcx, [rbp + 0x440]
call fcn.140001700
mov r15d, esi
lea rdi, [0x1405f1619]
nop
mov r13, qword [rbp + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a57b
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 + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a5a7
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 + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a5d2
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 + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a5fe
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 0x14000a560
lea rcx, [rbp + 0xd8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x440], rdi
mov r13d, esi
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a654
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 + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a681
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 + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a6ad
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 + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a6da
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 + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a707
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 + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a734
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 + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a761
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 + 0x440]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a78e
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 0x14000a7ba
mov rdi, qword [rbp + 0x440]
jmp 0x14000a640
lea rcx, [rbp + 0x50]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x440], rdi
mov r15d, esi
lea r13, [0x1405f1f20]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a7eb
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 0x14000a812
mov rdi, qword [rbp + 0x440]
jmp 0x14000a7d7
mov byte [0x1405f1606], 1
mov r15, qword [rbp + 8]
test r15, r15
je 0x14000a962
mov r10d, esi
nop dword [rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f1618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000a851
inc r8d
inc r9
cmp r8d, 4
jb 0x14000a840
mov r8d, esi
lea r9, [0x1405f1e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000a8b1
inc r8d
inc r9
cmp r8d, 8
jb 0x14000a8a0
mov r8d, esi
lea r9, [0x1405f1f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000a911
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000a900
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r15
jb 0x14000a830
lea rcx, [rbp + 0x310]
call fcn.140002d30
nop
lea rdx, [rbp + 0x140]
mov rcx, qword [rbp + 0x20]
call fcn.140010db0
mov r9, rax
mov ebx, 5
lea r15d, [rbx + 0x1a]
mov r13d, dword [reloc.WS2_32.dll_accept]
cmp byte [rbp + 0x484], 0
je 0x14000aaff
mov edi, esi
cmp r13d, 2
jl 0x14000aabf
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, ebx
movd xmm5, r15d
movdqa xmm2, xmmword [0x14044de80]
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 [0x14044dea0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044deb0]
packuswb xmm2, xmm2
mov eax, dword [str.5555555555555555]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x478]
xorps xmm2, xmm1
movd dword [rbp + 0x478], xmm2
movdqa xmm3, xmmword [0x14044de90]
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 [0x14044dea0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044deb0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x47c]
xorps xmm2, xmm1
movd dword [rbp + 0x47c], xmm2
mov edi, 8
movsxd rax, edi
lea r8, [rbp + 0x478]
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, 0x35
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xd
jl 0x14000aad0
lea rdx, [rbp + 0x478]
mov rcx, r9
call fcn.140010dd0
lea rdx, [0x140010fa0]
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 + 0x140]
call fcn.140002d30
nop
lea rcx, [rbp + 0x60]
call fcn.140002f10
cmp byte [rbp + 0x484], 0
jne 0x14000ac9f
mov edi, esi
cmp r13d, 2
jl 0x14000ac62
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, ebx
movd xmm5, r15d
movdqa xmm2, xmmword [0x14044de80]
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 [0x14044dea0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044deb0]
packuswb xmm2, xmm2
mov eax, dword [str.5555555555555555]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x478]
xorps xmm2, xmm1
movd dword [rbp + 0x478], xmm2
movdqa xmm3, xmmword [0x14044de90]
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 [0x14044dea0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044deb0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x47c]
xorps xmm2, xmm1
movd dword [rbp + 0x47c], xmm2
mov edi, 8
movsxd rax, edi
lea r8, [rbp + 0x478]
add r8, rax
nop
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, 0x35
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xd
jl 0x14000ac70
mov qword [rbp + 0x478], rsi
mov dword [rbp + 0x480], esi
mov byte [rbp + 0x484], sil
lea rcx, [rbp + 0x5e0]
lea rax, [r14 + 0x44c0b0]
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, esi
cmp r13d, 2
jl 0x14000ae8c
movdqa xmm5, xmmword [0x14044de80]
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, ebx
movdqa xmm7, xmmword [0x14044dea0]
movd xmm8, r15d
movdqa xmm0, xmmword [str.5555555555555555]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x5e4]
mov edx, dword [rbp + 0x20]
nop
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 [0x14044deb0]
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 [0x14044deb0]
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 0x14000ad80
cmp edi, 0xc1
jge 0x14000aed2
movsxd rax, edi
lea r8, [rbp + 0x5e0]
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, 0x35
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xc1
jl 0x14000aea0
lea rdx, [rbp + 0x5e0]
lea rcx, [rbp + 0x520]
call fcn.14000ff10
nop
lea r8, [rbp + 0x4d8]
lea rdx, [rbp + 0x520]
lea rcx, [rbp + 0x540]
call fcn.140005950
nop
lea rdi, [rbp + 0x520]
cmp qword [rbp + 0x538], 0x10
cmovae rdi, qword [rbp + 0x520]
xor eax, eax
mov rcx, qword [rbp + 0x530]
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 + 0x6a0], al
jne 0x14000b0e2
mov edi, esi
cmp r13d, 2
jl 0x14000b09f
movdqa xmm5, xmmword [0x14044de80]
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, ebx
movdqa xmm7, xmmword [0x14044dea0]
movd xmm8, r15d
movdqa xmm0, xmmword [str.5555555555555555]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x5e4]
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 [0x14044deb0]
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 [0x14044deb0]
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 0x14000af93
cmp edi, 0xc1
jge 0x14000b0e2
movsxd rax, edi
lea r8, [rbp + 0x5e0]
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, 0x35
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xc1
jl 0x14000b0b0
lea rax, [rbp + 0x5e0]
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 + 0x540]
mov ecx, dword [rbp + 0x58]
call fcn.1400063b0
movabs rcx, 0xfad74b9d0cbf5af5
movabs rdx, 0xf422c17c7a151d36
test al, al
mov rax, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
je 0x14000cedf
mov qword [rbp + 0x450], rax
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x20], rdx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x500], rax
mov qword [rbp + 0x20], rdx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x508], rax
movdqa xmm0, xmmword [rbp + 0x40]
xorps xmm0, xmmword [rbp + 0x500]
movdqa xmmword [rbp + 0x40], xmm0
lea rax, [rbp + 0x60]
mov qword [rbp + 0x50], rax
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x60]
call fcn.14000ff10
nop
xor eax, eax
mov qword [rbp + 0x80], rax
cmp byte [0x1405f1603], al
jne 0x14000b1e5
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1603], 1
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x280]
call fcn.14000ff10
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400109a0
mov r15, rax
lea r9, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x14000b25c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r12d, 0xffffffff
nop
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r12
add rdx, 8
cmp rdx, rax
jl 0x14000b240
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
mov r8d, esi
test rbx, rbx
je 0x14000b2dc
mov rdi, r15
nop dword [rax]
mov edx, esi
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 0x14000b290
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 0x14000b280
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r15]
mov byte [rbp + 1], r13b
cmp rbx, 1
jbe 0x14000b2fc
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000b2ff
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r13b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x14000b313
mov byte [rbp + 0x18], cl
mov byte [rbp + 0x10], dl
mov r14d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r13, r9
mov r15d, 8
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r14d
test r14d, r14d
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, r13
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r12 + 0x408]
xor byte [rbp + r12 + 0x400], al
lea r10d, [r14*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r12 + 0x409]
xor byte [rbp + r12 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40a]
xor byte [rbp + r12 + 0x402], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40b]
xor byte [rbp + r12 + 0x403], 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 + 0x400], 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, 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 + r12 + 0x40c]
xor byte [rbp + r12 + 0x404], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40d]
xor byte [rbp + r12 + 0x405], 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 + 0x400], 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, 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 + r12 + 0x40e]
xor byte [rbp + r12 + 0x406], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40f]
xor byte [rbp + r12 + 0x407], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x18]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r14d, r15d
lea r12, [r12 + 8]
cmp r14d, r15d
jb 0x14000b350
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x80], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x60]
call fcn.14000fee0
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
cmp byte [0x1405f1604], 0
mov esi, 0
lea r14, [0x140000000]
lea r12, [0x1405f1e19]
jne 0x14000b6de
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1604], 1
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x1d0]
call fcn.14000ff10
nop
mov rdx, rax
lea rcx, [rbp + 0x90]
call fcn.140010030
mov r15, qword [rbp + 0xa0]
mov qword [rbp + 0x20], r15
lea rcx, [rbp + 0x90]
call fcn.1400109a0
mov rbx, rax
cmp byte [0x1405f1606], 0
jne 0x14000bb06
mov r15, rsi
movabs r13, 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, r13
mov qword [r15 + r14 + 0x5f1f30], rax
lea rcx, [rbp + 0x118]
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 + r14 + 0x5f1e20], rax
lea rcx, [rbp + 0x110]
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 + r14 + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x14000b732
lea rcx, [rbp + 0x420]
call fcn.140001700
mov r15d, esi
lea rdi, [0x1405f1619]
mov r13, qword [rbp + 0x420]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b85b
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 0x14000b887
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 0x14000b8b2
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 0x14000b8de
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 0x14000b840
lea rcx, [rbp + 0x108]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x420], rdi
mov r13d, esi
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b934
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 0x14000b961
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 0x14000b98d
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 0x14000b9ba
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 0x14000b9e7
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 0x14000ba14
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 0x14000ba41
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 0x14000ba6e
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 0x14000ba9a
mov rdi, qword [rbp + 0x420]
jmp 0x14000b920
lea rcx, [rbp + 0x100]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x420], rdi
mov r15d, esi
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 0x14000bad4
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 0x14000bafb
mov rdi, qword [rbp + 0x420]
jmp 0x14000bac0
mov byte [0x1405f1606], 1
mov r15, qword [rbp + 0x20]
test r15, r15
je 0x14000bc52
mov r10d, esi
nop dword [rax]
nop word [rax + rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f1618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000bb41
inc r8d
inc r9
cmp r8d, 4
jb 0x14000bb30
mov r8d, esi
lea r9, [0x1405f1e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000bba1
inc r8d
inc r9
cmp r8d, 8
jb 0x14000bb90
mov r8d, esi
lea r9, [0x1405f1f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000bc01
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000bbf0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r15
jb 0x14000bb20
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x2a0]
call fcn.140010030
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400109a0
mov r15, rax
lea r9, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x14000bccc
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r12d, 0xffffffff
nop dword [rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r12
add rdx, 8
cmp rdx, rax
jl 0x14000bcb0
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
mov r8d, esi
test rbx, rbx
je 0x14000bd4c
mov rdi, r15
nop dword [rax]
mov edx, esi
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 0x14000bd00
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 0x14000bcf0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r15]
mov byte [rbp + 1], r13b
cmp rbx, 1
jbe 0x14000bd6c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000bd6f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r13b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x14000bd83
mov byte [rbp + 0x18], cl
mov byte [rbp + 0x10], dl
mov r14d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r13, r9
mov r15d, 8
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r14d
test r14d, r14d
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, r13
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r12 + 0x408]
xor byte [rbp + r12 + 0x400], al
lea r10d, [r14*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r12 + 0x409]
xor byte [rbp + r12 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40a]
xor byte [rbp + r12 + 0x402], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40b]
xor byte [rbp + r12 + 0x403], 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 + 0x400], 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, 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 + r12 + 0x40c]
xor byte [rbp + r12 + 0x404], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40d]
xor byte [rbp + r12 + 0x405], 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 + 0x400], 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, 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 + r12 + 0x40e]
xor byte [rbp + r12 + 0x406], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40f]
xor byte [rbp + r12 + 0x407], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x18]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r14d, r15d
lea r12, [r12 + 8]
cmp r14d, r15d
jb 0x14000bdc0
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x80], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x60]
call fcn.14000fee0
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
lea rcx, [rbp + 0x90]
call fcn.140002d30
nop
lea rcx, [rbp + 0x1d0]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0x70]
lea rcx, [rbp + 0x60]
call fcn.1400109a0
mov r11, rax
cmp byte [0x1405f1605], 0
mov esi, 0
lea r9, [0x1405f1620]
jne 0x14000c19c
mov rdx, r9
lea rax, [0x1405f1e18]
movabs rdi, 0xababdbf33353735b
mov r14d, 0xffffffff
movabs r8, 0xfeeddccbbaa99887
mov rcx, r8
xor rcx, rdi
mov qword [rdx], rcx
sub r8, r14
add rdx, 8
cmp rdx, rax
jl 0x14000c180
mov byte [0x1405f1605], 1
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x400], rax
mov r8d, esi
test rbx, rbx
je 0x14000c21c
mov rdi, r11
nop dword [rax + rax]
mov edx, esi
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 0x14000c1d0
not cl
movzx eax, cl
mov r12, qword [rbp + 0x400]
xor r12, qword [r9 + rax*8]
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x400], r12
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000c1c0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r11]
mov byte [rbp + 1], r13b
cmp rbx, 1
jbe 0x14000c23c
movzx r11d, byte [rbx + r11 - 1]
jmp 0x14000c23f
mov r11b, 0xae
mov byte [rbp], r11b
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r13b
xor dl, r11b
inc eax
cmp eax, 8
jb 0x14000c253
mov byte [rbp + 0x18], cl
mov byte [rbp + 0x10], dl
mov r12d, esi
lea r14, [rbx*8]
mov r15, rsi
mov rsi, r9
mov r13d, 8
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r12d
test r12d, r12d
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, rsi
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r15 + 0x408]
xor byte [rbp + r15 + 0x400], al
lea r10d, [r12*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r13d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r12 + 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 + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r12 + 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, rsi
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 + 0x10]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r12 + 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, rsi
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 + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r12 + 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, rsi
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 + 0x10]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r12 + 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, rsi
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 + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r12 + 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, rsi
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 + 0x10]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r12 + 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, rsi
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 + 0x18]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r12d, r13d
lea r15, [r15 + 8]
cmp r12d, r13d
jb 0x14000c290
movzx r11d, byte [rbp]
imul r8, r11, 0xff
not r8
movzx eax, byte [rbp + 1]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 0x30]
xor r8, rdx
mov rdx, qword [rbp + 0x80]
cmp r8, rdx
mov esi, 0
lea r14, [0x140000000]
lea r12, [0x1405f1e19]
je 0x14000c60f
mov rdi, qword [0x1405f1610]
lea rcx, [rbp + 0x170]
call fcn.140002d90
lea rdx, [rbp + 0x60]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x120]
call fcn.140010030
nop
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0x140]
call fcn.140010030
mov r13, qword [rbp + 0x150]
mov qword [rbp + 0x20], r13
lea rcx, [rbp + 0x140]
call fcn.1400109a0
mov rbx, rax
mov qword [rbp + 8], rax
cmp byte [0x1405f1606], 0
jne 0x14000ca44
mov r15, rsi
movabs r13, 0x101010101010101
nop dword [rax + 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, r13
mov qword [r15 + r14 + 0x5f1f30], rax
lea rcx, [rbp + 0xf8]
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 + r14 + 0x5f1e20], rax
lea rcx, [rbp + 0xf0]
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 + r14 + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x14000c670
lea rcx, [rbp + 0x410]
call fcn.140001700
mov edi, esi
mov r13, qword [rbp + 0x20]
lea rbx, [0x1405f1619]
mov r15, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c79c
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c7c8
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c7f3
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c81f
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 0x14000c781
lea rcx, [rbp + 0xe8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x410], rdi
mov r15d, esi
mov rbx, qword [rbp + 8]
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c874
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c8a2
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c8cf
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c8fd
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c92b
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c959
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c987
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c9b5
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 0x14000c9e2
mov rdi, qword [rbp + 0x410]
jmp 0x14000c860
lea rcx, [rbp + 0xe0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x410], rdi
mov r15d, esi
lea r12, [0x1405f1f20]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ca16
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 0x14000ca3d
mov rdi, qword [rbp + 0x410]
jmp 0x14000ca02
mov byte [0x1405f1606], 1
test r13, r13
je 0x14000cb82
mov r10d, esi
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f1618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000ca71
inc r8d
inc r9
cmp r8d, 4
jb 0x14000ca60
mov r8d, esi
lea r9, [0x1405f1e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000cad1
inc r8d
inc r9
cmp r8d, 8
jb 0x14000cac0
mov r8d, esi
lea r9, [0x1405f1f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000cb31
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000cb20
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r13
jb 0x14000ca50
lea rcx, [rbp + 0x120]
call fcn.140002d30
nop
lea rdx, [rbp + 0x140]
mov rcx, qword [rbp + 0x450]
call fcn.140010db0
mov r9, rax
mov ebx, dword [reloc.WS2_32.dll_accept]
mov r14d, 5
lea r15d, [r14 + 0x1a]
cmp byte [rbp + 0x496], 0
je 0x14000cd1f
mov edi, esi
cmp ebx, 2
jl 0x14000cce2
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, r14d
movd xmm5, r15d
movdqa xmm2, xmmword [0x14044de80]
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 [0x14044dea0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044deb0]
packuswb xmm2, xmm2
mov eax, dword [str.5555555555555555]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x488]
xorps xmm2, xmm1
movd dword [rbp + 0x488], xmm2
movdqa xmm3, xmmword [0x14044de90]
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 [0x14044dea0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044deb0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x48c]
xorps xmm2, xmm1
movd dword [rbp + 0x48c], xmm2
mov edi, 8
movsxd rax, edi
lea r8, [rbp + 0x488]
add r8, rax
nop
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, 0x35
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xf
jl 0x14000ccf0
lea rdx, [rbp + 0x488]
mov rcx, r9
call fcn.140010dd0
lea rdx, [0x140010fa0]
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 + 0x140]
call fcn.140002d30
nop
lea rcx, [rbp + 0x60]
call fcn.140002f10
cmp byte [rbp + 0x496], 0
jne 0x14000cebf
mov edi, esi
cmp ebx, 2
jl 0x14000ce82
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, r14d
movd xmm5, r15d
movdqa xmm2, xmmword [0x14044de80]
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 [0x14044dea0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044deb0]
packuswb xmm2, xmm2
mov eax, dword [str.5555555555555555]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x488]
xorps xmm2, xmm1
movd dword [rbp + 0x488], xmm2
movdqa xmm3, xmmword [0x14044de90]
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 [0x14044dea0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x14044deb0]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp + 0x48c]
xorps xmm2, xmm1
movd dword [rbp + 0x48c], xmm2
mov edi, 8
movsxd rax, edi
lea r8, [rbp + 0x488]
add r8, rax
nop
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, 0x35
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xf
jl 0x14000ce90
mov qword [rbp + 0x488], rsi
mov dword [rbp + 0x490], esi
mov word [rbp + 0x494], si
mov byte [rbp + 0x496], sil
jmp 0x14000ed07
mov qword [rbp + 0x450], rax
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x20], rdx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x20], rcx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x500], rax
mov qword [rbp + 0x20], rdx
mov rax, qword [rbp + 0x20]
mov qword [rbp + 0x508], rax
movdqa xmm0, xmmword [rbp + 0x500]
xorps xmm0, xmmword [rbp + 0x40]
movdqa xmmword [rbp + 0x40], xmm0
lea rax, [rbp + 0x170]
mov qword [rbp + 0x50], rax
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x170]
call fcn.14000ff10
nop
xor eax, eax
mov qword [rbp + 0x190], rax
cmp byte [0x1405f1603], al
jne 0x14000cf72
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1603], 1
lea rdx, [0x14043d9a0]
lea rcx, [rbp + 0x280]
call fcn.14000ff10
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400109a0
mov r15, rax
lea r9, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x14000cfec
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r12d, 0xffffffff
nop dword [rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r12
add rdx, 8
cmp rdx, rax
jl 0x14000cfd0
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
mov r8d, esi
test rbx, rbx
je 0x14000d06c
mov rdi, r15
nop dword [rax]
mov edx, esi
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 0x14000d020
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 0x14000d010
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r15]
mov byte [rbp + 1], r13b
cmp rbx, 1
jbe 0x14000d08c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000d08f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r13b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x14000d0a3
mov byte [rbp + 0x18], cl
mov byte [rbp + 0x10], dl
mov r14d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r13, r9
mov r15d, 8
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r14d
test r14d, r14d
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, r13
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r12 + 0x408]
xor byte [rbp + r12 + 0x400], al
lea r10d, [r14*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r12 + 0x409]
xor byte [rbp + r12 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40a]
xor byte [rbp + r12 + 0x402], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40b]
xor byte [rbp + r12 + 0x403], 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 + 0x400], 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, 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 + r12 + 0x40c]
xor byte [rbp + r12 + 0x404], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40d]
xor byte [rbp + r12 + 0x405], 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 + 0x400], 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, 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 + r12 + 0x40e]
xor byte [rbp + r12 + 0x406], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40f]
xor byte [rbp + r12 + 0x407], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x18]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r14d, r15d
lea r12, [r12 + 8]
cmp r14d, r15d
jb 0x14000d0e0
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x190], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x170]
call fcn.14000fee0
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
cmp byte [0x1405f1604], 0
mov esi, 0
lea r14, [0x140000000]
lea r12, [0x1405f1e19]
jne 0x14000d471
lea rax, [0x140002eb0]
mov qword [0x1405f1610], rax
mov byte [0x1405f1604], 1
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0xb0]
call fcn.14000ff10
nop
mov rdx, rax
lea rcx, [rbp + 0x90]
call fcn.140010030
mov r15, qword [rbp + 0xa0]
mov qword [rbp + 0x20], r15
lea rcx, [rbp + 0x90]
call fcn.1400109a0
mov rbx, rax
cmp byte [0x1405f1606], 0
jne 0x14000d8a6
mov r15, rsi
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 + r14 + 0x5f1f30], rax
lea rcx, [rbp + 0x118]
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 + r14 + 0x5f1e20], rax
lea rcx, [rbp + 0x110]
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 + r14 + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x14000d4d0
lea rcx, [rbp + 0x420]
call fcn.140001700
mov r15d, esi
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 0x14000d5fb
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 0x14000d627
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 0x14000d652
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 0x14000d67e
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 0x14000d5e0
lea rcx, [rbp + 0x108]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x420], rdi
mov r13d, esi
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d6d4
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 0x14000d701
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 0x14000d72d
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 0x14000d75a
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 0x14000d787
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 0x14000d7b4
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 0x14000d7e1
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 0x14000d80e
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 0x14000d83a
mov rdi, qword [rbp + 0x420]
jmp 0x14000d6c0
lea rcx, [rbp + 0x100]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x420], rdi
mov r15d, esi
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 0x14000d874
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 0x14000d89b
mov rdi, qword [rbp + 0x420]
jmp 0x14000d860
mov byte [0x1405f1606], 1
mov r15, qword [rbp + 0x20]
test r15, r15
je 0x14000d9f2
mov r10d, esi
nop dword [rax]
nop word [rax + rax]
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f1618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000d8e1
inc r8d
inc r9
cmp r8d, 4
jb 0x14000d8d0
mov r8d, esi
lea r9, [0x1405f1e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000d941
inc r8d
inc r9
cmp r8d, 8
jb 0x14000d930
mov r8d, esi
lea r9, [0x1405f1f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000d9a1
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000d990
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r15
jb 0x14000d8c0
lea rdx, [rbp + 0x90]
lea rcx, [rbp + 0x2a0]
call fcn.140010030
mov qword [rbp + 0x20], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.1400109a0
mov r15, rax
lea r9, [0x1405f1620]
cmp byte [0x1405f1605], 0
jne 0x14000da6c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405f1e18]
movabs r8, 0xababdbf33353735b
mov r12d, 0xffffffff
nop dword [rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r12
add rdx, 8
cmp rdx, rax
jl 0x14000da50
mov byte [0x1405f1605], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
mov r8d, esi
test rbx, rbx
je 0x14000daec
mov rdi, r15
nop dword [rax]
mov edx, esi
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 0x14000daa0
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 0x14000da90
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r15]
mov byte [rbp + 1], r13b
cmp rbx, 1
jbe 0x14000db0c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000db0f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r13b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x14000db23
mov byte [rbp + 0x18], cl
mov byte [rbp + 0x10], dl
mov r14d, esi
mov r12, rsi
lea rsi, [rbx*8]
mov r13, r9
mov r15d, 8
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r14d
test r14d, r14d
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, r13
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r12 + 0x408]
xor byte [rbp + r12 + 0x400], al
lea r10d, [r14*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r15d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r12 + 0x409]
xor byte [rbp + r12 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40a]
xor byte [rbp + r12 + 0x402], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40b]
xor byte [rbp + r12 + 0x403], 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 + 0x400], 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, 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 + r12 + 0x40c]
xor byte [rbp + r12 + 0x404], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40d]
xor byte [rbp + r12 + 0x405], 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 + 0x400], 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, 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 + r12 + 0x40e]
xor byte [rbp + r12 + 0x406], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], 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, 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 + r12 + 0x40f]
xor byte [rbp + r12 + 0x407], al
mov eax, r15d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x18]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r14d, r15d
lea r12, [r12 + 8]
cmp r14d, r15d
jb 0x14000db60
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
movzx eax, byte [rbp + 1]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x190], rcx
mov rdx, qword [rbp + 0x20]
lea rcx, [rbp + 0x170]
call fcn.14000fee0
nop
mov rcx, qword [rbp + 0x20]
call fcn.140002d30
nop
lea rcx, [rbp + 0x90]
call fcn.140002d30
nop
lea rcx, [rbp + 0xb0]
call fcn.140002d30
nop
mov rbx, qword [rbp + 0x180]
lea rcx, [rbp + 0x170]
call fcn.1400109a0
mov r11, rax
cmp byte [0x1405f1605], 0
mov esi, 0
lea r9, [0x1405f1620]
jne 0x14000df4c
mov rdx, r9
lea rax, [0x1405f1e18]
movabs rdi, 0xababdbf33353735b
mov r14d, 0xffffffff
movabs r8, 0xfeeddccbbaa99887
nop dword [rax]
mov rcx, r8
xor rcx, rdi
mov qword [rdx], rcx
sub r8, r14
add rdx, 8
cmp rdx, rax
jl 0x14000df30
mov byte [0x1405f1605], 1
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x400], rax
mov r8d, esi
test rbx, rbx
je 0x14000dfcc
mov rdi, r11
nop dword [rax + rax]
mov edx, esi
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 0x14000df80
not cl
movzx eax, cl
mov r12, qword [rbp + 0x400]
xor r12, qword [r9 + rax*8]
mov qword [rbp + 0x30], r12
mov qword [rbp + 0x400], r12
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000df70
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r11]
mov byte [rbp + 1], r13b
cmp rbx, 1
jbe 0x14000dfec
movzx r11d, byte [rbx + r11 - 1]
jmp 0x14000dfef
mov r11b, 0xae
mov byte [rbp], r11b
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x10], rbx
mov eax, esi
movzx ecx, bl
movzx edx, bl
xor cl, r13b
xor dl, r11b
inc eax
cmp eax, 8
jb 0x14000e003
mov byte [rbp + 0x18], cl
mov byte [rbp + 0x10], dl
mov r12d, esi
lea r14, [rbx*8]
mov r15, rsi
mov rsi, r9
mov r13d, 8
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r12d
test r12d, r12d
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, rsi
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r15 + 0x408]
xor byte [rbp + r15 + 0x400], al
lea r10d, [r12*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r13d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x10]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r12 + 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 + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r12 + 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, rsi
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 + 0x10]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r12 + 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, rsi
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 + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r12 + 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, rsi
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 + 0x10]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r12 + 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, rsi
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 + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r12 + 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, rsi
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 + 0x10]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r12 + 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, rsi
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 + 0x18]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r12d, r13d
lea r15, [r15 + 8]
cmp r12d, r13d
jb 0x14000e040
movzx r11d, byte [rbp]
imul r8, r11, 0xff
not r8
movzx eax, byte [rbp + 1]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 0x30]
xor r8, rdx
mov rdx, qword [rbp + 0x190]
cmp r8, rdx
mov esi, 0
lea r14, [0x140000000]
lea r12, [0x1405f1e19]
je 0x14000e3c2
mov rdi, qword [0x1405f1610]
lea rcx, [rbp + 0x390]
call fcn.140002d90
lea rdx, [rbp + 0x170]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x170]
lea rcx, [rbp + 0x1d0]
call fcn.140010030
nop
lea rdx, [rbp + 0x1d0]
lea rcx, [rbp + 0x120]
call fcn.140010030
mov r13, qword [rbp + 0x130]
mov qword [rbp + 0x20], r13
lea rcx, [rbp + 0x120]
call fcn.1400109a0
mov rbx, rax
mov qword [rbp + 8], rax
cmp byte [0x1405f1606], 0
jne 0x14000e7f4
mov r15, rsi
movabs r13, 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, r13
mov qword [r15 + r14 + 0x5f1f30], rax
lea rcx, [rbp + 0xf8]
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 + r14 + 0x5f1e20], rax
lea rcx, [rbp + 0xf0]
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 + r14 + 0x5f1ea0], rax
add r15, 8
cmp r15, 0x80
jl 0x14000e421
lea rcx, [rbp + 0x410]
call fcn.140001700
mov edi, esi
mov r13, qword [rbp + 0x20]
lea rbx, [0x1405f1619]
mov r15, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e54d
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e579
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e5a4
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e5d0
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 0x14000e532
lea rcx, [rbp + 0xe8]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x410], rdi
mov r15d, esi
mov rbx, qword [rbp + 8]
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e624
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e652
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e67f
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e6ad
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e6db
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e709
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e737
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e765
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 0x14000e792
mov rdi, qword [rbp + 0x410]
jmp 0x14000e610
lea rcx, [rbp + 0xe0]
call fcn.140001700
mov rdi, qword [rax]
mov qword [rbp + 0x410], rdi
mov r15d, esi
lea r12, [0x1405f1f20]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000e7c6
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 0x14000e7ed
mov rdi, qword [rbp + 0x410]
jmp 0x14000e7b2
mov byte [0x1405f1606], 1
test r13, r13
je 0x14000e932
mov r10d, esi
mov r8d, esi
movzx ecx, byte [rbx]
lea r9, [0x1405f1618]
nop dword [rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000e821
inc r8d
inc r9
cmp r8d, 4
jb 0x14000e810
mov r8d, esi
lea r9, [0x1405f1e18]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000e881
inc r8d
inc r9
cmp r8d, 8
jb 0x14000e870
mov r8d, esi
lea r9, [0x1405f1f20]
nop word [rax + rax]
mov edi, esi
movzx eax, byte [r9]
lea rdx, [r14 + 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 0x14000e8e1
inc r8d
inc r9
cmp r8d, 0xc
jb 0x14000e8d0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r13
jb 0x14000e800
lea rcx, [rbp + 0x1d0]
call fcn.140002d30
nop
lea rdx, [rbp + 0x120]
mov rcx, qword [rbp + 0x450]
call fcn.140010db0
mov r9, rax
mov ebx, dword [reloc.WS2_32.dll_accept]
mov r14d, 5
lea r15d, [r14 + 0x1a]
cmp byte [rbp + 0x4b4], 0
je 0x14000eb0f
mov edi, esi
cmp ebx, 2
jl 0x14000eac6
movdqa xmm5, xmmword [0x14044de80]
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, r14d
movdqa xmm7, xmmword [0x14044dea0]
movd xmm8, r15d
movdqa xmm0, xmmword [str.5555555555555555]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x4a4]
mov edx, dword [rbp + 0x20]
nop word [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 [0x14044deb0]
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 [0x14044deb0]
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 + 0x4a0]
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, 0x35
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0x15
jl 0x14000eae0
lea rdx, [rbp + 0x4a0]
mov rcx, r9
call fcn.140010dd0
lea rdx, [0x140010fa0]
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 + 0x120]
call fcn.140002d30
nop
lea rcx, [rbp + 0x170]
call fcn.140002f10
cmp byte [rbp + 0x4b4], 0
jne 0x14000ecef
mov edi, esi
cmp ebx, 2
jl 0x14000eca6
movdqa xmm5, xmmword [0x14044de80]
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, r14d
movdqa xmm7, xmmword [0x14044dea0]
movd xmm8, r15d
movdqa xmm0, xmmword [str.5555555555555555]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x4a4]
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 [0x14044deb0]
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 [0x14044deb0]
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 + 0x4a0]
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, 0x35
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0x15
jl 0x14000ecc0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x4a0], xmm0
mov dword [rbp + 0x4b0], eax
mov byte [rbp + 0x4b4], al
cmp byte [rbp + 0x6a0], 0
jne 0x14000eeb1
cmp ebx, 2
jl 0x14000ee6d
movdqa xmm5, xmmword [0x14044de80]
movdqa xmm4, xmmword [0x14044ded0]
movd xmm6, r14d
movdqa xmm7, xmmword [0x14044dea0]
movd xmm8, r15d
movdqa xmm0, xmmword [str.5555555555555555]
movdqa xmmword [rbp + 0x20], xmm0
lea rcx, [rbp + 0x5e4]
mov edx, dword [rbp + 0x20]
nop word [rax + rax]
movd xmm2, esi
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 [0x14044deb0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rsi + 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 [0x14044deb0]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add esi, 8
mov eax, esi
lea rcx, [rcx + 8]
cmp esi, 0xc0
jl 0x14000ed60
cmp eax, 0xc1
jge 0x14000eeb1
movsxd rax, esi
lea rdi, [rbp + 0x5e0]
add rdi, rax
nop word [rax + rax]
mov eax, 0x8fb823ef
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x39
movzx eax, sil
sub al, cl
add al, 0x35
xor byte [rdi], al
inc esi
lea rdi, [rdi + 1]
cmp esi, 0xc1
jl 0x14000ee80
lea rax, [rbp + 0x5e0]
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 + 0x540]
cmp qword [rbp + 0x558], 0x10
cmovae rdi, qword [rbp + 0x540]
mov rcx, qword [rbp + 0x550]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x520]
cmp qword [rbp + 0x538], 0x10
cmovae rdi, qword [rbp + 0x520]
mov rcx, qword [rbp + 0x530]
rep stosb byte [rdi], al
lea rcx, [rbp + 0x540]
call fcn.140002d30
nop
lea rcx, [rbp + 0x520]
call fcn.140002d30
nop
lea rcx, [rbp + 0x560]
call fcn.14000fb80
mov rdi, qword [rbp + 0x88]
mov rcx, rdi
call fcn.1400429c0
nop
lea rcx, [rbp + 0x4d8]
call fcn.140002d30
call fcn.140042bf0
mov ecx, 0x151a8d
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x14000efbb
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SuspendThread]
nop
lea rcx, [rbp + 0x580]
call fcn.140004d20
xor eax, eax
mov rcx, qword [rbp + 0xac0]
xor rcx, rsp
call fcn.1401df700
lea r11, [rsp + 0xb40]
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