Function at 0x140012280
Capabilities:
Encrypt data using dpapi

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x800
mov qword [rsp + 0x200], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov rax, qword [0x1401423c0]
xor rax, rsp
mov qword [rsp + 0x7f0], rax
mov qword [rsp + 0xc0], rcx
mov ecx, 8
call fcn.1400cfdb8
test rax, rax
je 0x1400122e0
lea rcx, [rsp + 0xf8]
mov qword [rax], rcx
xor r14d, r14d
jmp 0x1400122e6
xor r14d, r14d
mov rax, r14
mov qword [rsp + 0xf8], rax
mov qword [rsp + 0x110], r14
mov qword [rsp + 0x118], r14
mov qword [rsp + 0x120], r14
mov ecx, 8
call fcn.1400cfdb8
test rax, rax
je 0x14001231f
lea rcx, [rsp + 0x48]
mov qword [rax], rcx
jmp 0x140012322
mov rax, r14
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
mov byte [rsp + 0x6e0], 0
xor edx, edx
mov r8d, 0x103
lea rcx, [rsp + 0x6e1]
call fcn.1400e1fc0
lea rdx, [rsp + 0x6a0]
lea r12, [0x140000000]
mov rax, qword [r12 + 0x111cb8]
mov qword [rdx], rax
mov rax, qword [r12 + 0x111cc0]
mov qword [rdx + 8], rax
mov rax, qword [r12 + 0x111cc8]
mov qword [rdx + 0x10], rax
mov rax, qword [r12 + 0x111cd0]
mov qword [rdx + 0x18], rax
mov rax, qword [r12 + 0x111cd8]
mov qword [rdx + 0x20], rax
mov rax, qword [r12 + 0x111ce0]
mov qword [rdx + 0x28], rax
mov rax, qword [r12 + 0x111ce8]
mov qword [rdx + 0x30], rax
movzx eax, word [r12 + 0x111cf0]
mov word [rdx + 0x38], ax
movzx eax, byte [r12 + 0x111cf2]
mov byte [rdx + 0x3a], al
mov ecx, 8
call fcn.1400cfdb8
test rax, rax
je 0x1400123ea
lea rcx, [rsp + 0x128]
mov qword [rax], rcx
jmp 0x1400123ed
mov rax, r14
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x140], r14
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x150], r14
lea rcx, [rsp + 0x6e0]
call fcn.1400118c0
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x6e0]
call fcn.140011a50
lea rdx, [rsp + 0xf8]
lea rcx, [rsp + 0x40]
call fcn.14001da60
mov edx, 0x3f
lea rcx, [rsp + 0xf8]
call fcn.140011cb0
lea rcx, [rsp + 0x128]
call fcn.140019d40
lea rcx, [rsp + 0x128]
call fcn.140018990
mov rax, qword [rsp + 0x140]
mov rbx, rax
mov rsi, qword [rsp + 0x148]
cmp rax, rsi
jbe 0x140012497
call fcn.1400e4d48
mov rsi, qword [rsp + 0x148]
mov rax, qword [rsp + 0x140]
mov rdi, qword [rsp + 0x128]
nop
cmp rax, rsi
jbe 0x1400124aa
call fcn.1400e4d48
test rdi, rdi
je 0x1400124b9
cmp rdi, qword [rsp + 0x128]
je 0x1400124be
call fcn.1400e4d48
cmp rbx, rsi
je 0x140012526
test rdi, rdi
jne 0x1400124d2
call fcn.1400e4d48
mov r11, r14
jmp 0x1400124d5
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x20]
jb 0x1400124e0
call fcn.1400e4d48
mov rdx, rbx
lea rcx, [rsp + 0xf8]
call fcn.140013e10
test rdi, rdi
jne 0x1400124ff
call fcn.1400e4d48
mov r11, r14
jmp 0x140012502
mov r11, qword [rdi]
cmp rbx, qword [r11 + 0x20]
jb 0x14001250d
call fcn.1400e4d48
add rbx, 0x28
mov rsi, qword [rsp + 0x148]
mov rax, qword [rsp + 0x140]
jmp 0x1400124a0
mov r13, qword [rsp + 0x110]
mov qword [rsp + 0xb8], r13
cmp r13, qword [rsp + 0x118]
jbe 0x140012545
call fcn.1400e4d48
mov r12, qword [rsp + 0xf8]
mov qword [rsp + 0x78], r12
movzx ebx, byte [rsp + 0x40]
movzx esi, byte [rsp + 0x40]
nop dword [rax]
mov rdi, qword [rsp + 0x118]
cmp qword [rsp + 0x110], rdi
jbe 0x140012577
call fcn.1400e4d48
test r12, r12
je 0x140012586
cmp r12, qword [rsp + 0xf8]
je 0x14001258b
call fcn.1400e4d48
cmp r13, rdi
je 0x140012d6f
mov r13d, r14d
mov dword [rsp + 0x80], r14d
mov r12, qword [rsp + 0x60]
cmp r12, qword [rsp + 0x68]
jbe 0x1400125b0
call fcn.1400e4d48
mov r15, qword [rsp + 0x48]
nop word [rax + rax]
mov rdi, qword [rsp + 0x68]
cmp qword [rsp + 0x60], rdi
jbe 0x1400125d1
call fcn.1400e4d48
test r15, r15
je 0x1400125dd
cmp r15, qword [rsp + 0x48]
je 0x1400125e2
call fcn.1400e4d48
cmp r12, rdi
je 0x140012705
mov rax, qword [rsp + 0x78]
test rax, rax
jne 0x1400125ff
call fcn.1400e4d48
mov rdx, r14
jmp 0x140012602
mov rdx, qword [rax]
mov rdi, qword [rsp + 0xb8]
cmp rdi, qword [rdx + 0x20]
jb 0x140012615
call fcn.1400e4d48
mov rdx, rdi
lea rcx, [rsp + 0x218]
call fcn.1400ccec0
mov rdi, rax
test r15, r15
jne 0x140012637
call fcn.1400e4d48
mov r11, r14
jmp 0x14001263a
mov r11, qword [r15]
cmp r12, qword [r11 + 0x20]
jb 0x140012645
call fcn.1400e4d48
mov r13, qword [rdi + 0x18]
cmp qword [rdi + 0x20], 0x10
jb 0x140012656
mov rdx, qword [rdi + 8]
jmp 0x14001265a
lea rdx, [rdi + 8]
mov rdi, qword [r12 + 0x18]
cmp rdi, rdi
cmovb rdi, rdi
cmp qword [r12 + 0x20], 0x10
jb 0x140012675
mov rcx, qword [r12 + 8]
jmp 0x14001267a
lea rcx, [r12 + 8]
mov r8, r13
cmp rdi, r13
cmovb r8, rdi
call fcn.1400e72f0
movsxd rcx, eax
test eax, eax
jne 0x1400126a5
cmp rdi, r13
jae 0x14001269a
or ecx, 0xffffffff
jmp 0x1400126a5
mov eax, r14d
cmp rdi, r13
setne al
mov ecx, eax
test ecx, ecx
sete dil
cmp qword [rsp + 0x238], 0x10
jb 0x1400126c3
mov rcx, qword [rsp + 0x220]
call fcn.1400cfe04
mov r13d, dword [rsp + 0x80]
test dil, dil
mov eax, 1
cmovne r13d, eax
mov dword [rsp + 0x80], r13d
test r15, r15
jne 0x1400126ee
call fcn.1400e4d48
mov rdx, r14
jmp 0x1400126f1
mov rdx, qword [r15]
cmp r12, qword [rdx + 0x20]
jb 0x1400126fc
call fcn.1400e4d48
add r12, 0x50
jmp 0x1400125c0
test r13d, r13d
jne 0x140012d33
mov qword [rsp + 0x260], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x258], r14
mov byte [rsp + 0x248], r13b
mov qword [rsp + 0x288], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x280], r14
mov byte [rsp + 0x270], r13b
mov byte [rsp + 0x290], r13b
xor edx, edx
mov r8d, 0x3ff
lea rcx, [rsp + 0x291]
call fcn.1400e1fc0
mov rdi, qword [rsp + 0x78]
test rdi, rdi
jne 0x140012777
call fcn.1400e4d48
mov rdx, r14
jmp 0x14001277a
mov rdx, qword [rdi]
mov r12, qword [rsp + 0xb8]
cmp r12, qword [rdx + 0x20]
jb 0x14001278d
call fcn.1400e4d48
mov qword [rsp + 0x238], 7
mov qword [rsp + 0x230], r14
mov word [rsp + 0x220], r14w
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, r12
lea rcx, [rsp + 0x218]
call fcn.140003f90
nop
lea rcx, [rsp + 0x220]
cmp qword [rsp + 0x238], 8
cmovae rcx, qword [rsp + 0x220]
lea rdx, [rsp + 0x290]
call fcn.1400138f0
test rdi, rdi
jne 0x1400127f8
call fcn.1400e4d48
mov rdx, r14
jmp 0x1400127fb
mov rdx, qword [rdi]
cmp r12, qword [rdx + 0x20]
jb 0x140012806
call fcn.1400e4d48
mov rdx, r12
lea rcx, [rsp + 0x88]
call fcn.1400ccec0
nop
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x240]
call fcn.140003df0
nop
cmp qword [rsp + 0xa8], 0x10
jb 0x140012847
mov rcx, qword [rsp + 0x90]
call fcn.1400cfe04
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x290]
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x268]
call fcn.140004650
mov r12, qword [rsp + 0x60]
test r12, r12
jne 0x14001288c
mov r8, r14
movabs r13, 0x6666666666666667
jmp 0x1400128b5
mov rcx, qword [rsp + 0x70]
sub rcx, r12
movabs r13, 0x6666666666666667
mov rax, r13
imul rcx
mov r8, rdx
sar r8, 5
mov rax, r8
shr rax, 0x3f
add r8, rax
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
sub rcx, r12
mov rax, r13
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, r8
jae 0x14001290e
xor eax, eax
mov byte [rsp + 0x28], al
mov byte [rsp + 0x20], bl
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x240]
mov eax, 1
mov rdx, rax
mov rcx, rdi
call fcn.1400156a0
lea rax, [rdi + 0x50]
mov qword [rsp + 0x68], rax
jmp 0x140012a3e
mov r15, rdi
cmp r12, rdi
jbe 0x140012925
call fcn.1400e4d48
mov rdi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x60]
mov r8, qword [rsp + 0x48]
mov r13, r8
mov qword [rsp + 0x1c0], r8
mov qword [rsp + 0x1c8], r15
mov rcx, rdi
sub rcx, r12
movabs rax, 0x6666666666666667
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
jne 0x140012965
mov r12, r14
jmp 0x1400129a4
cmp r12, rdi
jbe 0x140012974
call fcn.1400e4d48
mov r8, qword [rsp + 0x48]
test r13, r13
je 0x14001297e
cmp r13, r8
je 0x140012983
call fcn.1400e4d48
sub r15, r12
movabs rax, 0x6666666666666667
imul r15
mov r12, rdx
sar r12, 5
mov rax, r12
shr rax, 0x3f
add r12, rax
movaps xmm0, xmmword [rsp + 0x1c0]
movdqa xmmword [rsp + 0x1f0], xmm0
lea r9, [rsp + 0x240]
mov eax, 1
mov r8, rax
lea rdx, [rsp + 0x1f0]
lea rcx, [rsp + 0x48]
call fcn.140014640
mov r13, qword [rsp + 0x60]
cmp r13, qword [rsp + 0x68]
jbe 0x1400129e8
call fcn.1400e4d48
mov rdi, qword [rsp + 0x48]
test rdi, rdi
jne 0x1400129fc
call fcn.1400e4d48
mov r11, r14
jmp 0x1400129ff
mov r11, qword [rdi]
lea rcx, [r12 + r12*4]
shl rcx, 4
add rcx, r13
cmp rcx, qword [r11 + 0x20]
ja 0x140012a23
test rdi, rdi
je 0x140012a1a
mov rax, qword [rdi]
jmp 0x140012a1d
mov rax, r14
cmp rcx, qword [rax + 0x18]
jae 0x140012a34
call fcn.1400e4d48
movabs r13, 0x6666666666666667
jmp 0x140012a3e
movabs r13, 0x6666666666666667
xor edx, edx
mov r8d, 0x400
lea rcx, [rsp + 0x290]
call fcn.1400e1fc0
mov eax, 1
mov r8, rax
lea rdx, [0x140111cf4]
lea rcx, [rsp + 0x218]
call fcn.140004930
lea rcx, [rsp + 0x220]
cmp qword [rsp + 0x238], 8
cmovae rcx, qword [rsp + 0x220]
lea rdx, [rsp + 0x290]
call fcn.1400138f0
lea rdx, [rsp + 0x218]
lea rcx, [rsp + 0x88]
call fcn.1400ccec0
nop
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x240]
call fcn.140003df0
nop
cmp qword [rsp + 0xa8], 0x10
jb 0x140012adc
mov rcx, qword [rsp + 0x90]
call fcn.1400cfe04
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x290]
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
lea rdx, [rsp + 0x290]
lea rcx, [rsp + 0x268]
call fcn.140004650
mov r12, qword [rsp + 0x60]
test r12, r12
jne 0x140012b17
mov r8, r14
jmp 0x140012b36
mov rcx, qword [rsp + 0x70]
sub rcx, r12
mov rax, r13
imul rcx
mov r8, rdx
sar r8, 5
mov rax, r8
shr rax, 0x3f
add r8, rax
mov rdi, qword [rsp + 0x68]
mov rcx, rdi
sub rcx, r12
mov rax, r13
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, r8
jae 0x140012b90
xor eax, eax
mov byte [rsp + 0x28], al
mov byte [rsp + 0x20], sil
lea r9, [rsp + 0x58]
lea r8, [rsp + 0x240]
mov eax, 1
mov rdx, rax
mov rcx, rdi
call fcn.1400156a0
lea rax, [rdi + 0x50]
mov qword [rsp + 0x68], rax
jmp 0x140012cb2
mov r15, rdi
cmp r12, rdi
jbe 0x140012ba7
call fcn.1400e4d48
mov rdi, qword [rsp + 0x68]
mov r12, qword [rsp + 0x60]
mov r8, qword [rsp + 0x48]
mov r13, r8
mov qword [rsp + 0x1e0], r8
mov qword [rsp + 0x1e8], r15
mov rcx, rdi
sub rcx, r12
movabs rax, 0x6666666666666667
imul rcx
sar rdx, 5
mov rax, rdx
shr rax, 0x3f
add rdx, rax
jne 0x140012be7
mov rdi, r14
jmp 0x140012c26
cmp r12, rdi
jbe 0x140012bf6
call fcn.1400e4d48
mov r8, qword [rsp + 0x48]
test r13, r13
je 0x140012c00
cmp r13, r8
je 0x140012c05
call fcn.1400e4d48
sub r15, r12
movabs rax, 0x6666666666666667
imul r15
mov rdi, rdx
sar rdi, 5
mov rax, rdi
shr rax, 0x3f
add rdi, rax
movaps xmm0, xmmword [rsp + 0x1e0]
movdqa xmmword [rsp + 0x190], xmm0
lea r9, [rsp + 0x240]
mov eax, 1
mov r8, rax
lea rdx, [rsp + 0x190]
lea rcx, [rsp + 0x48]
call fcn.140014640
mov r12, qword [rsp + 0x60]
cmp r12, qword [rsp + 0x68]
jbe 0x140012c6a
call fcn.1400e4d48
mov r13, qword [rsp + 0x48]
test r13, r13
jne 0x140012c7e
call fcn.1400e4d48
mov r11, r14
jmp 0x140012c86
mov rax, qword [rsp + 0x48]
mov r11, qword [rax]
lea rax, [rdi + rdi*4]
shl rax, 4
lea rcx, [rax + r12]
cmp rcx, qword [r11 + 0x20]
ja 0x140012cac
test r13, r13
je 0x140012ca3
mov rax, qword [r13]
jmp 0x140012ca6
mov rax, r14
cmp rcx, qword [rax + 0x18]
jae 0x140012cb2
call fcn.1400e4d48
nop
cmp qword [rsp + 0x238], 8
jb 0x140012cca
mov rcx, qword [rsp + 0x220]
call fcn.1400cfe04
mov qword [rsp + 0x238], 7
mov qword [rsp + 0x230], r14
mov word [rsp + 0x220], r14w
cmp qword [rsp + 0x288], 0x10
jb 0x140012cff
mov rcx, qword [rsp + 0x270]
call fcn.1400cfe04
mov qword [rsp + 0x288], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x280], r14
mov byte [rsp + 0x270], 0
cmp qword [rsp + 0x260], 0x10
jb 0x140012d33
mov rcx, qword [rsp + 0x248]
call fcn.1400cfe04
mov r12, qword [rsp + 0x78]
test r12, r12
jne 0x140012d47
call fcn.1400e4d48
mov rdx, r14
jmp 0x140012d4b
mov rdx, qword [r12]
mov r13, qword [rsp + 0xb8]
cmp r13, qword [rdx + 0x20]
jb 0x140012d5e
call fcn.1400e4d48
add r13, 0x28
mov qword [rsp + 0xb8], r13
jmp 0x140012560
mov ecx, 8
call fcn.1400cfdb8
test rax, rax
je 0x140012d8b
lea rcx, [rsp + 0x158]
mov qword [rax], rcx
jmp 0x140012d8e
mov rax, r14
mov qword [rsp + 0x158], rax
mov qword [rsp + 0x170], r14
mov qword [rsp + 0x178], r14
mov qword [rsp + 0x180], r14
mov qword [rsp + 0x238], reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x230], r14
mov byte [rsp + 0x220], 0
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x6a0]
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
lea rdx, [rsp + 0x6a0]
lea rcx, [rsp + 0x218]
call fcn.140004650
lea r9, [rsp + 0x158]
lea r8, [rsp + 0x218]
mov rdx, 0xffffffff80000001
lea rcx, [rsp + 0x40]
call fcn.14001cda0
mov rbx, qword [rsp + 0x170]
mov qword [rsp + 0x78], rbx
cmp rbx, qword [rsp + 0x178]
jbe 0x140012e33
call fcn.1400e4d48
mov r15, qword [rsp + 0x158]
nop dword [rax + rax]
mov rdi, qword [rsp + 0x178]
cmp qword [rsp + 0x170], rdi
jbe 0x140012e57
call fcn.1400e4d48
test r15, r15
je 0x140012e66
cmp r15, qword [rsp + 0x158]
je 0x140012e6b
call fcn.1400e4d48
cmp rbx, rdi
je 0x1400133cd
mov r12, qword [rsp + 0x60]
cmp r12, qword [rsp + 0x68]
jbe 0x140012e85
call fcn.1400e4d48
mov r13, qword [rsp + 0x48]
nop word [rax + rax]
mov rdi, qword [rsp + 0x68]
cmp qword [rsp + 0x60], rdi
jbe 0x140012ea1
call fcn.1400e4d48
test r13, r13
je 0x140012ead
cmp r13, qword [rsp + 0x48]
je 0x140012eb2
call fcn.1400e4d48
cmp r12, rdi
je 0x14001339f
mov qword [rsp + 0x238], 7
mov qword [rsp + 0x230], r14
mov word [rsp + 0x220], r14w
test r13, r13
jne 0x140012ee7
call fcn.1400e4d48
mov rdx, r14
jmp 0x140012eeb
mov rdx, qword [r13]
cmp r12, qword [rdx + 0x20]
jb 0x140012ef6
call fcn.1400e4d48
test r15, r15
jne 0x140012f05
call fcn.1400e4d48
mov rdx, r14
jmp 0x140012f08
mov rdx, qword [r15]
cmp rbx, qword [rdx + 0x20]
jb 0x140012f13
call fcn.1400e4d48
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasb al, byte [rdi]
not rcx
dec rcx
mov qword [rsp + 0x20], rcx
mov r9, rbx
mov r8, qword [r12 + 0x40]
xor edx, edx
lea rcx, [r12 + 0x28]
call fcn.140003f10
test eax, eax
je 0x140012f62
cmp qword [rsp + 0x238], 8
jb 0x140013378
mov rcx, qword [rsp + 0x220]
call fcn.1400cfe04
jmp 0x140013378
test r15, r15
jne 0x140012f71
call fcn.1400e4d48
mov rdx, r14
jmp 0x140012f74
mov rdx, qword [r15]
cmp rbx, qword [rdx + 0x20]
jb 0x140012f7f
call fcn.1400e4d48
lea rax, [rbx + 0xff]
mov qword [rsp + 0x1b8], rax
test r15, r15
jne 0x140012f9d
call fcn.1400e4d48
mov rdx, r14
jmp 0x140012fa0
mov rdx, qword [r15]
cmp rbx, qword [rdx + 0x20]
jb 0x140012fab
call fcn.1400e4d48
mov eax, dword [rbx + 0x500]
mov dword [rsp + 0x1b0], eax
test r13, r13
jne 0x140012fc7
call fcn.1400e4d48
mov rdx, r14
jmp 0x140012fcb
mov rdx, qword [r13]
cmp r12, qword [rdx + 0x20]
jb 0x140012fd6
call fcn.1400e4d48
mov rdx, r12
lea rcx, [rsp + 0x88]
call fcn.1400ccdd4
nop
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x218]
call fcn.140003f90
nop
cmp qword [rsp + 0xa8], 8
jb 0x140013017
mov rcx, qword [rsp + 0x90]
call fcn.1400cfe04
lea rax, [rsp + 0x220]
cmp qword [rsp + 0x238], 8
cmovae rax, qword [rsp + 0x220]
mov qword [rsp + 0x1d8], rax
test r13, r13
jne 0x140013048
call fcn.1400e4d48
mov rdx, r14
jmp 0x14001304c
mov rdx, qword [r13]
cmp r12, qword [rdx + 0x20]
jb 0x140013057
call fcn.1400e4d48
mov rax, qword [r12 + 0x18]
lea ecx, [rax + rax + 2]
mov dword [rsp + 0x1d0], ecx
lea rax, [rsp + 0x208]
mov qword [rsp + 0x30], rax
mov eax, 1
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r14
xor r9d, r9d
lea r8, [rsp + 0x1d0]
xor edx, edx
lea rcx, [rsp + 0x1b0]
call qword [sym.imp.CRYPT32.dll_CryptUnprotectData]
test eax, eax
je 0x140013360
mov ecx, 8
call fcn.1400cfdb8
test rax, rax
je 0x1400130c1
lea rcx, [rsp + 0x88]
mov qword [rax], rcx
jmp 0x1400130c4
mov rax, r14
mov qword [rsp + 0x88], rax
mov qword [rsp + 0xa0], r14
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xb0], r14
mov rdx, qword [rsp + 0x210]
lea rcx, [rsp + 0x88]
call fcn.140013ad0
mov rbx, qword [rsp + 0xa0]
cmp rbx, qword [rsp + 0xa8]
jbe 0x140013110
call fcn.1400e4d48
mov rsi, qword [rsp + 0x88]
nop dword [rax + rax]
mov rdi, qword [rsp + 0xa8]
cmp qword [rsp + 0xa0], rdi
jbe 0x140013137
call fcn.1400e4d48
test rsi, rsi
je 0x140013146
cmp rsi, qword [rsp + 0x88]
je 0x14001314b
call fcn.1400e4d48
cmp rbx, rdi
je 0x140013321
mov byte [rsp + 0x290], 0
xor edx, edx
mov r8d, 0x103
lea rcx, [rsp + 0x291]
call fcn.1400e1fc0
xor edx, edx
mov r8d, 0x30c
lea rcx, [rsp + 0x394]
call fcn.1400e1fc0
test r13, r13
jne 0x140013195
call fcn.1400e4d48
mov rdx, r14
jmp 0x140013199
mov rdx, qword [r13]
cmp r12, qword [rdx + 0x20]
jb 0x1400131a4
call fcn.1400e4d48
cmp qword [r12 + 0x20], 0x10
jb 0x1400131b3
mov rcx, qword [r12 + 8]
jmp 0x1400131b8
lea rcx, [r12 + 8]
lea rdx, [rsp + 0x290]
movzx eax, byte [rcx]
mov byte [rdx], al
inc rcx
inc rdx
test al, al
jne 0x1400131c0
test rsi, rsi
jne 0x1400131de
call fcn.1400e4d48
mov rdx, r14
jmp 0x1400131e1
mov rdx, qword [rsi]
cmp rbx, qword [rdx + 0x20]
jb 0x1400131ec
call fcn.1400e4d48
lea rcx, [rbx + 0x104]
lea rdx, [rsp + 0x394]
nop dword [rax + rax]
movzx eax, byte [rcx]
mov byte [rdx], al
inc rcx
inc rdx
test al, al
jne 0x140013200
test rsi, rsi
jne 0x14001321e
call fcn.1400e4d48
mov rdx, r14
jmp 0x140013221
mov rdx, qword [rsi]
cmp rbx, qword [rdx + 0x20]
jb 0x14001322c
call fcn.1400e4d48
lea rcx, [rbx + 0x208]
lea rdx, [rsp + 0x498]
nop dword [rax + rax]
movzx eax, byte [rcx]
mov byte [rdx], al
inc rcx
inc rdx
test al, al
jne 0x140013240
lea rcx, [rsp + 0x59c]
lea rdx, [0x140000000]
mov eax, dword [rdx + 0x111cf8]
mov dword [rcx], eax
mov eax, dword [rdx + 0x111cfc]
mov dword [rcx + 4], eax
mov eax, dword [rdx + 0x111d00]
mov dword [rcx + 8], eax
mov eax, dword [rdx + 0x111d04]
mov dword [rcx + 0xc], eax
mov eax, dword [rdx + 0x111d08]
mov dword [rcx + 0x10], eax
mov eax, dword [rdx + 0x111d0c]
mov dword [rcx + 0x14], eax
mov eax, dword [rdx + 0x111d10]
mov dword [rcx + 0x18], eax
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x290]
repne scasb al, byte [rdi]
not rcx
cmp rcx, 1
je 0x1400132f8
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x394]
repne scasb al, byte [rdi]
not rcx
cmp rcx, 1
je 0x1400132f8
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x498]
repne scasb al, byte [rdi]
not rcx
cmp rcx, 1
je 0x1400132f8
lea rdx, [rsp + 0x290]
mov rcx, qword [rsp + 0xc0]
call fcn.140014020
test rsi, rsi
jne 0x140013307
call fcn.1400e4d48
mov rdx, r14
jmp 0x14001330a
mov rdx, qword [rsi]
cmp rbx, qword [rdx + 0x20]
jb 0x140013315
call fcn.1400e4d48
add rbx, 0x410
jmp 0x140013120
mov rbx, qword [rsp + 0xa0]
test rbx, rbx
je 0x140013336
mov rcx, rbx
call fcn.1400cfe04
mov qword [rsp + 0xa0], r14
mov qword [rsp + 0xa8], r14
mov qword [rsp + 0xb0], r14
mov rcx, qword [rsp + 0x88]
call fcn.1400cfe04
mov rbx, qword [rsp + 0x78]
cmp qword [rsp + 0x238], 8
jb 0x140013378
mov rcx, qword [rsp + 0x220]
call fcn.1400cfe04
test r13, r13
jne 0x140013387
call fcn.1400e4d48
mov rdx, r14
jmp 0x14001338b
mov rdx, qword [r13]
cmp r12, qword [rdx + 0x20]
jb 0x140013396
call fcn.1400e4d48
add r12, 0x50
jmp 0x140012e90
test r15, r15
jne 0x1400133ae
call fcn.1400e4d48
mov rdx, r14
jmp 0x1400133b1
mov rdx, qword [r15]
cmp rbx, qword [rdx + 0x20]
jb 0x1400133bc
call fcn.1400e4d48
add rbx, 0x504
mov qword [rsp + 0x78], rbx
jmp 0x140012e40
mov ecx, 8
call fcn.1400cfdb8
test rax, rax
je 0x1400133e9
lea rcx, [rsp + 0xc8]
mov qword [rax], rcx
jmp 0x1400133ec
mov rax, r14
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xe0], r14
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xf0], r14
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
lea rdx, [rsp + 0x190]
call qword [sym.imp.KERNEL32.dll_GetConsoleScreenBufferInfo]
mov edx, 0x12c
cmp dx, word [rsp + 0x190]
jle 0x14001345a
mov word [rsp + 0x190], dx
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rcx, rax
mov edx, dword [rsp + 0x190]
call qword [sym.imp.KERNEL32.dll_SetConsoleScreenBufferSize]
call fcn.140020360
test eax, eax
je 0x140013470
lea rcx, [rsp + 0xc8]
call fcn.1400207f0
mov rax, qword [rsp + 0xe0]
mov rsi, rax
mov rdi, qword [rsp + 0xe8]
cmp rax, rdi
jbe 0x14001349d
call fcn.1400e4d48
mov rdi, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0xc8]
lea r12, [0x140000000]
nop dword [rax]
cmp rax, rdi
jbe 0x1400134ba
call fcn.1400e4d48
test rbx, rbx
je 0x1400134c9
cmp rbx, qword [rsp + 0xc8]
je 0x1400134ce
call fcn.1400e4d48
cmp rsi, rdi
je 0x140013737
mov byte [rsp + 0x290], 0
xor edx, edx
mov r8d, 0x103
lea rcx, [rsp + 0x291]
call fcn.1400e1fc0
xor edx, edx
mov r8d, 0x30c
lea rcx, [rsp + 0x394]
call fcn.1400e1fc0
test rbx, rbx
jne 0x140013518
call fcn.1400e4d48
mov rdx, r14
jmp 0x14001351b
mov rdx, qword [rbx]
cmp rsi, qword [rdx + 0x20]
jb 0x140013526
call fcn.1400e4d48
lea rdx, [rsi + 0x28]
lea rcx, [rsp + 0x88]
call fcn.1400ccec0
cmp qword [rax + 0x20], 0x10
jb 0x140013544
mov rcx, qword [rax + 8]
jmp 0x140013548
lea rcx, [rax + 8]
lea rdx, [rsp + 0x290]
movzx eax, byte [rcx]
mov byte [rdx], al
inc rcx
inc rdx
test al, al
jne 0x140013550
cmp qword [rsp + 0xa8], 0x10
jb 0x140013577
mov rcx, qword [rsp + 0x90]
call fcn.1400cfe04
test rbx, rbx
jne 0x140013586
call fcn.1400e4d48
mov rdx, r14
jmp 0x140013589
mov rdx, qword [rbx]
cmp rsi, qword [rdx + 0x20]
jb 0x140013594
call fcn.1400e4d48
lea rdx, [rsi + 0x58]
lea rcx, [rsp + 0x88]
call fcn.1400ccec0
cmp qword [rax + 0x20], 0x10
jb 0x1400135b2
mov rcx, qword [rax + 8]
jmp 0x1400135b6
lea rcx, [rax + 8]
lea rdx, [rsp + 0x394]
nop
movzx eax, byte [rcx]
mov byte [rdx], al
inc rcx
inc rdx
test al, al
jne 0x1400135c0
cmp qword [rsp + 0xa8], 0x10
jb 0x1400135e7
mov rcx, qword [rsp + 0x90]
call fcn.1400cfe04
test rbx, rbx
jne 0x1400135f6
call fcn.1400e4d48
mov rdx, r14
jmp 0x1400135f9
mov rdx, qword [rbx]
cmp rsi, qword [rdx + 0x20]
jb 0x140013604
call fcn.1400e4d48
lea rdx, [rsi + 0x80]
lea rcx, [rsp + 0x88]
call fcn.1400ccec0
cmp qword [rax + 0x20], 0x10
jb 0x140013625
mov rcx, qword [rax + 8]
jmp 0x140013629
lea rcx, [rax + 8]
lea rdx, [rsp + 0x498]
movzx eax, byte [rcx]
mov byte [rdx], al
inc rcx
inc rdx
test al, al
jne 0x140013631
cmp qword [rsp + 0xa8], 0x10
jb 0x140013658
mov rcx, qword [rsp + 0x90]
call fcn.1400cfe04
lea rcx, [rsp + 0x59c]
mov eax, dword [r12 + 0x111d18]
mov dword [rcx], eax
mov eax, dword [r12 + 0x111d1c]
mov dword [rcx + 4], eax
mov eax, dword [r12 + 0x111d20]
mov dword [rcx + 8], eax
mov eax, dword [r12 + 0x111d24]
mov dword [rcx + 0xc], eax
mov eax, dword [r12 + 0x111d28]
mov dword [rcx + 0x10], eax
movzx eax, byte [r12 + 0x111d2c]
mov byte [rcx + 0x14], al
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x290]
repne scasb al, byte [rdi]
not rcx
cmp rcx, 1
je 0x1400136fe
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x394]
repne scasb al, byte [rdi]
not rcx
cmp rcx, 1
je 0x1400136fe
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x498]
repne scasb al, byte [rdi]
not rcx
cmp rcx, 1
je 0x1400136fe
lea rdx, [rsp + 0x290]
mov rcx, qword [rsp + 0xc0]
call fcn.140014020
test rbx, rbx
jne 0x14001370d
call fcn.1400e4d48
mov rdx, r14
jmp 0x140013710
mov rdx, qword [rbx]
cmp rsi, qword [rdx + 0x20]
jb 0x14001371b
call fcn.1400e4d48
add rsi, 0xa8
mov rdi, qword [rsp + 0xe8]
mov rax, qword [rsp + 0xe0]
jmp 0x1400134b0
mov rcx, qword [rsp + 0xc0]
call fcn.14001fb40
nop
mov rcx, qword [rsp + 0xe0]
test rcx, rcx
je 0x140013783
mov rbx, qword [rsp + 0xe8]
mov rdi, rcx
nop dword [rax]
cmp rdi, rbx
je 0x14001377e
mov rcx, rdi
call fcn.140015bb0
add rdi, 0xa8
mov rcx, qword [rsp + 0xe0]
jmp 0x140013760
call fcn.1400cfe04
mov qword [rsp + 0xe0], r14
mov qword [rsp + 0xe8], r14
mov qword [rsp + 0xf0], r14
mov rcx, qword [rsp + 0xc8]
call fcn.1400cfe04
nop
mov rcx, qword [rsp + 0x170]
test rcx, rcx
je 0x1400137bb
call fcn.1400cfe04
mov qword [rsp + 0x170], r14
mov qword [rsp + 0x178], r14
mov qword [rsp + 0x180], r14
mov rcx, qword [rsp + 0x158]
call fcn.1400cfe04
nop
lea rcx, [rsp + 0x128]
call fcn.140014450
mov rcx, qword [rsp + 0x128]
call fcn.1400cfe04
nop
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x140013825
movzx r9d, byte [rsp + 0x40]
lea r8, [rsp + 0x58]
mov rdx, qword [rsp + 0x68]
call fcn.140015840
mov rcx, qword [rsp + 0x60]
call fcn.1400cfe04
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x70], r14
mov rcx, qword [rsp + 0x48]
call fcn.1400cfe04
nop
lea rcx, [rsp + 0xf8]
call fcn.140014450
mov rcx, qword [rsp + 0xf8]
call fcn.1400cfe04
mov al, 1
jmp 0x1400138bf
mov rcx, qword [rsp + 0x7f0]
xor rcx, rsp
call fcn.1400e2890
lea r11, [rsp + 0x800]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret