Function at 0x140018e34
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x188
lea rbp, [rsp + 0x80]
mov r12, r8
mov qword [rbp + 0x58], rdx
mov qword [rbp + 0x60], rcx
sub rsp, 0x20
xor esi, esi
lea rcx, [rbp - 0x7c]
mov r8d, 0x9c
xor edx, edx
call fcn.140003c53
add rsp, 0x20
cmp dword [0x1400c8520], 9
mov eax, dword [0x1400c8524]
setg cl
lea edx, [rax + 1]
imul edx, eax
and dl, cl
mov byte [rbp + 0x107], dl
mov al, byte [rbp + 0x107]
lea rax, [0x140051a20]
movsxd rcx, dword [rsi + rax]
xor dword [rbp + rcx*4 - 0x7c], 0x1e27
add rsi, 4
cmp rsi, 0x98
jne 0x140018ea0
mov eax, 0x363
xor ecx, ecx
mov qword [rbp + 0x68], rcx
lea rsi, [0x140051980]
lea rbx, [0x140051ac0]
lea rdx, [0x140051be0]
lea r10, [0x140051cec]
lea r9, [0x140051d14]
lea r15, [0x140051cdc]
lea rcx, [0x140051b50]
lea r8, [0x140051cf4]
lea r13, [0x140051ce4]
mov edi, 0
mov qword [rbp + 0x70], rdi
mov edi, 0
mov qword [rbp + 0x78], rdi
mov edi, 0
mov qword [rbp + 0x80], rdi
mov edi, 0
mov qword [rbp + 0xc0], rdi
mov edi, 0
mov qword [rbp + 0x28], rdi
xor edi, edi
mov qword [rbp + 0x98], rdi
xor edi, edi
mov qword [rbp + 0x30], rdi
xor edi, edi
mov qword [rbp + 0xa0], rdi
xor edi, edi
mov qword [rbp + 0x38], rdi
xor edi, edi
mov qword [rbp + 0x40], rdi
xor edi, edi
mov qword [rbp + 0xa8], rdi
xor edi, edi
mov qword [rbp + 0x48], rdi
xor edi, edi
mov qword [rbp + 0x50], rdi
xor edi, edi
mov qword [rbp + 0x88], rdi
xor edi, edi
mov qword [rbp + 0x90], rdi
mov rdi, r15
mov r11, rbx
mov r15, rdx
mov r14, rcx
cmp eax, 0x3b9b
jle 0x140018fdf
cmp eax, 0x5f10
jle 0x140019077
cmp eax, 0x6ccf
jg 0x1400191da
cmp eax, 0x60c3
jle 0x140019401
cmp eax, 0x60c4
je 0x1400199b0
cmp eax, 0x6930
je 0x1400199e1
cmp eax, 0x6aef
jne 0x140018f8d
mov eax, dword [rbp + 0x1c]
mov ecx, 0x6c0f
jmp 0x140019e0b
cmp eax, 0x20d3
jg 0x140019143
cmp eax, 0x15dd
jle 0x14001926e
cmp eax, 0x1c07
jle 0x140019476
cmp eax, 0x1c08
je 0x140019886
cmp eax, 0x1d9a
je 0x140019a61
cmp eax, 0x1dcd
jne 0x140018f8d
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
add rax, 2
mov rcx, qword [rbp + 0xf0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf8]
mov dword [rax], 0xd2248cb0
mov eax, dword [0x1400c7cf8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x683c
mov ecx, 0xbb9
cmove eax, ecx
cmp dword [0x1400c7cfc], 0xa
cmovl eax, ecx
mov rcx, r14
xor eax, dword [rbp - 0x50]
jmp 0x140018f8d
cmp eax, 0x45de
jle 0x1400192e0
cmp eax, 0x5067
jle 0x140019602
cmp eax, 0x5068
je 0x140019f35
cmp eax, 0x5494
je 0x140019ada
cmp eax, 0x5662
jne 0x140018f8d
mov rax, qword [rbp + 0xe0]
mov rax, qword [rax]
lea rcx, [rax + 2]
mov rdx, qword [rbp + 0xe0]
mov qword [rdx], rcx
movzx eax, word [rax]
mov rcx, qword [rbp + 0xe8]
mov rcx, qword [rcx]
lea rdx, [rcx + 2]
mov rsi, qword [rbp + 0xe8]
mov qword [rsi], rdx
mov rdx, r15
lea rsi, [0x140051980]
mov word [rcx], ax
mov rax, qword [rbp + 0xd8]
mov rax, qword [rax]
dec rax
mov rcx, qword [rbp + 0xd8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf8]
mov dword [rax], 0xcd4c69f9
mov eax, dword [0x1400c7d48]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2646
mov ecx, 0x4c94
cmove eax, ecx
cmp dword [0x1400c7d4c], 0xa
cmovl eax, ecx
mov rcx, r14
xor eax, dword [rbp - 0x28]
jmp 0x140018f8d
cmp eax, 0x3028
jle 0x140019380
cmp eax, 0x34c0
jle 0x140019671
cmp eax, 0x34c1
je 0x140019eb8
cmp eax, 0x3711
je 0x140019b40
cmp eax, 0x3738
jne 0x140018f8d
cmp dword [0x1400c8538], 0xa
mov eax, dword [0x1400c853c]
setl cl
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x50], 0
lea rdx, [0x140051d1c]
jne 0x1400191bd
xor ebx, ebx
movsxd rcx, dword [rbx + rdx]
xor dword [rbp + rcx*4 - 0x7c], 0x5497
add rbx, 4
cmp rbx, 0xc
jne 0x1400191a7
test al, al
mov eax, 0x434b
mov ecx, 0x20c0
cmovne eax, ecx
xor eax, dword [rbp - 0x24]
mov cl, 1
mov qword [rbp + 0x50], rcx
jmp 0x14001a00b
cmp eax, 0x72db
jle 0x1400196c9
cmp eax, 0x72dc
je 0x140019faf
cmp eax, 0x7987
je 0x140019e3e
cmp eax, 0x7b6d
jne 0x140018f8d
mov eax, dword [rbp + 0xb4]
cmp byte [rbp + 0xc0], 0
lea rcx, [0x140051c60]
jne 0x140019234
xor ebx, ebx
movsxd rdx, dword [rbx + rcx]
xor dword [rbp + rdx*4 - 0x7c], 0x2e15
add rbx, 4
cmp rbx, 0x7c
jne 0x14001921e
mov cl, 1
cmp eax, 0xd2248caf
jg 0x140019e15
cmp eax, 0xa547250b
jg 0x140019e9f
mov qword [rbp + 0xc0], rcx
cmp eax, 0x8b25ca27
je 0x140019886
cmp eax, 0x9bd60710
je 0x14001917a
jmp 0x140019f35
cmp eax, 0xaba
jg 0x140019741
cmp eax, 0x363
je 0x140019b72
cmp eax, 0x91b
jne 0x14001a019
mov rax, qword [rbp + 0xc8]
cmp byte [rax], 0
mov eax, 0x9bd60710
mov ecx, 0xa547250c
cmovne eax, ecx
mov rcx, qword [rbp + 0xf8]
mov dword [rcx], eax
mov eax, dword [0x1400c7d38]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x79d9
mov ecx, 0x16d1
cmove eax, ecx
cmp dword [0x1400c7d3c], 0xa
cmovl eax, ecx
mov rcx, r14
xor eax, dword [rbp - 0x30]
jmp 0x140018f8d
cmp eax, 0x413e
jg 0x140019792
cmp eax, 0x3b9c
je 0x1400198ee
cmp eax, 0x3e46
jne 0x140018f8d
mov rax, qword [rbp + 0xe0]
mov rax, qword [rax]
lea rcx, [rax + 2]
mov rdx, qword [rbp + 0xe0]
mov qword [rdx], rcx
movzx eax, word [rax]
mov rcx, qword [rbp + 0xe8]
mov rcx, qword [rcx]
lea rdx, [rcx + 2]
mov rsi, qword [rbp + 0xe8]
mov qword [rsi], rdx
mov rdx, r15
lea rsi, [0x140051980]
mov word [rcx], ax
mov rax, qword [rbp + 0xd8]
mov rax, qword [rax]
mov rcx, rax
and rcx, 0xfffffffffffffffe
or rax, 0xfffffffffffffffe
add rax, rcx
inc rax
mov rcx, qword [rbp + 0xd8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf8]
mov dword [rax], 0xcd4c69f9
mov eax, dword [rbp + 0x14]
mov ecx, 0x4e62
jmp 0x140019e0b
cmp eax, 0x2fb3
jg 0x140019801
cmp eax, 0x20d4
je 0x14001991b
cmp eax, 0x2d81
jne 0x140018f8d
cmp dword [0x1400c7d24], 0xa
mov eax, dword [0x1400c7d20]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
lea rdx, [0x140051d04]
sete al
or al, cl
cmp byte [rbp + 0x40], 0
jne 0x1400193e4
xor ebx, ebx
movsxd rcx, dword [rbx + rdx]
xor dword [rbp + rcx*4 - 0x7c], 0x22f1
add rbx, 4
cmp rbx, 8
jne 0x1400193ce
test al, al
mov eax, 0x8cf
mov ecx, 0x79d9
cmovne eax, ecx
xor eax, dword [rbp - 0x3c]
mov cl, 1
mov qword [rbp + 0x40], rcx
jmp 0x14001a00b
cmp eax, 0x5f11
je 0x140019bba
cmp eax, 0x5f44
jne 0x140018f8d
mov rax, qword [rbp + 0xe0]
mov rax, qword [rax]
cmp word [rax], 0
mov eax, 0xea3f01fa
mov ecx, 0x8b25ca27
cmove eax, ecx
mov rcx, qword [rbp + 0xf8]
mov dword [rcx], eax
mov rax, qword [rbp + 0xc8]
mov byte [rax], 0
mov eax, dword [0x1400c7d18]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0xb82
mov ecx, 0x4d5d
cmove eax, ecx
cmp dword [0x1400c7d1c], 0xa
cmovl eax, ecx
mov rcx, r14
xor eax, dword [rbp - 0x40]
jmp 0x140018f8d
cmp eax, 0x15de
je 0x140019cdb
cmp eax, 0x1ade
jne 0x140018f8d
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd8], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb8], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd0], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf0], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xe8], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xd8]
mov qword [rax], r12
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rbp + 0x58]
mov qword [rax], rcx
mov rax, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0x60]
mov qword [rax], rcx
mov rax, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xe0]
mov rax, qword [rbp + 0xd0]
mov rax, qword [rax]
mov rcx, rbx
mov rbx, qword [rbp + 0xf0]
mov qword [rbx], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf8], rax
mov rax, qword [rbp + 0xf8]
mov dword [rax], 0xd2248cb0
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc8], rax
cmp dword [0x1400c7cc4], 0xa
mov eax, dword [0x1400c7cc0]
setl bl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, bl
cmp byte [rbp + 0x70], 0
jne 0x1400195e2
xor ebx, ebx
movsxd rdx, dword [rbx + rcx]
xor dword [rbp + rdx*4 - 0x7c], 0x52f6
add rbx, 4
cmp rbx, 0x8c
jne 0x1400195c9
test al, al
mov eax, 0x4110
mov edx, 0x703e
cmovne eax, edx
xor eax, dword [rbp - 0x74]
mov dl, 1
mov qword [rbp + 0x70], rdx
mov rbx, rcx
jmp 0x14001a00e
cmp eax, 0x45df
je 0x140019ce8
cmp eax, 0x4b40
jne 0x140018f8d
cmp dword [0x1400c7d44], 0xa
mov eax, dword [0x1400c7d40]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x48], 0
jne 0x140019654
xor ebx, ebx
movsxd rcx, dword [rbx + r9]
xor dword [rbp + rcx*4 - 0x7c], 0x51f0
add rbx, 4
cmp rbx, 8
jne 0x14001963e
test al, al
mov eax, 0x77b6
mov ecx, 0x1f92
cmovne eax, ecx
xor eax, dword [rbp - 0x2c]
mov cl, 1
mov qword [rbp + 0x48], rcx
jmp 0x14001a00b
cmp eax, 0x3029
je 0x140019d65
cmp eax, 0x339d
jne 0x140018f8d
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xe8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xb8]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xe0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf8]
mov dword [rax], 0xcd4c69f9
mov eax, dword [rbp + 4]
mov ecx, 0x6271
jmp 0x140019e0b
cmp eax, 0x6cd0
je 0x140019db8
cmp eax, 0x6e3f
jne 0x140018f8d
cmp dword [0x1400c7ccc], 0xa
mov eax, dword [0x1400c7cc8]
setl dl
lea ebx, [rax + 1]
imul ebx, eax
test bl, 1
sete al
or al, dl
cmp byte [rbp + 0x78], 0
jne 0x14001971e
xor ebx, ebx
movsxd rdx, dword [rbx + rcx]
xor dword [rbp + rdx*4 - 0x7c], 0x985
add rbx, 4
cmp rbx, 0x88
jne 0x140019705
test al, al
mov eax, 0x2027
mov edx, 0x928
cmovne eax, edx
xor eax, dword [rbp - 0x70]
mov dl, 1
mov qword [rbp + 0x78], rdx
mov rbx, r11
mov rdx, r15
jmp 0x140018f8d
cmp eax, 0xabb
je 0x140019dd1
cmp eax, 0x124b
jne 0x140018f8d
mov rax, qword [rbp + 0xe0]
mov rax, qword [rax]
cmp word [rax], 0
mov eax, 0xea3f01fa
mov ecx, 0x8b25ca27
cmove eax, ecx
mov rcx, qword [rbp + 0xf8]
mov dword [rcx], eax
mov rax, qword [rbp + 0xc8]
mov byte [rax], 0
mov eax, dword [rbp + 8]
mov ecx, 0x468d
jmp 0x140019e0b
cmp eax, 0x413f
je 0x140019950
cmp eax, 0x42aa
jne 0x140018f8d
cmp dword [0x1400c7cf4], 0xa
mov eax, dword [0x1400c7cf0]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x30], 0
jne 0x1400197e4
xor ebx, ebx
movsxd rcx, dword [rbx + r10]
xor dword [rbp + rcx*4 - 0x7c], 0x16dd
add rbx, 4
cmp rbx, 8
jne 0x1400197ce
test al, al
mov eax, 0x7ee1
mov ecx, 0x543d
cmovne eax, ecx
xor eax, dword [rbp - 0x54]
mov cl, 1
mov qword [rbp + 0x30], rcx
jmp 0x14001a00b
cmp eax, 0x2fb4
je 0x14001997f
cmp eax, 0x2ff7
jne 0x140018f8d
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xe8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xb8]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xe0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf8]
mov dword [rax], 0xcd4c69f9
mov eax, dword [0x1400c7d08]
mov ecx, eax
not ecx
lea edx, [rax + rax]
add edx, ecx
imul edx, eax
test dl, 1
mov rdx, r15
mov eax, 0x7e1b
mov ecx, 0x1912
cmove eax, ecx
cmp dword [0x1400c7d0c], 0xa
cmovl eax, ecx
mov rcx, r14
xor eax, dword [rbp - 0x48]
jmp 0x140018f8d
mov rbx, qword [rbp + 0xa8]
cmp dword [0x1400c7d34], 0xa
mov eax, dword [0x1400c7d30]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
test bl, bl
lea rdx, [0x140051d0c]
jne 0x1400198ce
xor ebx, ebx
movsxd rcx, dword [rbx + rdx]
xor dword [rbp + rcx*4 - 0x7c], 0xbb5
add rbx, 4
cmp rbx, 8
jne 0x1400198b8
test al, al
mov eax, 0x726c
mov ecx, 0x40eb
cmovne eax, ecx
xor eax, dword [rbp - 0x34]
mov cl, 1
mov qword [rbp + 0xa8], rcx
jmp 0x14001a00b
mov rax, qword [rbp + 0xc8]
cmp byte [rax], 0
mov eax, 0x9bd60710
mov ecx, 0xa547250c
cmovne eax, ecx
mov rcx, qword [rbp + 0xf8]
mov dword [rcx], eax
mov eax, dword [rbp + 0x10]
mov ecx, 0x4b5e
jmp 0x140019e0b
mov eax, dword [0x1400c8588]
mov ecx, 1
sub ecx, eax
imul ecx, eax
test cl, 1
mov eax, 0x2634
mov ecx, 0x22e4
cmove eax, ecx
cmp dword [0x1400c858c], 0xa
cmovl eax, ecx
mov rcx, r14
xor eax, dword [rbp - 0x14]
jmp 0x140018f8d
mov rax, qword [rbp + 0xd8]
cmp qword [rax], 0
mov rax, qword [rbp + 0xf8]
mov dword [rax], 0x8b25ca27
mov rax, qword [rbp + 0xc8]
setne byte [rax]
mov eax, dword [rbp + 0xc]
mov ecx, 0x5b28
jmp 0x140019e0b
mov eax, dword [0x1400c7cd8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x7c83
mov ecx, 0x3dc9
cmove eax, ecx
cmp dword [0x1400c7cdc], 0xa
cmovl eax, ecx
mov rcx, r14
xor eax, dword [rbp - 0x60]
jmp 0x140018f8d
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
cmp word [rax], 0
mov eax, 0x672f1f1f
mov ecx, 0x1a740224
cmove eax, ecx
mov rcx, qword [rbp + 0xf8]
mov dword [rcx], eax
mov eax, dword [rbp - 4]
mov ecx, 0x7cb8
jmp 0x140019e0b
mov rax, qword [rbp + 0xe8]
mov rax, qword [rax]
mov word [rax], 0
mov rax, qword [rbp + 0xd0]
mov rax, qword [rax]
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0xe0]
mov rax, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
cmp dword [0x1400c8598], 0xa
mov eax, dword [0x1400c859c]
setl cl
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x88], 0
jne 0x140019a41
xor dword [rbp - 0x1c], 0x6532
test al, al
mov eax, 0x17dc
mov ecx, 0x1929
cmovne eax, ecx
xor eax, dword [rbp - 0x20]
mov cl, 1
mov qword [rbp + 0x88], rcx
jmp 0x14001a00e
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
cmp word [rax], 0
mov eax, 0x672f1f1f
mov ecx, 0x1a740224
cmove eax, ecx
mov rcx, qword [rbp + 0xf8]
mov dword [rcx], eax
mov eax, dword [0x1400c7ce8]
cmp dword [0x1400c7cec], 0xa
setl cl
lea edx, [rax + rax]
add edx, 0x7c698216
add edx, eax
add edx, 0x7c698215
imul edx, eax
and edx, 1
sete al
or dl, cl
xor cl, al
xor dl, al
mov eax, 0x35b6
mov edx, 0x1e6
cmovne eax, edx
mov rdx, r15
test cl, cl
mov ecx, 0x35b6
cmovne eax, ecx
mov rcx, r14
xor eax, dword [rbp - 0x58]
jmp 0x140018f8d
cmp dword [0x1400c85a8], 0xa
mov eax, dword [0x1400c85ac]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x90], 0
lea rdx, [0x140051d28]
jne 0x140019b20
xor ebx, ebx
movsxd rcx, dword [rbx + rdx]
xor dword [rbp + rcx*4 - 0x7c], 0x52b
add rbx, 4
cmp rbx, 8
jne 0x140019b0a
test al, al
mov eax, 0x231f
mov ecx, 0x6924
cmovne eax, ecx
xor eax, dword [rbp - 0x18]
mov cl, 1
mov qword [rbp + 0x90], rcx
jmp 0x14001a00b
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
add rax, 2
mov rcx, qword [rbp + 0xf0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf8]
mov dword [rax], 0xd2248cb0
mov eax, dword [rbp]
mov ecx, 0x42e0
jmp 0x140019e0b
mov rcx, r12
mov al, byte [rbp + 0x107]
cmp byte [rbp + 0x68], 0
jne 0x140019b9a
xor r12d, r12d
movsxd rbx, dword [r12 + rsi]
xor byte [rbp + rbx*4 - 0x7c], 0x26
add r12, 4
cmp r12, 0x94
jne 0x140019b84
test al, 1
mov eax, 0x4f9
mov edx, 0x4136
cmovne eax, edx
xor eax, dword [rbp - 0x7c]
mov dl, 1
mov qword [rbp + 0x68], rdx
mov r12, rcx
jmp 0x14001a00b
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd8], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb8], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd0], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf0], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xe8], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xe0], rax
mov rax, qword [rbp + 0xd8]
mov qword [rax], r12
mov rax, qword [rbp + 0xb8]
mov rcx, qword [rbp + 0x58]
mov qword [rax], rcx
mov rax, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0x60]
mov qword [rax], rcx
mov rax, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xe0]
mov rax, qword [rbp + 0xd0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xf0]
mov qword [rcx], rax
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf8], rax
mov rax, qword [rbp + 0xf8]
mov dword [rax], 0xd2248cb0
mov eax, 0x10
call fcn.14004f010
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc8], rax
mov eax, dword [rbp - 0x10]
mov ecx, 0x4df
jmp 0x140019e0b
mov eax, dword [rbp - 8]
mov ecx, 0x46e9
jmp 0x140019e0b
mov rax, qword [rbp + 0xf8]
mov eax, dword [rax]
mov dword [rbp + 0xb4], eax
cmp dword [0x1400c85b0], 0xa
mov eax, dword [0x1400c85b4]
mov rcx, rdx
setl dl
lea ebx, [rax - 1]
imul ebx, eax
test bl, 1
sete al
or al, dl
cmp byte [rbp + 0x80], 0
jne 0x140019d3c
xor ebx, ebx
movsxd rdx, dword [rbx + rcx]
xor dword [rbp + rdx*4 - 0x7c], 0x2297
add rbx, 4
cmp rbx, 0x80
jne 0x140019d23
test al, al
mov eax, 0x29a2
mov edx, 0x3e1f
cmovne eax, edx
xor eax, dword [rbp - 0x6c]
mov dl, 1
mov qword [rbp + 0x80], rdx
mov rbx, r11
mov rdx, rcx
mov rcx, r14
jmp 0x140018f8d
mov rax, qword [rbp + 0xd8]
cmp qword [rax], 0
mov rax, qword [rbp + 0xf8]
mov dword [rax], 0x8b25ca27
mov rax, qword [rbp + 0xc8]
setne byte [rax]
mov eax, dword [0x1400c7d28]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2a3e
mov ecx, 0x3f95
cmove eax, ecx
cmp dword [0x1400c7d2c], 0xa
cmovl eax, ecx
mov rcx, r14
xor eax, dword [rbp - 0x38]
jmp 0x140018f8d
mov rax, qword [rbp + 0xf8]
mov eax, dword [rax]
mov dword [rbp + 0xb4], eax
mov eax, dword [rbp - 0xc]
mov ecx, 0xad
jmp 0x140019e0b
mov rax, qword [rbp + 0xe8]
mov rax, qword [rax]
mov word [rax], 0
mov rax, qword [rbp + 0xd0]
mov rax, qword [rax]
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0xe0]
mov rax, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
mov eax, dword [rbp + 0x18]
mov ecx, 0x7457
xor eax, ecx
mov rcx, r14
jmp 0x140018f8d
cmp eax, 0x1a740223
jg 0x140019f18
mov qword [rbp + 0xc0], rcx
cmp eax, 0xd2248cb0
je 0x140019e3e
cmp eax, 0xea3f01fa
je 0x1400193a1
jmp 0x140019f35
mov rbx, qword [rbp + 0x98]
cmp dword [0x1400c7ce4], 0xa
mov eax, dword [0x1400c7ce0]
setl cl
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
test bl, bl
jne 0x140019e7f
xor ebx, ebx
movsxd rcx, dword [rbx + r13]
xor dword [rbp + rcx*4 - 0x7c], 0x28d2
add rbx, 4
cmp rbx, 8
jne 0x140019e69
test al, al
mov eax, 0x2934
mov ecx, 0x546a
cmovne eax, ecx
xor eax, dword [rbp - 0x5c]
mov cl, 1
mov qword [rbp + 0x98], rcx
jmp 0x14001a00b
mov qword [rbp + 0xc0], rcx
cmp eax, 0xa547250c
je 0x140019618
cmp eax, 0xcd4c69f9
jne 0x140019f35
cmp dword [0x1400c7d14], 0xa
mov eax, dword [0x1400c7d10]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x38], 0
lea rdx, [0x140051cfc]
jne 0x140019efb
xor ebx, ebx
movsxd rcx, dword [rbx + rdx]
xor dword [rbp + rcx*4 - 0x7c], 0x5039
add rbx, 4
cmp rbx, 8
jne 0x140019ee5
test al, al
mov eax, 0x5bbb
mov ecx, 0x16b4
cmovne eax, ecx
xor eax, dword [rbp - 0x44]
mov cl, 1
mov qword [rbp + 0x38], rcx
jmp 0x14001a00b
mov qword [rbp + 0xc0], rcx
cmp eax, 0x1a740224
je 0x140019faf
cmp eax, 0x672f1f1f
je 0x1400197a8
mov edx, dword [0x1400c7cd0]
mov ebx, dword [0x1400c7cd4]
cmp ebx, 0xa
setl al
cmp ebx, 9
setg cl
lea esi, [rdx - 0x606e87cc]
not esi
imul esi, edx
and esi, 1
sete dl
mov ebx, ecx
and bl, sil
xor bl, al
xor bl, dl
or dl, cl
xor dl, bl
or al, sil
xor al, dl
cmp byte [rbp + 0x28], 0
jne 0x140019f8e
xor ebx, ebx
movsxd rcx, dword [rbx + rdi]
xor dword [rbp + rcx*4 - 0x7c], 0x20ad
add rbx, 4
cmp rbx, 8
jne 0x140019f78
test al, al
mov eax, 0x6644
mov ecx, 0x5c2e
cmovne eax, ecx
xor eax, dword [rbp - 0x64]
mov cl, 1
mov qword [rbp + 0x28], rcx
lea rsi, [0x140051980]
jmp 0x14001a00b
mov rbx, qword [rbp + 0xa0]
cmp dword [0x1400c7d04], 0xa
mov eax, dword [0x1400c7d00]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
test bl, bl
jne 0x140019ff0
xor ebx, ebx
movsxd rcx, dword [rbx + r8]
xor dword [rbp + rcx*4 - 0x7c], 0x476
add rbx, 4
cmp rbx, 8
jne 0x140019fda
test al, al
mov eax, 0x7a6d
mov ecx, 0x6607
cmovne eax, ecx
xor eax, dword [rbp - 0x4c]
mov cl, 1
mov qword [rbp + 0xa0], rcx
mov rbx, r11
mov rdx, r15
mov rcx, r14
jmp 0x140018f8d
cmp eax, 0x44e
jne 0x140018f8d
mov rax, qword [rbp + 0x20]
lea rsp, [rbp + 0x108]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret