Function at 0x1400525c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1360
call fcn.1402148b0
sub rsp, rax
mov rax, qword [0x14069f448]
xor rax, rsp
mov qword [rsp + 0x1358], rax
mov dword [rsp + 0x88], r8d
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xc8], rcx
xor r12d, r12d
lea rax, [rsp + 0xb38]
mov qword [rsp + 0x58], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xb38], xmm0
mov qword [rsp + 0xb48], r12
lea r13d, [r12 + 0xf]
mov qword [rsp + 0xb50], r13
mov byte [rsp + 0xb38], r12b
xor eax, eax
mov qword [rsp + 0xb58], rax
lea rbx, [0x14006b26c]
lea esi, [rax + 1]
cmp byte [0x1406a3910], r12b
jne 0x140052672
mov qword [0x1406a3908], rbx
mov byte [0x1406a3910], sil
movups xmmword [rsp + 0xe0], xmm0
mov qword [rsp + 0xf0], r12
mov qword [rsp + 0xf8], r13
mov byte [rsp + 0xe0], r12b
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x70], rax
mov r14d, 8
cmp byte [0x1406a2d01], r12b
jne 0x1400526f1
movabs rdx, 0xfeeddccbbaa99887
lea rcx, [0x1406a3110]
lea r8, [0x1406a3908]
movabs r9, 0xababdbf33353735b
mov r10d, 0xffffffff
mov rax, rdx
xor rax, r9
mov qword [rcx], rax
sub rdx, r10
add rcx, r14
cmp rcx, r8
jl 0x1400526d6
mov byte [0x1406a2d01], sil
movabs rdi, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rdi
movabs r15, 0xaebdccdb0a192837
mov r11, r15
mov qword [rsp + 0x40], r12
mov eax, r12d
mov cl, r12b
xor cl, 0xae
mov byte [rsp + 0x40], cl
add eax, esi
cmp eax, r14d
jb 0x140052718
mov r10b, r12b
mov r9d, r12d
mov r8, r12
xor r11, r15
mov qword [rsp + 0x38], r11
mov al, byte [rsp + r8 + 0x38]
xor byte [rsp + r8 + 0x30], al
lea eax, [r9*8]
mov ecx, r14d
test eax, eax
cmovg ecx, eax
mov eax, 0x40
sub eax, ecx
mov rdx, r12
xor r10b, sil
cmovne rdx, qword [rsp + 0x40]
mov cl, al
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r9d, esi
add r8, rsi
cmp r9d, r14d
jb 0x14005272f
and rdx, rdi
xor rdx, 0xffffffffffff52ad
mov qword [rsp + 0xb58], rdx
lea rdx, [rsp + 0xe0]
lea rcx, [rsp + 0xb38]
call fcn.14000a2a0
nop
mov rdx, qword [rsp + 0xf8]
cmp rdx, 0x10
jb 0x1400527ec
inc rdx
mov rcx, qword [rsp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400527e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400527e7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140213ea4
mov qword [rsp + 0xf0], r12
mov qword [rsp + 0xf8], r13
mov byte [rsp + 0xe0], r12b
cmp byte [0x1406a3911], r12b
jne 0x14005281b
mov qword [0x1406a3908], rbx
mov byte [0x1406a3911], sil
xorps xmm0, xmm0
movups xmmword [rsp + 0xce0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xcf0], xmm1
mov r8d, 0x1d
lea rdx, str.http:__mtcheats.com_user_info
lea rcx, [rsp + 0xce0]
call fcn.140004b9c
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xaf0], xmm0
mov qword [rsp + 0xb00], r12
mov qword [rsp + 0xb08], r12
lea rdx, [rsp + 0xce0]
cmp qword [rsp + 0xcf8], 0x10
cmovae rdx, qword [rsp + 0xce0]
mov r8, qword [rsp + 0xcf0]
lea rcx, [rsp + 0xaf0]
call fcn.140004c7c
mov r13, qword [rsp + 0xb00]
lea r15, [rsp + 0xaf0]
cmp qword [rsp + 0xb08], 0x10
cmovae r15, qword [rsp + 0xaf0]
cmp byte [0x1406a2b50], r12b
jne 0x140052bb5
mov rdi, r12
lea r12, [0x140000000]
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x1400528ec
imul rbx, rax, 0x64
jmp 0x140052908
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [rdi + r12 + 0x6a2b60], rax
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140052966
imul rbx, rax, 0x64
jmp 0x140052982
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [rdi + r12 + 0x6a2be0], rax
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x1400529e0
imul rbx, rax, 0x64
jmp 0x1400529fc
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [rdi + r12 + 0x6a2c60], rax
add rdi, r14
cmp rdi, 0x80
jl 0x1400528d0
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140052a6a
imul rbx, rax, 0x64
jmp 0x140052a86
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
xor edi, edi
lea r12, [0x1406a2ce0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140052aa3
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r12], dl
add edi, esi
add r12, rsi
cmp edi, 4
jb 0x140052a8f
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140052adc
imul rbx, rax, 0x64
jmp 0x140052af8
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
xor edi, edi
lea r12, [0x1406a2ce8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140052b15
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r12], dl
add edi, esi
add r12, rsi
cmp edi, r14d
jb 0x140052b01
call sub.MSVCP140.dll__Query_perf_frequency
mov rbx, rax
call sub.MSVCP140.dll__Query_perf_counter
cmp rbx, 0x989680
jne 0x140052b4e
imul rbx, rax, 0x64
jmp 0x140052b6a
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
xor edi, edi
lea r12, [0x1406a2cf0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140052b87
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r12], dl
add edi, esi
add r12, rsi
cmp edi, 0xc
jb 0x140052b73
mov byte [0x1406a2b50], sil
movabs rdi, 0xfae9e8d7c6b5a493
lea r12, [0x140000000]
test r13, r13
je 0x140052c91
xor ebx, ebx
test r13, r13
je 0x140052c91
xor r8d, r8d
mov dl, byte [r15]
lea r11, [0x1406a2ce0]
xor r9d, r9d
xor r10d, r10d
movzx eax, byte [r11]
lea rcx, [r10 + rax*8]
xor dl, byte [rcx + r12 + 0x6a2b60]
mov byte [r15], dl
add r9d, esi
add r10, rsi
cmp r9d, r14d
jb 0x140052be3
add r8d, esi
add r11, rsi
cmp r8d, 4
jb 0x140052bdd
xor r10d, r10d
lea r11, [0x1406a2ce8]
xor r8d, r8d
xor r9d, r9d
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r12 + 0x6a2be0]
mov byte [r15], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x140052c1d
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140052c17
xor r8d, r8d
lea r9, [0x1406a2cf0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r12 + 0x6a2b60]
mov byte [r15], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140052c56
add r8d, esi
add r9, rsi
cmp r8d, 0xc
jb 0x140052c50
add ebx, esi
add r15, rsi
movsxd rax, ebx
cmp rax, r13
jb 0x140052bd0
lea rax, [rsp + 0x90]
xorps xmm0, xmm0
movups xmmword [rsp + 0x90], xmm0
xor r13d, r13d
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0xa8], r13
lea rdx, [rsp + 0xaf0]
cmp qword [rsp + 0xb08], 0x10
cmovae rdx, qword [rsp + 0xaf0]
mov r8, qword [rsp + 0xb00]
lea rcx, [rsp + 0x90]
call fcn.140004c7c
lea rax, [rsp + 0x90]
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rcx, qword [rsp + 0x90]
lea rbx, [0x1406a3110]
cmp byte [0x1406a2d01], r13b
jne 0x140052d5c
movabs r8, 0xfeeddccbbaa99887
mov rdx, rbx
lea r9, [0x1406a3908]
movabs r10, 0xababdbf33353735b
mov r11d, 0xffffffff
mov rax, r8
xor rax, r10
mov qword [rdx], rax
sub r8, r11
add rdx, r14
cmp rdx, r9
jl 0x140052d41
mov byte [0x1406a2d01], sil
mov qword [rsp + 0x30], rdi
mov r11d, r13d
mov r9, rdi
mov r8, qword [rsp + 0xa0]
test r8, r8
je 0x140052db0
mov r10, rcx
mov r9d, r13d
mov dl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], dl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x140052d82
not dl
movzx eax, dl
mov r9, qword [rsp + 0x30]
xor r9, qword [rbx + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140052d77
movabs rdi, 0xaebdccdb0a192837
movzx r12d, byte [rcx]
cmp r8, rsi
jbe 0x140052dca
mov bl, byte [rcx + r8 - 1]
jmp 0x140052dcc
mov bl, 0xae
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x38], r8
mov eax, r13d
mov cl, r8b
mov dl, r8b
xor cl, r12b
mov byte [rsp + 0x40], cl
xor dl, bl
mov byte [rsp + 0x38], dl
add eax, esi
cmp eax, r14d
jb 0x140052ddf
mov r15b, r13b
mov r10d, r13d
lea r13, [r8*8]
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor rdi, rax
movabs rax, 0xaebdccdb0a192837
xor rdi, rax
mov qword [rsp + 0x58], rdi
mov al, byte [rsp + r11 + 0x58]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov ecx, r14d
test eax, eax
cmovg ecx, eax
mov eax, 0x40
sub eax, ecx
mov rdx, qword [rsp + 0x40]
xor r15b, sil
cmovne rdx, qword [rsp + 0x38]
mov cl, al
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140052e04
movzx eax, bl
imul rcx, rax, 0xff
not rcx
mov rax, r12
shl rax, 7
sub rcx, rax
and r9, rdx
xor rcx, r9
mov qword [rsp + 0xb58], rcx
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0xb38]
call fcn.14000a2a0
nop
mov rdx, qword [rsp + 0xa8]
mov ebx, 0x1000
cmp rdx, 0x10
jb 0x140052f04
inc rdx
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, rbx
jb 0x140052eff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140052eff
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140213ea4
xor r15d, r15d
mov qword [rsp + 0xa0], r15
lea edi, [r15 + 0xf]
mov qword [rsp + 0xa8], rdi
mov byte [rsp + 0x90], r15b
mov rdx, qword [rsp + 0xb08]
cmp rdx, 0x10
jb 0x140052f65
inc rdx
mov rcx, qword [rsp + 0xaf0]
mov rax, rcx
cmp rdx, rbx
jb 0x140052f60
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140052f60
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140213ea4
mov qword [rsp + 0xb00], r15
mov qword [rsp + 0xb08], rdi
mov byte [rsp + 0xaf0], r15b
mov rdx, qword [rsp + 0xcf8]
cmp rdx, 0x10
jb 0x140052fbf
inc rdx
mov rcx, qword [rsp + 0xce0]
mov rax, rcx
cmp rdx, rbx
jb 0x140052fba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140052fba
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140213ea4
movdqa xmm0, xmmword [0x140220b70]
movdqu xmmword [rsp + 0xcf0], xmm0
mov byte [rsp + 0xce0], r15b
lea rdx, [rsp + 0xb38]
mov r13, qword [rsp + 0xb38]
cmp qword [rsp + 0xb50], 0x10
cmovae rdx, r13
lea rbx, [0x1406a3110]
cmp byte [0x1406a2d01], r15b
jne 0x140053043
movabs r8, 0xfeeddccbbaa99887
mov rcx, rbx
movabs r9, 0xababdbf33353735b
mov rax, r8
xor rax, r9
mov qword [rcx], rax
mov eax, 0xffffffff
sub r8, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x14005301c
mov byte [0x1406a2d01], sil
movabs r9, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], r9
mov r11d, r15d
mov r8, qword [rsp + 0xb48]
test r8, r8
je 0x14005309e
mov r10, rdx
mov r9d, r15d
mov cl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x140053070
not cl
movzx eax, cl
mov r9, qword [rsp + 0x30]
xor r9, qword [rbx + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140053065
movabs rdi, 0xaebdccdb0a192837
movzx r12d, byte [rdx]
cmp r8, rsi
jbe 0x1400530b8
mov bl, byte [rdx + r8 - 1]
jmp 0x1400530ba
mov bl, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
mov eax, r15d
mov cl, r8b
mov dl, r8b
xor cl, r12b
mov byte [rsp + 0x38], cl
xor dl, bl
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x1400530cd
xor r10d, r10d
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
lea rax, [r8*8]
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor rdi, rax
movabs rax, 0xaebdccdb0a192837
xor rdi, rax
mov qword [rsp + 0x58], rdi
mov al, byte [rsp + r11 + 0x58]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov ecx, r14d
test eax, eax
cmovg ecx, eax
mov eax, 0x40
sub eax, ecx
mov rdx, qword [rsp + 0x38]
xor r15b, sil
cmovne rdx, qword [rsp + 0x40]
mov cl, al
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x1400530e7
movzx eax, bl
imul rbx, rax, 0xff
not rbx
mov rax, r12
shl rax, 7
sub rbx, rax
and rdx, r9
xor rbx, rdx
mov rdi, qword [rsp + 0xb58]
cmp rbx, rdi
je 0x1400531ec
mov r15, qword [0x1406a3908]
lea rax, [rsp + 0x6a0]
mov edx, 3
lea rcx, [rsp + 0x6a0]
call fcn.14002d52c
mov qword [rsp + 0x6c8], rdi
mov qword [rsp + 0x6d0], rbx
lea rdx, [rsp + 0xb38]
lea rcx, [rsp + 0x6a0]
call r15
mov r8, qword [rsp + 0xb48]
mov r13, qword [rsp + 0xb38]
xorps xmm0, xmm0
movups xmmword [rsp + 0xd00], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xd10], xmm1
lea rdx, [rsp + 0xb38]
cmp qword [rsp + 0xb50], 0x10
cmovae rdx, r13
lea rcx, [rsp + 0xd00]
call fcn.140004c7c
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xb88], xmm0
xor r12d, r12d
mov qword [rsp + 0xb98], r12
mov qword [rsp + 0xba0], r12
lea rdx, [rsp + 0xd00]
cmp qword [rsp + 0xd18], 0x10
cmovae rdx, qword [rsp + 0xd00]
mov r8, qword [rsp + 0xd10]
lea rcx, [rsp + 0xb88]
call fcn.140004c7c
mov r13, qword [rsp + 0xb98]
lea rdi, [rsp + 0xb88]
cmp qword [rsp + 0xba0], 0x10
cmovae rdi, qword [rsp + 0xb88]
cmp byte [0x1406a2b50], r12b
jne 0x14005349b
mov r15d, r12d
lea r12, [0x140000000]
lea rcx, [rsp + 0x38]
call fcn.140063754
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2b60], rax
lea rcx, [rsp + 0x650]
call fcn.140063754
mov rbx, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2be0], rax
lea rcx, [rsp + 0x1f0]
call fcn.140063754
mov rbx, qword [rax]
mov qword [rsp + 0x38], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2c60], rax
add r15, r14
cmp r15, 0x80
jl 0x1400532ac
lea rcx, [rsp + 0x58]
call fcn.140063754
xor r15d, r15d
lea r12, [0x1406a2ce0]
mov rbx, qword [rsp + 0x58]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400533e0
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r12], dl
add r15d, esi
add r12, rsi
cmp r15d, 4
jb 0x1400533cc
lea rcx, [rsp + 0x200]
call fcn.140063754
mov r12, qword [rax]
xor ebx, ebx
lea r15, [0x1406a2ce8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14005342c
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [r15], dl
add ebx, esi
add r15, rsi
cmp ebx, r14d
jb 0x140053418
lea rcx, [rsp + 0x208]
call fcn.140063754
mov r12, qword [rax]
xor ebx, ebx
lea r15, [0x1406a2cf0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140053475
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [r15], dl
add ebx, esi
add r15, rsi
cmp ebx, 0xc
jb 0x140053461
mov byte [0x1406a2b50], sil
xor r12d, r12d
test r13, r13
je 0x14005356b
mov ebx, r12d
lea r15, [0x140000000]
mov r10d, r12d
mov dl, byte [rdi]
lea r11, [0x1406a2ce0]
mov r8d, r12d
mov r9, r12
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2b60]
mov byte [rdi], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x1400534c0
add r10d, esi
add r11, rsi
cmp r10d, 4
jb 0x1400534ba
mov r10d, r12d
lea r11, [0x1406a2ce8]
mov r8d, r12d
mov r9, r12
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2be0]
mov byte [rdi], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x1400534f9
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x1400534f3
mov r8d, r12d
lea r9, [0x1406a2cf0]
mov r10d, r12d
mov r11, r12
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2b60]
mov byte [rdi], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140053531
add r8d, esi
add r9, rsi
cmp r8d, 0xc
jb 0x14005352b
add ebx, esi
add rdi, rsi
movsxd rax, ebx
cmp rax, r13
jb 0x1400534ae
mov rdx, qword [rsp + 0xd18]
cmp rdx, 0x10
jb 0x1400535b1
inc rdx
mov rcx, qword [rsp + 0xd00]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400535ac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400535ac
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140213ea4
movdqa xmm0, xmmword [0x140220b70]
movdqu xmmword [rsp + 0xd10], xmm0
mov byte [rsp + 0xd00], r12b
xor r8d, r8d
lea rdx, [rsp + 0xb88]
lea rcx, [rsp + 0x1240]
call fcn.14002c670
nop
mov rdx, qword [rsp + 0xba0]
cmp rdx, 0x10
jb 0x140053629
inc rdx
mov rcx, qword [rsp + 0xb88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140053624
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140053624
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140213ea4
mov qword [rsp + 0xb98], r12
mov qword [rsp + 0xba0], 0xf
mov byte [rsp + 0xb88], r12b
lea rcx, [rsp + 0xb38]
call fcn.14002f208
lea rax, [rsp + 0xb10]
mov qword [rsp + 0x70], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xb10], xmm0
mov qword [rsp + 0xb20], r12
mov qword [rsp + 0xb28], r12
xor r8d, r8d
lea rdx, [0x14021dd9e]
lea rcx, [rsp + 0xb10]
call fcn.140004b9c
nop
xor eax, eax
mov qword [rsp + 0xb30], rax
cmp byte [0x1406a3910], r12b
jne 0x1400536ba
lea rax, [0x14006b26c]
mov qword [0x1406a3908], rax
mov byte [0x1406a3910], sil
lea rax, [rsp + 0x100]
xorps xmm0, xmm0
movups xmmword [rsp + 0x100], xmm0
mov qword [rsp + 0x110], r12
mov qword [rsp + 0x118], r12
xor r8d, r8d
lea rdx, [0x14021dd9e]
lea rcx, [rsp + 0x100]
call fcn.140004b9c
lea rax, [rsp + 0x100]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x100]
cmp qword [rsp + 0x118], 0x10
cmovae rcx, qword [rsp + 0x100]
lea rbx, [0x1406a3110]
cmp byte [0x1406a2d01], r12b
jne 0x140053769
movabs r8, 0xfeeddccbbaa99887
mov rdx, rbx
movabs r9, 0xababdbf33353735b
mov rax, r8
xor rax, r9
mov qword [rdx], rax
mov eax, 0xffffffff
sub r8, rax
add rdx, r14
lea rax, [0x1406a3908]
cmp rdx, rax
jl 0x140053742
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
mov r11d, r12d
mov r9, rax
mov r8, qword [rsp + 0x110]
test r8, r8
je 0x1400537c7
mov r10, rcx
mov r9d, r12d
mov dl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], dl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x140053799
not dl
movzx eax, dl
mov r9, qword [rsp + 0x30]
xor r9, qword [rbx + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x14005378e
movabs rdi, 0xaebdccdb0a192837
movzx r12d, byte [rcx]
cmp r8, rsi
jbe 0x1400537e1
mov bl, byte [rcx + r8 - 1]
jmp 0x1400537e3
mov bl, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r12b
mov byte [rsp + 0x38], cl
xor dl, bl
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x1400537f5
xor r15b, r15b
xor r10d, r10d
lea r13, [r8*8]
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor rdi, rax
movabs rax, 0xaebdccdb0a192837
xor rdi, rax
mov qword [rsp + 0x58], rdi
mov al, byte [rsp + r11 + 0x58]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov ecx, r14d
test eax, eax
cmovg ecx, eax
mov eax, 0x40
sub eax, ecx
mov rdx, qword [rsp + 0x38]
xor r15b, sil
cmovne rdx, qword [rsp + 0x40]
mov cl, al
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x14005381a
movzx eax, bl
imul rcx, rax, 0xff
not rcx
mov rax, r12
shl rax, 7
sub rcx, rax
and rdx, r9
xor rcx, rdx
mov qword [rsp + 0xb30], rcx
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0xb10]
call fcn.14000a2a0
nop
lea rcx, [rsp + 0x100]
call fcn.1400099b4
nop
xor r12d, r12d
cmp byte [0x1406a3911], r12b
jne 0x140053902
lea rax, [0x14006b26c]
mov qword [0x1406a3908], rax
mov byte [0x1406a3911], sil
xorps xmm0, xmm0
movups xmmword [rsp + 0xd40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xd50], xmm1
mov r8d, 4
lea rdx, str.hwid
lea rcx, [rsp + 0xd40]
call fcn.140004b9c
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xba8], xmm0
mov qword [rsp + 0xbb8], r12
mov qword [rsp + 0xbc0], r12
lea rdx, [rsp + 0xd40]
cmp qword [rsp + 0xd58], 0x10
cmovae rdx, qword [rsp + 0xd40]
mov r8, qword [rsp + 0xd50]
lea rcx, [rsp + 0xba8]
call fcn.140004c7c
mov r13, qword [rsp + 0xbb8]
lea rdi, [rsp + 0xba8]
cmp qword [rsp + 0xbc0], 0x10
cmovae rdi, qword [rsp + 0xba8]
cmp byte [0x1406a2b50], r12b
jne 0x140053ba6
mov r15, r12
lea r12, [0x140000000]
lea rcx, [rsp + 0x38]
call fcn.140063754
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2b60], rax
lea rcx, [rsp + 0x218]
call fcn.140063754
mov rbx, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2be0], rax
lea rcx, [rsp + 0x228]
call fcn.140063754
mov rbx, qword [rax]
mov qword [rsp + 0x38], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2c60], rax
add r15, r14
cmp r15, 0x80
jl 0x1400539b7
lea rcx, [rsp + 0x58]
call fcn.140063754
xor r15d, r15d
lea r12, [0x1406a2ce0]
mov rbx, qword [rsp + 0x58]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140053aeb
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r12], dl
add r15d, esi
add r12, rsi
cmp r15d, 4
jb 0x140053ad7
lea rcx, [rsp + 0x238]
call fcn.140063754
mov r12, qword [rax]
xor ebx, ebx
lea r15, [0x1406a2ce8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140053b37
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [r15], dl
add ebx, esi
add r15, rsi
cmp ebx, r14d
jb 0x140053b23
lea rcx, [rsp + 0x240]
call fcn.140063754
mov r12, qword [rax]
xor ebx, ebx
lea r15, [0x1406a2cf0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140053b80
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [r15], dl
add ebx, esi
add r15, rsi
cmp ebx, 0xc
jb 0x140053b6c
mov byte [0x1406a2b50], sil
xor r12d, r12d
test r13, r13
je 0x140053c76
mov ebx, r12d
lea r15, [0x140000000]
mov r8d, r12d
mov dl, byte [rdi]
lea r11, [0x1406a2ce0]
mov r9d, r12d
mov r10, r12
movzx eax, byte [r11]
lea rcx, [r10 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2b60]
mov byte [rdi], dl
add r9d, esi
add r10, rsi
cmp r9d, r14d
jb 0x140053bcb
add r8d, esi
add r11, rsi
cmp r8d, 4
jb 0x140053bc5
mov r10d, r12d
lea r11, [0x1406a2ce8]
mov r8d, r12d
mov r9, r12
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2be0]
mov byte [rdi], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x140053c04
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140053bfe
mov r8d, r12d
lea r9, [0x1406a2cf0]
mov r10d, r12d
mov r11, r12
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2b60]
mov byte [rdi], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140053c3c
add r8d, esi
add r9, rsi
cmp r8d, 0xc
jb 0x140053c36
add ebx, esi
add rdi, rsi
movsxd rax, ebx
cmp rax, r13
jb 0x140053bb9
lea rax, [rsp + 0x120]
xorps xmm0, xmm0
movups xmmword [rsp + 0x120], xmm0
mov qword [rsp + 0x130], r12
mov qword [rsp + 0x138], r12
lea rdx, [rsp + 0xba8]
cmp qword [rsp + 0xbc0], 0x10
cmovae rdx, qword [rsp + 0xba8]
mov r8, qword [rsp + 0xbb8]
lea rcx, [rsp + 0x120]
call fcn.140004c7c
lea rax, [rsp + 0x120]
mov qword [rsp + 0x60], rax
lea rcx, [rsp + 0x120]
cmp qword [rsp + 0x138], 0x10
cmovae rcx, qword [rsp + 0x120]
lea rbx, [0x1406a3110]
cmp byte [0x1406a2d01], r12b
jne 0x140053d3d
movabs r8, 0xfeeddccbbaa99887
mov rdx, rbx
movabs r9, 0xababdbf33353735b
mov rax, r8
xor rax, r9
mov qword [rdx], rax
mov eax, 0xffffffff
sub r8, rax
add rdx, r14
lea rax, [0x1406a3908]
cmp rdx, rax
jl 0x140053d16
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
mov r11d, r12d
mov r9, rax
mov r8, qword [rsp + 0x130]
test r8, r8
je 0x140053d9b
mov r10, rcx
mov r9d, r12d
mov dl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], dl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x140053d6d
not dl
movzx eax, dl
mov r9, qword [rsp + 0x30]
xor r9, qword [rbx + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140053d62
movabs rdi, 0xaebdccdb0a192837
movzx r12d, byte [rcx]
cmp r8, rsi
jbe 0x140053db5
mov bl, byte [rcx + r8 - 1]
jmp 0x140053db7
mov bl, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r12b
mov byte [rsp + 0x38], cl
xor dl, bl
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x140053dc9
xor r15b, r15b
xor r10d, r10d
lea r13, [r8*8]
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor rdi, rax
movabs rax, 0xaebdccdb0a192837
xor rdi, rax
mov qword [rsp + 0x58], rdi
mov al, byte [rsp + r11 + 0x58]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov ecx, r14d
test eax, eax
cmovg ecx, eax
mov eax, 0x40
sub eax, ecx
mov rdx, qword [rsp + 0x38]
xor r15b, sil
cmovne rdx, qword [rsp + 0x40]
mov cl, al
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140053dee
movzx eax, bl
imul rcx, rax, 0xff
not rcx
mov rax, r12
shl rax, 7
sub rcx, rax
and rdx, r9
xor rcx, rdx
mov qword [rsp + 0xb30], rcx
lea rdx, [rsp + 0x120]
lea rcx, [rsp + 0xb10]
call fcn.14000a2a0
nop
lea rcx, [rsp + 0x120]
call fcn.1400099b4
nop
lea rcx, [rsp + 0xba8]
call fcn.1400099b4
nop
lea rcx, [rsp + 0xd40]
call fcn.1400099b4
nop
lea rdx, [rsp + 0xb10]
mov r13, qword [rsp + 0xb10]
cmp qword [rsp + 0xb28], 0x10
cmovae rdx, r13
lea rdi, [0x1406a3110]
cmp byte [0x1406a2d01], 0
jne 0x140053f3c
movabs r8, 0xfeeddccbbaa99887
mov rcx, rdi
movabs r9, 0xababdbf33353735b
mov rax, r8
xor rax, r9
mov qword [rcx], rax
mov eax, 0xffffffff
sub r8, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x140053f15
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
xor ebx, ebx
mov r10, rax
mov r9, qword [rsp + 0xb20]
test r9, r9
je 0x140053f98
mov r11, rdx
xor r8d, r8d
mov cl, byte [r11]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r8d, esi
add rax, rsi
cmp r8d, r14d
jb 0x140053f6b
not cl
movzx eax, cl
mov r10, qword [rsp + 0x30]
xor r10, qword [rdi + rax*8]
mov qword [rsp + 0x30], r10
add ebx, esi
add r11, rsi
movsxd rax, ebx
cmp rax, r9
jb 0x140053f60
movabs rdi, 0xaebdccdb0a192837
movzx r12d, byte [rdx]
cmp r9, rsi
jbe 0x140053fb2
mov bl, byte [rdx + r9 - 1]
jmp 0x140053fb4
mov bl, 0xae
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r9
xor eax, eax
mov cl, r9b
mov dl, r9b
xor cl, r12b
mov byte [rsp + 0x38], cl
xor dl, bl
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x140053fc6
xor r15b, r15b
xor r8d, r8d
xor r11d, r11d
mov eax, r8d
test r8d, r8d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
lea rax, [r9*8]
div rcx
mov rcx, rdx
mov rax, r9
shl rax, cl
xor rdi, rax
movabs rax, 0xaebdccdb0a192837
xor rdi, rax
mov qword [rsp + 0x58], rdi
mov al, byte [rsp + r11 + 0x58]
xor byte [rsp + r11 + 0x30], al
lea eax, [r8*8]
mov ecx, r14d
test eax, eax
cmovg ecx, eax
mov eax, 0x40
sub eax, ecx
mov rdx, qword [rsp + 0x38]
xor r15b, sil
cmovne rdx, qword [rsp + 0x40]
mov cl, al
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r8d, esi
add r11, rsi
cmp r8d, r14d
jb 0x140053fe3
movzx eax, bl
imul r8, rax, 0xff
not r8
mov rax, r12
shl rax, 7
sub r8, rax
and r10, rdx
xor r8, r10
mov rdx, qword [rsp + 0xb30]
cmp r8, rdx
je 0x1400540c5
mov rbx, qword [0x1406a3908]
lea rcx, [rsp + 0xa80]
call fcn.14002d4ec
lea rdx, [rsp + 0xb10]
mov rcx, rax
call rbx
mov r9, qword [rsp + 0xb20]
mov r13, qword [rsp + 0xb10]
xorps xmm0, xmm0
movups xmmword [rsp + 0xd60], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xd70], xmm1
lea rdx, [rsp + 0xb10]
cmp qword [rsp + 0xb28], 0x10
cmovae rdx, r13
mov r8, r9
lea rcx, [rsp + 0xd60]
call fcn.140004c7c
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xd20], xmm0
xor r12d, r12d
mov qword [rsp + 0xd30], r12
mov qword [rsp + 0xd38], r12
lea rdx, [rsp + 0xd60]
cmp qword [rsp + 0xd78], 0x10
cmovae rdx, qword [rsp + 0xd60]
mov r8, qword [rsp + 0xd70]
lea rcx, [rsp + 0xd20]
call fcn.140004c7c
mov r13, qword [rsp + 0xd30]
lea rdi, [rsp + 0xd20]
cmp qword [rsp + 0xd38], 0x10
cmovae rdi, qword [rsp + 0xd20]
cmp byte [0x1406a2b50], r12b
jne 0x140054377
mov r15d, r12d
lea r12, [0x140000000]
lea rcx, [rsp + 0x38]
call fcn.140063754
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2b60], rax
lea rcx, [rsp + 0x250]
call fcn.140063754
mov rbx, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2be0], rax
lea rcx, [rsp + 0x260]
call fcn.140063754
mov rbx, qword [rax]
mov qword [rsp + 0x38], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2c60], rax
add r15, r14
cmp r15, 0x80
jl 0x140054188
lea rcx, [rsp + 0x58]
call fcn.140063754
xor r15d, r15d
lea r12, [0x1406a2ce0]
mov rbx, qword [rsp + 0x58]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400542bc
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r12], dl
add r15d, esi
add r12, rsi
cmp r15d, 4
jb 0x1400542a8
lea rcx, [rsp + 0x270]
call fcn.140063754
mov r12, qword [rax]
xor ebx, ebx
lea r15, [0x1406a2ce8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140054308
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [r15], dl
add ebx, esi
add r15, rsi
cmp ebx, r14d
jb 0x1400542f4
lea rcx, [rsp + 0x278]
call fcn.140063754
mov r12, qword [rax]
xor ebx, ebx
lea r15, [0x1406a2cf0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140054351
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [r15], dl
add ebx, esi
add r15, rsi
cmp ebx, 0xc
jb 0x14005433d
mov byte [0x1406a2b50], sil
xor r12d, r12d
test r13, r13
je 0x140054447
mov ebx, r12d
lea r15, [0x140000000]
mov r8d, r12d
mov dl, byte [rdi]
lea r11, [0x1406a2ce0]
mov r9d, r12d
mov r10, r12
movzx eax, byte [r11]
lea rcx, [r10 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2b60]
mov byte [rdi], dl
add r9d, esi
add r10, rsi
cmp r9d, r14d
jb 0x14005439c
add r8d, esi
add r11, rsi
cmp r8d, 4
jb 0x140054396
mov r10d, r12d
lea r11, [0x1406a2ce8]
mov r8d, r12d
mov r9, r12
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2be0]
mov byte [rdi], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x1400543d5
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x1400543cf
mov r8d, r12d
lea r9, [0x1406a2cf0]
mov r10d, r12d
mov r11, r12
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2b60]
mov byte [rdi], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x14005440d
add r8d, esi
add r9, rsi
cmp r8d, 0xc
jb 0x140054407
add ebx, esi
add rdi, rsi
movsxd rax, ebx
cmp rax, r13
jb 0x14005438a
lea rcx, [rsp + 0xd60]
call fcn.1400099b4
nop
mov byte [rsp + 0x1b0], r12b
xor eax, eax
mov qword [rsp + 0x1b8], rax
lea rdx, [rsp + 0xd20]
lea rcx, [rsp + 0x1b0]
call fcn.14002b0ec
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x1c0], rax
mov byte [rsp + 0x1c8], sil
xor eax, eax
mov qword [rsp + 0x1d8], rax
mov byte [rsp + 0x1d0], 3
mov rcx, qword [rsp + 0x50]
call fcn.140020fec
mov qword [rsp + 0x1d8], rax
lea rax, [rsp + 0x1d0]
mov qword [rsp + 0x1e0], rax
mov byte [rsp + 0x1e8], sil
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x1f0]
mov qword [rsp + 0x68], rax
mov r9b, 2
mov r8b, sil
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x660]
call fcn.14002b5a8
lea rax, [rsp + 0x660]
mov qword [rsp + 0x670], rax
mov byte [rsp + 0x678], sil
lea rax, [rsp + 0xb60]
mov qword [rsp + 0x60], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xb60], xmm0
mov qword [rsp + 0xb70], r12
mov qword [rsp + 0xb78], r12
xor r8d, r8d
lea rdx, [0x14021dd9e]
lea rcx, [rsp + 0xb60]
call fcn.140004b9c
nop
xor eax, eax
mov qword [rsp + 0xb80], rax
cmp byte [0x1406a3910], r12b
jne 0x140054582
lea rax, [0x14006b26c]
mov qword [0x1406a3908], rax
mov byte [0x1406a3910], sil
lea rax, [rsp + 0x140]
xorps xmm0, xmm0
movups xmmword [rsp + 0x140], xmm0
mov qword [rsp + 0x150], r12
mov qword [rsp + 0x158], r12
xor r8d, r8d
lea rdx, [0x14021dd9e]
lea rcx, [rsp + 0x140]
call fcn.140004b9c
lea rax, [rsp + 0x140]
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x140]
cmp qword [rsp + 0x158], 0x10
cmovae rcx, qword [rsp + 0x140]
lea rbx, [0x1406a3110]
cmp byte [0x1406a2d01], r12b
jne 0x140054631
movabs r8, 0xfeeddccbbaa99887
mov rdx, rbx
movabs r9, 0xababdbf33353735b
mov rax, r8
xor rax, r9
mov qword [rdx], rax
mov eax, 0xffffffff
sub r8, rax
add rdx, r14
lea rax, [0x1406a3908]
cmp rdx, rax
jl 0x14005460a
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
mov r11d, r12d
mov r9, rax
mov r8, qword [rsp + 0x150]
test r8, r8
je 0x14005468f
mov r10, rcx
mov r9d, r12d
mov dl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], dl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x140054661
not dl
movzx eax, dl
mov r9, qword [rsp + 0x30]
xor r9, qword [rbx + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140054656
movabs rdi, 0xaebdccdb0a192837
movzx r12d, byte [rcx]
cmp r8, rsi
jbe 0x1400546a9
mov bl, byte [r8 + rcx - 1]
jmp 0x1400546ab
mov bl, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r12b
mov byte [rsp + 0x38], cl
xor dl, bl
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x1400546bd
xor r15b, r15b
xor r10d, r10d
lea r13, [r8*8]
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor rdi, rax
movabs rax, 0xaebdccdb0a192837
xor rdi, rax
mov qword [rsp + 0x50], rdi
mov al, byte [rsp + r11 + 0x50]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov edx, r14d
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rsp + 0x38]
xor r15b, sil
cmovne rdx, qword [rsp + 0x40]
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x1400546e2
movzx eax, bl
imul rcx, rax, 0xff
not rcx
mov rax, r12
shl rax, 7
sub rcx, rax
and r9, rdx
xor rcx, r9
mov qword [rsp + 0xb80], rcx
lea rdx, [rsp + 0x140]
lea rcx, [rsp + 0xb60]
call fcn.14000a2a0
nop
lea rcx, [rsp + 0x140]
call fcn.1400099b4
nop
cmp byte [0x1406a3911], 0
jne 0x1400547c5
lea rax, [0x14006b26c]
mov qword [0x1406a3908], rax
mov byte [0x1406a3911], sil
xorps xmm0, xmm0
movups xmmword [rsp + 0xf80], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0xf90], xmm1
mov r8d, 0xa
lea rdx, str.program_id
lea rcx, [rsp + 0xf80]
call fcn.140004b9c
nop
lea rdx, [rsp + 0xf80]
lea rcx, [rsp + 0xd80]
call fcn.14002b864
mov r13, qword [rsp + 0xd90]
lea rdi, [rsp + 0xd80]
cmp qword [rsp + 0xd98], 0x10
cmovae rdi, qword [rsp + 0xd80]
cmp byte [0x1406a2b50], 0
jne 0x140054a31
xor r15d, r15d
lea r12, [0x140000000]
lea rcx, [rsp + 0x38]
call fcn.140063754
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2b60], rax
lea rcx, [rsp + 0x288]
call fcn.140063754
mov rbx, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2be0], rax
lea rcx, [rsp + 0x298]
call fcn.140063754
mov rbx, qword [rax]
mov qword [rsp + 0x38], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2c60], rax
add r15, r14
cmp r15, 0x80
jl 0x140054845
lea rcx, [rsp + 0x50]
call fcn.140063754
xor r15d, r15d
lea r12, [0x1406a2ce0]
mov rbx, qword [rsp + 0x50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140054979
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r12], dl
add r15d, esi
add r12, rsi
cmp r15d, 4
jb 0x140054965
lea rcx, [rsp + 0x2a8]
call fcn.140063754
mov r12, qword [rax]
xor ebx, ebx
lea r15, [0x1406a2ce8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400549c5
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [r15], dl
add ebx, esi
add r15, rsi
cmp ebx, r14d
jb 0x1400549b1
lea rcx, [rsp + 0x2b0]
call fcn.140063754
mov r12, qword [rax]
xor ebx, ebx
lea r15, [0x1406a2cf0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140054a0e
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [r15], dl
add ebx, esi
add r15, rsi
cmp ebx, 0xc
jb 0x1400549fa
mov byte [0x1406a2b50], sil
test r13, r13
je 0x140054b09
xor ebx, ebx
test r13, r13
je 0x140054b09
lea r15, [0x140000000]
xor r8d, r8d
mov dl, byte [rdi]
lea r9, [0x1406a2ce0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2b60]
mov byte [rdi], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140054a5e
add r8d, esi
add r9, rsi
cmp r8d, 4
jb 0x140054a58
xor r10d, r10d
lea r11, [0x1406a2ce8]
xor r8d, r8d
xor r9d, r9d
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2be0]
mov byte [rdi], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x140054a97
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140054a91
xor r8d, r8d
lea r9, [0x1406a2cf0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2b60]
mov byte [rdi], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140054acf
add r8d, esi
add r9, rsi
cmp r8d, 0xc
jb 0x140054ac9
add ebx, esi
add rdi, rsi
movsxd rax, ebx
cmp rax, r13
jb 0x140054a4c
lea rdx, [rsp + 0xd80]
lea rcx, [rsp + 0x878]
call fcn.14002b864
mov rbx, rax
mov qword [rsp + 0x60], rax
mov r8, qword [rax + 0x10]
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140054b37
mov rdx, qword [rax]
lea rdi, [0x1406a3110]
cmp byte [0x1406a2d01], 0
jne 0x140054b85
movabs r9, 0xfeeddccbbaa99887
mov rcx, rdi
movabs r10, 0xababdbf33353735b
mov rax, r9
xor rax, r10
mov qword [rcx], rax
mov eax, 0xffffffff
sub r9, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x140054b5e
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
xor r11d, r11d
mov r9, rax
test r8, r8
je 0x140054bdb
mov r10, rdx
xor r9d, r9d
mov cl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x140054bad
not cl
movzx eax, cl
mov r9, qword [rsp + 0x30]
xor r9, qword [rdi + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140054ba2
movabs r15, 0xaebdccdb0a192837
movzx r13d, byte [rdx]
cmp r8, rsi
jbe 0x140054bf5
mov dil, byte [r8 + rdx - 1]
jmp 0x140054bf8
mov dil, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r13b
mov byte [rsp + 0x38], cl
xor dl, dil
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x140054c0a
xor r12b, r12b
xor r10d, r10d
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
lea rax, [r8*8]
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor r15, rax
movabs rax, 0xaebdccdb0a192837
xor r15, rax
mov qword [rsp + 0x50], r15
mov al, byte [rsp + r11 + 0x50]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov edx, r14d
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rsp + 0x38]
xor r12b, sil
cmovne rdx, qword [rsp + 0x40]
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140054c28
movzx eax, dil
imul rcx, rax, 0xff
not rcx
mov rax, r13
shl rax, 7
sub rcx, rax
and r9, rdx
xor rcx, r9
mov qword [rsp + 0xb80], rcx
mov rdx, rbx
lea rcx, [rsp + 0xb60]
call fcn.14000a2a0
nop
mov rcx, rbx
call fcn.1400099b4
nop
lea rcx, [rsp + 0xd80]
call fcn.1400099b4
nop
lea rcx, [rsp + 0xf80]
call fcn.1400099b4
nop
lea rdx, [rsp + 0xb60]
cmp qword [rsp + 0xb78], 0x10
cmovae rdx, qword [rsp + 0xb60]
lea rbx, [0x1406a3110]
cmp byte [0x1406a2d01], 0
jne 0x140054d71
movabs r8, 0xfeeddccbbaa99887
mov rcx, rbx
movabs r9, 0xababdbf33353735b
mov rax, r8
xor rax, r9
mov qword [rcx], rax
mov eax, 0xffffffff
sub r8, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x140054d4a
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
xor r11d, r11d
mov r9, rax
mov r8, qword [rsp + 0xb70]
test r8, r8
je 0x140054dcf
mov r10, rdx
xor r9d, r9d
mov cl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x140054da1
not cl
movzx eax, cl
mov r9, qword [rsp + 0x30]
xor r9, qword [rbx + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140054d96
movabs rdi, 0xaebdccdb0a192837
movzx r12d, byte [rdx]
cmp r8, rsi
jbe 0x140054de9
mov bl, byte [rdx + r8 - 1]
jmp 0x140054deb
mov bl, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r12b
mov byte [rsp + 0x38], cl
xor dl, bl
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x140054dfd
xor r15b, r15b
xor r10d, r10d
lea r13, [r8*8]
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
mov rax, r13
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor rdi, rax
movabs rax, 0xaebdccdb0a192837
xor rdi, rax
mov qword [rsp + 0x50], rdi
mov al, byte [rsp + r11 + 0x50]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov edx, r14d
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rsp + 0x38]
xor r15b, sil
cmovne rdx, qword [rsp + 0x40]
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140054e22
movzx eax, bl
imul r8, rax, 0xff
not r8
mov rax, r12
shl rax, 7
sub r8, rax
and r9, rdx
xor r8, r9
mov rdx, qword [rsp + 0xb80]
cmp r8, rdx
je 0x140054ee9
mov rbx, qword [0x1406a3908]
lea rcx, [rsp + 0xa48]
call fcn.14002d4ec
lea rdx, [rsp + 0xb60]
mov rcx, rax
call rbx
lea rdx, [rsp + 0xb60]
lea rcx, [rsp + 0x1060]
call fcn.14002b864
nop
lea rdx, [rsp + 0x1060]
lea rcx, [rsp + 0xda0]
call fcn.14002b864
mov r13, qword [rsp + 0xdb0]
lea rdi, [rsp + 0xda0]
cmp qword [rsp + 0xdb8], 0x10
cmovae rdi, qword [rsp + 0xda0]
xor r12d, r12d
cmp byte [0x1406a2b50], r12b
jne 0x14005513f
mov r15d, r12d
lea r12, [0x140000000]
lea rcx, [rsp + 0x38]
call fcn.140063754
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2b60], rax
lea rcx, [rsp + 0x2c0]
call fcn.140063754
mov rbx, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2be0], rax
lea rcx, [rsp + 0x2d0]
call fcn.140063754
mov rbx, qword [rax]
mov qword [rsp + 0x38], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r15 + r12 + 0x6a2c60], rax
add r15, r14
cmp r15, 0x80
jl 0x140054f50
lea rcx, [rsp + 0x50]
call fcn.140063754
xor r15d, r15d
lea r12, [0x1406a2ce0]
mov rbx, qword [rsp + 0x50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140055084
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r12], dl
add r15d, esi
add r12, rsi
cmp r15d, 4
jb 0x140055070
lea rcx, [rsp + 0x2e0]
call fcn.140063754
mov r12, qword [rax]
xor ebx, ebx
lea r15, [0x1406a2ce8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400550d0
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [r15], dl
add ebx, esi
add r15, rsi
cmp ebx, r14d
jb 0x1400550bc
lea rcx, [rsp + 0x2e8]
call fcn.140063754
mov r12, qword [rax]
xor ebx, ebx
lea r15, [0x1406a2cf0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140055119
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r12
cqo
idiv rcx
mov byte [r15], dl
add ebx, esi
add r15, rsi
cmp ebx, 0xc
jb 0x140055105
mov byte [0x1406a2b50], sil
xor r12d, r12d
test r13, r13
je 0x14005520f
mov ebx, r12d
lea r15, [0x140000000]
mov r8d, r12d
mov dl, byte [rdi]
lea r9, [0x1406a2ce0]
mov r10d, r12d
mov r11, r12
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2b60]
mov byte [rdi], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140055164
add r8d, esi
add r9, rsi
cmp r8d, 4
jb 0x14005515e
mov r10d, r12d
lea r11, [0x1406a2ce8]
mov r8d, r12d
mov r9, r12
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2be0]
mov byte [rdi], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x14005519d
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140055197
mov r8d, r12d
lea r9, [0x1406a2cf0]
mov r10d, r12d
mov r11, r12
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r15 + 0x6a2b60]
mov byte [rdi], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x1400551d5
add r8d, esi
add r9, rsi
cmp r8d, 0xc
jb 0x1400551cf
add ebx, esi
add rdi, rsi
movsxd rax, ebx
cmp rax, r13
jb 0x140055152
lea rcx, [rsp + 0x1060]
call fcn.1400099b4
nop
mov byte [rsp + 0x170], r12b
xor eax, eax
mov qword [rsp + 0x178], rax
lea rdx, [rsp + 0xda0]
lea rcx, [rsp + 0x170]
call fcn.14002b0ec
lea rax, [rsp + 0x170]
mov qword [rsp + 0x180], rax
mov byte [rsp + 0x188], sil
mov byte [rsp + 0x190], 5
movsxd rax, dword [rsp + 0x88]
mov qword [rsp + 0x198], rax
lea rax, [rsp + 0x190]
mov qword [rsp + 0x1a0], rax
mov byte [rsp + 0x1a8], sil
lea rax, [rsp + 0x170]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x680]
call fcn.14002bcd4
nop
lea rax, [rsp + 0x660]
mov qword [rsp + 0x60], rax
lea rax, [rsp + 0x6a0]
mov qword [rsp + 0x68], rax
mov r15d, 2
mov r9b, r15b
mov r8b, sil
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0xd0]
call fcn.14002b5a8
nop
lea rdi, [fcn.14002e2ac]
mov r9, rdi
mov r8d, r15d
lea ebx, [r15 + 0x1e]
mov edx, ebx
lea rcx, [rsp + 0x660]
call fcn.1402147cc
nop
mov r9, rdi
mov r8d, r15d
mov edx, ebx
lea rcx, [rsp + 0x170]
call fcn.1402147cc
nop
lea rcx, [rsp + 0xda0]
call fcn.1400099b4
nop
lea rcx, [rsp + 0xb60]
call fcn.14002f208
nop
mov r9, rdi
mov r8d, r15d
mov edx, ebx
lea rcx, [rsp + 0x1b0]
call fcn.1402147cc
nop
lea rcx, [rsp + 0xd20]
call fcn.1400099b4
nop
lea rcx, [rsp + 0xb10]
call fcn.14002f208
lea rax, [rsp + 0x8b8]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x8f0], r12
or rdi, 0xffffffffffffffff
lea rax, [rsp + 0xc68]
mov qword [rsp + 0x70], rax
lea rdx, [0x14021dd9e]
lea rcx, [rsp + 0xc68]
call fcn.14002b89c
nop
xor eax, eax
mov qword [rsp + 0xc88], rax
cmp byte [0x1406a3910], r12b
jne 0x1400553d9
lea rax, [0x14006b26c]
mov qword [0x1406a3908], rax
mov byte [0x1406a3910], sil
lea rdx, [0x14021dd9e]
lea rcx, [rsp + 0x898]
call fcn.14002b89c
mov rbx, rax
mov qword [rsp + 0x58], rax
mov r8, qword [rax + 0x10]
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140055406
mov rdx, qword [rax]
lea r15, [0x1406a3110]
cmp byte [0x1406a2d01], r12b
jne 0x140055454
movabs r9, 0xfeeddccbbaa99887
mov rcx, r15
movabs r10, 0xababdbf33353735b
mov rax, r9
xor rax, r10
mov qword [rcx], rax
mov eax, 0xffffffff
sub r9, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x14005542d
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
mov r11d, r12d
mov r9, rax
test r8, r8
je 0x1400554aa
mov r10, rdx
mov r9d, r12d
mov cl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x14005547c
not cl
movzx eax, cl
mov r9, qword [rsp + 0x30]
xor r9, qword [r15 + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140055471
movabs r12, 0xaebdccdb0a192837
mov r10b, byte [rdx]
mov byte [rsp + 0x48], r10b
cmp r8, rsi
jbe 0x1400554c8
mov r15b, byte [r8 + rdx - 1]
jmp 0x1400554cb
mov r15b, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r10b
mov byte [rsp + 0x38], cl
xor dl, r15b
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x1400554dd
xor r13b, r13b
xor r10d, r10d
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
lea rax, [r8*8]
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor r12, rax
movabs rax, 0xaebdccdb0a192837
xor r12, rax
mov qword [rsp + 0x50], r12
mov al, byte [rsp + r11 + 0x50]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov edx, r14d
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rsp + 0x38]
xor r13b, sil
cmovne rdx, qword [rsp + 0x40]
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x1400554fb
movzx eax, r15b
imul rcx, rax, 0xff
not rcx
movzx eax, byte [rsp + 0x48]
shl rax, 7
sub rcx, rax
and rdx, r9
xor rcx, rdx
mov qword [rsp + 0xc88], rcx
mov rdx, rbx
lea rcx, [rsp + 0xc68]
call fcn.14000a2a0
nop
mov rcx, rbx
call fcn.1400099b4
nop
cmp byte [0x1406a3911], 0
jne 0x1400555e0
lea rax, [0x14006b26c]
mov qword [0x1406a3908], rax
mov byte [0x1406a3911], sil
lea rdx, str.Content_Type
lea rcx, [rsp + 0x10a0]
call fcn.14002b89c
nop
mov rdx, rax
lea rcx, [rsp + 0xdc0]
call fcn.14002b864
mov r12, qword [rsp + 0xdd0]
mov qword [rsp + 0x58], r12
lea r15, [rsp + 0xdc0]
cmp qword [rsp + 0xdd8], 0x10
cmovae r15, qword [rsp + 0xdc0]
cmp byte [0x1406a2b50], 0
jne 0x140055836
xor r12d, r12d
lea r13, [0x140000000]
lea rcx, [rsp + 0x38]
call fcn.140063754
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2b60], rax
lea rcx, [rsp + 0x2f8]
call fcn.140063754
mov rbx, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2be0], rax
lea rcx, [rsp + 0x308]
call fcn.140063754
mov rbx, qword [rax]
mov qword [rsp + 0x38], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2c60], rax
add r12, r14
cmp r12, 0x80
jl 0x140055643
lea rcx, [rsp + 0x50]
call fcn.140063754
xor r12d, r12d
lea r13, [0x1406a2ce0]
mov rbx, qword [rsp + 0x50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140055777
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r13], dl
add r12d, esi
add r13, rsi
cmp r12d, 4
jb 0x140055763
lea rcx, [rsp + 0x318]
call fcn.140063754
mov r13, qword [rax]
xor ebx, ebx
lea r12, [0x1406a2ce8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400557c3
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [r12], dl
add ebx, esi
add r12, rsi
cmp ebx, r14d
jb 0x1400557af
lea rcx, [rsp + 0x320]
call fcn.140063754
mov r13, qword [rax]
xor ebx, ebx
lea r12, [0x1406a2cf0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x14005580d
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [r12], dl
add ebx, esi
add r12, rsi
cmp ebx, 0xc
jb 0x1400557f9
mov byte [0x1406a2b50], sil
mov r12, qword [rsp + 0x58]
test r12, r12
je 0x140055912
xor ebx, ebx
test r12, r12
je 0x140055912
lea r13, [0x140000000]
xor r8d, r8d
mov dl, byte [r15]
lea r9, [0x1406a2ce0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2b60]
mov byte [r15], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140055864
add r8d, esi
add r9, rsi
cmp r8d, 4
jb 0x14005585e
xor r10d, r10d
lea r11, [0x1406a2ce8]
xor r8d, r8d
xor r9d, r9d
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2be0]
mov byte [r15], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x14005589e
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140055898
xor r8d, r8d
lea r9, [0x1406a2cf0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2b60]
mov byte [r15], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x1400558d7
add r8d, esi
add r9, rsi
cmp r8d, 0xc
jb 0x1400558d1
add ebx, esi
add r15, rsi
movsxd rax, ebx
cmp rax, r12
jb 0x140055851
lea rdx, [rsp + 0xdc0]
lea rcx, [rsp + 0x6d8]
call fcn.14002b864
mov rbx, rax
mov qword [rsp + 0x70], rax
mov r8, qword [rax + 0x10]
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140055940
mov rdx, qword [rax]
lea r15, [0x1406a3110]
cmp byte [0x1406a2d01], 0
jne 0x14005598e
movabs r9, 0xfeeddccbbaa99887
mov rcx, r15
movabs r10, 0xababdbf33353735b
mov rax, r9
xor rax, r10
mov qword [rcx], rax
mov eax, 0xffffffff
sub r9, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x140055967
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
xor r11d, r11d
mov r9, rax
test r8, r8
je 0x1400559e4
mov r10, rdx
xor r9d, r9d
mov cl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x1400559b6
not cl
movzx eax, cl
mov r9, qword [rsp + 0x30]
xor r9, qword [r15 + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x1400559ab
movabs r12, 0xaebdccdb0a192837
mov r10b, byte [rdx]
mov byte [rsp + 0x48], r10b
cmp r8, rsi
jbe 0x140055a02
mov r15b, byte [rdx + r8 - 1]
jmp 0x140055a05
mov r15b, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r10b
mov byte [rsp + 0x38], cl
xor dl, r15b
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x140055a17
xor r13b, r13b
xor r10d, r10d
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
lea rax, [r8*8]
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor r12, rax
movabs rax, 0xaebdccdb0a192837
xor r12, rax
mov qword [rsp + 0x50], r12
mov al, byte [rsp + r11 + 0x50]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov edx, r14d
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rsp + 0x38]
xor r13b, sil
cmovne rdx, qword [rsp + 0x40]
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140055a35
movzx eax, r15b
imul rcx, rax, 0xff
not rcx
movzx eax, byte [rsp + 0x48]
shl rax, 7
sub rcx, rax
and r9, rdx
xor rcx, r9
mov qword [rsp + 0xc88], rcx
mov rdx, rbx
lea rcx, [rsp + 0xc68]
call fcn.14000a2a0
nop
mov rcx, rbx
call fcn.1400099b4
nop
lea rcx, [rsp + 0xdc0]
call fcn.1400099b4
nop
lea rcx, [rsp + 0x10a0]
call fcn.1400099b4
nop
lea rdx, [rsp + 0xc68]
cmp qword [rsp + 0xc80], 0x10
cmovae rdx, qword [rsp + 0xc68]
lea rbx, [0x1406a3110]
cmp byte [0x1406a2d01], 0
jne 0x140055b80
movabs r8, 0xfeeddccbbaa99887
mov rcx, rbx
movabs r9, 0xababdbf33353735b
mov rax, r8
xor rax, r9
mov qword [rcx], rax
mov eax, 0xffffffff
sub r8, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x140055b59
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
xor r11d, r11d
mov r9, rax
mov r8, qword [rsp + 0xc78]
test r8, r8
je 0x140055bde
mov r10, rdx
xor r9d, r9d
mov cl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x140055bb0
not cl
movzx eax, cl
mov r9, qword [rsp + 0x30]
xor r9, qword [rbx + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140055ba5
movabs r15, 0xaebdccdb0a192837
movzx r13d, byte [rdx]
cmp r8, rsi
jbe 0x140055bf8
mov bl, byte [rdx + r8 - 1]
jmp 0x140055bfa
mov bl, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r13b
mov byte [rsp + 0x38], cl
xor dl, bl
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x140055c0c
xor r12b, r12b
xor r10d, r10d
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
lea rax, [r8*8]
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor r15, rax
movabs rax, 0xaebdccdb0a192837
xor r15, rax
mov qword [rsp + 0x50], r15
mov al, byte [rsp + r11 + 0x50]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov edx, r14d
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rsp + 0x38]
xor r12b, sil
cmovne rdx, qword [rsp + 0x40]
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140055c29
movzx eax, bl
imul r8, rax, 0xff
not r8
mov rax, r13
shl rax, 7
sub r8, rax
and rdx, r9
xor r8, rdx
mov rdx, qword [rsp + 0xc88]
cmp r8, rdx
je 0x140055cf9
mov rbx, qword [0x1406a3908]
lea rcx, [rsp + 0xa10]
call fcn.14002d4ec
lea rdx, [rsp + 0xc68]
mov rcx, rax
call rbx
lea rdx, [rsp + 0xc68]
lea rcx, [rsp + 0x1040]
call fcn.14002b864
nop
lea rdx, [rsp + 0x1040]
lea rcx, [rsp + 0xf00]
call fcn.14002b864
mov r12, qword [rsp + 0xf10]
mov qword [rsp + 0x58], r12
lea r15, [rsp + 0xf00]
cmp qword [rsp + 0xf18], 0x10
cmovae r15, qword [rsp + 0xf00]
cmp byte [0x1406a2b50], 0
jne 0x140055f55
xor r12d, r12d
lea r13, [0x140000000]
lea rcx, [rsp + 0x38]
call fcn.140063754
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2b60], rax
lea rcx, [rsp + 0x330]
call fcn.140063754
mov rbx, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2be0], rax
lea rcx, [rsp + 0x340]
call fcn.140063754
mov rbx, qword [rax]
mov qword [rsp + 0x38], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2c60], rax
add r12, r14
cmp r12, 0x80
jl 0x140055d62
lea rcx, [rsp + 0x50]
call fcn.140063754
xor r12d, r12d
lea r13, [0x1406a2ce0]
mov rbx, qword [rsp + 0x50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140055e96
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r13], dl
add r12d, esi
add r13, rsi
cmp r12d, 4
jb 0x140055e82
lea rcx, [rsp + 0x350]
call fcn.140063754
mov r13, qword [rax]
xor ebx, ebx
lea r12, [0x1406a2ce8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140055ee2
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [r12], dl
add ebx, esi
add r12, rsi
cmp ebx, r14d
jb 0x140055ece
lea rcx, [rsp + 0x358]
call fcn.140063754
mov r13, qword [rax]
xor ebx, ebx
lea r12, [0x1406a2cf0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140055f2c
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [r12], dl
add ebx, esi
add r12, rsi
cmp ebx, 0xc
jb 0x140055f18
mov byte [0x1406a2b50], sil
mov r12, qword [rsp + 0x58]
test r12, r12
je 0x140056031
xor ebx, ebx
test r12, r12
je 0x140056031
lea r13, [0x140000000]
xor r8d, r8d
mov dl, byte [r15]
lea r9, [0x1406a2ce0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2b60]
mov byte [r15], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140055f83
add r8d, esi
add r9, rsi
cmp r8d, 4
jb 0x140055f7d
xor r10d, r10d
lea r11, [0x1406a2ce8]
xor r8d, r8d
xor r9d, r9d
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2be0]
mov byte [r15], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x140055fbd
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140055fb7
xor r8d, r8d
lea r9, [0x1406a2cf0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2b60]
mov byte [r15], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140055ff6
add r8d, esi
add r9, rsi
cmp r8d, 0xc
jb 0x140055ff0
add ebx, esi
add r15, rsi
movsxd rax, ebx
cmp rax, r12
jb 0x140055f70
lea rcx, [rsp + 0x1040]
call fcn.1400099b4
nop
lea rax, [rsp + 0xc40]
mov qword [rsp + 0x70], rax
lea rdx, [0x14021dd9e]
lea rcx, [rsp + 0xc40]
call fcn.14002b89c
nop
xor eax, eax
mov qword [rsp + 0xc60], rax
cmp byte [0x1406a3910], al
jne 0x140056088
lea rax, [0x14006b26c]
mov qword [0x1406a3908], rax
mov byte [0x1406a3910], sil
lea rdx, [0x14021dd9e]
lea rcx, [rsp + 0x718]
call fcn.14002b89c
mov rbx, rax
mov qword [rsp + 0x58], rax
mov r8, qword [rax + 0x10]
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1400560b5
mov rdx, qword [rax]
lea r15, [0x1406a3110]
cmp byte [0x1406a2d01], 0
jne 0x140056103
movabs r9, 0xfeeddccbbaa99887
mov rcx, r15
movabs r10, 0xababdbf33353735b
mov rax, r9
xor rax, r10
mov qword [rcx], rax
mov eax, 0xffffffff
sub r9, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x1400560dc
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
xor r11d, r11d
mov r9, rax
test r8, r8
je 0x140056159
mov r10, rdx
xor r9d, r9d
mov cl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x14005612b
not cl
movzx eax, cl
mov r9, qword [rsp + 0x30]
xor r9, qword [r15 + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140056120
movabs r12, 0xaebdccdb0a192837
mov r10b, byte [rdx]
mov byte [rsp + 0x48], r10b
cmp r8, rsi
jbe 0x140056177
mov r15b, byte [rdx + r8 - 1]
jmp 0x14005617a
mov r15b, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r10b
mov byte [rsp + 0x38], cl
xor dl, r15b
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x14005618c
xor r13b, r13b
xor r10d, r10d
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
lea rax, [r8*8]
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor r12, rax
movabs rax, 0xaebdccdb0a192837
xor r12, rax
mov qword [rsp + 0x50], r12
mov al, byte [rsp + r11 + 0x50]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov edx, r14d
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rsp + 0x38]
xor r13b, sil
cmovne rdx, qword [rsp + 0x40]
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x1400561aa
movzx eax, r15b
imul rcx, rax, 0xff
not rcx
movzx eax, byte [rsp + 0x48]
shl rax, 7
sub rcx, rax
and rdx, r9
xor rcx, rdx
mov qword [rsp + 0xc60], rcx
mov rdx, rbx
lea rcx, [rsp + 0xc40]
call fcn.14000a2a0
nop
mov rcx, rbx
call fcn.1400099b4
nop
cmp byte [0x1406a3911], 0
jne 0x14005628f
lea rax, [0x14006b26c]
mov qword [0x1406a3908], rax
mov byte [0x1406a3911], sil
lea rdx, str.application_json
lea rcx, [rsp + 0x1100]
call fcn.14002b89c
nop
mov rdx, rax
lea rcx, [rsp + 0xf60]
call fcn.14002b864
mov r12, qword [rsp + 0xf70]
mov qword [rsp + 0x58], r12
lea r15, [rsp + 0xf60]
cmp qword [rsp + 0xf78], 0x10
cmovae r15, qword [rsp + 0xf60]
cmp byte [0x1406a2b50], 0
jne 0x1400564e5
xor r12d, r12d
lea r13, [0x140000000]
lea rcx, [rsp + 0x38]
call fcn.140063754
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2b60], rax
lea rcx, [rsp + 0x368]
call fcn.140063754
mov rbx, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2be0], rax
lea rcx, [rsp + 0x378]
call fcn.140063754
mov rbx, qword [rax]
mov qword [rsp + 0x38], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2c60], rax
add r12, r14
cmp r12, 0x80
jl 0x1400562f2
lea rcx, [rsp + 0x50]
call fcn.140063754
xor r12d, r12d
lea r13, [0x1406a2ce0]
mov rbx, qword [rsp + 0x50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140056426
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r13], dl
add r12d, esi
add r13, rsi
cmp r12d, 4
jb 0x140056412
lea rcx, [rsp + 0x388]
call fcn.140063754
mov r13, qword [rax]
xor ebx, ebx
lea r12, [0x1406a2ce8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140056472
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [r12], dl
add ebx, esi
add r12, rsi
cmp ebx, r14d
jb 0x14005645e
lea rcx, [rsp + 0x390]
call fcn.140063754
mov r13, qword [rax]
xor ebx, ebx
lea r12, [0x1406a2cf0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x1400564bc
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [r12], dl
add ebx, esi
add r12, rsi
cmp ebx, 0xc
jb 0x1400564a8
mov byte [0x1406a2b50], sil
mov r12, qword [rsp + 0x58]
test r12, r12
je 0x1400565c1
xor ebx, ebx
test r12, r12
je 0x1400565c1
lea r13, [0x140000000]
xor r8d, r8d
mov dl, byte [r15]
lea r9, [0x1406a2ce0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2b60]
mov byte [r15], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140056513
add r8d, esi
add r9, rsi
cmp r8d, 4
jb 0x14005650d
xor r10d, r10d
lea r11, [0x1406a2ce8]
xor r8d, r8d
xor r9d, r9d
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2be0]
mov byte [r15], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x14005654d
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140056547
xor r8d, r8d
lea r9, [0x1406a2cf0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2b60]
mov byte [r15], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140056586
add r8d, esi
add r9, rsi
cmp r8d, 0xc
jb 0x140056580
add ebx, esi
add r15, rsi
movsxd rax, ebx
cmp rax, r12
jb 0x140056500
lea rdx, [rsp + 0xf60]
lea rcx, [rsp + 0x738]
call fcn.14002b864
mov rbx, rax
mov qword [rsp + 0x70], rax
mov r8, qword [rax + 0x10]
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1400565ef
mov rdx, qword [rax]
lea r15, [0x1406a3110]
cmp byte [0x1406a2d01], 0
jne 0x14005663d
movabs r9, 0xfeeddccbbaa99887
mov rcx, r15
movabs r10, 0xababdbf33353735b
mov rax, r9
xor rax, r10
mov qword [rcx], rax
mov eax, 0xffffffff
sub r9, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x140056616
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
xor r11d, r11d
mov r9, rax
test r8, r8
je 0x140056693
mov r10, rdx
xor r9d, r9d
mov cl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x140056665
not cl
movzx eax, cl
mov r9, qword [rsp + 0x30]
xor r9, qword [r15 + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x14005665a
movabs r12, 0xaebdccdb0a192837
mov r10b, byte [rdx]
mov byte [rsp + 0x48], r10b
cmp r8, rsi
jbe 0x1400566b1
mov r15b, byte [r8 + rdx - 1]
jmp 0x1400566b4
mov r15b, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r10b
mov byte [rsp + 0x38], cl
xor dl, r15b
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x1400566c6
xor r13b, r13b
xor r10d, r10d
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
lea rax, [r8*8]
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor r12, rax
movabs rax, 0xaebdccdb0a192837
xor r12, rax
mov qword [rsp + 0x50], r12
mov al, byte [rsp + r11 + 0x50]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov edx, r14d
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rsp + 0x38]
xor r13b, sil
cmovne rdx, qword [rsp + 0x40]
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x1400566e4
movzx eax, r15b
imul rcx, rax, 0xff
not rcx
movzx eax, byte [rsp + 0x48]
shl rax, 7
sub rcx, rax
and rdx, r9
xor rcx, rdx
mov qword [rsp + 0xc60], rcx
mov rdx, rbx
lea rcx, [rsp + 0xc40]
call fcn.14000a2a0
nop
mov rcx, rbx
call fcn.1400099b4
nop
lea rcx, [rsp + 0xf60]
call fcn.1400099b4
nop
lea rcx, [rsp + 0x1100]
call fcn.1400099b4
nop
lea rdx, [rsp + 0xc40]
cmp qword [rsp + 0xc58], 0x10
cmovae rdx, qword [rsp + 0xc40]
lea rbx, [0x1406a3110]
cmp byte [0x1406a2d01], 0
jne 0x14005682f
movabs r8, 0xfeeddccbbaa99887
mov rcx, rbx
movabs r9, 0xababdbf33353735b
mov rax, r8
xor rax, r9
mov qword [rcx], rax
mov eax, 0xffffffff
sub r8, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x140056808
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
xor r11d, r11d
mov r9, rax
mov r8, qword [rsp + 0xc50]
test r8, r8
je 0x14005688d
mov r10, rdx
xor r9d, r9d
mov cl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x14005685f
not cl
movzx eax, cl
mov r9, qword [rsp + 0x30]
xor r9, qword [rbx + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140056854
movabs r15, 0xaebdccdb0a192837
movzx r13d, byte [rdx]
cmp r8, rsi
jbe 0x1400568a7
mov bl, byte [rdx + r8 - 1]
jmp 0x1400568a9
mov bl, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r13b
mov byte [rsp + 0x38], cl
xor dl, bl
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x1400568bb
xor r12b, r12b
xor r10d, r10d
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
lea rax, [r8*8]
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor r15, rax
movabs rax, 0xaebdccdb0a192837
xor r15, rax
mov qword [rsp + 0x50], r15
mov al, byte [rsp + r11 + 0x50]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov edx, r14d
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rsp + 0x38]
xor r12b, sil
cmovne rdx, qword [rsp + 0x40]
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x1400568d8
movzx eax, bl
imul r8, rax, 0xff
not r8
mov rax, r13
shl rax, 7
sub r8, rax
and rdx, r9
xor r8, rdx
mov rdx, qword [rsp + 0xc60]
cmp r8, rdx
je 0x1400569a8
mov rbx, qword [0x1406a3908]
lea rcx, [rsp + 0x9d8]
call fcn.14002d4ec
lea rdx, [rsp + 0xc40]
mov rcx, rax
call rbx
lea rdx, [rsp + 0xc40]
lea rcx, [rsp + 0x1020]
call fcn.14002b864
nop
lea rdx, [rsp + 0x1020]
lea rcx, [rsp + 0xf20]
call fcn.14002b864
mov r12, qword [rsp + 0xf30]
mov qword [rsp + 0x58], r12
lea r15, [rsp + 0xf20]
cmp qword [rsp + 0xf38], 0x10
cmovae r15, qword [rsp + 0xf20]
cmp byte [0x1406a2b50], 0
jne 0x140056c04
xor r12d, r12d
lea r13, [0x140000000]
lea rcx, [rsp + 0x38]
call fcn.140063754
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2b60], rax
lea rcx, [rsp + 0x3a0]
call fcn.140063754
mov rbx, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2be0], rax
lea rcx, [rsp + 0x3b0]
call fcn.140063754
mov rbx, qword [rax]
mov qword [rsp + 0x38], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2c60], rax
add r12, r14
cmp r12, 0x80
jl 0x140056a11
lea rcx, [rsp + 0x50]
call fcn.140063754
xor r12d, r12d
lea r13, [0x1406a2ce0]
mov rbx, qword [rsp + 0x50]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140056b45
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, rbx
cqo
idiv rcx
mov byte [r13], dl
add r12d, esi
add r13, rsi
cmp r12d, 4
jb 0x140056b31
lea rcx, [rsp + 0x3c0]
call fcn.140063754
mov r13, qword [rax]
xor ebx, ebx
lea r12, [0x1406a2ce8]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140056b91
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [r12], dl
add ebx, esi
add r12, rsi
cmp ebx, r14d
jb 0x140056b7d
lea rcx, [rsp + 0x3c8]
call fcn.140063754
mov r13, qword [rax]
xor ebx, ebx
lea r12, [0x1406a2cf0]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x8000000f
jge 0x140056bdb
sub eax, esi
or eax, 0xfffffff0
add eax, esi
add al, sil
movsx rcx, al
mov rax, r13
cqo
idiv rcx
mov byte [r12], dl
add ebx, esi
add r12, rsi
cmp ebx, 0xc
jb 0x140056bc7
mov byte [0x1406a2b50], sil
mov r12, qword [rsp + 0x58]
test r12, r12
je 0x140056ce0
xor ebx, ebx
test r12, r12
je 0x140056ce0
lea r13, [0x140000000]
xor r8d, r8d
mov dl, byte [r15]
lea r9, [0x1406a2ce0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2b60]
mov byte [r15], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140056c32
add r8d, esi
add r9, rsi
cmp r8d, 4
jb 0x140056c2c
xor r10d, r10d
lea r11, [0x1406a2ce8]
xor r8d, r8d
xor r9d, r9d
movzx eax, byte [r11]
lea rcx, [r9 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2be0]
mov byte [r15], dl
add r8d, esi
add r9, rsi
cmp r8d, r14d
jb 0x140056c6c
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140056c66
xor r8d, r8d
lea r9, [0x1406a2cf0]
xor r10d, r10d
xor r11d, r11d
movzx eax, byte [r9]
lea rcx, [r11 + rax*8]
xor dl, byte [rcx + r13 + 0x6a2b60]
mov byte [r15], dl
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140056ca5
add r8d, esi
add r9, rsi
cmp r8d, 0xc
jb 0x140056c9f
add ebx, esi
add r15, rsi
movsxd rax, ebx
cmp rax, r12
jb 0x140056c1f
lea rcx, [rsp + 0x1020]
call fcn.1400099b4
nop
lea r8, [rsp + 0xf20]
lea rdx, [rsp + 0xf00]
lea rcx, [rsp + 0x1180]
call fcn.14001acdc
nop
lea rax, [rsp + 0x1180]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x11c0]
mov qword [rsp + 0x78], rax
lea r8, [rsp + 0x80]
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x610]
call fcn.14002c30c
nop
and dword [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
mov r9b, 0x20
mov r8d, edi
lea rdx, [rsp + 0x1160]
lea rcx, [rsp + 0xd0]
call fcn.14005e404
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0xc18]
mov qword [rsp + 0x70], rax
lea rdx, [0x14021dd9e]
lea rcx, [rsp + 0xc18]
call fcn.14002b89c
nop
xor eax, eax
mov qword [rsp + 0xc38], rax
cmp byte [0x1406a3910], al
jne 0x140056db7
lea rax, [0x14006b26c]
mov qword [0x1406a3908], rax
mov byte [0x1406a3910], sil
lea rdx, [0x14021dd9e]
lea rcx, [rsp + 0x778]
call fcn.14002b89c
mov rbx, rax
mov qword [rsp + 0x58], rax
mov r8, qword [rax + 0x10]
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140056de4
mov rdx, qword [rax]
lea r15, [0x1406a3110]
cmp byte [0x1406a2d01], 0
jne 0x140056e32
movabs r9, 0xfeeddccbbaa99887
mov rcx, r15
movabs r10, 0xababdbf33353735b
mov rax, r9
xor rax, r10
mov qword [rcx], rax
mov eax, 0xffffffff
sub r9, rax
add rcx, r14
lea rax, [0x1406a3908]
cmp rcx, rax
jl 0x140056e0b
mov byte [0x1406a2d01], sil
movabs rax, 0xfae9e8d7c6b5a493
mov qword [rsp + 0x30], rax
xor r11d, r11d
mov r9, rax
test r8, r8
je 0x140056e88
mov r10, rdx
xor r9d, r9d
mov cl, byte [r10]
lea rax, [rsp + 0x30]
xor byte [rax], cl
add r9d, esi
add rax, rsi
cmp r9d, r14d
jb 0x140056e5a
not cl
movzx eax, cl
mov r9, qword [rsp + 0x30]
xor r9, qword [r15 + rax*8]
mov qword [rsp + 0x30], r9
add r11d, esi
add r10, rsi
movsxd rax, r11d
cmp rax, r8
jb 0x140056e4f
movabs r12, 0xaebdccdb0a192837
mov r10b, byte [rdx]
mov byte [rsp + 0x48], r10b
cmp r8, rsi
jbe 0x140056ea6
mov r15b, byte [r8 + rdx - 1]
jmp 0x140056ea9
mov r15b, 0xae
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r8
xor eax, eax
mov cl, r8b
mov dl, r8b
xor cl, r10b
mov byte [rsp + 0x38], cl
xor dl, r15b
mov byte [rsp + 0x40], dl
add eax, esi
cmp eax, r14d
jb 0x140056ebb
xor r13b, r13b
xor r10d, r10d
xor r11d, r11d
mov eax, r10d
test r10d, r10d
cmove eax, esi
shl eax, 3
movsxd rcx, eax
xor edx, edx
lea rax, [r8*8]
div rcx
mov rcx, rdx
mov rax, r8
shl rax, cl
xor r12, rax
movabs rax, 0xaebdccdb0a192837
xor r12, rax
mov qword [rsp + 0x50], r12
mov al, byte [rsp + r11 + 0x50]
xor byte [rsp + r11 + 0x30], al
lea eax, [r10*8]
mov edx, r14d
test eax, eax
cmovg edx, eax
mov ecx, 0x40
sub ecx, edx
mov rdx, qword [rsp + 0x38]
xor r13b, sil
cmovne rdx, qword [rsp + 0x40]
shl rdx, cl
xor rdx, qword [rsp + 0x30]
mov qword [rsp + 0x30], rdx
add r10d, esi
add r11, rsi
cmp r10d, r14d
jb 0x140056ed9
movzx eax, r15b
imul rcx, rax, 0xff
not rcx
movzx eax, byte [rsp + 0x48]
shl rax, 7
sub rcx, rax
and rdx, r9
xor rcx, rdx
mov qword [rsp + 0xc38], rcx
mov rdx, rbx
lea rcx, [rsp + 0xc18]
call fcn.14000a2a0
nop
mov rcx, rbx
call fcn.1400099b4
nop
cmp byte [0x1406a3911], 0
jne 0x140056fbe
lea rax, [0x14006b26c]
mov qword [0x1406a3908], rax
mov byte [0x1406a3911], sil
lea rdx, str.POST
lea rcx, [rsp + 0x1120]
call fcn.14002b89c
nop
mov rdx, rax
lea rcx, [rsp + 0xf40]
call fcn.14002b864
mov r12, qword [rsp + 0xf50]
mov qword [rsp + 0x58], r12
lea r15, [rsp + 0xf40]
cmp qword [rsp + 0xf58], 0x10
cmovae r15, qword [rsp + 0xf40]
cmp byte [0x1406a2b50], 0
jne 0x140057214
xor r12d, r12d
lea r13, [0x140000000]
lea rcx, [rsp + 0x38]
call fcn.140063754
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, qword [rsp + 0x38]
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0xf
add rax, rdx
and eax, 0xf
sub rax, rdx
add rax, rsi
xor rax, 0x10
shl rax, 0xa
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2b60], rax
lea rcx, [rsp + 0x3d8]
call fcn.140063754
mov rbx, qword [rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x1f
add rax, rdx
and eax, 0x1f
sub rax, rdx
add rax, rsi
xor rax, 0x20
shl rax, 0xb
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2be0], rax
lea rcx, [rsp + 0x3e8]
call fcn.140063754
mov rbx, qword [rax]
mov qword [rsp + 0x38], rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, rbx
cqo
idiv rcx
mov rax, rdx
cqo
and edx, 0x3f
add rax, rdx
and eax, 0x3f
sub rax, rdx
add rax, rsi
xor rax, 0x40
shl rax, 0xc
movabs rcx, 0x101010101010101
or rax, rcx
mov qword [r12 + r13 + 0x6a2c60], rax
add r12, r14
cmp r12, 0x80
jl 0x140057021
test r12, r12
je 0x1400572f0