Function at 0x1400bd2e0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rsi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xa8]
sub rsp, 0x1a8
xor r13d, r13d
xor r8d, r8d
mov dword [rsp + 0x20], r13d
mov r12, r9
mov eax, dword [0x14011f8e8]
lea r9, [rsp + 0x20]
mov dword [rsp + 0x20], eax
mov esi, edx
movzx eax, word [0x14011f8ec]
mov r10, rcx
xor byte [rsp + 0x21], 0x31
xor byte [rsp + 0x22], 0x32
xor byte [rsp + 0x23], 0x33
mov word [rsp + 0x24], ax
movzx eax, byte [0x14011f8ee]
xor byte [rsp + 0x24], 0x34
xor byte [rsp + 0x25], 0x35
xor al, 0x36
mov qword [rsp + 0x28], r8
mov byte [rsp + 0x26], al
mov byte [rsp + 0x20], 0x76
nop word [rax + rax]
inc r9
cmp byte [r9], r8b
jne 0x1400bd370
mov r14, qword [rcx + 0x88]
lea rax, [rsp + 0x20]
sub r9, rax
mov qword [rsp + 0x1a0], rbx
mov qword [rsp + 0x198], rdi
mov r15d, select
test r14, r14
je 0x1400bd4af
mov rcx, qword [r14]
test rcx, rcx
je 0x1400bd3b4
mov rax, qword [r14 + 0x10]
jmp 0x1400bd3bd
xor eax, eax
lea rcx, [0x1402595e8]
cmp rax, r9
jne 0x1400bd4a2
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x1400bd400
lea rdx, [rsp + 0x20]
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1400bd4a2
inc rcx
cmp rcx, r8
jb 0x1400bd3e0
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [r14 + 0x40]
test rax, rax
je 0x1400bd4c2
mov rax, qword [rax + 8]
lea rdx, [0x1402595e8]
test rax, rax
mov qword [rsp + 0x68], r15
mov r8, 0xffffffffffffffff
cmovne rdx, rax
xor r12d, r12d
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x60], r12
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], r12b
jne 0x1400bd440
lea rcx, [rsp + 0x50]
call fcn.140019990
or r13d, 1
call fcn.1400f50d8
cmp qword [rsp + 0x68], 0x10
lea rbx, [rsp + 0x50]
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x20]
cmovae rbx, qword [rsp + 0x50]
mov rdi, rax
mov rcx, rbx
mov dword [rax], r12d
call fcn.1400f6348
cmp rbx, qword [rsp + 0x20]
je 0x1400be6dd
cmp dword [rdi], 0x22
je 0x1400be6d0
cmp eax, esi
jne 0x1400bd4c5
mov bl, 1
jmp 0x1400bd4c7
mov r14, qword [r14 + 0x58]
test r14, r14
jne 0x1400bd3a6
mov r13, qword [rbp + 0xe0]
lea r14, [r10 + 0xb8]
jmp 0x1400bdcfa
xor r12d, r12d
xor bl, bl
test r13b, 1
je 0x1400bd50e
mov rdx, qword [rsp + 0x68]
and r13d, 0xfffffffe
cmp rdx, 0x10
jb 0x1400bd50e
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400bd509
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400be6ea
call fcn.1400e9d60
test bl, bl
je 0x1400bd83d
mov rdi, qword [r14 + 0x30]
mov rdx, r14
mov qword [rsp + 0x28], rdx
test rdi, rdi
je 0x1400bd694
jmp 0x1400bd533
xor r12d, r12d
mov rax, qword [rdi + 0x40]
lea rdx, [0x1402595e8]
mov qword [rsp + 0x30], r12
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], r15
mov rcx, qword [rax + 8]
test rcx, rcx
cmovne rdx, rcx
nop
inc r8
cmp byte [rdx + r8], 0
jne 0x1400bd560
lea rcx, [rsp + 0x30]
call fcn.140019990
call fcn.1400f50d8
cmp qword [rsp + 0x48], 0x10
lea rbx, [rsp + 0x30]
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x70]
cmovae rbx, qword [rsp + 0x30]
mov rsi, rax
mov rcx, rbx
mov dword [rax], r12d
call fcn.1400f6348
mov r12d, eax
cmp rbx, qword [rsp + 0x70]
je 0x1400be709
cmp dword [rsi], 0x22
je 0x1400be6fc
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1400bd5f7
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400bd5f2
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400be6f0
call fcn.1400e9d60
mov rax, qword [rdi + 8]
lea rdx, [0x1402595e8]
test rax, rax
mov qword [rsp + 0x68], r15
mov r8, 0xffffffffffffffff
cmovne rdx, rax
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x60], rax
inc r8
cmp byte [rdx + r8], al
jne 0x1400bd621
lea rcx, [rsp + 0x50]
call fcn.140019990
cmp r12d, dword [rbp + 0xf0]
je 0x1400bd847
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x1400bd67e
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400bd679
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400be6f6
call fcn.1400e9d60
mov rdi, qword [rdi + 0x58]
test rdi, rdi
jne 0x1400bd530
mov esi, dword [rbp + 0xe8]
mov rdx, r14
mov r14, qword [r14 + 0x58]
test r14, r14
jne 0x1400bd400
mov r13, qword [rbp + 0xe0]
lea r14, [r13 + 0xb8]
test rdx, rdx
je 0x1400bdcf3
mov r13, qword [rbp + 0xf8]
mov rdi, r13
cmp qword [r13 + 0x18], 0x10
jb 0x1400bd6cd
mov rdi, qword [r13]
cmp byte [rdi], 0
mov rbx, rdi
je 0x1400bd6e8
mov qword [rsp + 0x28], rdx
nop word [rax + rax]
inc rbx
cmp byte [rbx], 0
jne 0x1400bd6e0
sub rbx, rdi
mov rcx, r14
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov r12, rax
test rbx, rbx
je 0x1400bd720
mov rdx, rax
sub rdi, rax
nop word [rax + rax]
movzx ecx, byte [rdi + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400bd710
mov eax, dword [str.FPFQ5]
lea rbx, [rsp + 0x20]
mov dword [rsp + 0x20], eax
movzx eax, word [0x14011f8f4]
xor byte [rsp + 0x21], 0x31
xor byte [rsp + 0x22], 0x32
xor byte [rsp + 0x23], 0x33
mov word [rsp + 0x24], ax
xor byte [rsp + 0x24], 0x34
xor byte [rsp + 0x25], 0x35
mov byte [rsp + 0x20], 0x76
nop dword [rax]
inc rbx
cmp byte [rbx], 0
jne 0x1400bd760
lea rax, [rsp + 0x20]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov rsi, rax
test rbx, rbx
je 0x1400bd7b0
mov rdx, rax
lea rax, [rsp + 0x20]
sub rax, rdx
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400bd7a0
mov edx, 0x60
mov rcx, r14
call fcn.1400b4e20
xor ebx, ebx
mov rdi, rax
mov qword [rax], rbx
mov qword [rax + 8], rbx
mov qword [rax + 0x20], rbx
mov dword [rax + 0x28], 1
mov qword [rax + 0x30], rbx
mov qword [rax + 0x40], rbx
test rsi, rsi
je 0x1400bd7f9
mov rax, rsi
cmp byte [rsi], bl
je 0x1400bd7ef
inc rax
cmp byte [rax], bl
jne 0x1400bd7e8
sub rax, rsi
mov qword [rdi], rsi
mov qword [rdi + 0x10], rax
test r12, r12
je 0x1400bd819
mov rax, r12
cmp byte [r12], bl
je 0x1400bd80e
inc rax
cmp byte [rax], bl
jne 0x1400bd807
sub rax, r12
mov qword [rdi + 8], r12
mov qword [rdi + 0x18], rax
mov r8, qword [rsp + 0x28]
cmp qword [r8 + 0x30], rbx
je 0x1400bd948
mov rax, qword [r8 + 0x38]
mov qword [rdi + 0x50], rax
mov rax, qword [r8 + 0x38]
mov qword [rax + 0x58], rdi
jmp 0x1400bd950
mov rdx, qword [rsp + 0x28]
jmp 0x1400bd694
mov r13, qword [rbp + 0xf8]
mov rdx, r13
mov rbx, qword [r13 + 0x18]
mov rax, qword [r13 + 0x10]
cmp rbx, 0x10
jb 0x1400bd863
mov rdx, qword [r13]
mov r15, qword [rsp + 0x68]
lea rcx, [rsp + 0x50]
mov r14, qword [rsp + 0x50]
cmp r15, 0x10
mov r8, qword [rsp + 0x60]
cmovae rcx, r14
cmp r8, rax
jne 0x1400bd88d
call fcn.1400ecb20
test eax, eax
je 0x1400bd908
mov rcx, qword [rbp + 0xe0]
mov rsi, r13
add rcx, 0xb8
cmp rbx, 0x10
jb 0x1400bd8a8
mov rsi, qword [r13]
cmp byte [rsi], 0
mov rbx, rsi
je 0x1400bd8b8
inc rbx
cmp byte [rbx], 0
jne 0x1400bd8b0
sub rbx, rsi
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov r8, rax
test rbx, rbx
je 0x1400bd8f0
mov rdx, rax
sub rsi, rax
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [rsi + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400bd8e0
cmp byte [rax], 0
je 0x1400bd8fd
inc rax
cmp byte [rax], 0
jne 0x1400bd8f5
sub rax, r8
mov qword [rdi + 8], r8
mov qword [rdi + 0x18], rax
cmp r15, 0x10
jb 0x1400be6a1
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x1400bd93b
mov r14, qword [r14 - 8]
add rdx, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400be6f6
mov rcx, r14
call fcn.1400e9d60
jmp 0x1400be6a1
mov qword [rdi + 0x50], rbx
mov qword [r8 + 0x30], rdi
mov qword [r8 + 0x38], rdi
lea rcx, [rbp - 0x80]
mov edx, 1
mov qword [rdi + 0x20], r8
mov qword [rdi + 0x58], rbx
call fcn.140020b50
movzx eax, word [0x14011f8f8]
lea rdx, [rbp + 0xe0]
mov word [rbp + 0xe0], ax
lea rcx, [rbp - 0x70]
movzx eax, byte [0x14011f8fa]
xor byte [rbp + 0xe1], 0x31
xor al, 0x32
mov byte [rbp + 0xe2], al
mov byte [rbp + 0xe0], 0x30
call fcn.1400b8570
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
mov ecx, dword [rdx + rax + 0x18]
and ecx, 0xfffff9ff
bts ecx, 0xb
mov dword [rdx + rax + 0x18], ecx
mov rcx, rax
mov edx, dword [rbp + 0xf0]
call fcn.1400bc250
mov rdx, qword [rbp + 8]
xorps xmm0, xmm0
mov eax, edx
mov qword [rsp + 0x30], rbx
and al, 0x22
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], r15
mov rcx, rbx
movups xmmword [rsp + 0x50], xmm0
cmp al, 2
je 0x1400bda13
mov rax, qword [rbp - 0x28]
mov r8, qword [rax]
test r8, r8
je 0x1400bda13
cmp r8, qword [rbp]
mov rax, qword [rbp - 0x48]
cmovb r8, qword [rbp]
mov rdx, qword [rax]
sub r8, rdx
jmp 0x1400bda44
test dl, 4
jne 0x1400bda3a
mov rax, qword [rbp - 0x30]
mov r9, qword [rax]
test r9, r9
je 0x1400bda3a
mov rax, qword [rbp - 0x50]
mov rdx, qword [rax]
mov rax, qword [rbp - 0x18]
movsxd r8, dword [rax]
sub r8, rdx
add r8, r9
jmp 0x1400bda44
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x1400bda5d
lea rcx, [rsp + 0x30]
call fcn.140019990
mov rcx, qword [rsp + 0x30]
mov r15, qword [rsp + 0x48]
cmp r15, 0x10
lea rsi, [rsp + 0x30]
cmovae rsi, rcx
mov rbx, rsi
cmp byte [rsi], 0
je 0x1400bda7a
inc rbx
cmp byte [rbx], 0
jne 0x1400bda72
sub rbx, rsi
mov rcx, r14
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov r15, rax
test rbx, rbx
je 0x1400bdab0
mov rdx, rax
sub rsi, rax
nop dword [rax]
movzx ecx, byte [rsi + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400bdaa0
mov eax, dword [str._TK3FPFQF6]
xor r12d, r12d
cmp byte [0x14011f8ff], r12b
mov dword [rbp + 0xe0], eax
je 0x1400bdbc0
cmp dword [0x1402567d0], 2
mov r8d, r12d
jl 0x1400bdb7d
movdqa xmm3, xmmword [0x140119390]
mov r13d, 5
movdqa xmm2, xmm3
movdqa xmm0, xmm3
punpckldq xmm2, xmm3
mov ecx, 0x1f
pmuldq xmm2, xmmword [0x14011a630]
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14011a630]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
movd xmm0, r13d
mov r13, qword [rbp + 0xf8]
psrad xmm2, xmm0
movd xmm0, ecx
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [str.3333]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, eax
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401193d0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.0000000000000000u]
pxor xmm2, xmm0
movd eax, xmm2
mov dword [rbp + 0xe0], eax
jmp 0x1400bdbc0
lea r9, [rbp + 0xe0]
nop dword [rax]
nop dword [rax + rax]
mov eax, 0xa0a0a0a1
lea r9, [r9 + 1]
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 4
jl 0x1400bdb90
mov eax, dword [rbp + 0xe0]
lea rbx, [rbp + 0xe0]
test al, al
je 0x1400bdbd8
nop dword [rax + rax]
inc rbx
cmp byte [rbx], 0
jne 0x1400bdbd0
lea rax, [rbp + 0xe0]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov rsi, rax
test rbx, rbx
je 0x1400bdc20
mov rdx, rax
lea rax, [rbp + 0xe0]
sub rax, rdx
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400bdc10
mov edx, 0x38
mov rcx, r14
call fcn.1400b4e20
mov rbx, rax
mov qword [rax], r12
mov qword [rax + 8], r12
mov qword [rax + 0x20], r12
test rsi, rsi
je 0x1400bdc5a
cmp byte [rsi], 0
mov rcx, rsi
je 0x1400bdc50
inc rcx
cmp byte [rcx], 0
jne 0x1400bdc48
sub rcx, rsi
mov qword [rax], rsi
mov qword [rax + 0x10], rcx
test r15, r15
je 0x1400bdc7b
cmp byte [r15], 0
mov rax, r15
je 0x1400bdc70
inc rax
cmp byte [rax], 0
jne 0x1400bdc68
sub rax, r15
mov qword [rbx + 8], r15
mov qword [rbx + 0x18], rax
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1400bdcb8
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400bdcb3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400be716
call fcn.1400e9d60
cmp qword [rdi + 0x40], 0
je 0x1400bdcd1
mov rax, qword [rdi + 0x48]
mov qword [rbx + 0x28], rax
mov rax, qword [rdi + 0x48]
mov qword [rax + 0x30], rbx
jmp 0x1400bdcd9
mov qword [rbx + 0x28], r12
mov qword [rdi + 0x40], rbx
mov qword [rdi + 0x48], rbx
lea rcx, [rbp - 0x80]
mov qword [rbx + 0x20], rdi
mov qword [rbx + 0x30], r12
call fcn.1400241e0
jmp 0x1400be6a1
mov r12, qword [rbp + 0xf8]
mov eax, dword [0x14011f900]
lea rbx, [rsp + 0x28]
mov dword [rsp + 0x28], eax
movzx eax, word [0x14011f904]
xor byte [rsp + 0x29], 0x31
xor byte [rsp + 0x2a], 0x32
xor byte [rsp + 0x2b], 0x33
mov word [rsp + 0x2c], ax
movzx eax, byte [0x14011f906]
xor byte [rsp + 0x2c], 0x34
xor byte [rsp + 0x2d], 0x35
xor al, 0x36
mov byte [rsp + 0x28], 0x76
mov byte [rsp + 0x2e], al
inc rbx
cmp byte [rbx], 0
jne 0x1400bdd40
lea rax, [rsp + 0x28]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov rsi, rax
test rbx, rbx
je 0x1400bdd90
mov rdx, rax
lea rax, [rsp + 0x28]
sub rax, rdx
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400bdd80
mov edx, 0x60
mov rcx, r14
call fcn.1400b4e20
xor ebx, ebx
mov rdi, rax
mov qword [rax], rbx
mov qword [rax + 8], rbx
mov qword [rax + 0x20], rbx
mov dword [rax + 0x28], 1
mov qword [rax + 0x30], rbx
mov qword [rax + 0x40], rbx
test rsi, rsi
je 0x1400bddd9
mov rax, rsi
cmp byte [rsi], bl
je 0x1400bddcf
inc rax
cmp byte [rax], bl
jne 0x1400bddc8
sub rax, rsi
mov qword [rdi], rsi
mov qword [rdi + 0x10], rax
lea rcx, [r13 + 0x58]
cmp qword [rcx + 0x30], rbx
je 0x1400bddf5
mov rax, qword [rcx + 0x38]
mov qword [rdi + 0x50], rax
mov rax, qword [rcx + 0x38]
mov qword [rax + 0x58], rdi
jmp 0x1400bddfd
mov qword [rdi + 0x50], rbx
mov qword [rcx + 0x30], rdi
mov qword [rcx + 0x38], rdi
mov edx, 1
mov qword [rdi + 0x20], rcx
lea rcx, [rbp - 0x80]
mov qword [rdi + 0x58], rbx
call fcn.140020b50
movzx eax, word [0x14011f908]
lea rdx, [rbp + 0xe0]
mov word [rbp + 0xe0], ax
lea rcx, [rbp - 0x70]
movzx eax, byte [0x14011f90a]
xor byte [rbp + 0xe1], 0x31
xor al, 0x32
mov byte [rbp + 0xe2], al
mov byte [rbp + 0xe0], 0x30
call fcn.1400b8570
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
mov ecx, dword [rdx + rax + 0x18]
and ecx, 0xfffff9ff
bts ecx, 0xb
mov dword [rdx + rax + 0x18], ecx
mov rcx, rax
mov edx, dword [rbp + 0xe8]
call fcn.1400bc250
mov edx, dword [rbp + 8]
xorps xmm0, xmm0
mov eax, edx
mov qword [rsp + 0x30], rbx
and al, 0x22
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], r15
mov rcx, rbx
movups xmmword [rsp + 0x50], xmm0
cmp al, 2
je 0x1400bdebf
mov rax, qword [rbp - 0x28]
mov r8, qword [rax]
test r8, r8
je 0x1400bdebf
cmp r8, qword [rbp]
mov rax, qword [rbp - 0x48]
cmovb r8, qword [rbp]
mov rdx, qword [rax]
sub r8, rdx
jmp 0x1400bdef0
test dl, 4
jne 0x1400bdee6
mov rax, qword [rbp - 0x30]
mov r9, qword [rax]
test r9, r9
je 0x1400bdee6
mov rax, qword [rbp - 0x50]
mov rdx, qword [rax]
mov rax, qword [rbp - 0x18]
movsxd r8, dword [rax]
sub r8, rdx
add r8, r9
jmp 0x1400bdef0
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x1400bdf09
lea rcx, [rsp + 0x30]
call fcn.140019990
mov rcx, qword [rsp + 0x30]
mov r15, qword [rsp + 0x48]
cmp r15, 0x10
lea rsi, [rsp + 0x30]
cmovae rsi, rcx
mov rbx, rsi
cmp byte [rsi], 0
je 0x1400bdf28
nop
inc rbx
cmp byte [rbx], 0
jne 0x1400bdf20
sub rbx, rsi
mov rcx, r14
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov r15, rax
test rbx, rbx
je 0x1400bdf60
mov rdx, rax
sub rsi, rax
nop word [rax + rax]
movzx ecx, byte [rsi + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400bdf50
cmp byte [0x14011f917], 0
mov rax, qword [str.CTQG_ZX7FPFQ5]
mov qword [rbp + 0xe0], rax
mov eax, 0x1f
lea r13d, [rax - 0x1a]
je 0x1400be0ea
xor r8d, r8d
cmp dword [0x1402567d0], 2
jl 0x1400be0b3
movdqa xmm2, xmmword [0x140119390]
movdqa xmm3, xmmword [0x1401193a0]
movdqa xmm1, xmm2
movdqa xmm4, xmmword [0x14011a630]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movaps xmmword [rsp + 0x180], xmm6
movd xmm6, r13d
movd xmm5, eax
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.3333]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rbp + 0xe0]
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
pand xmm2, xmmword [0x1401193d0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.0000000000000000u]
pxor xmm2, xmm0
punpckldq xmm1, xmm3
movd dword [rbp + 0xe0], xmm2
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movaps xmm6, xmmword [rsp + 0x180]
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [str.3333]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rbp + 0xe4]
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401193d0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.0000000000000000u]
pxor xmm2, xmm0
movd dword [rbp + 0xe4], xmm2
jmp 0x1400be0ea
lea r9, [rbp + 0xe0]
nop word [rax + rax]
mov eax, 0xa0a0a0a1
lea r9, [r9 + 1]
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x1400be0c0
cmp byte [rbp + 0xe0], 0
lea rbx, [rbp + 0xe0]
je 0x1400be108
nop word [rax + rax]
inc rbx
cmp byte [rbx], 0
jne 0x1400be100
lea rax, [rbp + 0xe0]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov rsi, rax
test rbx, rbx
je 0x1400be150
mov rdx, rax
lea rax, [rbp + 0xe0]
sub rax, rdx
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400be140
mov edx, 0x38
mov rcx, r14
call fcn.1400b4e20
xor r8d, r8d
mov rbx, rax
mov qword [rax], r8
mov qword [rax + 8], r8
mov qword [rax + 0x20], r8
test rsi, rsi
je 0x1400be192
mov rcx, rsi
cmp byte [rsi], r8b
je 0x1400be188
nop dword [rax + rax]
inc rcx
cmp byte [rcx], r8b
jne 0x1400be180
sub rcx, rsi
mov qword [rax], rsi
mov qword [rax + 0x10], rcx
test r15, r15
je 0x1400be1b3
mov rax, r15
cmp byte [r15], r8b
je 0x1400be1a8
nop
inc rax
cmp byte [rax], r8b
jne 0x1400be1a0
sub rax, r15
mov qword [rbx + 8], r15
mov qword [rbx + 0x18], rax
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1400be1f3
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400be1eb
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400be71c
call fcn.1400e9d60
xor r8d, r8d
cmp qword [rdi + 0x40], 0
je 0x1400be20c
mov rax, qword [rdi + 0x48]
mov qword [rbx + 0x28], rax
mov rax, qword [rdi + 0x48]
mov qword [rax + 0x30], rbx
jmp 0x1400be214
mov qword [rbx + 0x28], r8
mov qword [rdi + 0x40], rbx
mov qword [rdi + 0x48], rbx
mov rsi, r12
mov qword [rbx + 0x20], rdi
mov qword [rbx + 0x30], r8
cmp qword [r12 + 0x18], 0x10
jb 0x1400be22f
mov rsi, qword [r12]
cmp byte [rsi], 0
mov rbx, rsi
je 0x1400be23f
inc rbx
cmp byte [rbx], 0
jne 0x1400be237
sub rbx, rsi
mov rcx, r14
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov r12, rax
test rbx, rbx
je 0x1400be270
mov rdx, rax
sub rsi, rax
nop
movzx ecx, byte [rsi + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400be260
mov eax, dword [0x14011f918]
lea rbx, [rsp + 0x20]
mov dword [rsp + 0x20], eax
movzx eax, word [0x14011f91c]
xor byte [rsp + 0x21], 0x31
xor byte [rsp + 0x22], 0x32
xor byte [rsp + 0x23], 0x33
mov word [rsp + 0x24], ax
xor byte [rsp + 0x24], 0x34
xor byte [rsp + 0x25], 0x35
mov byte [rsp + 0x20], 0x76
nop dword [rax]
inc rbx
cmp byte [rbx], 0
jne 0x1400be2b0
lea rax, [rsp + 0x20]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov r15, rax
test rbx, rbx
je 0x1400be300
mov rdx, rax
lea rax, [rsp + 0x20]
sub rax, rdx
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400be2f0
mov edx, 0x60
mov rcx, r14
call fcn.1400b4e20
xor ebx, ebx
mov rsi, rax
mov qword [rax], rbx
mov qword [rax + 8], rbx
mov qword [rax + 0x20], rbx
mov dword [rax + 0x28], 1
mov qword [rax + 0x30], rbx
mov qword [rax + 0x40], rbx
test r15, r15
je 0x1400be351
mov rax, r15
cmp byte [r15], bl
je 0x1400be347
nop dword [rax]
inc rax
cmp byte [rax], bl
jne 0x1400be340
sub rax, r15
mov qword [rsi], r15
mov qword [rsi + 0x10], rax
test r12, r12
je 0x1400be372
mov rax, r12
cmp byte [r12], bl
je 0x1400be367
nop
inc rax
cmp byte [rax], bl
jne 0x1400be360
sub rax, r12
mov qword [rsi + 8], r12
mov qword [rsi + 0x18], rax
cmp qword [rdi + 0x30], rbx
je 0x1400be38a
mov rax, qword [rdi + 0x38]
mov qword [rsi + 0x50], rax
mov rax, qword [rdi + 0x38]
mov qword [rax + 0x58], rsi
jmp 0x1400be392
mov qword [rsi + 0x50], rbx
mov qword [rdi + 0x30], rsi
mov qword [rdi + 0x38], rsi
lea rcx, [rbp - 0x68]
mov qword [rsi + 0x20], rdi
mov qword [rsi + 0x58], rbx
call fcn.1400becd0
movzx eax, word [0x14011f920]
lea rdx, [rbp + 0xe0]
and dword [rbp + 8], 0xffffffdf
lea rcx, [rbp - 0x70]
mov word [rbp + 0xe0], ax
movzx eax, byte [0x14011f922]
xor byte [rbp + 0xe1], 0x31
xor al, 0x32
mov byte [rbp + 0xe2], al
mov qword [rbp], rbx
mov byte [rbp + 0xe0], 0x30
call fcn.1400b8570
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
mov ecx, dword [rdx + rax + 0x18]
and ecx, 0xfffff9ff
bts ecx, 0xb
mov dword [rdx + rax + 0x18], ecx
mov rcx, rax
mov edx, dword [rbp + 0xf0]
call fcn.1400bc250
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x80]
call fcn.1400bf060
mov rdi, rax
cmp qword [rax + 0x18], 0x10
jb 0x1400be42c
mov rdi, qword [rax]
cmp byte [rdi], 0
mov rbx, rdi
je 0x1400be43c
inc rbx
cmp byte [rbx], 0
jne 0x1400be434
sub rbx, rdi
mov rcx, r14
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov r15, rax
test rbx, rbx
je 0x1400be470
mov rdx, rax
sub rdi, rax
nop dword [rax + rax]
movzx ecx, byte [rdi + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400be460
mov eax, dword [str._TK3FPFQ5]
xor r12d, r12d
cmp byte [0x14011f927], r12b
mov dword [rbp + 0xe0], eax
je 0x1400be570
cmp dword [0x1402567d0], 2
mov r8d, r12d
jl 0x1400be530
movdqa xmm3, xmmword [0x140119390]
mov ecx, 0x1f
movdqa xmm2, xmm3
movdqa xmm0, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x14011a630]
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14011a630]
shufps xmm2, xmm0, 0xdd
paddd xmm2, xmm3
movd xmm0, r13d
psrad xmm2, xmm0
movd xmm0, ecx
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [str.3333]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, eax
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x1401193d0]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.0000000000000000u]
pxor xmm2, xmm0
movd eax, xmm2
mov dword [rbp + 0xe0], eax
jmp 0x1400be570
lea r9, [rbp + 0xe0]
nop word [rax + rax]
mov eax, 0xa0a0a0a1
lea r9, [r9 + 1]
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 4
jl 0x1400be540
mov eax, dword [rbp + 0xe0]
lea rbx, [rbp + 0xe0]
test al, al
je 0x1400be588
nop dword [rax + rax]
inc rbx
cmp byte [rbx], 0
jne 0x1400be580
lea rax, [rbp + 0xe0]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400b4e20
mov rdi, rax
test rbx, rbx
je 0x1400be5d0
mov rdx, rax
lea rax, [rbp + 0xe0]
sub rax, rdx
nop word [rax + rax]
movzx ecx, byte [rax + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400be5c0
mov edx, 0x38
mov rcx, r14
call fcn.1400b4e20
mov rbx, rax
mov qword [rax], r12
mov qword [rax + 8], r12
mov qword [rax + 0x20], r12
test rdi, rdi
je 0x1400be60a
cmp byte [rdi], 0
mov rcx, rdi
je 0x1400be600
inc rcx
cmp byte [rcx], 0
jne 0x1400be5f8
sub rcx, rdi
mov qword [rax], rdi
mov qword [rax + 0x10], rcx
test r15, r15
je 0x1400be62b
cmp byte [r15], 0
mov rax, r15
je 0x1400be620
inc rax
cmp byte [rax], 0
jne 0x1400be618
sub rax, r15
mov qword [rbx + 8], r15
mov qword [rbx + 0x18], rax
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1400be664
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400be65f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400be6ca
call fcn.1400e9d60
cmp qword [rsi + 0x40], 0
je 0x1400be67d
mov rax, qword [rsi + 0x48]
mov qword [rbx + 0x28], rax
mov rax, qword [rsi + 0x48]
mov qword [rax + 0x30], rbx
jmp 0x1400be685
mov qword [rbx + 0x28], r12
mov qword [rsi + 0x40], rbx
mov qword [rsi + 0x48], rbx
lea rcx, [rbp - 0x80]
mov qword [rbx + 0x20], rsi
mov qword [rbx + 0x30], r12
call fcn.1400241e0
mov r13, qword [rbp + 0xf8]
mov rcx, r13
mov rdi, qword [rsp + 0x198]
mov rbx, qword [rsp + 0x1a0]
add rsp, 0x1a8
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
jmp fcn.140015a70
call fcn.1400f0a1c
int3
lea rcx, str.stoul_argument_out_of_range
call fcn.1400e8354
int3
lea rcx, str.invalid_stoul_argument
call fcn.1400e830c
int3
call fcn.1400f0a1c
int3
call fcn.1400f0a1c
int3
call fcn.1400f0a1c
int3
lea rcx, str.stoul_argument_out_of_range
call fcn.1400e8354
int3
lea rcx, str.invalid_stoul_argument
call fcn.1400e830c
int3
call fcn.1400f0a1c
int3
call fcn.1400f0a1c
int3