Function at 0x140005360
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0xb60
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x1405beab8]
xor rax, rsp
mov qword [rbp + 0xae0], rax
xor r14d, r14d
xorps xmm0, xmm0
movups xmmword [rbp + 0x570], 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
lea rcx, [rbp + 0x570]
call fcn.140003900
nop
mov dl, 1
lea rcx, [rbp + 0x570]
call fcn.140002fc0
lea rcx, [rbp + 0x570]
call fcn.140003260
mov dword [rbp + 0x6a0], 0x348
mov edi, r14d
xor edx, edx
xor r9d, r9d
lea r8, [rbp + 0x6a0]
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumDisplayDevicesW]
test eax, eax
je 0x14000da5b
test byte [rbp + 0x7e4], 1
je 0x140005469
lea rdx, [rbp + 0x6e4]
lea rcx, [rbp + 0x4a0]
call fcn.14000e710
nop
cmp qword [rbp + 0x4b0], 0
je 0x14000545d
lea rcx, [rbp + 0x4a0]
call fcn.140003a70
test al, al
jne 0x14000546f
lea rcx, [rbp + 0x4a0]
call fcn.14000e6a0
inc edi
mov edx, edi
jmp 0x14000540c
lea rcx, [rbp + 0x4a0]
call fcn.14000e6a0
call fcn.140005290
mov ecx, 3
call fcn.140026eb0
call fcn.140026c50
mov rdi, rax
mov qword [rbp + 0x88], rax
test rax, rax
je 0x14000da4a
movabs rax, 0xbb833aa02de70093
mov qword [rbp + 8], rax
mov rcx, qword [rbp + 8]
mov qword [rbp + 0x200], rcx
movabs rax, 0x7ef10b634d263178
mov qword [rbp + 8], rax
mov rcx, qword [rbp + 8]
mov qword [rbp + 0x208], rcx
movabs rax, 0xd6b9f826223c1953
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x210], rax
movabs rax, 0x19f501e120b496ea
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x218], rax
movabs rax, 0x1cea8cf3c6393f49
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x220], rax
movabs rax, 0x170b2ddb900ccc08
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x228], rax
movabs rax, 0xd10b4a923bb72dd0
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x230], rax
movabs rax, 0x67c3e2c66e73a3ff
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x238], rax
movabs rax, 0x4100bf0189ead3a9
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x240], rax
movabs rax, 0x2bddea1f9f600e62
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x248], rax
movabs rax, 0xeefd4077740955cd
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x250], rax
movabs rax, 0x1f494946d5cb56a7
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x258], rax
movabs rax, 0x89715ae5e3075fff
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x260], rax
movabs rax, 0x1c243ed73c3dd18d
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x268], rax
movabs rax, 0x6a9faac8e2ab8494
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x270], rax
movabs rcx, 0x3214efe568aec9fa
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x278], rax
movabs rbx, 0x8aac159a5d9374fb
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa60], rax
movabs rsi, 0x4adf3c577c08004c
mov qword [rbp + 8], rsi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa68], rax
movabs r12, 0xe780ce1c150f287d
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa70], rax
movabs r15, 0x498662a94cf7b9de
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa78], rax
movabs rax, 0x65d8fabeb475737f
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa80], rax
movabs rax, 0x4f32678bf63ca530
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa88], rax
movabs rax, 0x823e23f05d8f7d81
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa90], rax
movabs rax, 0xaf1db8d5b1e97b2
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa98], rax
movabs rax, 0x7964fa72eda5abe3
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xaa0], rax
movabs rax, 0x7e90832fae523c34
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xaa8], rax
movabs rax, 0xa9ad2b14173b03a5
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xab0], rax
movabs rax, 0x6f067d21be9918c6
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xab8], rax
movabs rax, 0xff1438d6db6e3a87
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xac0], rax
movabs rax, 0x73754d837457a0d8
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xac8], rax
movabs rax, 0x6a9faac8e2abb9a9
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0xad0], rax
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xad8], rax
vmovdqu ymm0, ymmword [rbp + 0xa60]
vpxor ymm0, ymm0, ymmword [rbp + 0x200]
vmovdqa ymmword [rbp + 0x200], ymm0
vmovdqu ymm1, ymmword [rbp + 0xa80]
vpxor ymm0, ymm1, ymmword [rbp + 0x220]
vmovdqa ymmword [rbp + 0x220], ymm0
vmovdqu ymm0, ymmword [rbp + 0x240]
vpxor ymm1, ymm0, ymmword [rbp + 0xaa0]
vmovdqa ymmword [rbp + 0x240], ymm1
vmovdqu ymm0, ymmword [rbp + 0x260]
vpxor ymm1, ymm0, ymmword [rbp + 0xac0]
vmovdqa ymmword [rbp + 0x260], ymm1
lea r8, [rbp + 0x200]
mov edx, 0x2712
mov rcx, rdi
vzeroupper
call fcn.140029c20
movzx edx, byte [rbp + 0x10]
lea rcx, [rbp + 0x4d8]
call fcn.14000fab0
lea rcx, [rbp + 0x4d8]
call fcn.14000f340
nop
lea r8, [0x140005260]
mov edx, 0x4e2b
mov rcx, rdi
call fcn.140029c20
lea r8, [rbp + 0x4d8]
mov edx, 0x2711
mov rcx, rdi
call fcn.140029c20
mov rcx, rdi
call fcn.140026cc0
test eax, eax
jne 0x14000da35
movsd xmm0, qword [str.d_XHXTTPXnolC]
movsd qword [rbp + 0x478], xmm0
mov eax, dword [0x140422fb8]
mov dword [rbp + 0x480], eax
movzx eax, byte [0x140422fbc]
mov byte [rbp + 0x484], al
movsd xmm0, qword [0x140422fc0]
movsd qword [rbp + 0x518], xmm0
mov eax, dword [0x140422fc8]
mov dword [rbp + 0x520], eax
movzx eax, word [0x140422fcc]
mov word [rbp + 0x524], ax
movzx eax, byte [0x140422fce]
mov byte [rbp + 0x526], al
movups xmm0, xmmword [str.pWJNS]
movups xmmword [rbp + 0x4c0], xmm0
mov eax, dword [0x140423040]
mov dword [rbp + 0x4d0], eax
movzx eax, byte [0x140423044]
mov byte [rbp + 0x4d4], al
movabs rax, 0x8afc15db5dc774bc
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1b0], rax
movabs rax, 0x4aba3c347c67003e
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1b8], rax
movabs rax, 0xe780ce1c157c280e
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1c0], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0x1c8], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa20], rax
mov qword [rbp + 8], rsi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa28], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa30], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa38], rax
vmovdqu ymm0, ymmword [rbp + 0x1b0]
vpxor ymm1, ymm0, ymmword [rbp + 0xa20]
vmovdqu ymmword [rbp + 0x1b0], ymm1
movzx edx, byte [rbp + 0x10]
lea rcx, [rbp + 0x548]
vzeroupper
call fcn.14000fab0
nop
lea rax, [rbp + 0x1b0]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1400059e0
lea rdx, [rbp + 0x1b0]
lea rcx, [rbp + 0x548]
call fcn.14000fad0
nop
lea rcx, [rbp + 0x548]
call fcn.140004f30
mov dword [rbp + 0x20], eax
test eax, eax
mov rax, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
jne 0x1400075f7
mov qword [rbp + 0x488], rax
movabs rcx, 0xf8fc35d738e51dbd
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x4a0], rax
movabs rax, 0x25b11c240f6d6323
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x4a8], rax
movabs rax, 0xc9e4a0697a690809
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x4b0], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0x4b8], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa00], rax
mov qword [rbp + 8], rsi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa08], rax
mov qword [rbp + 8], r12
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa10], rax
mov qword [rbp + 8], r15
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa18], rax
vmovdqu ymm0, ymmword [rbp + 0xa00]
vpxor ymm0, ymm0, ymmword [rbp + 0x4a0]
vmovdqa ymmword [rbp + 0x4a0], ymm0
lea rax, [rbp + 0xa0]
mov qword [rbp + 0x88], rax
lea rdx, [0x140422968]
lea rcx, [rbp + 0xa0]
vzeroupper
call fcn.14000ea30
nop
xor eax, eax
mov qword [rbp + 0xc0], rax
lea rax, [0x140002e40]
cmp byte [0x1405c22e3], 0
jne 0x140005b1e
mov qword [0x1405c22f0], rax
mov byte [0x1405c22e3], 1
lea rdx, [0x140422968]
lea rcx, [rbp + 0x1d0]
call fcn.14000ea30
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.14000f4c0
mov r12, rax
movabs rax, 0xfeeddccbbaa99887
lea r9, [0x1405c2300]
lea rdi, [0x1405c2af8]
movabs r8, 0xababdbf33353735b
mov r10d, 0xffffffff
cmp byte [0x1405c22e5], 0
jne 0x140005b9c
mov rdx, rax
mov rcx, r9
nop dword [rax + rax]
mov rax, rdx
xor rax, r8
mov qword [rcx], rax
sub rdx, r10
add rcx, 8
cmp rcx, rdi
jl 0x140005b80
mov byte [0x1405c22e5], 1
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x50], rax
mov r11, rax
mov qword [rbp + 0x460], rax
mov qword [rbp + 0x400], rax
mov r8d, r14d
test rbx, rbx
je 0x140005c2f
mov rdi, r12
nop word [rax + rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140005be0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x460], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140005bd0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r12]
mov byte [rbp + 0x10], r13b
cmp rbx, 1
jbe 0x140005c50
movzx r12d, byte [r12 + rbx - 1]
jmp 0x140005c53
mov r12b, 0xae
mov byte [rbp], r12b
mov qword [rbp + 0x420], rbx
mov qword [rbp + 0x418], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop
xor dl, r13b
xor cl, r12b
inc eax
cmp eax, 8
jb 0x140005c70
mov byte [rbp + 0x418], cl
mov byte [rbp + 0x420], dl
mov r15d, r14d
mov rsi, r14
mov r11d, 1
lea r13d, [r11 + 7]
lea r14, [rbx*8]
mov r12, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, r15d
test r15d, r15d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r12
mov qword [rbp + 0x410], rax
movzx eax, byte [rbp + rsi + 0x410]
xor byte [rbp + rsi + 0x400], al
lea r10d, [r15*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r13d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r15 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + rsi + 0x411]
xor byte [rbp + rsi + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r15 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + rsi + 0x412]
xor byte [rbp + rsi + 0x402], al
mov eax, r13d
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 + 0x18]
lea eax, [r15 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + rsi + 0x413]
xor byte [rbp + rsi + 0x403], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r15 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + rsi + 0x414]
xor byte [rbp + rsi + 0x404], al
mov eax, r13d
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 + 0x28]
lea eax, [r15 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + rsi + 0x415]
xor byte [rbp + rsi + 0x405], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r15 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + rsi + 0x416]
xor byte [rbp + rsi + 0x406], al
mov eax, r13d
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 + 0x38]
lea eax, [r15 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + rsi + 0x417]
xor byte [rbp + rsi + 0x407], al
mov eax, r13d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x420]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r15d, r13d
lea rsi, [rsi + 8]
cmp r15d, r13d
jb 0x140005cb0
movzx r12d, byte [rbp]
imul rcx, r12, 0xff
not rcx
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub rcx, rax
mov r11, qword [rbp + 0x460]
and r11, rdx
xor rcx, r11
mov qword [rbp + 0xc0], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0xa0]
call fcn.14000ea00
nop
mov rcx, qword [rbp + 8]
call fcn.140002cc0
nop
cmp byte [0x1405c22e4], 0
mov r14d, 0
jne 0x140006041
lea rax, [0x140002e40]
mov qword [0x1405c22f0], rax
mov byte [0x1405c22e4], 1
lea rdx, [rbp + 0x4a0]
lea rcx, [rbp + 0x280]
call fcn.14000ea30
nop
mov rdx, rax
lea rcx, [rbp + 0xa00]
call fcn.14000eb50
mov r15, qword [rbp + 0xa10]
mov qword [rbp + 8], r15
lea rcx, [rbp + 0xa00]
call fcn.14000f4c0
mov rbx, rax
movabs r13, 0x101010101010101
lea rsi, [0x140000000]
lea r12, [0x1405c2af9]
lea r11, [0x1405c2c00]
cmp byte [0x1405c22e6], 0
jne 0x14000648d
mov r15, r14
nop dword [rax]
lea rcx, [rbp + 0x468]
call fcn.140001690
mov rdi, qword [rbp + 0x468]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r15 + rsi + 0x5c2c10], rax
lea rcx, [rbp + 0xd0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r15 + rsi + 0x5c2b00], rax
lea rcx, [rbp + 0xd8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r15 + rsi + 0x5c2b80], rax
add r15, 8
cmp r15, 0x80
jl 0x1400060b0
lea rcx, [rbp + 0x428]
call fcn.140001690
mov r15d, r14d
lea rdi, [0x1405c22f9]
nop
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400061db
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140006207
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140006232
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000625e
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 0x1400061c0
lea rcx, [rbp + 0xe0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r13d, r14d
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400062b4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400062e1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000630d
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000633a
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140006367
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140006394
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400063c1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400063ee
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 0x14000641a
mov rdi, qword [rbp + 0x428]
jmp 0x1400062a0
lea rcx, [rbp + 0xe8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r15d, r14d
lea r13, [0x1405c2c00]
nop word [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140006454
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 0x14000647b
mov rdi, qword [rbp + 0x428]
jmp 0x140006440
mov byte [0x1405c22e6], 1
mov r15, qword [rbp + 8]
lea r11, [0x1405c2c00]
lea r13, [0x1405c2af8]
test r15, r15
je 0x1400065d3
mov r10d, r14d
mov r8d, r14d
movzx ecx, byte [rbx]
lea r9, [0x1405c22f8]
nop dword [rax]
mov edi, r14d
movzx eax, byte [r9]
lea rdx, [rsi + 0x5c2c11]
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 0x1400064c2
inc r8d
inc r9
cmp r8d, 4
jb 0x1400064b0
mov r8d, r14d
mov r9, r13
nop word [rax + rax]
mov edi, r14d
movzx eax, byte [r9]
lea rdx, [rsi + 0x5c2b01]
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 0x140006522
inc r8d
inc r9
cmp r8d, 8
jb 0x140006510
mov r8d, r14d
mov r9, r11
nop word [rax + rax]
mov edi, r14d
movzx eax, byte [r9]
lea rdx, [rsi + 0x5c2c11]
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 0x140006582
inc r8d
inc r9
cmp r8d, 0xc
jb 0x140006570
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r15
jb 0x1400064a0
lea rdx, [rbp + 0xa00]
lea rcx, [rbp + 0x188]
call fcn.14000eb50
mov qword [rbp + 0x28], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.14000f4c0
mov r10, rax
mov qword [rbp + 8], rax
lea r9, [0x1405c2300]
cmp byte [0x1405c22e5], 0
jne 0x14000665c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405c2af8]
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 0x140006640
mov byte [0x1405c22e5], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x460], r11
mov qword [rbp + 0x400], r11
mov r8d, r14d
test rbx, rbx
je 0x1400066df
mov rdi, r10
nop
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140006690
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x460], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140006680
movabs r9, 0xaebdccdb0a192837
movzx r8d, byte [r10]
cmp rbx, 1
jbe 0x1400066fb
movzx edi, byte [rbx + r10 - 1]
jmp 0x1400066fe
mov dil, 0xae
mov byte [rbp], dil
mov qword [rbp + 0x420], rbx
mov qword [rbp + 0x418], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop dword [rax]
xor dl, r8b
xor cl, dil
inc eax
cmp eax, 8
jb 0x140006720
mov byte [rbp + 0x418], cl
mov byte [rbp + 0x420], dl
mov r13d, r14d
lea r12, [rbx*8]
mov r15, r14
mov esi, 8
mov r14, r9
mov r11d, 1
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x410], rax
movzx eax, byte [rbp + r15 + 0x410]
xor byte [rbp + r15 + 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 + 0x418]
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, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + r15 + 0x411]
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 + 0x420]
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, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + r15 + 0x412]
xor byte [rbp + r15 + 0x402], 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 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + r15 + 0x413]
xor byte [rbp + r15 + 0x403], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + r15 + 0x414]
xor byte [rbp + r15 + 0x404], 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 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + r15 + 0x415]
xor byte [rbp + r15 + 0x405], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
mov qword [rbp + 0x410], r8
movzx eax, byte [rbp + r15 + 0x416]
xor byte [rbp + r15 + 0x406], 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 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
mov qword [rbp + 0x410], r9
movzx eax, byte [rbp + r15 + 0x417]
xor byte [rbp + r15 + 0x407], al
mov eax, esi
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x420]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r13d, esi
lea r15, [r15 + 8]
cmp r13d, esi
jb 0x140006760
movzx eax, byte [rbp]
imul rcx, rax, 0xff
not rcx
mov rax, qword [rbp + 8]
movzx eax, byte [rax]
shl rax, 7
sub rcx, rax
mov r11, qword [rbp + 0x460]
and r11, rdx
xor rcx, r11
mov qword [rbp + 0xc0], rcx
mov rdx, qword [rbp + 0x28]
lea rcx, [rbp + 0xa0]
call fcn.14000ea00
nop
mov rcx, qword [rbp + 0x28]
call fcn.140002cc0
nop
lea rcx, [rbp + 0xa00]
call fcn.140002cc0
nop
lea rcx, [rbp + 0x280]
call fcn.140002cc0
nop
mov rbx, qword [rbp + 0xb0]
lea rcx, [rbp + 0xa0]
call fcn.14000f4c0
mov r10, rax
mov qword [rbp + 0x18], rax
cmp byte [0x1405c22e5], 0
mov r14d, 0
lea r9, [0x1405c2300]
jne 0x140006b60
mov rdx, r9
lea rax, [0x1405c2af8]
movabs rdi, 0xababdbf33353735b
mov r10d, 0xffffffff
movabs r8, 0xfeeddccbbaa99887
nop
mov rcx, r8
xor rcx, rdi
mov qword [rdx], rcx
sub r8, r10
add rdx, 8
cmp rdx, rax
jl 0x140006b40
mov byte [0x1405c22e5], 1
mov r10, qword [rbp + 0x18]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x400], rax
mov r8d, r14d
test rbx, rbx
je 0x140006be0
mov rdi, r10
nop dword [rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140006b90
not cl
movzx eax, cl
mov r10, qword [rbp + 0x400]
xor r10, qword [r9 + rax*8]
mov qword [rbp + 0x50], r10
mov qword [rbp + 0x400], r10
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140006b80
mov r10, qword [rbp + 0x18]
movabs r9, 0xaebdccdb0a192837
movzx edi, byte [r10]
cmp rbx, 1
jbe 0x140006bfc
movzx r13d, byte [rbx + r10 - 1]
jmp 0x140006bff
mov r13b, 0xae
mov byte [rbp], r13b
mov qword [rbp + 0x420], rbx
mov qword [rbp + 0x418], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor dl, dil
xor cl, r13b
inc eax
cmp eax, 8
jb 0x140006c20
mov byte [rbp + 0x418], cl
mov byte [rbp + 0x420], dl
mov r15d, r14d
lea r12, [rbx*8]
mov r11, r14
mov esi, 8
mov r14, r9
mov r13d, 1
nop word [rax + rax]
mov eax, r15d
test r15d, r15d
cmove eax, r13d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r14
mov qword [rbp + 0x410], rax
movzx eax, byte [rbp + r11 + 0x410]
xor byte [rbp + r11 + 0x400], al
lea r10d, [r15*8]
mov eax, r10d
test r10d, r10d
cmovle eax, esi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r15 + 1]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
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 + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [r15 + 2]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
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 + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r15 + 3]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
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 + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x20]
lea eax, [r15 + 4]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
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 + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r15 + 5]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
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 + 0x420]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x30]
lea eax, [r15 + 6]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r14
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 + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r15 + 7]
mov ecx, edi
test eax, eax
cmove ecx, esi
movsxd rcx, ecx
xor edx, edx
mov rax, r12
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r14
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 + 0x420]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r15d, esi
lea r11, [r11 + 8]
cmp r15d, esi
jb 0x140006c60
movzx r13d, byte [rbp]
imul r8, r13, 0xff
not r8
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax]
shl rax, 7
sub r8, rax
mov rax, qword [rbp + 0x50]
and rax, rdx
xor r8, rax
mov rdx, qword [rbp + 0xc0]
cmp r8, rdx
lea rsi, [0x140000000]
mov r14d, 0
lea r12, [0x1405c2af9]
je 0x140006fec
mov rdi, qword [0x1405c22f0]
lea rcx, [rbp + 0x150]
call fcn.140002d20
lea rdx, [rbp + 0xa0]
mov rcx, rax
call rdi
lea rdx, [rbp + 0xa0]
lea rcx, [rbp + 0x100]
call fcn.14000eb50
nop
lea rdx, [rbp + 0x100]
lea rcx, [rbp + 0xa20]
call fcn.14000eb50
mov r13, qword [rbp + 0xa30]
mov qword [rbp + 8], r13
lea rcx, [rbp + 0xa20]
call fcn.14000f4c0
mov rbx, rax
mov qword [rbp + 0x28], rax
cmp byte [0x1405c22e6], 0
jne 0x140007424
mov r15, r14
movabs r13, 0x101010101010101
nop dword [rax + rax]
lea rcx, [rbp + 0x470]
call fcn.140001690
mov rdi, qword [rbp + 0x470]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r15 + rsi + 0x5c2c10], rax
lea rcx, [rbp + 0xf0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r15 + rsi + 0x5c2b00], rax
lea rcx, [rbp + 0xf8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r15 + rsi + 0x5c2b80], rax
add r15, 8
cmp r15, 0x80
jl 0x140007050
lea rcx, [rbp + 0x408]
call fcn.140001690
mov edi, r14d
mov r13, qword [rbp + 8]
lea rbx, [0x1405c22f9]
mov r15, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000717d
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx - 1], dl
mov r15, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400071a9
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx], dl
mov r15, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400071d4
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r15
cqo
idiv rcx
mov byte [rbx + 1], dl
mov r15, qword [rbp + 0x408]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007200
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 0x140007162
lea rcx, [rbp + 0x90]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x408], rdi
mov r15d, r14d
mov rbx, qword [rbp + 0x28]
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007254
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 0x140007282
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 0x1400072af
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 0x1400072dd
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 0x14000730b
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 0x140007339
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 0x140007367
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 0x140007395
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 0x1400073c2
mov rdi, qword [rbp + 0x408]
jmp 0x140007240
lea rcx, [rbp + 0x98]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x408], rdi
mov r15d, r14d
lea r12, [0x1405c2c00]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400073f6
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 0x14000741d
mov rdi, qword [rbp + 0x408]
jmp 0x1400073e2
mov byte [0x1405c22e6], 1
test r13, r13
je 0x140007583
mov r10d, r14d
lea r11, [0x1405c2c00]
lea r15, [0x1405c22f8]
lea r12, [0x1405c2af8]
nop word [rax + rax]
mov r8d, r14d
movzx eax, byte [rbx]
mov r9, r15
nop dword [rax]
mov edi, r14d
movzx ecx, byte [r9]
lea rdx, [rsi + 0x5c2c11]
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 0x140007472
inc r8d
inc r9
cmp r8d, 4
jb 0x140007460
mov r8d, r14d
mov r9, r12
nop word [rax + rax]
mov edi, r14d
movzx ecx, byte [r9]
lea rdx, [rsi + 0x5c2b01]
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 0x1400074d2
inc r8d
inc r9
cmp r8d, 8
jb 0x1400074c0
mov r8d, r14d
mov r9, r11
nop word [rax + rax]
mov edi, r14d
movzx ecx, byte [r9]
lea rdx, [rsi + 0x5c2c11]
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 0x140007532
inc r8d
inc r9
cmp r8d, 0xc
jb 0x140007520
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r13
jb 0x140007450
lea rcx, [rbp + 0x100]
call fcn.140002cc0
nop
lea rdx, [rbp + 0xa20]
mov rcx, qword [rbp + 0x488]
call fcn.14000f880
lea rdx, [0x14000f8a0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop
lea rcx, [rbp + 0xa20]
call fcn.140002cc0
nop
lea rcx, [rbp + 0xa0]
call fcn.140002ea0
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
lea rcx, [rbp + 0x548]
call fcn.14000e6a0
nop
lea rcx, [rbp + 0x4d8]
call fcn.140002cc0
jmp 0x14000da5b
mov qword [rbp + 0x40], rax
movabs rcx, 0xe4c57df92ff211a8
mov qword [rbp + 8], rcx
mov rax, qword [rbp + 8]
mov qword [rbp + 0x140], rax
movabs rax, 0x4adf3c5752262e2b
mov qword [rbp + 8], rax
mov rax, qword [rbp + 8]
mov qword [rbp + 0x148], rax
mov qword [rbp + 8], rbx
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa40], rax
mov qword [rbp + 8], rsi
mov rax, qword [rbp + 8]
mov qword [rbp + 0xa48], rax
movdqa xmm0, xmmword [rbp + 0x140]
xorps xmm0, xmmword [rbp + 0xa40]
movdqa xmmword [rbp + 0x140], xmm0
lea rax, [rbp + 0x60]
mov qword [rbp + 0x28], rax
lea rdx, [0x140422968]
lea rcx, [rbp + 0x60]
call fcn.14000ea30
nop
xor eax, eax
mov qword [rbp + 0x80], rax
lea rax, [0x140002e40]
cmp byte [0x1405c22e3], 0
jne 0x1400076a2
mov qword [0x1405c22f0], rax
mov byte [0x1405c22e3], 1
lea rdx, [0x140422968]
lea rcx, [rbp + 0x370]
call fcn.14000ea30
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.14000f4c0
mov r15, rax
movabs rax, 0xfeeddccbbaa99887
lea r9, [0x1405c2300]
lea rdi, [0x1405c2af8]
movabs r8, 0xababdbf33353735b
mov r10d, 0xffffffff
cmp byte [0x1405c22e5], 0
jne 0x14000771c
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 0x140007700
mov byte [0x1405c22e5], 1
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x50], rax
mov r11, rax
mov qword [rbp + 0x18], rax
mov qword [rbp + 0x438], rax
mov r8d, r14d
test rbx, rbx
je 0x1400077ac
mov rdi, r15
nop dword [rax]
nop word [rax + rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x439]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140007760
not cl
movzx eax, cl
mov r11, qword [rbp + 0x438]
xor r11, qword [r9 + rax*8]
mov qword [rbp + 0x18], r11
mov qword [rbp + 0x438], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140007750
movabs r9, 0xaebdccdb0a192837
movzx r12d, byte [r15]
mov byte [rbp + 0x10], r12b
cmp rbx, 1
jbe 0x1400077cc
movzx r15d, byte [rbx + r15 - 1]
jmp 0x1400077cf
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x448], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r12b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x1400077f0
mov byte [rbp + 0x448], cl
mov byte [rbp + 0x420], dl
mov r13d, r14d
mov rsi, r14
mov r11d, 1
lea r12d, [r11 + 7]
lea r14, [rbx*8]
mov r15, 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, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r15
mov qword [rbp + 0x458], rax
movzx eax, byte [rbp + rsi + 0x458]
xor byte [rbp + rsi + 0x438], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r12d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x458], r9
movzx eax, byte [rbp + rsi + 0x459]
xor byte [rbp + rsi + 0x439], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x448]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x10]
lea eax, [r13 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x458], r8
movzx eax, byte [rbp + rsi + 0x45a]
xor byte [rbp + rsi + 0x43a], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x458], r9
movzx eax, byte [rbp + rsi + 0x45b]
xor byte [rbp + rsi + 0x43b], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x448]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x20]
lea eax, [r13 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x458], r8
movzx eax, byte [rbp + rsi + 0x45c]
xor byte [rbp + rsi + 0x43c], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x458], r9
movzx eax, byte [rbp + rsi + 0x45d]
xor byte [rbp + rsi + 0x43d], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x448]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x30]
lea eax, [r13 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x458], r8
movzx eax, byte [rbp + rsi + 0x45e]
xor byte [rbp + rsi + 0x43e], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x438], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x458], r9
movzx eax, byte [rbp + rsi + 0x45f]
xor byte [rbp + rsi + 0x43f], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x448]
shl rdx, cl
xor rdx, qword [rbp + 0x438]
mov qword [rbp + 0x438], rdx
add r13d, r12d
lea rsi, [rsi + 8]
cmp r13d, r12d
jb 0x140007830
movzx r15d, byte [rbp]
imul rax, r15, 0xff
not rax
movzx ecx, byte [rbp + 0x10]
shl rcx, 7
sub rax, rcx
and rdx, qword [rbp + 0x18]
xor rax, rdx
mov qword [rbp + 0x438], rax
mov qword [rbp + 0x80], rax
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x60]
call fcn.14000ea00
nop
mov rcx, qword [rbp + 8]
call fcn.140002cc0
nop
cmp byte [0x1405c22e4], 0
mov r14d, 0
jne 0x140007bbf
lea rax, [0x140002e40]
mov qword [0x1405c22f0], rax
mov byte [0x1405c22e4], 1
lea rdx, [rbp + 0x140]
lea rcx, [rbp + 0x330]
call fcn.14000ea30
nop
mov rdx, rax
lea rcx, [rbp + 0x2a0]
call fcn.14000eb50
mov r15, qword [rbp + 0x2b0]
mov qword [rbp + 8], r15
lea rcx, [rbp + 0x2a0]
call fcn.14000f4c0
mov rbx, rax
movabs r13, 0x101010101010101
lea rsi, [0x140000000]
lea r12, [0x1405c2af9]
lea r11, [0x1405c2c00]
cmp byte [0x1405c22e6], 0
jne 0x14000800d
mov r15, r14
nop dword [rax + rax]
lea rcx, [rbp + 0x488]
call fcn.140001690
mov rdi, qword [rbp + 0x488]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r15 + rsi + 0x5c2c10], rax
lea rcx, [rbp + 0x2d0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x488], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r15 + rsi + 0x5c2b00], rax
lea rcx, [rbp + 0x2d8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x488], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r15 + rsi + 0x5c2b80], rax
add r15, 8
cmp r15, 0x80
jl 0x140007c30
lea rcx, [rbp + 0x450]
call fcn.140001690
mov r15d, r14d
lea rdi, [0x1405c22f9]
nop
mov r13, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007d5b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r13, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007d87
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi], dl
mov r13, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007db2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r13, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007dde
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 0x140007d40
lea rcx, [rbp + 0x2e0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x450], rdi
mov r13d, r14d
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007e34
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007e61
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007e8d
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007eba
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007ee7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007f14
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007f41
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x450]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007f6e
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 0x140007f9a
mov rdi, qword [rbp + 0x450]
jmp 0x140007e20
lea rcx, [rbp + 0x2e8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x450], rdi
mov r15d, r14d
lea r13, [0x1405c2c00]
nop word [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140007fd4
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 0x140007ffb
mov rdi, qword [rbp + 0x450]
jmp 0x140007fc0
mov byte [0x1405c22e6], 1
mov r15, qword [rbp + 8]
lea r11, [0x1405c2c00]
lea r13, [0x1405c2af8]
test r15, r15
je 0x140008153
mov r10d, r14d
mov r8d, r14d
movzx ecx, byte [rbx]
lea r9, [0x1405c22f8]
nop dword [rax]
mov edi, r14d
movzx eax, byte [r9]
lea rdx, [rsi + 0x5c2c11]
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 0x140008042
inc r8d
inc r9
cmp r8d, 4
jb 0x140008030
mov r8d, r14d
mov r9, r13
nop word [rax + rax]
mov edi, r14d
movzx eax, byte [r9]
lea rdx, [rsi + 0x5c2b01]
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 0x1400080a2
inc r8d
inc r9
cmp r8d, 8
jb 0x140008090
mov r8d, r14d
mov r9, r11
nop word [rax + rax]
mov edi, r14d
movzx eax, byte [r9]
lea rdx, [rsi + 0x5c2c11]
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 0x140008102
inc r8d
inc r9
cmp r8d, 0xc
jb 0x1400080f0
inc r10d
inc rbx
movsxd rax, r10d
cmp rax, r15
jb 0x140008020
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0x350]
call fcn.14000eb50
mov qword [rbp + 8], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.14000f4c0
mov r9, rax
mov qword [rbp + 0x18], rax
lea r10, [0x1405c2300]
cmp byte [0x1405c22e5], 0
jne 0x1400081e0
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r10
lea rax, [0x1405c2af8]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
nop word [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x1400081c0
mov byte [0x1405c22e5], 1
mov r9, qword [rbp + 0x18]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x30], r11
mov qword [rbp + 0x440], r11
mov r8d, r14d
test rbx, rbx
je 0x14000825c
mov rdi, r9
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x441]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140008210
not cl
movzx eax, cl
mov r11, qword [rbp + 0x440]
xor r11, qword [r10 + rax*8]
mov qword [rbp + 0x30], r11
mov qword [rbp + 0x440], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140008200
movabs r10, 0xaebdccdb0a192837
movzx edi, byte [r9]
cmp rbx, 1
jbe 0x140008278
movzx r15d, byte [rbx + r9 - 1]
jmp 0x14000827b
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x430], rbx
mov qword [rbp + 0x420], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, dil
xor dl, r15b
inc eax
cmp eax, 8
jb 0x1400082a0
mov byte [rbp + 0x430], cl
mov byte [rbp + 0x420], dl
mov r12d, r14d
lea rsi, [rbx*8]
mov r13, r14
mov r14d, 8
mov r15, r10
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, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r10
mov rax, r8
xor rax, r15
mov qword [rbp + 0x448], rax
movzx eax, byte [rbp + r13 + 0x448]
xor byte [rbp + r13 + 0x440], al
lea r10d, [r12*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 8]
lea eax, [r12 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + r13 + 0x449]
xor byte [rbp + r13 + 0x441], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x430]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x10]
lea eax, [r12 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x448], r8
movzx eax, byte [rbp + r13 + 0x44a]
xor byte [rbp + r13 + 0x442], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x18]
lea eax, [r12 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + r13 + 0x44b]
xor byte [rbp + r13 + 0x443], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x430]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x20]
lea eax, [r12 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x448], r8
movzx eax, byte [rbp + r13 + 0x44c]
xor byte [rbp + r13 + 0x444], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x28]
lea eax, [r12 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x448], r9
movzx eax, byte [rbp + r13 + 0x44d]
xor byte [rbp + r13 + 0x445], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x430]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x30]
lea eax, [r12 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x448], r8
movzx eax, byte [rbp + r13 + 0x44e]
xor byte [rbp + r13 + 0x446], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x420]
shl rax, cl
xor qword [rbp + 0x440], rax
lea edi, [r10 + 0x38]
lea eax, [r12 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r10, rbx
shl r10, cl
xor r10, r8
xor r10, r15
mov qword [rbp + 0x448], r10
movzx eax, byte [rbp + r13 + 0x44f]
xor byte [rbp + r13 + 0x447], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x430]
shl rdx, cl
xor rdx, qword [rbp + 0x440]
mov qword [rbp + 0x440], rdx
add r12d, r14d
lea r13, [r13 + 8]
cmp r12d, r14d
jb 0x1400082e0
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
mov rax, qword [rbp + 0x18]
movzx eax, byte [rax]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 0x30]
xor rcx, rdx
mov qword [rbp + 0x440], rcx
mov qword [rbp + 0x80], rcx
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x60]
call fcn.14000ea00
nop
mov rcx, qword [rbp + 8]
call fcn.140002cc0
nop
lea rcx, [rbp + 0x2a0]
call fcn.140002cc0
nop
lea rcx, [rbp + 0x330]
call fcn.140002cc0
nop
mov rbx, qword [rbp + 0x70]
lea rcx, [rbp + 0x60]
call fcn.14000f4c0
mov r9, rax
mov qword [rbp + 0x28], rax
cmp byte [0x1405c22e5], 0
mov r14d, 0
lea r10, [0x1405c2300]
jne 0x1400086f0
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r10
lea rax, [0x1405c2af8]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x1400086d0
mov byte [0x1405c22e5], 1
mov r9, qword [rbp + 0x28]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x430], r11
mov r8d, r14d
test rbx, rbx
je 0x14000876c
mov rdi, r9
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x431]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x140008720
not cl
movzx eax, cl
mov r11, qword [rbp + 0x430]
xor r11, qword [r10 + rax*8]
mov qword [rbp + 8], r11
mov qword [rbp + 0x430], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x140008710
movabs r10, 0xaebdccdb0a192837
movzx edi, byte [r9]
cmp rbx, 1
jbe 0x140008788
movzx r15d, byte [rbx + r9 - 1]
jmp 0x14000878b
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x18], rbx
mov qword [rbp + 0x30], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
xor cl, dil
xor dl, r15b
inc eax
cmp eax, 8
jb 0x1400087a0
mov byte [rbp + 0x18], cl
mov byte [rbp + 0x30], dl
mov r12d, r14d
lea rsi, [rbx*8]
mov r13, r14
mov r14d, 8
mov r15, r10
mov r11d, 1
mov eax, r12d
test r12d, r12d
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, r10
mov rax, r8
xor rax, r15
mov qword [rbp + 0x420], rax
movzx eax, byte [rbp + r13 + 0x420]
xor byte [rbp + r13 + 0x430], al
lea r10d, [r12*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x30]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 8]
lea eax, [r12 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x420], r9
movzx eax, byte [rbp + r13 + 0x421]
xor byte [rbp + r13 + 0x431], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x10]
lea eax, [r12 + 2]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x420], r8
movzx eax, byte [rbp + r13 + 0x422]
xor byte [rbp + r13 + 0x432], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x30]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x18]
lea eax, [r12 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x420], r9
movzx eax, byte [rbp + r13 + 0x423]
xor byte [rbp + r13 + 0x433], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x20]
lea eax, [r12 + 4]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x420], r8
movzx eax, byte [rbp + r13 + 0x424]
xor byte [rbp + r13 + 0x434], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x30]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x28]
lea eax, [r12 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x420], r9
movzx eax, byte [rbp + r13 + 0x425]
xor byte [rbp + r13 + 0x435], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x30]
lea eax, [r12 + 6]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x420], r8
movzx eax, byte [rbp + r13 + 0x426]
xor byte [rbp + r13 + 0x436], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x30]
shl rax, cl
xor qword [rbp + 0x430], rax
lea edi, [r10 + 0x38]
lea eax, [r12 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r10, rbx
shl r10, cl
xor r10, r8
xor r10, r15
mov qword [rbp + 0x420], r10
movzx eax, byte [rbp + r13 + 0x427]
xor byte [rbp + r13 + 0x437], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x18]
shl rdx, cl
xor rdx, qword [rbp + 0x430]
mov qword [rbp + 0x430], rdx
add r12d, r14d
lea r13, [r13 + 8]
cmp r12d, r14d
jb 0x1400087d0
movzx r15d, byte [rbp]
imul r8, r15, 0xff
not r8
mov rax, qword [rbp + 0x28]
movzx eax, byte [rax]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 8]
xor r8, rdx
mov qword [rbp + 0x430], r8
mov rdx, qword [rbp + 0x80]
cmp r8, rdx
lea rsi, [0x140000000]
mov r14d, 0
lea r12, [0x1405c2af9]
je 0x140008b5a
mov rdi, qword [0x1405c22f0]
lea rcx, [rbp + 0x3c8]
call fcn.140002d20
lea rdx, [rbp + 0x60]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x2f0]
call fcn.14000eb50
nop
lea rdx, [rbp + 0x2f0]
lea rcx, [rbp + 0x120]
call fcn.14000eb50
mov rdi, qword [rbp + 0x130]
mov qword [rbp + 0x28], rdi
lea rcx, [rbp + 0x120]
call fcn.14000f4c0
mov rbx, rax
cmp byte [0x1405c22e6], 0
jne 0x140008f7d
mov r15, r14
movabs r13, 0x101010101010101
lea rcx, [rbp + 0x460]
call fcn.140001690
mov rdi, qword [rbp + 0x460]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r15 + rsi + 0x5c2c10], rax
lea rcx, [rbp + 0x2c0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x460], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r15 + rsi + 0x5c2b00], rax
lea rcx, [rbp + 0x2c8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x460], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r15 + rsi + 0x5c2b80], rax
add r15, 8
cmp r15, 0x80
jl 0x140008bb2
lea rcx, [rbp + 0x418]
call fcn.140001690
mov r15d, r14d
lea rdi, [0x1405c22f9]
mov r13, qword [rbp + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008cdb
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 + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008d07
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 + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008d32
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 + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008d5e
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 0x140008cc0
lea rcx, [rbp + 0xc8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x418], rdi
mov r13d, r14d
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008db4
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 + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008de1
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 + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008e0d
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 + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008e3a
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 + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008e67
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 + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008e94
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 + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008ec1
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 + 0x418]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008eee
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 0x140008f1a
mov rdi, qword [rbp + 0x418]
jmp 0x140008da0
lea rcx, [rbp + 0x58]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x418], rdi
mov r15d, r14d
lea r13, [0x1405c2c00]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140008f4b
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 0x140008f72
mov rdi, qword [rbp + 0x418]
jmp 0x140008f37
mov byte [0x1405c22e6], 1
mov rdi, qword [rbp + 0x28]
test rdi, rdi
je 0x1400091cd
mov dword [rbp + 0x30], r14d
nop word [rax + rax]
mov r8d, r14d
movzx edx, byte [rbx]
lea r9, [0x1405c22f8]
nop dword [rax]
mov edi, r14d
movzx eax, byte [r9]
lea rcx, [rsi + 0x5c2c11]
lea rcx, [rcx + rax*8]
xor dl, byte [rcx - 1]
mov byte [rbx], dl
xor dl, byte [rcx]
mov byte [rbx], dl
xor dl, byte [rcx + 1]
mov byte [rbx], dl
xor dl, byte [rcx + 2]
mov byte [rbx], dl
xor dl, byte [rcx + 3]
mov byte [rbx], dl
xor dl, byte [rcx + 4]
mov byte [rbx], dl
xor dl, byte [rcx + 5]
mov byte [rbx], dl
xor dl, byte [rcx + 6]
mov byte [rbx], dl
add edi, 8
lea rcx, [rcx + 8]
cmp edi, 8
jb 0x140008fb2
inc r8d
inc r9
cmp r8d, 4
jb 0x140008fa0
mov r13d, r14d
lea rax, [0x1405c2af8]
mov qword [rbp + 8], rax
nop
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5c2b02]
add rdi, rcx
lea r9, [rsi + 0x5c2b00]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2b01]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5c2b03]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5c2b04]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5c2b05]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5c2b06]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5c2b07]
add rcx, rsi
nop dword [rax + rax]
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
xor dl, byte [rcx + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x140009080
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 8
jb 0x140009000
mov r13d, r14d
lea rax, [0x1405c2c00]
mov qword [rbp + 8], rax
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5c2c12]
add rdi, rcx
lea r9, [rsi + 0x5c2c10]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2c11]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5c2c13]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5c2c14]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5c2c15]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5c2c16]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5c2c17]
add rcx, rsi
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
xor dl, byte [rcx + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x140009160
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 0xc
jb 0x1400090e3
mov ecx, dword [rbp + 0x30]
inc ecx
mov dword [rbp + 0x30], ecx
inc rbx
movsxd rax, ecx
cmp rax, qword [rbp + 0x28]
jb 0x140008f90
lea rcx, [rbp + 0x2f0]
call fcn.140002cc0
nop
lea rdx, [rbp + 0x120]
mov rcx, qword [rbp + 0x40]
call fcn.14000f880
lea rdx, [0x14000f8a0]
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.140002cc0
nop
lea rcx, [rbp + 0x60]
call fcn.140002ea0
mov r15d, 4
lea r13d, [r15 + 0x1b]
mov ebx, dword [reloc.WS2_32.dll_accept]
cmp byte [rbp + 0x484], 0
jne 0x140009340
cmp ebx, 2
jl 0x140009340
movdqa xmm4, xmmword [0x140423190]
movd xmm6, r15d
movd xmm5, r13d
movdqa xmm2, xmmword [0x140423140]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140423160]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140423170]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.7777777777777777]
movd xmm0, dword [rbp + 0x478]
xorps xmm2, xmm0
movd dword [rbp + 0x478], xmm2
movdqa xmm3, xmmword [0x140423150]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140423160]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140423170]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.7777777777777777]
movd xmm0, dword [rbp + 0x47c]
xorps xmm2, xmm0
movd dword [rbp + 0x47c], xmm2
nop dword [rax]
mov qword [rbp + 0x478], r14
mov dword [rbp + 0x480], r14d
mov byte [rbp + 0x484], r14b
lea rcx, [rbp + 0x5d0]
lea rax, [rsi + 0x423050]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
movups xmm0, xmmword [rax + 0x80]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x90]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0xa0]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0xb0]
movups xmmword [rcx + 0x30], xmm1
movzx eax, byte [rax + 0xc0]
mov byte [rcx + 0x40], al
mov edi, r14d
cmp ebx, 2
jl 0x140009526
movdqa xmm5, xmmword [0x140423140]
movdqa xmm4, xmmword [0x140423190]
movd xmm6, r15d
movdqa xmm7, xmmword [0x140423160]
movd xmm8, r13d
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x5d4]
mov edx, dword [rbp + 0x40]
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
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 [0x140423170]
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
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 [0x140423170]
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 0x140009422
cmp edi, 0xc1
jge 0x140009570
movsxd rax, edi
lea r8, [rbp + 0x5d0]
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x51eb851f
imul edi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, dil
sub al, cl
add al, 0x37
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xc1
jl 0x140009540
movzx edx, byte [rbp + 0x10]
lea rcx, [rbp + 0x4f8]
call fcn.14000fab0
nop
lea rcx, [rbp + 0x5d0]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x140009590
mov r8, rax
lea rdx, [rbp + 0x5d0]
lea rcx, [rbp + 0x4f8]
call fcn.14000fe70
nop
lea r8, [rbp + 0x4d8]
lea rdx, [rbp + 0x4f8]
lea rcx, [rbp + 0x528]
call fcn.140004420
nop
lea rdi, [rbp + 0x4f8]
cmp qword [rbp + 0x510], 0x10
cmovae rdi, qword [rbp + 0x4f8]
xor eax, eax
mov rcx, qword [rbp + 0x508]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x4d8]
cmp qword [rbp + 0x4f0], 0x10
cmovae rdi, qword [rbp + 0x4d8]
mov rcx, qword [rbp + 0x4e8]
rep stosb byte [rdi], al
cmp byte [rbp + 0x690], al
jne 0x1400097a1
mov edi, r14d
cmp ebx, 2
jl 0x140009764
movdqa xmm5, xmmword [0x140423140]
movdqa xmm4, xmmword [0x140423190]
movd xmm6, r15d
movdqa xmm7, xmmword [0x140423160]
movd xmm8, r13d
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x5d4]
mov edx, dword [rbp + 0x40]
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
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 [0x140423170]
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
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 [0x140423170]
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 0x140009660
cmp edi, 0xc1
jge 0x1400097a1
movsxd rax, edi
lea r8, [rbp + 0x5d0]
add r8, rax
mov eax, 0x51eb851f
imul edi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, dil
sub al, cl
add al, 0x37
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0xc1
jl 0x140009771
lea rax, [rbp + 0x5d0]
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
lea rax, [rax + 0x80]
movups xmmword [rax - 0x10], xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov byte [rax + 0x40], cl
lea rdx, [rbp + 0x528]
mov ecx, dword [rbp + 0x20]
call fcn.140004e80
movabs rdx, 0x4adf3c577c08004c
test al, al
mov rax, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
je 0x14000b65d
mov qword [rbp + 0x460], rax
movabs rcx, 0xaadf7cba2ff607ae
mov qword [rbp + 0x40], rcx
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x4a0], rax
movabs rax, 0x25981c3012617339
mov qword [rbp + 0x40], rax
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x4a8], rax
movabs rax, 0xe780a97b3b675c0e
mov qword [rbp + 0x40], rax
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x4b0], rax
movabs rdi, 0x498662a94cf7b9de
mov qword [rbp + 0x40], rdi
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x4b8], rax
movabs rcx, 0x8aac159a5d9374fb
mov qword [rbp + 0x40], rcx
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0xa00], rax
mov qword [rbp + 0x40], rdx
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0xa08], rax
movabs rax, 0xe780ce1c150f287d
mov qword [rbp + 0x40], rax
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0xa10], rax
mov qword [rbp + 0x40], rdi
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0xa18], rax
vmovdqu ymm0, ymmword [rbp + 0x4a0]
vpxor ymm1, ymm0, ymmword [rbp + 0xa00]
vmovdqa ymmword [rbp + 0x4a0], ymm1
lea rax, [rbp + 0x60]
mov qword [rbp + 0x58], rax
lea rdx, [0x140422968]
lea rcx, [rbp + 0x60]
vzeroupper
call fcn.14000ea30
nop
xor eax, eax
mov qword [rbp + 0x80], rax
cmp byte [0x1405c22e3], al
jne 0x140009922
lea rax, [0x140002e40]
mov qword [0x1405c22f0], rax
mov byte [0x1405c22e3], 1
lea rdx, [0x140422968]
lea rcx, [rbp + 0x280]
call fcn.14000ea30
mov qword [rbp + 0x40], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.14000f4c0
mov r9, rax
mov qword [rbp + 8], rax
lea r10, [0x1405c2300]
cmp byte [0x1405c22e5], 0
jne 0x1400099a0
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r10
lea rax, [0x1405c2af8]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x140009980
mov byte [0x1405c22e5], 1
mov r9, qword [rbp + 8]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x28], r11
mov qword [rbp + 0x400], r11
mov r8d, r14d
test rbx, rbx
je 0x140009a1c
mov rdi, r9
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x1400099d0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r10 + rax*8]
mov qword [rbp + 0x28], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x1400099c0
movabs r10, 0xaebdccdb0a192837
movzx edi, byte [r9]
cmp rbx, 1
jbe 0x140009a38
movzx r15d, byte [rbx + r9 - 1]
jmp 0x140009a3b
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x18], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
xor cl, dil
xor dl, r15b
inc eax
cmp eax, 8
jb 0x140009a53
mov byte [rbp + 0x418], cl
mov byte [rbp + 0x18], dl
mov r12d, r14d
lea rsi, [rbx*8]
mov r13, r14
mov r14d, 8
mov r15, r10
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, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r10
mov rax, r8
xor rax, r15
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r13 + 0x408]
xor byte [rbp + r13 + 0x400], al
lea r10d, [r12*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r12 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r13 + 0x409]
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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r13 + 0x40a]
xor byte [rbp + r13 + 0x402], al
mov eax, r14d
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 + 0x18]
lea eax, [r12 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r13 + 0x40b]
xor byte [rbp + r13 + 0x403], al
mov eax, r14d
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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r13 + 0x40c]
xor byte [rbp + r13 + 0x404], al
mov eax, r14d
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 + 0x28]
lea eax, [r12 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r13 + 0x40d]
xor byte [rbp + r13 + 0x405], al
mov eax, r14d
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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r13 + 0x40e]
xor byte [rbp + r13 + 0x406], al
mov eax, r14d
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 + 0x38]
lea eax, [r12 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r10, rbx
shl r10, cl
xor r10, r8
xor r10, r15
mov qword [rbp + 0x408], r10
movzx eax, byte [rbp + r13 + 0x40f]
xor byte [rbp + r13 + 0x407], al
mov eax, r14d
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, r14d
lea r13, [r13 + 8]
cmp r12d, r14d
jb 0x140009a90
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 + 0x28]
xor rcx, rdx
mov qword [rbp + 0x80], rcx
mov rdx, qword [rbp + 0x40]
lea rcx, [rbp + 0x60]
call fcn.14000ea00
nop
mov rcx, qword [rbp + 0x40]
call fcn.140002cc0
nop
cmp byte [0x1405c22e4], 0
lea rsi, [0x140000000]
mov r14d, 0
lea r12, [0x1405c2af9]
jne 0x140009e34
lea rax, [0x140002e40]
mov qword [0x1405c22f0], rax
mov byte [0x1405c22e4], 1
lea rdx, [rbp + 0x4a0]
lea rcx, [rbp + 0x188]
call fcn.14000ea30
nop
mov rdx, rax
lea rcx, [rbp + 0xa00]
call fcn.14000eb50
mov rdi, qword [rbp + 0xa10]
mov qword [rbp + 0x28], rdi
lea rcx, [rbp + 0xa00]
call fcn.14000f4c0
mov rbx, rax
cmp byte [0x1405c22e6], 0
jne 0x14000a266
mov r15, r14
movabs r13, 0x101010101010101
nop dword [rax + rax]
lea rcx, [rbp + 0x470]
call fcn.140001690
mov rdi, qword [rbp + 0x470]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r15 + rsi + 0x5c2c10], rax
lea rcx, [rbp + 0x98]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r15 + rsi + 0x5c2b00], rax
lea rcx, [rbp + 0x90]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r15 + rsi + 0x5c2b80], rax
add r15, 8
cmp r15, 0x80
jl 0x140009e90
lea rcx, [rbp + 0x428]
call fcn.140001690
mov r15d, r14d
lea rdi, [0x1405c22f9]
nop
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009fbb
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140009fe7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a012
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a03e
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 0x140009fa0
lea rcx, [rbp + 0xf8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r13d, r14d
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a094
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a0c1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a0ed
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a11a
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a147
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a174
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a1a1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a1ce
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 0x14000a1fa
mov rdi, qword [rbp + 0x428]
jmp 0x14000a080
lea rcx, [rbp + 0xf0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r15d, r14d
lea r12, [0x1405c2c00]
nop word [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000a234
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 0x14000a25b
mov rdi, qword [rbp + 0x428]
jmp 0x14000a220
mov byte [0x1405c22e6], 1
mov rdi, qword [rbp + 0x28]
test rdi, rdi
je 0x14000a532
mov dword [rbp + 0x20], r14d
nop dword [rax]
nop word [rax + rax]
mov dword [rbp + 0x30], r14d
movzx edx, byte [rbx]
lea rcx, [0x1405c22f8]
mov qword [rbp + 8], rcx
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5c2c12]
add rdi, rcx
lea r9, [rsi + 0x5c2c10]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2c11]
add r10, rax
lea r11, [0x1405c2c13]
sub r11, rdi
add r11, rcx
lea r15, [0x1405c2c14]
sub r15, rdi
add r15, rcx
lea r12, [0x1405c2c15]
sub r12, rdi
add r12, rcx
lea r13, [0x1405c2c16]
sub r13, rdi
add r13, rcx
lea rax, [0x1405c2c17]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000a301
mov eax, dword [rbp + 0x30]
inc eax
mov dword [rbp + 0x30], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 4
jb 0x14000a292
mov dword [rbp + 0x30], r14d
lea rcx, [0x1405c2af8]
mov qword [rbp + 8], rcx
nop word [rax + rax]
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5c2b02]
add rdi, rcx
lea r9, [rsi + 0x5c2b00]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2b01]
add r10, rax
lea r11, [0x1405c2b03]
sub r11, rdi
add r11, rcx
lea r15, [0x1405c2b04]
sub r15, rdi
add r15, rcx
lea r12, [0x1405c2b05]
sub r12, rdi
add r12, rcx
lea r13, [0x1405c2b06]
sub r13, rdi
add r13, rcx
lea rax, [0x1405c2b07]
sub rax, rdi
add rax, rcx
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [rdi + r10]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r11]
mov byte [rbx], dl
xor dl, byte [rdi + r15]
mov byte [rbx], dl
xor dl, byte [rdi + r12]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rdi + rax]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000a3e0
mov eax, dword [rbp + 0x30]
inc eax
mov dword [rbp + 0x30], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 8
jb 0x14000a370
mov dword [rbp + 0x30], r14d
lea rcx, [0x1405c2c00]
mov qword [rbp + 8], rcx
nop dword [rax]
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5c2c12]
add rdi, rcx
lea r9, [rsi + 0x5c2c10]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2c11]
add r10, rax
lea r11, [0x1405c2c13]
sub r11, rdi
add r11, rcx
lea r15, [0x1405c2c14]
sub r15, rdi
add r15, rcx
lea r12, [0x1405c2c15]
sub r12, rdi
add r12, rcx
lea r13, [0x1405c2c16]
sub r13, rdi
add r13, rcx
lea rax, [0x1405c2c17]
sub rax, rdi
add rax, rcx
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000a4c0
mov eax, dword [rbp + 0x30]
inc eax
mov dword [rbp + 0x30], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 0xc
jb 0x14000a450
mov edi, dword [rbp + 0x20]
inc edi
mov dword [rbp + 0x20], edi
inc rbx
movsxd rax, edi
cmp rax, qword [rbp + 0x28]
jb 0x14000a280
lea rdx, [rbp + 0xa00]
lea rcx, [rbp + 0x1d0]
call fcn.14000eb50
mov qword [rbp + 0x28], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.14000f4c0
mov r15, rax
lea r9, [0x1405c2300]
cmp byte [0x1405c22e5], 0
jne 0x14000a5ac
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405c2af8]
movabs r8, 0xababdbf33353735b
mov r13d, 0xffffffff
nop dword [rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r13
add rdx, 8
cmp rdx, rax
jl 0x14000a590
mov byte [0x1405c22e5], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
mov r8d, r14d
test rbx, rbx
je 0x14000a62c
mov rdi, r15
nop dword [rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000a5e0
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 0x14000a5d0
movabs r9, 0xaebdccdb0a192837
movzx r12d, byte [r15]
mov byte [rbp + 0x10], r12b
cmp rbx, 1
jbe 0x14000a64c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000a64f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x18], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r12b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x14000a670
mov byte [rbp + 0x418], cl
mov byte [rbp + 0x18], dl
mov r13d, r14d
mov rsi, r14
lea r14, [rbx*8]
mov r12d, 8
mov r15, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r15
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + rsi + 0x408]
xor byte [rbp + rsi + 0x400], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r12d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + rsi + 0x409]
xor byte [rbp + rsi + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 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, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + rsi + 0x40a]
xor byte [rbp + rsi + 0x402], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + rsi + 0x40b]
xor byte [rbp + rsi + 0x403], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 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, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + rsi + 0x40c]
xor byte [rbp + rsi + 0x404], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + rsi + 0x40d]
xor byte [rbp + rsi + 0x405], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 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, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + rsi + 0x40e]
xor byte [rbp + rsi + 0x406], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r12d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + rsi + 0x40f]
xor byte [rbp + rsi + 0x407], al
mov eax, r12d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x418]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r13d, r12d
lea rsi, [rsi + 8]
cmp r13d, r12d
jb 0x14000a6b0
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x80], rcx
mov rdx, qword [rbp + 0x28]
lea rcx, [rbp + 0x60]
call fcn.14000ea00
nop
mov rcx, qword [rbp + 0x28]
call fcn.140002cc0
nop
lea rcx, [rbp + 0xa00]
call fcn.140002cc0
nop
lea rcx, [rbp + 0x188]
call fcn.140002cc0
nop
mov rbx, qword [rbp + 0x70]
lea rcx, [rbp + 0x60]
call fcn.14000f4c0
mov r11, rax
cmp byte [0x1405c22e5], 0
mov r14d, 0
jne 0x14000aa8c
lea rdx, [0x1405c2300]
lea rax, [0x1405c2af8]
movabs rdi, 0xababdbf33353735b
mov r9d, 0xffffffff
movabs r8, 0xfeeddccbbaa99887
nop dword [rax]
mov rcx, r8
xor rcx, rdi
mov qword [rdx], rcx
sub r8, r9
add rdx, 8
cmp rdx, rax
jl 0x14000aa70
mov byte [0x1405c22e5], 1
lea r9, [0x1405c2300]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x400], rax
mov r8d, r14d
test rbx, rbx
je 0x14000ab0c
mov rdi, r11
nop
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000aac0
not cl
movzx eax, cl
mov rsi, qword [rbp + 0x400]
xor rsi, qword [r9 + rax*8]
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x400], rsi
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000aab0
movabs r9, 0xaebdccdb0a192837
movzx r15d, byte [r11]
mov byte [rbp + 0x10], r15b
cmp rbx, 1
jbe 0x14000ab2c
movzx r11d, byte [rbx + r11 - 1]
jmp 0x14000ab2f
mov r11b, 0xae
mov byte [rbp], r11b
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x18], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r15b
xor dl, r11b
inc eax
cmp eax, 8
jb 0x14000ab50
mov byte [rbp + 0x418], cl
mov byte [rbp + 0x18], dl
mov r13d, r14d
lea rsi, [rbx*8]
mov r12, r14
mov r14d, 8
mov r15, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r15
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r12 + 0x408]
xor byte [rbp + r12 + 0x400], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + 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 + 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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r12 + 0x40a]
xor byte [rbp + r12 + 0x402], al
mov eax, r14d
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 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r12 + 0x40b]
xor byte [rbp + r12 + 0x403], al
mov eax, r14d
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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r12 + 0x40c]
xor byte [rbp + r12 + 0x404], al
mov eax, r14d
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 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r12 + 0x40d]
xor byte [rbp + r12 + 0x405], al
mov eax, r14d
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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r12 + 0x40e]
xor byte [rbp + r12 + 0x406], al
mov eax, r14d
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 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r12 + 0x40f]
xor byte [rbp + r12 + 0x407], al
mov eax, r14d
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, r14d
lea r12, [r12 + 8]
cmp r13d, r14d
jb 0x14000ab90
movzx r11d, byte [rbp]
imul r8, r11, 0xff
not r8
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 0x50]
xor r8, rdx
mov rdx, qword [rbp + 0x80]
cmp r8, rdx
lea rsi, [0x140000000]
mov r14d, 0
je 0x14000af0f
mov rdi, qword [0x1405c22f0]
lea rcx, [rbp + 0x150]
call fcn.140002d20
lea rdx, [rbp + 0x60]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x100]
call fcn.14000eb50
nop
lea rdx, [rbp + 0x100]
lea rcx, [rbp + 0x120]
call fcn.14000eb50
mov r13, qword [rbp + 0x130]
mov qword [rbp + 0x28], r13
lea rcx, [rbp + 0x120]
call fcn.14000f4c0
mov rbx, rax
mov qword [rbp + 0x40], rax
cmp byte [0x1405c22e6], 0
jne 0x14000b342
mov r15, r14
movabs r12, 0x101010101010101
nop dword [rax + rax]
lea rcx, [rbp + 0x468]
call fcn.140001690
mov rdi, qword [rbp + 0x468]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r12
mov qword [r15 + rsi + 0x5c2c10], rax
lea rcx, [rbp + 0xe8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r12
mov qword [r15 + rsi + 0x5c2b00], rax
lea rcx, [rbp + 0xe0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r12
mov qword [r15 + rsi + 0x5c2b80], rax
add r15, 8
cmp r15, 0x80
jl 0x14000af70
lea rcx, [rbp + 0x410]
call fcn.140001690
mov edi, r14d
lea r12, [0x1405c22f9]
nop
mov r15, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b09b
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b0c9
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b0f6
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b124
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 0x14000b080
lea rcx, [rbp + 0xd8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x410], rdi
mov r15d, r14d
lea rbx, [0x1405c2af9]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b17b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx - 1], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b1a7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b1d2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 1], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b1fe
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 2], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b22a
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 3], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b256
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 4], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b282
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 5], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b2ae
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 6], dl
add r15d, 8
add rbx, 8
cmp r15d, 8
jae 0x14000b2d9
mov rdi, qword [rbp + 0x410]
jmp 0x14000b167
lea rcx, [rbp + 0xd0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x410], rdi
mov r15d, r14d
lea r12, [0x1405c2c00]
mov rbx, qword [rbp + 0x40]
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000b314
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 0x14000b33b
mov rdi, qword [rbp + 0x410]
jmp 0x14000b300
mov byte [0x1405c22e6], 1
test r13, r13
je 0x14000b602
mov dword [rbp + 0x30], r14d
nop
mov dword [rbp + 0x20], r14d
movzx edx, byte [rbx]
lea rcx, [0x1405c22f8]
mov qword [rbp + 8], rcx
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5c2c12]
add rdi, rcx
lea r9, [rsi + 0x5c2c10]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2c11]
add r10, rax
lea r11, [0x1405c2c13]
sub r11, rdi
add r11, rcx
lea r15, [0x1405c2c14]
sub r15, rdi
add r15, rcx
lea r12, [0x1405c2c15]
sub r12, rdi
add r12, rcx
lea r13, [0x1405c2c16]
sub r13, rdi
add r13, rcx
lea rax, [0x1405c2c17]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000b3d1
mov eax, dword [rbp + 0x20]
inc eax
mov dword [rbp + 0x20], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 4
jb 0x14000b362
mov dword [rbp + 0x20], r14d
lea rcx, [0x1405c2af8]
mov qword [rbp + 8], rcx
nop word [rax + rax]
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5c2b02]
add rdi, rcx
lea r9, [rsi + 0x5c2b00]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2b01]
add r10, rax
lea r11, [0x1405c2b03]
sub r11, rdi
add r11, rcx
lea r15, [0x1405c2b04]
sub r15, rdi
add r15, rcx
lea r12, [0x1405c2b05]
sub r12, rdi
add r12, rcx
lea r13, [0x1405c2b06]
sub r13, rdi
add r13, rcx
lea rax, [0x1405c2b07]
sub rax, rdi
add rax, rcx
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000b4b0
mov eax, dword [rbp + 0x20]
inc eax
mov dword [rbp + 0x20], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 8
jb 0x14000b440
mov dword [rbp + 0x20], r14d
lea rcx, [0x1405c2c00]
mov qword [rbp + 8], rcx
nop dword [rax]
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5c2c12]
add rdi, rcx
lea r9, [rsi + 0x5c2c10]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2c11]
add r10, rax
lea r11, [0x1405c2c13]
sub r11, rdi
add r11, rcx
lea r15, [0x1405c2c14]
sub r15, rdi
add r15, rcx
lea r12, [0x1405c2c15]
sub r12, rdi
add r12, rcx
lea r13, [0x1405c2c16]
sub r13, rdi
add r13, rcx
lea rax, [0x1405c2c17]
sub rax, rdi
add rax, rcx
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000b590
mov eax, dword [rbp + 0x20]
inc eax
mov dword [rbp + 0x20], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 0xc
jb 0x14000b520
mov edi, dword [rbp + 0x30]
inc edi
mov dword [rbp + 0x30], edi
inc rbx
movsxd rax, edi
cmp rax, qword [rbp + 0x28]
jb 0x14000b350
lea rcx, [rbp + 0x100]
call fcn.140002cc0
nop
lea rdx, [rbp + 0x120]
mov rcx, qword [rbp + 0x460]
call fcn.14000f880
lea rdx, [0x14000f8a0]
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.140002cc0
nop
lea rcx, [rbp + 0x60]
call fcn.140002ea0
mov ebx, dword [reloc.WS2_32.dll_accept]
mov esi, 4
lea r15d, [rsi + 0x1b]
jmp 0x14000d7b5
mov qword [rbp + 0x460], rax
movabs rcx, 0x8aac159a5d9374fb
mov qword [rbp + 0x40], rcx
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0xa00], rax
mov qword [rbp + 0x40], rdx
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0xa08], rax
mov qword [rbp + 0x40], rcx
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x4a0], rax
mov qword [rbp + 0x40], rdx
mov rax, qword [rbp + 0x40]
mov qword [rbp + 0x4a8], rax
movdqa xmm0, xmmword [rbp + 0xa00]
xorps xmm0, xmmword [rbp + 0x4a0]
movdqa xmmword [rbp + 0xa00], xmm0
lea rax, [rbp + 0x150]
mov qword [rbp + 0x58], rax
lea rdx, [0x140422968]
lea rcx, [rbp + 0x150]
call fcn.14000ea30
nop
xor eax, eax
mov qword [rbp + 0x170], rax
cmp byte [0x1405c22e3], al
jne 0x14000b706
lea rax, [0x140002e40]
mov qword [0x1405c22f0], rax
mov byte [0x1405c22e3], 1
lea rdx, [0x140422968]
lea rcx, [rbp + 0x280]
call fcn.14000ea30
mov qword [rbp + 0x40], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.14000f4c0
mov r9, rax
mov qword [rbp + 8], rax
lea r10, [0x1405c2300]
cmp byte [0x1405c22e5], 0
jne 0x14000b790
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r10
lea rax, [0x1405c2af8]
movabs r8, 0xababdbf33353735b
mov r9d, 0xffffffff
nop dword [rax]
nop dword [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, r9
add rdx, 8
cmp rdx, rax
jl 0x14000b770
mov byte [0x1405c22e5], 1
mov r9, qword [rbp + 8]
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x28], r11
mov qword [rbp + 0x400], r11
mov r8d, r14d
test rbx, rbx
je 0x14000b80c
mov rdi, r9
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000b7c0
not cl
movzx eax, cl
mov r11, qword [rbp + 0x400]
xor r11, qword [r10 + rax*8]
mov qword [rbp + 0x28], r11
mov qword [rbp + 0x400], r11
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000b7b0
movabs r10, 0xaebdccdb0a192837
movzx edi, byte [r9]
cmp rbx, 1
jbe 0x14000b828
movzx r15d, byte [rbx + r9 - 1]
jmp 0x14000b82b
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x18], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
xor cl, dil
xor dl, r15b
inc eax
cmp eax, 8
jb 0x14000b843
mov byte [rbp + 0x418], cl
mov byte [rbp + 0x18], dl
mov r12d, r14d
lea rsi, [rbx*8]
mov r13, r14
mov r14d, 8
mov r15, r10
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, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r10
mov rax, r8
xor rax, r15
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r13 + 0x408]
xor byte [rbp + r13 + 0x400], al
lea r10d, [r12*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r12 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r13 + 0x409]
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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r13 + 0x40a]
xor byte [rbp + r13 + 0x402], al
mov eax, r14d
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 + 0x18]
lea eax, [r12 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r13 + 0x40b]
xor byte [rbp + r13 + 0x403], al
mov eax, r14d
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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r13 + 0x40c]
xor byte [rbp + r13 + 0x404], al
mov eax, r14d
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 + 0x28]
lea eax, [r12 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r13 + 0x40d]
xor byte [rbp + r13 + 0x405], al
mov eax, r14d
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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r13 + 0x40e]
xor byte [rbp + r13 + 0x406], al
mov eax, r14d
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 + 0x38]
lea eax, [r12 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r10, rbx
shl r10, cl
xor r10, r8
xor r10, r15
mov qword [rbp + 0x408], r10
movzx eax, byte [rbp + r13 + 0x40f]
xor byte [rbp + r13 + 0x407], al
mov eax, r14d
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, r14d
lea r13, [r13 + 8]
cmp r12d, r14d
jb 0x14000b880
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 + 0x28]
xor rcx, rdx
mov qword [rbp + 0x170], rcx
mov rdx, qword [rbp + 0x40]
lea rcx, [rbp + 0x150]
call fcn.14000ea00
nop
mov rcx, qword [rbp + 0x40]
call fcn.140002cc0
nop
cmp byte [0x1405c22e4], 0
lea rsi, [0x140000000]
mov r14d, 0
lea r12, [0x1405c2af9]
jne 0x14000bc27
lea rax, [0x140002e40]
mov qword [0x1405c22f0], rax
mov byte [0x1405c22e4], 1
lea rdx, [rbp + 0xa00]
lea rcx, [rbp + 0xa0]
call fcn.14000ea30
nop
mov rdx, rax
lea rcx, [rbp + 0x188]
call fcn.14000eb50
mov rdi, qword [rbp + 0x198]
mov qword [rbp + 0x28], rdi
lea rcx, [rbp + 0x188]
call fcn.14000f4c0
mov rbx, rax
cmp byte [0x1405c22e6], 0
jne 0x14000c056
mov r15, r14
movabs r13, 0x101010101010101
nop
lea rcx, [rbp + 0x470]
call fcn.140001690
mov rdi, qword [rbp + 0x470]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r13
mov qword [r15 + rsi + 0x5c2c10], rax
lea rcx, [rbp + 0x98]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r13
mov qword [r15 + rsi + 0x5c2b00], rax
lea rcx, [rbp + 0x90]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x470], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r13
mov qword [r15 + rsi + 0x5c2b80], rax
add r15, 8
cmp r15, 0x80
jl 0x14000bc80
lea rcx, [rbp + 0x428]
call fcn.140001690
mov r15d, r14d
lea rdi, [0x1405c22f9]
nop
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bdab
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi - 1], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bdd7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000be02
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [rdi + 1], dl
mov r13, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000be2e
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 0x14000bd90
lea rcx, [rbp + 0xf8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r13d, r14d
mov r15, r12
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000be84
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 - 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000beb1
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bedd
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 1], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bf0a
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 2], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bf37
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 3], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bf64
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 4], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bf91
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [r15 + 5], dl
mov rdi, qword [rbp + 0x428]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000bfbe
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 0x14000bfea
mov rdi, qword [rbp + 0x428]
jmp 0x14000be70
lea rcx, [rbp + 0xf0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x428], rdi
mov r15d, r14d
lea r12, [0x1405c2c00]
nop word [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000c024
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 0x14000c04b
mov rdi, qword [rbp + 0x428]
jmp 0x14000c010
mov byte [0x1405c22e6], 1
mov rdi, qword [rbp + 0x28]
test rdi, rdi
je 0x14000c322
mov dword [rbp + 0x30], r14d
nop dword [rax]
nop word [rax + rax]
mov dword [rbp + 0x20], r14d
movzx edx, byte [rbx]
lea rcx, [0x1405c22f8]
mov qword [rbp + 8], rcx
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5c2c12]
add rdi, rcx
lea r9, [rsi + 0x5c2c10]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2c11]
add r10, rax
lea r11, [0x1405c2c13]
sub r11, rdi
add r11, rcx
lea r15, [0x1405c2c14]
sub r15, rdi
add r15, rcx
lea r12, [0x1405c2c15]
sub r12, rdi
add r12, rcx
lea r13, [0x1405c2c16]
sub r13, rdi
add r13, rcx
lea rax, [0x1405c2c17]
sub rax, rdi
add rax, rcx
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000c0f1
mov eax, dword [rbp + 0x20]
inc eax
mov dword [rbp + 0x20], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 4
jb 0x14000c082
mov dword [rbp + 0x20], r14d
lea rcx, [0x1405c2af8]
mov qword [rbp + 8], rcx
nop word [rax + rax]
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5c2b02]
add rdi, rcx
lea r9, [rsi + 0x5c2b00]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2b01]
add r10, rax
lea r11, [0x1405c2b03]
sub r11, rdi
add r11, rcx
lea r15, [0x1405c2b04]
sub r15, rdi
add r15, rcx
lea r12, [0x1405c2b05]
sub r12, rdi
add r12, rcx
lea r13, [0x1405c2b06]
sub r13, rdi
add r13, rcx
lea rax, [0x1405c2b07]
sub rax, rdi
add rax, rcx
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000c1d0
mov eax, dword [rbp + 0x20]
inc eax
mov dword [rbp + 0x20], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 8
jb 0x14000c160
mov dword [rbp + 0x20], r14d
lea rcx, [0x1405c2c00]
mov qword [rbp + 8], rcx
nop dword [rax]
mov r8d, r14d
movzx ecx, byte [rcx]
shl rcx, 3
lea rdi, [rsi + 0x5c2c12]
add rdi, rcx
lea r9, [rsi + 0x5c2c10]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2c11]
add r10, rax
lea r11, [0x1405c2c13]
sub r11, rdi
add r11, rcx
lea r15, [0x1405c2c14]
sub r15, rdi
add r15, rcx
lea r12, [0x1405c2c15]
sub r12, rdi
add r12, rcx
lea r13, [0x1405c2c16]
sub r13, rdi
add r13, rcx
lea rax, [0x1405c2c17]
sub rax, rdi
add rax, rcx
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r13]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000c2b0
mov eax, dword [rbp + 0x20]
inc eax
mov dword [rbp + 0x20], eax
mov rcx, qword [rbp + 8]
inc rcx
mov qword [rbp + 8], rcx
cmp eax, 0xc
jb 0x14000c240
mov edi, dword [rbp + 0x30]
inc edi
mov dword [rbp + 0x30], edi
inc rbx
movsxd rax, edi
cmp rax, qword [rbp + 0x28]
jb 0x14000c070
lea rdx, [rbp + 0x188]
lea rcx, [rbp + 0x310]
call fcn.14000eb50
mov qword [rbp + 0x40], rax
mov rbx, qword [rax + 0x10]
mov rcx, rax
call fcn.14000f4c0
mov r15, rax
lea r9, [0x1405c2300]
cmp byte [0x1405c22e5], 0
jne 0x14000c39c
movabs rdi, 0xfeeddccbbaa99887
mov rdx, r9
lea rax, [0x1405c2af8]
mov esi, 0xffffffff
movabs r8, 0xababdbf33353735b
nop dword [rax + rax]
mov rcx, rdi
xor rcx, r8
mov qword [rdx], rcx
sub rdi, rsi
add rdx, 8
cmp rdx, rax
jl 0x14000c380
mov byte [0x1405c22e5], 1
movabs r11, 0xfae9e8d7c6b5a493
mov qword [rbp + 8], r11
mov qword [rbp + 0x400], r11
mov r8d, r14d
test rbx, rbx
je 0x14000c41c
mov rdi, r15
nop dword [rax]
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000c3d0
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 0x14000c3c0
movabs r9, 0xaebdccdb0a192837
movzx r13d, byte [r15]
mov byte [rbp + 0x10], r13b
cmp rbx, 1
jbe 0x14000c43c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000c43f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x18], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r13b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x14000c460
mov byte [rbp + 0x418], cl
mov byte [rbp + 0x18], dl
mov esi, r14d
mov r12, r14
lea r14, [rbx*8]
mov r13d, 8
mov r15, r9
mov r11d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, esi
test esi, esi
cmove eax, r11d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r15
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r12 + 0x408]
xor byte [rbp + r12 + 0x400], al
lea r10d, [rsi*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r13d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [rsi + 1]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + 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 + 0x418]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x10]
lea eax, [rsi + 2]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r12 + 0x40a]
xor byte [rbp + r12 + 0x402], 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 + 0x18]
lea eax, [rsi + 3]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r12 + 0x40b]
xor byte [rbp + r12 + 0x403], al
mov eax, r13d
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, [rsi + 4]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r12 + 0x40c]
xor byte [rbp + r12 + 0x404], 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 + 0x28]
lea eax, [rsi + 5]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r12 + 0x40d]
xor byte [rbp + r12 + 0x405], al
mov eax, r13d
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, [rsi + 6]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r15
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r12 + 0x40e]
xor byte [rbp + r12 + 0x406], 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 + 0x38]
lea eax, [rsi + 7]
mov ecx, edi
test eax, eax
cmove ecx, r13d
movsxd rcx, ecx
xor edx, edx
mov rax, r14
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r15
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r12 + 0x40f]
xor byte [rbp + r12 + 0x407], al
mov eax, r13d
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 esi, r13d
lea r12, [r12 + 8]
cmp esi, r13d
jb 0x14000c4a0
movzx r15d, byte [rbp]
imul rcx, r15, 0xff
not rcx
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub rcx, rax
and rdx, qword [rbp + 8]
xor rcx, rdx
mov qword [rbp + 0x170], rcx
mov rdx, qword [rbp + 0x40]
lea rcx, [rbp + 0x150]
call fcn.14000ea00
nop
mov rcx, qword [rbp + 0x40]
call fcn.140002cc0
nop
lea rcx, [rbp + 0x188]
call fcn.140002cc0
nop
lea rcx, [rbp + 0xa0]
call fcn.140002cc0
nop
mov rbx, qword [rbp + 0x160]
lea rcx, [rbp + 0x150]
call fcn.14000f4c0
mov r15, rax
cmp byte [0x1405c22e5], 0
mov r14d, 0
jne 0x14000c88c
lea rdx, [0x1405c2300]
lea rax, [0x1405c2af8]
movabs rdi, 0xababdbf33353735b
mov r9d, 0xffffffff
movabs r8, 0xfeeddccbbaa99887
nop word [rax + rax]
mov rcx, r8
xor rcx, rdi
mov qword [rdx], rcx
sub r8, r9
add rdx, 8
cmp rdx, rax
jl 0x14000c870
mov byte [0x1405c22e5], 1
lea r9, [0x1405c2300]
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rbp + 0x400], rax
mov r8d, r14d
test rbx, rbx
je 0x14000c90c
mov rdi, r15
nop
mov edx, r14d
movzx ecx, byte [rdi]
lea rax, [rbp + 0x401]
nop dword [rax]
xor byte [rax - 1], cl
xor byte [rax], cl
xor byte [rax + 1], cl
xor byte [rax + 2], cl
xor byte [rax + 3], cl
xor byte [rax + 4], cl
xor byte [rax + 5], cl
xor byte [rax + 6], cl
add edx, 8
lea rax, [rax + 8]
cmp edx, 8
jb 0x14000c8c0
not cl
movzx eax, cl
mov rsi, qword [rbp + 0x400]
xor rsi, qword [r9 + rax*8]
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x400], rsi
inc r8d
inc rdi
movsxd rax, r8d
cmp rax, rbx
jb 0x14000c8b0
movabs r9, 0xaebdccdb0a192837
movzx r12d, byte [r15]
mov byte [rbp + 0x10], r12b
cmp rbx, 1
jbe 0x14000c92c
movzx r15d, byte [rbx + r15 - 1]
jmp 0x14000c92f
mov r15b, 0xae
mov byte [rbp], r15b
mov qword [rbp + 0x418], rbx
mov qword [rbp + 0x18], rbx
mov eax, r14d
movzx ecx, bl
movzx edx, bl
nop word [rax + rax]
xor cl, r12b
xor dl, r15b
inc eax
cmp eax, 8
jb 0x14000c950
mov byte [rbp + 0x418], cl
mov byte [rbp + 0x18], dl
mov r13d, r14d
lea rsi, [rbx*8]
mov r11, r14
mov r14d, 8
mov r12, r9
mov r15d, 1
nop dword [rax]
nop word [rax + rax]
mov eax, r13d
test r13d, r13d
cmove eax, r15d
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
mov rax, r8
xor rax, r12
mov qword [rbp + 0x408], rax
movzx eax, byte [rbp + r11 + 0x408]
xor byte [rbp + r11 + 0x400], al
lea r10d, [r13*8]
mov eax, r10d
test r10d, r10d
cmovle eax, r14d
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 8]
lea eax, [r13 + 1]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x409]
xor byte [rbp + r11 + 0x401], al
mov eax, 0xfffffff8
sub eax, r10d
mov ecx, 0xfffffff8
test edi, edi
cmovg ecx, eax
add ecx, 0x40
mov rax, qword [rbp + 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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r11 + 0x40a]
xor byte [rbp + r11 + 0x402], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x18]
lea eax, [r13 + 3]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x40b]
xor byte [rbp + r11 + 0x403], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r11 + 0x40c]
xor byte [rbp + r11 + 0x404], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x28]
lea eax, [r13 + 5]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x40d]
xor byte [rbp + r11 + 0x405], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 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, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r8, rbx
shl r8, cl
xor r8, r9
xor r8, r12
mov qword [rbp + 0x408], r8
movzx eax, byte [rbp + r11 + 0x40e]
xor byte [rbp + r11 + 0x406], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rax, qword [rbp + 0x18]
shl rax, cl
xor qword [rbp + 0x400], rax
lea edi, [r10 + 0x38]
lea eax, [r13 + 7]
mov ecx, edi
test eax, eax
cmove ecx, r14d
movsxd rcx, ecx
xor edx, edx
mov rax, rsi
div rcx
mov rcx, rdx
mov r9, rbx
shl r9, cl
xor r9, r8
xor r9, r12
mov qword [rbp + 0x408], r9
movzx eax, byte [rbp + r11 + 0x40f]
xor byte [rbp + r11 + 0x407], al
mov eax, r14d
test edi, edi
cmovg eax, edi
mov ecx, 0x40
sub ecx, eax
mov rdx, qword [rbp + 0x418]
shl rdx, cl
xor rdx, qword [rbp + 0x400]
mov qword [rbp + 0x400], rdx
add r13d, r14d
lea r11, [r11 + 8]
cmp r13d, r14d
jb 0x14000c990
movzx r15d, byte [rbp]
imul r8, r15, 0xff
not r8
movzx eax, byte [rbp + 0x10]
shl rax, 7
sub r8, rax
and rdx, qword [rbp + 0x50]
xor r8, rdx
mov rdx, qword [rbp + 0x170]
cmp r8, rdx
lea rsi, [0x140000000]
mov r14d, 0
je 0x14000cd11
mov rdi, qword [0x1405c22f0]
lea rcx, [rbp + 0x390]
call fcn.140002d20
lea rdx, [rbp + 0x150]
mov rcx, rax
call rdi
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 0x1d0]
call fcn.14000eb50
nop
lea rdx, [rbp + 0x1d0]
lea rcx, [rbp + 0x100]
call fcn.14000eb50
mov r13, qword [rbp + 0x110]
mov qword [rbp + 0x28], r13
lea rcx, [rbp + 0x100]
call fcn.14000f4c0
mov rbx, rax
mov qword [rbp + 0x40], rax
cmp byte [0x1405c22e6], 0
jne 0x14000d142
mov r15, r14
movabs r12, 0x101010101010101
lea rcx, [rbp + 0x468]
call fcn.140001690
mov rdi, qword [rbp + 0x468]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
inc rax
xor rax, 0x10
shl rax, 0xa
or rax, r12
mov qword [r15 + rsi + 0x5c2c10], rax
lea rcx, [rbp + 0xe8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
inc rax
xor rax, 0x20
shl rax, 0xb
or rax, r12
mov qword [r15 + rsi + 0x5c2b00], rax
lea rcx, [rbp + 0xe0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x468], rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rdi
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
inc rax
xor rax, 0x40
shl rax, 0xc
or rax, r12
mov qword [r15 + rsi + 0x5c2b80], rax
add r15, 8
cmp r15, 0x80
jl 0x14000cd70
lea rcx, [rbp + 0x410]
call fcn.140001690
mov edi, r14d
lea r12, [0x1405c22f9]
nop
mov r15, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000ce9b
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cec9
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cef6
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 + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cf24
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 0x14000ce80
lea rcx, [rbp + 0xd8]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x410], rdi
mov r15d, r14d
lea rbx, [0x1405c2af9]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cf7b
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx - 1], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cfa7
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cfd2
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 1], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000cffe
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 2], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d02a
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 3], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d056
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 4], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d082
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 5], dl
mov rdi, qword [rbp + 0x410]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d0ae
dec eax
or eax, 0xfffffff0
inc eax
inc al
movsx rcx, al
mov rax, rdi
cqo
idiv rcx
mov byte [rbx + 6], dl
add r15d, 8
add rbx, 8
cmp r15d, 8
jae 0x14000d0d9
mov rdi, qword [rbp + 0x410]
jmp 0x14000cf67
lea rcx, [rbp + 0xd0]
call fcn.140001690
mov rdi, qword [rax]
mov qword [rbp + 0x410], rdi
mov r15d, r14d
lea r12, [0x1405c2c00]
mov rbx, qword [rbp + 0x40]
nop dword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14000d114
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 0x14000d13b
mov rdi, qword [rbp + 0x410]
jmp 0x14000d100
mov byte [0x1405c22e6], 1
test r13, r13
je 0x14000d40d
mov dword [rbp + 0x20], r14d
nop
mov r13d, r14d
movzx edx, byte [rbx]
lea rax, [0x1405c22f8]
mov qword [rbp + 8], rax
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5c2c12]
add rdi, rcx
lea r9, [rsi + 0x5c2c10]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2c11]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5c2c13]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5c2c14]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5c2c15]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5c2c16]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5c2c17]
add rcx, rsi
nop dword [rax]
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [rdi + r10]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [rdi + r11]
mov byte [rbx], dl
xor dl, byte [rdi + r15]
mov byte [rbx], dl
xor dl, byte [rdi + r12]
mov byte [rbx], dl
xor dl, byte [rdi + rax]
mov byte [rbx], dl
xor dl, byte [rdi + rcx]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000d1e0
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 4
jb 0x14000d161
mov r13d, r14d
lea rax, [0x1405c2af8]
mov qword [rbp + 8], rax
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5c2b02]
add rdi, rcx
lea r9, [rsi + 0x5c2b00]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2b01]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5c2b03]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5c2b04]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5c2b05]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5c2b06]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5c2b07]
add rcx, rsi
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
xor dl, byte [rcx + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000d2c0
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 8
jb 0x14000d243
mov r13d, r14d
lea rax, [0x1405c2c00]
mov qword [rbp + 8], rax
mov r8d, r14d
movzx ecx, byte [rax]
shl rcx, 3
lea rdi, [rsi + 0x5c2c12]
add rdi, rcx
lea r9, [rsi + 0x5c2c10]
add r9, rcx
mov rax, rcx
sub rax, rdi
lea r10, [rsi + 0x5c2c11]
add r10, rax
mov rax, rcx
sub rax, rdi
lea r11, [rsi + 0x5c2c13]
add r11, rax
mov rax, rcx
sub rax, rdi
lea r15, [rsi + 0x5c2c14]
add r15, rax
mov rax, rcx
sub rax, rdi
lea r12, [rsi + 0x5c2c15]
add r12, rax
mov rax, rcx
sub rax, rdi
lea rax, [rax + 0x5c2c16]
add rax, rsi
sub rcx, rdi
lea rcx, [rcx + 0x5c2c17]
add rcx, rsi
nop
xor dl, byte [r9]
mov byte [rbx], dl
xor dl, byte [r10 + rdi]
mov byte [rbx], dl
xor dl, byte [rdi]
mov byte [rbx], dl
xor dl, byte [r11 + rdi]
mov byte [rbx], dl
xor dl, byte [r15 + rdi]
mov byte [rbx], dl
xor dl, byte [r12 + rdi]
mov byte [rbx], dl
xor dl, byte [rax + rdi]
mov byte [rbx], dl
xor dl, byte [rcx + rdi]
mov byte [rbx], dl
add r8d, 8
lea r9, [r9 + 8]
lea rdi, [rdi + 8]
cmp r8d, 8
jb 0x14000d3a0
inc r13d
mov rax, qword [rbp + 8]
inc rax
mov qword [rbp + 8], rax
cmp r13d, 0xc
jb 0x14000d323
mov ecx, dword [rbp + 0x20]
inc ecx
mov dword [rbp + 0x20], ecx
inc rbx
movsxd rax, ecx
cmp rax, qword [rbp + 0x28]
jb 0x14000d150
lea rcx, [rbp + 0x1d0]
call fcn.140002cc0
nop
lea rdx, [rbp + 0x100]
mov rcx, qword [rbp + 0x460]
call fcn.14000f880
mov r9, rax
mov ebx, dword [reloc.WS2_32.dll_accept]
mov esi, 4
lea r15d, [rsi + 0x1b]
cmp byte [rbp + 0x4d4], 0
je 0x14000d5cd
mov edi, r14d
cmp ebx, 2
jl 0x14000d58e
movdqa xmm5, xmmword [0x140423140]
movdqa xmm4, xmmword [0x140423190]
movd xmm6, esi
movdqa xmm7, xmmword [0x140423160]
movd xmm8, r15d
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x4c4]
mov edx, dword [rbp + 0x40]
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
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 [0x140423170]
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
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 [0x140423170]
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 0x14000d490
cmp edi, 0x15
jge 0x14000d5cd
movsxd rax, edi
lea r8, [rbp + 0x4c0]
add r8, rax
nop dword [rax + rax]
mov eax, 0x51eb851f
imul edi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, dil
sub al, cl
add al, 0x37
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0x15
jl 0x14000d5a0
lea rdx, [rbp + 0x4c0]
mov rcx, r9
call fcn.14000f8e0
lea rdx, [0x14000f8a0]
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 + 0x100]
call fcn.140002cc0
nop
lea rcx, [rbp + 0x150]
call fcn.140002ea0
cmp byte [rbp + 0x4d4], 0
jne 0x14000d79d
mov edi, r14d
cmp ebx, 2
jl 0x14000d75e
movdqa xmm5, xmmword [0x140423140]
movdqa xmm4, xmmword [0x140423190]
movd xmm6, esi
movdqa xmm7, xmmword [0x140423160]
movd xmm8, r15d
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x4c4]
mov edx, dword [rbp + 0x40]
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
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 [0x140423170]
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
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 [0x140423170]
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 0x14000d660
cmp edi, 0x15
jge 0x14000d79d
movsxd rax, edi
lea r8, [rbp + 0x4c0]
add r8, rax
nop dword [rax + rax]
mov eax, 0x51eb851f
imul edi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, dil
sub al, cl
add al, 0x37
xor byte [r8], al
inc edi
lea r8, [r8 + 1]
cmp edi, 0x15
jl 0x14000d770
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x4c0], xmm0
mov dword [rbp + 0x4d0], eax
mov byte [rbp + 0x4d4], al
cmp byte [rbp + 0x690], 0
jne 0x14000d962
cmp ebx, 2
jl 0x14000d91a
movdqa xmm5, xmmword [0x140423140]
movdqa xmm4, xmmword [0x140423190]
movd xmm6, esi
movdqa xmm7, xmmword [0x140423160]
movd xmm8, r15d
movdqa xmm0, xmmword [str.7777777777777777]
movdqa xmmword [rbp + 0x40], xmm0
lea rcx, [rbp + 0x5d4]
mov edx, dword [rbp + 0x40]
nop dword [rax]
nop word [rax + rax]
movd xmm2, r14d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
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 [0x140423170]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
xorps xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r14 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
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 [0x140423170]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
add r14d, 8
mov eax, r14d
lea rcx, [rcx + 8]
cmp r14d, 0xc0
jl 0x14000d810
cmp eax, 0xc1
jge 0x14000d962
movsxd rax, r14d
lea rdi, [rbp + 0x5d0]
add rdi, rax
nop word [rax + rax]
mov eax, 0x51eb851f
imul r14d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x32
movzx eax, r14b
sub al, cl
add al, 0x37
xor byte [rdi], al
inc r14d
lea rdi, [rdi + 1]
cmp r14d, 0xc1
jl 0x14000d930
lea rax, [rbp + 0x5d0]
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x60], xmm0
lea rax, [rax + 0x80]
movups xmmword [rax - 0x10], xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov byte [rax + 0x40], cl
lea rdi, [rbp + 0x4d8]
cmp qword [rbp + 0x4f0], 0x10
cmovae rdi, qword [rbp + 0x4d8]
xor eax, eax
mov rcx, qword [rbp + 0x4e8]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x528]
cmp qword [rbp + 0x540], 0x10
cmovae rdi, qword [rbp + 0x528]
mov rcx, qword [rbp + 0x538]
rep stosb byte [rdi], al
lea rdi, [rbp + 0x4f8]
cmp qword [rbp + 0x510], 0x10
cmovae rdi, qword [rbp + 0x4f8]
mov rcx, qword [rbp + 0x508]
rep stosb byte [rdi], al
lea rcx, [rbp + 0x528]
call fcn.140002cc0
nop
lea rcx, [rbp + 0x4f8]
call fcn.140002cc0
nop
lea rcx, [rbp + 0x548]
call fcn.14000e6a0
mov rdi, qword [rbp + 0x88]
mov rcx, rdi
call fcn.140026c20
nop
lea rcx, [rbp + 0x4d8]
call fcn.140002cc0
call fcn.140026e50
mov ecx, 0x151a8d
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
lea rcx, [rbp + 0x570]
call fcn.140003950
xor eax, eax
mov rcx, qword [rbp + 0xae0]
xor rcx, rsp
call fcn.1401c3a90
lea r11, [rsp + 0xb60]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret