Function at 0x1400afab0
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 [0x140111e38]
lea r9, [rsp + 0x20]
mov dword [rsp + 0x20], eax
mov esi, edx
movzx eax, word [0x140111e3c]
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 [0x140111e3e]
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 0x1400afb40
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 0x1400afc7f
mov rcx, qword [r14]
test rcx, rcx
je 0x1400afb84
mov rax, qword [r14 + 0x10]
jmp 0x1400afb8d
xor eax, eax
lea rcx, [0x14024b018]
cmp rax, r9
jne 0x1400afc72
lea r8, [rcx + rax]
cmp rcx, r8
jae 0x1400afbd0
lea rdx, [rsp + 0x20]
sub rdx, rcx
nop word [rax + rax]
movzx eax, byte [rcx + rdx]
cmp byte [rcx], al
jne 0x1400afc72
inc rcx
cmp rcx, r8
jb 0x1400afbb0
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [r14 + 0x40]
test rax, rax
je 0x1400afc92
mov rax, qword [rax + 8]
lea rdx, [0x14024b018]
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 0x1400afc10
lea rcx, [rsp + 0x50]
call fcn.140018350
or r13d, 1
call fcn.1400e7b78
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.1400e8de8
cmp rbx, qword [rsp + 0x20]
je 0x1400b0ead
cmp dword [rdi], 0x22
je 0x1400b0ea0
cmp eax, esi
jne 0x1400afc95
mov bl, 1
jmp 0x1400afc97
mov r14, qword [r14 + 0x58]
test r14, r14
jne 0x1400afb76
mov r13, qword [rbp + 0xe0]
lea r14, [r10 + 0xb8]
jmp 0x1400b04ca
xor r12d, r12d
xor bl, bl
test r13b, 1
je 0x1400afcde
mov rdx, qword [rsp + 0x68]
and r13d, 0xfffffffe
cmp rdx, 0x10
jb 0x1400afcde
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400afcd9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b0eba
call fcn.1400dc808
test bl, bl
je 0x1400b000d
mov rdi, qword [r14 + 0x30]
mov rdx, r14
mov qword [rsp + 0x28], rdx
test rdi, rdi
je 0x1400afe64
jmp 0x1400afd03
xor r12d, r12d
mov rax, qword [rdi + 0x40]
lea rdx, [0x14024b018]
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 0x1400afd30
lea rcx, [rsp + 0x30]
call fcn.140018350
call fcn.1400e7b78
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.1400e8de8
mov r12d, eax
cmp rbx, qword [rsp + 0x70]
je 0x1400b0ed9
cmp dword [rsi], 0x22
je 0x1400b0ecc
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1400afdc7
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400afdc2
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b0ec0
call fcn.1400dc808
mov rax, qword [rdi + 8]
lea rdx, [0x14024b018]
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 0x1400afdf1
lea rcx, [rsp + 0x50]
call fcn.140018350
cmp r12d, dword [rbp + 0xf0]
je 0x1400b0017
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x1400afe4e
mov rcx, qword [rsp + 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400afe49
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b0ec6
call fcn.1400dc808
mov rdi, qword [rdi + 0x58]
test rdi, rdi
jne 0x1400afd00
mov esi, dword [rbp + 0xe8]
mov rdx, r14
mov r14, qword [r14 + 0x58]
test r14, r14
jne 0x1400afbd0
mov r13, qword [rbp + 0xe0]
lea r14, [r13 + 0xb8]
test rdx, rdx
je 0x1400b04c3
mov r13, qword [rbp + 0xf8]
mov rdi, r13
cmp qword [r13 + 0x18], 0x10
jb 0x1400afe9d
mov rdi, qword [r13]
cmp byte [rdi], 0
mov rbx, rdi
je 0x1400afeb8
mov qword [rsp + 0x28], rdx
nop word [rax + rax]
inc rbx
cmp byte [rbx], 0
jne 0x1400afeb0
sub rbx, rdi
mov rcx, r14
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov r12, rax
test rbx, rbx
je 0x1400afef0
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 0x1400afee0
mov eax, dword [str.FPFQ5]
lea rbx, [rsp + 0x20]
mov dword [rsp + 0x20], eax
movzx eax, word [0x140111e44]
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 0x1400aff30
lea rax, [rsp + 0x20]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov rsi, rax
test rbx, rbx
je 0x1400aff80
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 0x1400aff70
mov edx, 0x60
mov rcx, r14
call fcn.1400a75e0
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 0x1400affc9
mov rax, rsi
cmp byte [rsi], bl
je 0x1400affbf
inc rax
cmp byte [rax], bl
jne 0x1400affb8
sub rax, rsi
mov qword [rdi], rsi
mov qword [rdi + 0x10], rax
test r12, r12
je 0x1400affe9
mov rax, r12
cmp byte [r12], bl
je 0x1400affde
inc rax
cmp byte [rax], bl
jne 0x1400affd7
sub rax, r12
mov qword [rdi + 8], r12
mov qword [rdi + 0x18], rax
mov r8, qword [rsp + 0x28]
cmp qword [r8 + 0x30], rbx
je 0x1400b0118
mov rax, qword [r8 + 0x38]
mov qword [rdi + 0x50], rax
mov rax, qword [r8 + 0x38]
mov qword [rax + 0x58], rdi
jmp 0x1400b0120
mov rdx, qword [rsp + 0x28]
jmp 0x1400afe64
mov r13, qword [rbp + 0xf8]
mov rdx, r13
mov rbx, qword [r13 + 0x18]
mov rax, qword [r13 + 0x10]
cmp rbx, 0x10
jb 0x1400b0033
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 0x1400b005d
call fcn.1400df5c0
test eax, eax
je 0x1400b00d8
mov rcx, qword [rbp + 0xe0]
mov rsi, r13
add rcx, 0xb8
cmp rbx, 0x10
jb 0x1400b0078
mov rsi, qword [r13]
cmp byte [rsi], 0
mov rbx, rsi
je 0x1400b0088
inc rbx
cmp byte [rbx], 0
jne 0x1400b0080
sub rbx, rsi
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov r8, rax
test rbx, rbx
je 0x1400b00c0
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 0x1400b00b0
cmp byte [rax], 0
je 0x1400b00cd
inc rax
cmp byte [rax], 0
jne 0x1400b00c5
sub rax, r8
mov qword [rdi + 8], r8
mov qword [rdi + 0x18], rax
cmp r15, 0x10
jb 0x1400b0e71
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x1400b010b
mov r14, qword [r14 - 8]
add rdx, 0x27
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b0ec6
mov rcx, r14
call fcn.1400dc808
jmp 0x1400b0e71
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.14001f3e0
movzx eax, word [0x140111e48]
lea rdx, [rbp + 0xe0]
mov word [rbp + 0xe0], ax
lea rcx, [rbp - 0x70]
movzx eax, byte [0x140111e4a]
xor byte [rbp + 0xe1], 0x31
xor al, 0x32
mov byte [rbp + 0xe2], al
mov byte [rbp + 0xe0], 0x30
call fcn.1400aad30
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.1400aea10
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 0x1400b01e3
mov rax, qword [rbp - 0x28]
mov r8, qword [rax]
test r8, r8
je 0x1400b01e3
cmp r8, qword [rbp]
mov rax, qword [rbp - 0x48]
cmovb r8, qword [rbp]
mov rdx, qword [rax]
sub r8, rdx
jmp 0x1400b0214
test dl, 4
jne 0x1400b020a
mov rax, qword [rbp - 0x30]
mov r9, qword [rax]
test r9, r9
je 0x1400b020a
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 0x1400b0214
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x1400b022d
lea rcx, [rsp + 0x30]
call fcn.140018350
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 0x1400b024a
inc rbx
cmp byte [rbx], 0
jne 0x1400b0242
sub rbx, rsi
mov rcx, r14
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov r15, rax
test rbx, rbx
je 0x1400b0280
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 0x1400b0270
mov eax, dword [str._TK3FPFQF6]
xor r12d, r12d
cmp byte [0x140111e4f], r12b
mov dword [rbp + 0xe0], eax
je 0x1400b0399
cmp dword [0x140248200], 2
mov r8d, r12d
jl 0x1400b034d
movdqa xmm3, xmmword [0x14010c2c0]
mov r13d, 5
movdqa xmm2, xmm3
movdqa xmm0, xmm3
punpckldq xmm2, xmm3
mov ecx, 0x1f
pmuldq xmm2, xmmword [0x14010fec0]
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14010fec0]
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.9999]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, eax
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14010c300]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140111ed0]
pxor xmm2, xmm0
movd eax, xmm2
mov dword [rbp + 0xe0], eax
jmp 0x1400b0399
lea r9, [rbp + 0xe0]
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x1f7047dd
lea r9, [r9 + 1]
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x39
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 4
jl 0x1400b0360
mov eax, dword [rbp + 0xe0]
lea rbx, [rbp + 0xe0]
test al, al
je 0x1400b03ac
inc rbx
cmp byte [rbx], 0
jne 0x1400b03a4
lea rax, [rbp + 0xe0]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov rsi, rax
test rbx, rbx
je 0x1400b03f0
mov rdx, rax
lea rax, [rbp + 0xe0]
sub rax, rdx
nop dword [rax]
movzx ecx, byte [rax + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400b03e0
mov edx, 0x38
mov rcx, r14
call fcn.1400a75e0
mov rbx, rax
mov qword [rax], r12
mov qword [rax + 8], r12
mov qword [rax + 0x20], r12
test rsi, rsi
je 0x1400b042a
cmp byte [rsi], 0
mov rcx, rsi
je 0x1400b0420
inc rcx
cmp byte [rcx], 0
jne 0x1400b0418
sub rcx, rsi
mov qword [rax], rsi
mov qword [rax + 0x10], rcx
test r15, r15
je 0x1400b044b
cmp byte [r15], 0
mov rax, r15
je 0x1400b0440
inc rax
cmp byte [rax], 0
jne 0x1400b0438
sub rax, r15
mov qword [rbx + 8], r15
mov qword [rbx + 0x18], rax
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1400b0488
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b0483
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b0ee6
call fcn.1400dc808
cmp qword [rdi + 0x40], 0
je 0x1400b04a1
mov rax, qword [rdi + 0x48]
mov qword [rbx + 0x28], rax
mov rax, qword [rdi + 0x48]
mov qword [rax + 0x30], rbx
jmp 0x1400b04a9
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.140022a50
jmp 0x1400b0e71
mov r12, qword [rbp + 0xf8]
mov eax, dword [0x140111e50]
lea rbx, [rsp + 0x28]
mov dword [rsp + 0x28], eax
movzx eax, word [0x140111e54]
xor byte [rsp + 0x29], 0x31
xor byte [rsp + 0x2a], 0x32
xor byte [rsp + 0x2b], 0x33
mov word [rsp + 0x2c], ax
movzx eax, byte [0x140111e56]
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 0x1400b0510
lea rax, [rsp + 0x28]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov rsi, rax
test rbx, rbx
je 0x1400b0560
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 0x1400b0550
mov edx, 0x60
mov rcx, r14
call fcn.1400a75e0
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 0x1400b05a9
mov rax, rsi
cmp byte [rsi], bl
je 0x1400b059f
inc rax
cmp byte [rax], bl
jne 0x1400b0598
sub rax, rsi
mov qword [rdi], rsi
mov qword [rdi + 0x10], rax
lea rcx, [r13 + 0x58]
cmp qword [rcx + 0x30], rbx
je 0x1400b05c5
mov rax, qword [rcx + 0x38]
mov qword [rdi + 0x50], rax
mov rax, qword [rcx + 0x38]
mov qword [rax + 0x58], rdi
jmp 0x1400b05cd
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.14001f3e0
movzx eax, word [0x140111e58]
lea rdx, [rbp + 0xe0]
mov word [rbp + 0xe0], ax
lea rcx, [rbp - 0x70]
movzx eax, byte [0x140111e5a]
xor byte [rbp + 0xe1], 0x31
xor al, 0x32
mov byte [rbp + 0xe2], al
mov byte [rbp + 0xe0], 0x30
call fcn.1400aad30
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.1400aea10
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 0x1400b068f
mov rax, qword [rbp - 0x28]
mov r8, qword [rax]
test r8, r8
je 0x1400b068f
cmp r8, qword [rbp]
mov rax, qword [rbp - 0x48]
cmovb r8, qword [rbp]
mov rdx, qword [rax]
sub r8, rdx
jmp 0x1400b06c0
test dl, 4
jne 0x1400b06b6
mov rax, qword [rbp - 0x30]
mov r9, qword [rax]
test r9, r9
je 0x1400b06b6
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 0x1400b06c0
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
test rdx, rdx
je 0x1400b06d9
lea rcx, [rsp + 0x30]
call fcn.140018350
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 0x1400b06f8
nop
inc rbx
cmp byte [rbx], 0
jne 0x1400b06f0
sub rbx, rsi
mov rcx, r14
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov r15, rax
test rbx, rbx
je 0x1400b0730
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 0x1400b0720
cmp byte [0x140111e67], 0
mov rax, qword [str.CTQG_ZX7FPFQ5]
mov qword [rbp + 0xe0], rax
mov eax, 0x1f
lea r13d, [rax - 0x1a]
je 0x1400b08c3
xor r8d, r8d
cmp dword [0x140248200], 2
jl 0x1400b0883
movdqa xmm2, xmmword [0x14010c2c0]
movdqa xmm3, xmmword [0x14010c2d0]
movdqa xmm1, xmm2
movdqa xmm4, xmmword [0x14010fec0]
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.9999]
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 [0x14010c300]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140111ed0]
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.9999]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rbp + 0xe4]
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14010c300]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140111ed0]
pxor xmm2, xmm0
movd dword [rbp + 0xe4], xmm2
jmp 0x1400b08c3
lea r9, [rbp + 0xe0]
nop word [rax + rax]
mov eax, 0x1f7047dd
lea r9, [r9 + 1]
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x39
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x1400b0890
cmp byte [rbp + 0xe0], 0
lea rbx, [rbp + 0xe0]
je 0x1400b08db
inc rbx
cmp byte [rbx], 0
jne 0x1400b08d3
lea rax, [rbp + 0xe0]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov rsi, rax
test rbx, rbx
je 0x1400b0920
mov rdx, rax
lea rax, [rbp + 0xe0]
sub rax, rdx
nop dword [rax + rax]
movzx ecx, byte [rax + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400b0910
mov edx, 0x38
mov rcx, r14
call fcn.1400a75e0
xor r8d, r8d
mov rbx, rax
mov qword [rax], r8
mov qword [rax + 8], r8
mov qword [rax + 0x20], r8
test rsi, rsi
je 0x1400b0962
mov rcx, rsi
cmp byte [rsi], r8b
je 0x1400b0958
nop dword [rax + rax]
inc rcx
cmp byte [rcx], r8b
jne 0x1400b0950
sub rcx, rsi
mov qword [rax], rsi
mov qword [rax + 0x10], rcx
test r15, r15
je 0x1400b0983
mov rax, r15
cmp byte [r15], r8b
je 0x1400b0978
nop
inc rax
cmp byte [rax], r8b
jne 0x1400b0970
sub rax, r15
mov qword [rbx + 8], r15
mov qword [rbx + 0x18], rax
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1400b09c3
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b09bb
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b0eec
call fcn.1400dc808
xor r8d, r8d
cmp qword [rdi + 0x40], 0
je 0x1400b09dc
mov rax, qword [rdi + 0x48]
mov qword [rbx + 0x28], rax
mov rax, qword [rdi + 0x48]
mov qword [rax + 0x30], rbx
jmp 0x1400b09e4
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 0x1400b09ff
mov rsi, qword [r12]
cmp byte [rsi], 0
mov rbx, rsi
je 0x1400b0a0f
inc rbx
cmp byte [rbx], 0
jne 0x1400b0a07
sub rbx, rsi
mov rcx, r14
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov r12, rax
test rbx, rbx
je 0x1400b0a40
mov rdx, rax
sub rsi, rax
nop
movzx ecx, byte [rsi + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400b0a30
mov eax, dword [0x140111e68]
lea rbx, [rsp + 0x20]
mov dword [rsp + 0x20], eax
movzx eax, word [0x140111e6c]
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 0x1400b0a80
lea rax, [rsp + 0x20]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov r15, rax
test rbx, rbx
je 0x1400b0ad0
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 0x1400b0ac0
mov edx, 0x60
mov rcx, r14
call fcn.1400a75e0
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 0x1400b0b21
mov rax, r15
cmp byte [r15], bl
je 0x1400b0b17
nop dword [rax]
inc rax
cmp byte [rax], bl
jne 0x1400b0b10
sub rax, r15
mov qword [rsi], r15
mov qword [rsi + 0x10], rax
test r12, r12
je 0x1400b0b42
mov rax, r12
cmp byte [r12], bl
je 0x1400b0b37
nop
inc rax
cmp byte [rax], bl
jne 0x1400b0b30
sub rax, r12
mov qword [rsi + 8], r12
mov qword [rsi + 0x18], rax
cmp qword [rdi + 0x30], rbx
je 0x1400b0b5a
mov rax, qword [rdi + 0x38]
mov qword [rsi + 0x50], rax
mov rax, qword [rdi + 0x38]
mov qword [rax + 0x58], rsi
jmp 0x1400b0b62
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.1400b14a0
movzx eax, word [0x140111e70]
lea rdx, [rbp + 0xe0]
and dword [rbp + 8], 0xffffffdf
lea rcx, [rbp - 0x70]
mov word [rbp + 0xe0], ax
movzx eax, byte [0x140111e72]
xor byte [rbp + 0xe1], 0x31
xor al, 0x32
mov byte [rbp + 0xe2], al
mov qword [rbp], rbx
mov byte [rbp + 0xe0], 0x30
call fcn.1400aad30
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.1400aea10
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x80]
call fcn.1400b1830
mov rdi, rax
cmp qword [rax + 0x18], 0x10
jb 0x1400b0bfc
mov rdi, qword [rax]
cmp byte [rdi], 0
mov rbx, rdi
je 0x1400b0c0c
inc rbx
cmp byte [rbx], 0
jne 0x1400b0c04
sub rbx, rdi
mov rcx, r14
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov r15, rax
test rbx, rbx
je 0x1400b0c40
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 0x1400b0c30
mov eax, dword [str._TK3FPFQ5]
xor r12d, r12d
cmp byte [0x140111e77], r12b
mov dword [rbp + 0xe0], eax
je 0x1400b0d49
cmp dword [0x140248200], 2
mov r8d, r12d
jl 0x1400b0d00
movdqa xmm3, xmmword [0x14010c2c0]
mov ecx, 0x1f
movdqa xmm2, xmm3
movdqa xmm0, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x14010fec0]
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x14010fec0]
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.9999]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, eax
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x14010c300]
packuswb xmm2, xmm2
paddb xmm2, xmmword [0x140111ed0]
pxor xmm2, xmm0
movd eax, xmm2
mov dword [rbp + 0xe0], eax
jmp 0x1400b0d49
lea r9, [rbp + 0xe0]
nop word [rax + rax]
mov eax, 0x1f7047dd
lea r9, [r9 + 1]
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x39
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x30
xor byte [r9 - 1], al
cmp r8d, 4
jl 0x1400b0d10
mov eax, dword [rbp + 0xe0]
lea rbx, [rbp + 0xe0]
test al, al
je 0x1400b0d5c
inc rbx
cmp byte [rbx], 0
jne 0x1400b0d54
lea rax, [rbp + 0xe0]
mov rcx, r14
sub rbx, rax
inc rbx
mov rdx, rbx
call fcn.1400a75e0
mov rdi, rax
test rbx, rbx
je 0x1400b0da0
mov rdx, rax
lea rax, [rbp + 0xe0]
sub rax, rdx
nop dword [rax]
movzx ecx, byte [rax + rdx]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub rbx, 1
jne 0x1400b0d90
mov edx, 0x38
mov rcx, r14
call fcn.1400a75e0
mov rbx, rax
mov qword [rax], r12
mov qword [rax + 8], r12
mov qword [rax + 0x20], r12
test rdi, rdi
je 0x1400b0dda
cmp byte [rdi], 0
mov rcx, rdi
je 0x1400b0dd0
inc rcx
cmp byte [rcx], 0
jne 0x1400b0dc8
sub rcx, rdi
mov qword [rax], rdi
mov qword [rax + 0x10], rcx
test r15, r15
je 0x1400b0dfb
cmp byte [r15], 0
mov rax, r15
je 0x1400b0df0
inc rax
cmp byte [rax], 0
jne 0x1400b0de8
sub rax, r15
mov qword [rbx + 8], r15
mov qword [rbx + 0x18], rax
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1400b0e34
mov rcx, qword [rsp + 0x30]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400b0e2f
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400b0e9a
call fcn.1400dc808
cmp qword [rsi + 0x40], 0
je 0x1400b0e4d
mov rax, qword [rsi + 0x48]
mov qword [rbx + 0x28], rax
mov rax, qword [rsi + 0x48]
mov qword [rax + 0x30], rbx
jmp 0x1400b0e55
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.140022a50
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.140014520
call fcn.1400e34bc
int3
lea rcx, str.stoul_argument_out_of_range
call fcn.1400dadfc
int3
lea rcx, str.invalid_stoul_argument
call fcn.1400dadb4
int3
call fcn.1400e34bc
int3
call fcn.1400e34bc
int3
call fcn.1400e34bc
int3
lea rcx, str.stoul_argument_out_of_range
call fcn.1400dadfc
int3
lea rcx, str.invalid_stoul_argument
call fcn.1400dadb4
int3
call fcn.1400e34bc
int3
call fcn.1400e34bc
int3