Function at 0x14020e030
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x250
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x1c8], rcx
mov eax, dword [0x14025e5c8]
mov ecx, dword [0x14025e5cc]
xor ecx, 0xded9130f
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0x1001a1c
xor edx, 0xfeffe5e3
mov eax, ecx
xor eax, edx
and eax, 0xd4114e90
mov edx, 0xffffffff
xor edx, 0xd4114e90
and ecx, edx
sub ecx, eax
mov edx, 0xe5c8603e
xor edx, 0xaa54e3ce
mov eax, 0xc540bc21
xor eax, 0x3abf43de
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
or eax, 0x195d95ac
mov ecx, 0xb09dea11
xor ecx, 0xd6d30532
cmp eax, ecx
ja 0x14020f700
mov eax, dword [0x14025e5d0]
mov ecx, dword [0x14025e5d4]
xor ecx, 0x353d9b5d
sub eax, ecx
or eax, 0x328c1628
imul eax, eax, 0xebd4b01
mov ecx, 0x90b58c3d
imul rax, rcx
shr rax, 0x3f
mov dword [rbp + 0x1b4], eax
mov eax, 0x50e89054
mov dword [rbp + 0x1b0], eax
mov eax, 0x10
mov qword [rbp + 0x178], rax
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x198], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x190], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0xb8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0xc0], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0xc8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0xd0], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0xd8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0xe0], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0xe8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0xf0], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0xf8], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x100], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x108], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x110], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x118], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x120], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x128], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x130], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x138], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x140], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x148], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x150], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x158], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x160], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x168], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x170], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, qword [rbp + 0x178]
mov rcx, rsp
mov qword [rbp + 0x180], rcx
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x188], rax
sub rsp, 0x20
call fcn.1402100eb
mov rcx, qword [rbp + 0x190]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x198]
mov qword [rbp + 0x1a8], rdx
add rdx, 0x50
mov qword [rbp + 0x1a0], rdx
mov qword [rax], 0
mov word [rcx], 0x917
sub rsp, 0x20
call fcn.14006a0a0
mov rdx, qword [rbp + 0x1a8]
mov ecx, dword [rbp + 0x1b0]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x1b4]
mov qword [rbp + 0x1b8], r8
mov dl, byte [rdx + 0x50]
mov r8b, 0x24
xor r8b, 0x24
cmp dl, r8b
sete dl
mov byte [rbp + 0x1c7], dl
cmp eax, ecx
ja 0x14020e0bc
mov al, byte [rbp + 0x1c7]
test al, 1
jne 0x14020e451
jmp 0x14020f587
mov rcx, qword [rbp + 0xf0]
mov r8, qword [rbp + 0x100]
mov rdx, qword [rbp + 0xf8]
mov rax, qword [rbp + 0x1b8]
mov r9, qword [0x140269898]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.140205c5d
mov rcx, qword [rbp + 0xf0]
mov rax, qword [rbp + 0x1a0]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0xa8], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xb0], rcx
mov al, byte [rax]
mov cl, 0xd5
xor cl, 0xd5
cmp al, cl
jne 0x14020f587
movabs rcx, 0x892b038011101230
movabs rax, 0x892b038011101231
xor rcx, rax
movabs rdx, 0xda5201ab9a73d12f
movabs rax, 0xda5201ab9a73d127
xor rdx, rax
movabs r8, 0xac1de468b07a1bc3
movabs rax, 0xac1de468b07a1bcb
xor r8, rax
sub rsp, 0x20
call fcn.140019c70
add rsp, 0x20
mov qword [rbp + 0x88], rax
movabs rcx, 0x890556fcca7b2927
movabs rax, 0x890556fcca7b293f
xor rcx, rax
movabs rdx, 0x68ff05e2c7ed3978
movabs rax, 0x68ff05e2c7ed3970
xor rdx, rax
sub rsp, 0x20
call fcn.14001b8b0
mov rcx, qword [rbp + 0xb8]
add rsp, 0x20
mov qword [rbp + 0x90], rax
mov word [rcx], 0x48c
sub rsp, 0x20
call fcn.14006a0a0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1a0]
mov qword [rbp + 0x98], rcx
mov cl, byte [rax]
mov dl, 0x56
xor dl, 0x56
mov al, 1
cmp cl, dl
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov rcx, qword [rbp + 0x108]
mov rdx, qword [rbp + 0x110]
mov rax, qword [rbp + 0x98]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001cda0
mov rcx, qword [rbp + 0x108]
mov rax, qword [rbp + 0x90]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x947
sub rsp, 0x20
call fcn.14006a650
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x90]
mov dword [rax + 0x10], edx
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov eax, dword [0x14025e5d8]
mov r8d, dword [0x14025e5dc]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x8ca53890
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x39070bf
xor r8d, 0xfc6f8f40
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x8ca53890
mov r8d, 0x96135513
xor r8d, 0x1ab66d83
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x9ce594f5
mov edx, 0xa7098d49
xor edx, 0x58f672b6
xor ecx, edx
add eax, 0x9ce594f5
mov edx, 0xcf52fbb6
xor edx, 0xcf52fbb7
add eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0xeacf6fe6
xor ecx, 0xffffffff
mov edx, 0x60282dd3
xor edx, 0x8ae74235
add eax, edx
add eax, 1
add eax, ecx
cmp eax, 0xf4a41711
je 0x14020f709
mov eax, dword [0x14025e5e0]
imul eax, dword [0x14025e5e4]
mov ecx, 0xc7fd4a22
xor edx, edx
div ecx
sub eax, 0x717becef
mov ecx, 0xc58f7b23
xor ecx, 0x1a969303
mov edx, 0xefc8a37f
xor edx, 0x10375c80
xor ecx, edx
mov edx, 0x33e616f9
xor edx, 0x33e616f9
mov r8d, 0xce5b77eb
xor r8d, 0xce5b77ea
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov dword [rbp + 0x7c], eax
mov cx, 0x503b
xor cx, 0x5089
sub rsp, 0x20
call fcn.14006a650
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov edx, eax
mov eax, dword [rbp + 0x7c]
mov dword [rbp + 0x80], edx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x87], cl
cmp eax, 0xafc6e865
ja 0x14020f709
mov cl, byte [rbp + 0x87]
mov al, 1
test cl, 1
mov byte [rbp + 0xa7], al
jne 0x14020e7a6
jmp 0x14020f5a6
mov ecx, 0x8f8
sub rsp, 0x20
call fcn.14006a650
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x1a0]
mov dword [rbp + 0x78], ecx
mov cl, byte [rax]
mov dl, 0xf4
xor dl, 0xf4
mov al, 1
cmp cl, dl
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov r8, qword [rbp + 0xc0]
mov eax, dword [rbp + 0x78]
mov ecx, dword [rbp + 0x80]
movsxd rcx, ecx
movsxd rdx, eax
sub rsp, 0x20
call fcn.14020f736
add rsp, 0x20
test al, 1
jne 0x14020e80b
jmp 0x14020e81d
sub rsp, 0x20
call fcn.140007e9d
add rsp, 0x20
jmp 0x14020f573
mov rax, qword [rbp + 0xc0]
mov rax, qword [rax]
mov qword [rbp + 0x70], rax
add rax, 0xffffffff80000000
movabs rcx, 0x4441bd6eb72e9aa5
movabs rdx, 0xbbbe4291b72e9aa5
xor rcx, rdx
cmp rax, rcx
jae 0x14020e863
sub rsp, 0x20
call fcn.140007e9d
add rsp, 0x20
jmp 0x14020f573
mov eax, dword [0x14025e5e8]
mov edx, dword [0x14025e5ec]
xor ecx, ecx
sub ecx, eax
mov eax, 0x721b1a7b
xor eax, 0x721b1a7b
sub eax, edx
add ecx, eax
mov eax, 0xe782f79f
xor eax, 0xe782f79f
sub eax, ecx
mov ecx, eax
and ecx, 0x1dea5c11
or eax, 0x1dea5c11
add ecx, eax
mov edx, 0x8da0bd58
xor edx, 0x725f42a7
mov eax, ecx
xor eax, edx
and eax, 0xe0cab4f8
mov edx, 0xd81200bf
xor edx, 0x38d8b447
mov r8d, 0xd823907e
xor r8d, 0x27dc6f81
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0xf57e4a84
xor ecx, 0x152b5aee
and eax, ecx
mov ecx, 0x9354929e
xor ecx, 0xd4e354c4
cmp eax, ecx
jae 0x14020f712
mov rdx, qword [rbp + 0x120]
mov rcx, qword [rbp + 0x118]
mov rax, qword [rbp + 0x88]
mov r8, qword [rbp + 0xb0]
mov r9, qword [rbp + 0xa8]
mov r10, qword [rbp + 0x90]
mov r11, qword [rbp + 0x70]
mov esi, dword [0x14025e5f0]
xor esi, 0xfa33d7a
mov edi, dword [0x14025e5f4]
xor edi, 0x2b1b510e
imul esi, edi
mov edi, esi
xor edi, 0xffffffff
mov ebx, 0x14a4ef2e
xor ebx, 0x638d573d
and ebx, edi
mov r14d, 0xffffffff
xor r14d, 0x7729b813
mov edi, esi
and edi, r14d
imul edi, ebx
mov r14d, 0x8c0c00a9
xor r14d, 0xfb25b8ba
mov ebx, esi
and ebx, r14d
or esi, 0x7729b813
imul esi, ebx
add esi, edi
xor esi, 0xffffffff
mov ebx, 0x932bf3cf
xor ebx, 0x68a3eaf9
mov edi, 0xf2738f1c
xor edi, 0xd8c70e3
xor ebx, edi
mov edi, 0xffffffff
xor edi, 0xc9d79ebc
or esi, ebx
or edi, 0xc9d79ebc
mov ebx, 0xed4dea18
xor ebx, 0x12b215e7
xor esi, ebx
and esi, edi
mov edi, 0xd91795c3
xor edi, 0x2f463851
sub esi, edi
mov dword [rbp + 0x5c], esi
mov dword [r10 + 0x14], r11d
mov qword [rax + 8], r10
mov qword [rcx], r9
mov qword [rcx + 8], r8
mov qword [rdx], 1
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14016893e
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x5c]
mov qword [rbp + 0x60], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x6f], cl
cmp eax, 0x9a076ec7
ja 0x14020f712
mov cl, byte [rbp + 0x6f]
mov al, 1
test cl, 1
mov byte [rbp + 0xa7], al
jne 0x14020ea2e
jmp 0x14020f5a6
mov rcx, qword [rbp + 0x60]
mov rax, qword [rbp + 0x198]
mov qword [rax], rcx
mov dl, 1
xor dl, 0
sub rsp, 0x20
and dl, 1
call fcn.140169990
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1a0]
mov qword [rbp + 0x50], rcx
mov cl, byte [rax]
mov dl, 0x18
xor dl, 0x18
mov al, 1
cmp cl, dl
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov rcx, qword [rbp + 0xc8]
mov ax, 0x6566
xor ax, 0x6ee8
mov word [rcx], ax
sub rsp, 0x20
call fcn.14006a0a0
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov qword [rbp + 0x48], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov eax, dword [0x14025e5f8]
and eax, dword [0x14025e5fc]
mov ecx, 0x27f4a5ee
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0xab66417b
xor eax, 0x8c601e6b
and eax, ecx
xor eax, 0xffffffff
add ecx, 0x27065f10
mov edx, 0x60908f67
xor edx, 0x60908f66
add ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xb380a28
xor ecx, 0xd7ed6e70
mov edx, 0xcbeb86a6
xor edx, 0x34147959
xor ecx, edx
mov edx, 0xbec794ed
xor edx, 0x6212f0b5
mov r8d, 0xaba0e13d
xor r8d, 0x545f1ec2
xor edx, r8d
or ecx, edx
and eax, ecx
mov ecx, 0xdb4ae736
xor ecx, 0x24b518c9
xor eax, ecx
cmp eax, 0x607595a8
jbe 0x14020f71b
mov eax, dword [0x14025e600]
xor edx, edx
div dword [0x14025e604]
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0x6c400668
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x119ec5cf
xor ecx, 0x1650a694
imul eax, ecx
xor eax, 0x81c7a4d7
mov dword [rbp + 0x34], eax
movabs rcx, 0xac4cfb1530409269
movabs rax, 0xac4cfb1530409268
xor rcx, rax
movabs rdx, 0xa13b8af9df3f77fb
movabs rax, 0xa13b8af9df3f77f3
xor rdx, rax
movabs r8, 0x5ab476c45bfb7802
movabs rax, 0x5ab476c45bfb780a
xor r8, rax
sub rsp, 0x20
call fcn.140019c70
add rsp, 0x20
mov qword [rbp + 0x20], rax
movabs rcx, 0x5a3fccd719bce022
movabs rax, 0x5a3fccd719bce03a
xor rcx, rax
movabs rdx, 0x1e89d05237acdf67
movabs rax, 0x1e89d05237acdf6f
xor rdx, rax
sub rsp, 0x20
call fcn.14001b8b0
mov rcx, qword [rbp + 0xd0]
add rsp, 0x20
mov qword [rbp + 0x28], rax
mov word [rcx], 0x4ee
sub rsp, 0x20
call fcn.14006a0a0
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x34]
mov qword [rbp + 0x38], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x47], cl
cmp eax, 0x58d63996
jbe 0x14020f71b
mov cl, byte [rbp + 0x47]
mov al, 1
test cl, 1
mov byte [rbp + 0xa7], al
jne 0x14020ec68
jmp 0x14020f5a6
mov rcx, qword [rbp + 0x128]
mov rdx, qword [rbp + 0x130]
mov rax, qword [rbp + 0x38]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001cda0
mov rcx, qword [rbp + 0x128]
mov rax, qword [rbp + 0x28]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0xddb
sub rsp, 0x20
call fcn.14006a650
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x1a0]
mov dword [rcx + 0x10], edx
mov cl, byte [rax]
mov dl, 0x77
xor dl, 0x77
mov al, 1
cmp cl, dl
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov eax, dword [0x14025e608]
mov ecx, dword [0x14025e60c]
xor ecx, 0x71e3df5f
mov edx, 0x273c6b7b
xor edx, 0xebec6550
sub eax, edx
add eax, ecx
mov ecx, 0x242960bf
xor ecx, 0xe8f96e94
add eax, ecx
mov ecx, 0xe3e2bfe2
xor ecx, 0xbb905df8
imul eax, ecx
mov ecx, 0x1f8ff854
xor ecx, 0x797fdc5a
sub eax, ecx
mov ecx, eax
and ecx, 0xbf5cbbbb
mov edx, 0x334b9a05
xor edx, 0xccb465fa
xor ecx, edx
add eax, 0xbf5cbbbb
add eax, 1
add eax, ecx
mov ecx, 0xa5142b78
xor ecx, 0xb969ad10
cmp eax, ecx
jb 0x14020f724
mov ecx, dword [0x14025e610]
mov r8d, dword [0x14025e614]
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, r8d
xor edx, 0xffffffff
or eax, edx
mov edx, r8d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x80530d99
xor ecx, 0x855bb439
or eax, ecx
mov edx, 0x983e4652
xor edx, 0x67c1b9ad
mov ecx, eax
xor ecx, edx
mov edx, 0xaabfc45a
xor edx, 0x68fdfca9
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0xc24238f3
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xc24238f3
or eax, 0xc24238f3
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0xc86df4c3
xor ecx, 0xffffffff
add eax, 0xc86df4c3
add eax, 1
add eax, ecx
mov dword [rbp + 0x14], eax
mov eax, 0xa27da540
xor eax, 0x3b2410b2
mov dword [rbp + 0x10], eax
mov ecx, 0x2e
sub rsp, 0x20
call fcn.14006a650
mov rdx, qword [rbp + 0x1a0]
mov ecx, dword [rbp + 0x10]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp + 0x14]
mov dword [rbp + 0x18], r8d
mov dl, byte [rdx]
mov r8b, 0x7e
xor r8b, 0x7e
cmp dl, r8b
sete dl
mov byte [rbp + 0x1f], dl
cmp eax, ecx
je 0x14020f724
mov cl, byte [rbp + 0x1f]
mov al, 1
test cl, 1
mov byte [rbp + 0xa7], al
jne 0x14020ee6b
jmp 0x14020f5a6
mov ecx, 0x8ec
sub rsp, 0x20
call fcn.14006a650
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov dword [rbp + 0xc], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov r8, qword [rbp + 0xd8]
mov eax, dword [rbp + 0xc]
mov ecx, dword [rbp + 0x18]
movsxd rcx, ecx
movsxd rdx, eax
sub rsp, 0x20
call fcn.14020f736
add rsp, 0x20
test al, 1
jne 0x14020eec5
jmp 0x14020eed7
sub rsp, 0x20
call fcn.140007e9d
add rsp, 0x20
jmp 0x14020f573
mov rax, qword [rbp + 0xd8]
mov rax, qword [rax]
mov qword [rbp], rax
add rax, 0xffffffff80000000
movabs rcx, 0x697f9603470f2a10
movabs rdx, 0x968069fc470f2a10
xor rcx, rdx
cmp rax, rcx
jae 0x14020ef1d
sub rsp, 0x20
call fcn.140007e9d
add rsp, 0x20
jmp 0x14020f573
mov ecx, 0x669
sub rsp, 0x20
call fcn.14006a650
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov dword [rbp - 4], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov r8, qword [rbp + 0xe0]
mov rcx, qword [rbp]
mov eax, dword [rbp - 4]
movsxd rdx, eax
sub rsp, 0x20
call fcn.14020f736
add rsp, 0x20
test al, 1
jne 0x14020ef75
jmp 0x14020ef87
sub rsp, 0x20
call fcn.140007e9d
add rsp, 0x20
jmp 0x14020f573
mov rax, qword [rbp + 0xe0]
mov rax, qword [rax]
mov qword [rbp - 0x10], rax
xor ecx, ecx
sub rcx, rax
xor eax, eax
sub rax, 0xffffffff80000000
add rcx, rax
xor eax, eax
sub rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x14020efcf
sub rsp, 0x20
call fcn.140007e9d
add rsp, 0x20
jmp 0x14020f573
mov r8, qword [rbp + 0x140]
mov rdx, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x20]
mov r9, qword [rbp + 0x48]
mov r10, qword [rbp + 0x28]
mov r11, qword [rbp - 0x10]
mov dword [r10 + 0x14], r11d
mov qword [rax + 8], r10
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov qword [r8], 1
mov qword [r8 + 8], rax
mov r9d, 0xf7695008
xor r9d, 0xf7695009
sub rsp, 0x20
call fcn.140169400
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1a0]
mov qword [rbp - 0x18], rcx
mov cl, byte [rax]
mov dl, 0x92
xor dl, 0x92
mov al, 1
cmp cl, dl
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp + 0x198]
sub rsp, 0x20
call fcn.140168d70
mov rax, qword [rbp + 0x1a0]
add rsp, 0x20
mov cl, byte [rax]
mov dl, 0x18
xor dl, 0x18
mov al, 1
cmp cl, dl
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov rcx, qword [rbp + 0x198]
mov rax, qword [rcx]
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.140168936
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov rcx, qword [rbp + 0xe8]
mov word [rcx], 0xc2b
sub rsp, 0x20
call fcn.14006a0a0
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x20
mov qword [rbp - 0x28], rax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
mov rcx, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x150]
mov rax, qword [rbp - 0x28]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001cda0
mov rdx, qword [rbp + 0x148]
mov r9, qword [rbp + 0x1c8]
mov rax, qword [rbp + 0x158]
mov rcx, qword [rbp + 0x160]
add rsp, 0x20
mov r8, qword [rdx]
mov rdx, qword [rdx + 8]
mov r9, qword [r9]
add r9, 0x18
mov qword [rbp - 0x38], r9
mov qword [rax], r8
mov qword [rax + 8], rdx
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x38]
mov rdx, qword [rbp - 0x20]
mov r8, qword [rbp + 0x158]
mov rax, qword [rbp + 0x160]
add rsp, 0x20
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.14017b550
mov rcx, qword [rbp + 0x1a0]
add rsp, 0x30
mov dword [rbp - 0x2c], eax
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0xa7], al
jne 0x14020f5a6
sub rsp, 0x20
mov cx, 0x2b9
call fcn.140069e00
mov edx, dword [rbp - 0x2c]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1a0]
mov al, byte [rax]
test al, al
sete al
movsxd rdx, edx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14020f1e9
jmp 0x14020f573
movabs rcx, 0xccd21636603d0a5c
movabs rax, 0xccd21636603d0a6c
xor rcx, rax
movabs rdx, 0xadee5762f06dd6d
movabs rax, 0xadee5762f06dd65
xor rdx, rax
sub rsp, 0x20
call fcn.14001b8b0
add rsp, 0x20
mov qword [rbp - 0x50], rax
mov qword [rax], 0
mov dword [rax + 8], 1
mov cx, 0x51e0
xor cx, 0x5535
sub rsp, 0x20
call fcn.14006a650
mov rdx, qword [rbp + 0x1a0]
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp - 0x50]
mov dword [rax + 0xc], ecx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp - 0x41], cl
mov qword [rbp - 0x40], rax
jne 0x14020f536
movabs rcx, 0x6cb0b3aa7d380587
movabs rax, 0x6cb0b3aa7d3805a7
xor rcx, rax
movabs rdx, 0xc84d4c3a363382ca
movabs rax, 0xc84d4c3a363382c2
xor rdx, rax
sub rsp, 0x20
call fcn.1400132f0
mov rcx, qword [rbp + 0x168]
add rsp, 0x20
mov qword [rbp - 0x60], rax
mov word [rcx], 0x10
sub rsp, 0x20
call fcn.14006a0a0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1a0]
mov qword [rbp - 0x58], rcx
mov dl, byte [rax]
mov r8b, 0x73
xor r8b, 0x73
mov cl, 1
xor eax, eax
cmp dl, r8b
mov byte [rbp - 0x41], cl
mov qword [rbp - 0x40], rax
jne 0x14020f536
mov rcx, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x180]
mov rax, qword [rbp - 0x58]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001cda0
mov rax, qword [rbp + 0x170]
mov rcx, qword [rbp + 0x188]
mov rdx, qword [rbp - 0x60]
add rsp, 0x20
mov r8, qword [rax]
mov rax, qword [rax + 8]
mov qword [rdx + 8], r8
mov qword [rdx + 0x10], rax
sub rsp, 0x20
call fcn.14007b1b0
mov r8, qword [rbp + 0x188]
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp + 0x1a0]
mov rax, qword [rbp - 0x60]
add rsp, 0x20
mov r9, qword [r8]
mov qword [rcx + 0x10], r9
mov r8, qword [r8 + 8]
mov qword [rcx + 0x18], r8
mov cl, 1
cmp byte [rdx], 0
mov byte [rbp - 0x41], cl
mov qword [rbp - 0x40], rax
jne 0x14020f536
mov eax, dword [0x14025e618]
mov edx, dword [0x14025e61c]
xor edx, 0x6793ddcb
mov r8d, eax
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
mov r8d, 0x5dac40c8
xor r8d, 0xa253bf37
xor edx, r8d
and eax, edx
or ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x2bb83880
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0x2bb83880
mov r8d, 0xca59c3b9
xor r8d, 0xe1e1fb39
or ecx, r8d
imul ecx, edx
add ecx, eax
and ecx, 0x6609e1ab
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5a8e662b
or eax, edx
mov edx, 0xda9d573f
xor edx, 0x2562a8c0
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x5a8e662b
or ecx, edx
xor eax, 0xffffffff
mov edx, 0xc76d7cf4
xor edx, 0x3892830b
xor ecx, edx
or eax, ecx
cmp eax, 0x1547ecff
je 0x14020f72d
mov rdx, qword [rbp - 0x50]
mov rax, qword [rbp + 0x1c8]
mov r8d, dword [0x14025e620]
imul r8d, dword [0x14025e624]
mov ecx, r8d
and ecx, ecx
mov r9d, 0x58a25b47
xor r9d, 0xa75da4b8
xor ecx, r9d
xor ecx, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x243a7d06
or ecx, r9d
mov r9d, 0x243a7d06
and r9d, 0x243a7d06
mov r10d, 0x87508adc
xor r10d, 0x78af7523
xor r9d, r10d
and r8d, r9d
mov r9d, 0x67fbaf49
xor r9d, 0x980450b6
xor r8d, r9d
and ecx, r8d
xor ecx, 0xffffffff
mov r8d, 0x872b16c6
xor r8d, 0xc2dd5666
and ecx, r8d
mov r8d, 0x51065bdf
xor r8d, 0x479c385c
xor ecx, r8d
mov dword [rbp - 0x68], ecx
mov rcx, qword [0x140269118]
mov qword [rdx + 0x20], rcx
mov rcx, qword [0x140269120]
mov qword [rdx + 0x28], rcx
mov rax, qword [rax]
mov rcx, qword [rax + 0x20]
add rcx, 8
sub rsp, 0x20
call fcn.140029f90
mov rcx, qword [rbp + 0x1a0]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp - 0x61], cl
cmp eax, 0xb189be89
ja 0x14020f440
mov rax, qword [rbp - 0x60]
mov cl, byte [rbp - 0x61]
mov byte [rbp - 0x41], cl
mov qword [rbp - 0x40], rax
jmp 0x14020f536
mov rax, qword [rbp + 0x1a0]
mov dl, byte [rbp - 0x41]
mov rcx, qword [rbp - 0x40]
mov byte [rbp - 0x69], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.1402034c7
mov rax, qword [rbp + 0x1a0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14020f573
mov rax, qword [rbp + 0x1a0]
mov cl, byte [rbp - 0x69]
mov byte [rax], cl
mov rax, qword [rbp + 0x1a0]
mov al, byte [rax]
mov byte [rbp + 0xa7], al
jmp 0x14020f5a6
mov rax, qword [rbp + 0x1a0]
mov cl, 0x62
xor cl, 0x62
mov byte [rax], cl
xor eax, eax
mov cl, al
mov al, 1
mov byte [rbp - 0x6b], cl
mov byte [rbp - 0x6a], al
jmp 0x14020f623
mov rdx, qword [rbp + 0xb0]
mov r8, qword [rbp + 0x1a0]
mov al, byte [rbp + 0xa7]
mov byte [rbp - 0x6d], al
cmp al, 0
sete cl
mov byte [rbp - 0x6c], cl
mov byte [r8], 0
cmp rdx, 0
mov byte [rbp - 0x6b], cl
mov byte [rbp - 0x6a], al
je 0x14020f623
mov al, byte [rbp - 0x6d]
mov cl, byte [rbp - 0x6c]
mov r8, qword [rbp + 0xb0]
movabs rdx, 0x4000000000000000
and rdx, qword [r8]
cmp rdx, 0
mov byte [rbp - 0x6b], cl
mov byte [rbp - 0x6a], al
jne 0x14020f623
mov rcx, qword [rbp + 0xb0]
sub rsp, 0x20
call fcn.14000e9f6
mov cl, byte [rbp - 0x6c]
mov al, byte [rbp - 0x6d]
add rsp, 0x20
mov byte [rbp - 0x6b], cl
mov byte [rbp - 0x6a], al
mov rax, qword [rbp + 0x198]
mov cl, byte [rbp - 0x6b]
mov dl, byte [rbp - 0x6a]
mov byte [rbp - 0x6f], dl
mov byte [rbp - 0x6e], cl
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401688c5
mov rax, qword [rbp + 0x1a0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14020f66d
mov al, byte [rbp - 0x6e]
mov rcx, qword [rbp + 0x1a0]
mov dl, byte [rbp - 0x6f]
mov byte [rcx], dl
test al, 1
jne 0x14020f6f2
sub rsp, 0x20
call fcn.140205cd9
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
cmp word [rax + 0x12], 1
jle 0x14020f6f2
mov rax, qword [rbp - 0x78]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 8]
mov ecx, 0x2a1baacc
xor ecx, 0xef6988ad
cmp eax, ecx
jne 0x14020f6f2
mov rax, qword [rbp + 0x1a0]
mov cl, 9
xor cl, 9
mov byte [rax], cl
sub rsp, 0x20
call fcn.140205ceb
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14009ff50
mov rax, qword [rbp + 0x1a0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14020f6f2
sub rsp, 0x20
call fcn.140205d18
add rsp, 0x20
lea rsp, [rbp + 0x1d0]
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
out dx, eax
invalid
scasd eax, dword [rdi]
jle 0x14020f76c
invalid
mov edx, 0xe9b6be82
invalid
shl dword [rdx + rsi*4 - 0xbde1628], cl
invalid
adc eax, 0xe9957703
xor eax, 0x5dfffff6
pop rbp
invalid
push rax