Function at 0x180017eba
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1b8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xa0], r8
mov qword [rbp + 0xa8], rdx
mov qword [rbp + 0xb0], rcx
sub rsp, 0x20
xor esi, esi
lea rcx, [rbp - 0x78]
mov r8d, 0xc0
xor edx, edx
call fcn.180003c5d
add rsp, 0x20
mov eax, dword [0x1800e5b50]
cmp dword [0x1800e5b54], 9
setg cl
lea edx, [rax + 1]
imul edx, eax
and dl, cl
mov byte [rbp + 0x12f], dl
lea rax, [0x180053860]
movsxd rcx, dword [rsi + rax]
xor dword [rbp + rcx*4 - 0x78], 0x1e27
add rsi, 4
cmp rsi, 0xbc
jne 0x180017f2a
mov eax, 0x1d9a
xor ecx, ecx
mov qword [rbp + 0xb8], rcx
lea r13, [0x180053c18]
lea rdi, [0x180053c08]
lea r11, [0x1800537a0]
lea r14, [0x180053920]
lea rcx, [0x180053bd8]
lea rbx, [0x180053b30]
lea r8, [0x180053bf8]
lea r15, [0x180053be8]
lea r10, [0x180053c34]
lea r12, [0x1800539d0]
mov esi, 0
mov qword [rbp + 0xc0], rsi
mov esi, 0
mov qword [rbp + 0xc8], rsi
mov esi, 0
mov qword [rbp + 0xd0], rsi
mov esi, 0
mov qword [rbp + 0x120], rsi
mov esi, 0
mov qword [rbp + 0x48], rsi
mov esi, 0
mov qword [rbp + 0x50], rsi
mov esi, 0
mov qword [rbp + 0x58], rsi
mov esi, 0
mov qword [rbp + 0x60], rsi
xor esi, esi
mov qword [rbp + 0x68], rsi
xor esi, esi
mov qword [rbp + 0x70], rsi
xor esi, esi
mov qword [rbp + 0x78], rsi
xor esi, esi
mov qword [rbp + 0x80], rsi
xor esi, esi
mov qword [rbp + 0x88], rsi
xor esi, esi
mov qword [rbp + 0x90], rsi
xor esi, esi
mov qword [rbp + 0x98], rsi
xor esi, esi
mov qword [rbp + 0xe8], rsi
xor esi, esi
mov qword [rbp + 0xd8], rsi
xor esi, esi
mov qword [rbp + 0xe0], rsi
mov rsi, rbx
cmp eax, 0x3710
jle 0x1800180ee
cmp eax, 0x5661
jg 0x1800181bb
cmp eax, 0x413e
jg 0x1800182b0
cmp eax, 0x3e45
jg 0x18001847b
cmp eax, 0x3711
je 0x180018db5
cmp eax, 0x3738
je 0x1800187b7
cmp eax, 0x3b9c
jne 0x18001803f
cmp dword [0x1800e5b58], 0xa
mov eax, dword [0x1800e5b5c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x98], 0
lea rbx, [0x180053c20]
jne 0x1800180ce
xor edx, edx
movsxd rcx, dword [rdx + rbx]
xor dword [rbp + rcx*4 - 0x78], 0x70d1
add rdx, 4
cmp rdx, 8
jne 0x1800180b8
test al, al
mov eax, 0x64c6
mov ecx, 0x77b6
cmovne eax, ecx
xor eax, dword [rbp - 0x10]
mov cl, 1
mov qword [rbp + 0x98], rcx
jmp 0x18001920b
cmp eax, 0x1d99
jle 0x180018252
cmp eax, 0x2e2a
jg 0x180018363
cmp eax, 0x285e
jg 0x1800184d8
cmp eax, 0x1d9a
je 0x180018803
cmp eax, 0x1dcd
je 0x18001932d
cmp eax, 0x20d4
jne 0x18001803f
mov rax, qword [rbp + 0x110]
mov rax, qword [rax]
mov eax, dword [rax]
mov rcx, qword [rbp + 0x118]
mov rcx, qword [rcx]
lea rdx, [rcx - 2]
mov rbx, r11
mov r11, r13
mov r13, rsi
mov rsi, qword [rbp + 0x118]
mov qword [rsi], rdx
mov rsi, r13
lea r14, [0x180053920]
mov r13, r11
mov r11, rbx
sub eax, dword [rcx - 2]
mov rcx, qword [rbp + 0x108]
mov dword [rcx], eax
mov rax, qword [rbp + 0x130]
mov dword [rax], 0x856c335d
mov eax, dword [0x1800e5b60]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x60ce
mov ecx, 0x2d55
cmove eax, ecx
cmp dword [0x1800e5b64], 0xa
cmovl eax, ecx
lea rcx, [0x180053bd8]
xor eax, dword [rbp - 0x34]
jmp 0x18001803f
cmp eax, 0x692f
jg 0x180018394
cmp eax, 0x5f43
jg 0x18001852e
cmp eax, 0x5662
je 0x1800191b7
cmp eax, 0x5bd0
je 0x18001884a
cmp eax, 0x5f11
jne 0x18001803f
cmp dword [0x1800e5b68], 0xa
mov eax, dword [0x1800e5b6c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x78], 0
lea rbx, [0x180053c00]
jne 0x180018235
xor edx, edx
movsxd rcx, dword [rdx + rbx]
xor dword [rbp + rcx*4 - 0x78], 0xbb5
add rdx, 4
cmp rdx, 8
jne 0x18001821f
test al, al
mov eax, 0x61af
mov ecx, 0x2520
cmovne eax, ecx
xor eax, dword [rbp - 0x30]
mov cl, 1
mov qword [rbp + 0x78], rcx
jmp 0x18001920b
cmp eax, 0xbce
jle 0x180018435
cmp eax, 0x124a
jg 0x18001856b
cmp eax, 0xbcf
je 0x180018857
cmp eax, 0xc50
je 0x1800188b1
cmp eax, 0x105a
jne 0x18001803f
mov rax, qword [rbp + 0x108]
mov dword [rax], 0
mov rax, qword [rbp + 0x130]
mov dword [rax], 0x856c335d
mov eax, dword [rbp + 0x1c]
mov ecx, 0x146d
jmp 0x180018ec8
cmp eax, 0x5034
jg 0x1800185f1
cmp eax, 0x413f
je 0x18001899d
cmp eax, 0x4654
je 0x180018a18
cmp eax, 0x4b40
jne 0x18001803f
mov rax, qword [rbp + 0x108]
mov dword [rax], 0
mov rax, qword [rbp + 0x130]
mov dword [rax], 0x856c335d
mov eax, dword [0x1800e5b70]
mov ecx, dword [0x1800e5b74]
cmp ecx, 0xa
setl dl
cmp ecx, 9
setg cl
mov r14, rdi
mov rdi, rsi
lea esi, [rax + 1]
imul esi, eax
test sil, 1
mov rsi, rdi
mov rdi, r14
sete al
or cl, al
xor cl, dl
xor dl, al
test cl, cl
lea rcx, [0x180053bd8]
mov eax, 0x1979
mov ebx, 0x4f77
cmovne eax, ebx
test dl, dl
lea r14, [0x180053920]
mov ebx, 0x1979
cmovne eax, ebx
lea r12, [0x1800539d0]
xor eax, dword [rbp - 0x4c]
jmp 0x18001803f
cmp eax, 0x339c
jg 0x18001866b
cmp eax, 0x2e2b
je 0x180018a77
cmp eax, 0x2ff7
je 0x180018a93
cmp eax, 0x3029
je 0x1800192c0
jmp 0x18001803f
cmp eax, 0x70c6
jg 0x1800186a4
cmp eax, 0x6930
je 0x180018f5d
cmp eax, 0x6aef
je 0x180018b21
cmp eax, 0x6cd0
jne 0x18001803f
mov rax, qword [rbp + 0x110]
mov rax, qword [rax]
lea rcx, [rax + 2]
mov rdx, qword [rbp + 0x110]
mov qword [rdx], rcx
lea r14, [0x180053920]
cmp word [rax], 0
mov eax, 0x18b60546
mov ecx, 0x2e2463bf
cmove eax, ecx
mov rcx, qword [rbp + 0x130]
mov dword [rcx], eax
mov eax, dword [0x1800e5b78]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
lea rcx, [0x180053bd8]
mov eax, 0x6a1a
mov ebx, 0x411
cmove eax, ebx
cmp dword [0x1800e5b7c], 0xa
cmovl eax, ebx
lea r12, [0x1800539d0]
xor eax, dword [rbp - 0x2c]
jmp 0x18001803f
cmp eax, 0x91a
jle 0x18001871c
cmp eax, 0x91b
je 0x180019065
cmp eax, 0xabb
je 0x180019227
cmp eax, 0xaf4
jne 0x18001803f
mov rax, qword [rbp + 0x130]
mov dword [rax], 0x9f769422
mov eax, dword [rbp + 0x20]
mov ecx, 0x7abe
jmp 0x180018ec8
cmp eax, 0x3e46
je 0x180018b7e
cmp eax, 0x3e94
je 0x180018bd4
cmp eax, 0x4121
jne 0x18001803f
mov eax, dword [0x1800e5b80]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
lea rcx, [0x180053bd8]
mov eax, 0x7d37
mov ebx, 0x3962
cmove eax, ebx
cmp dword [0x1800e5b84], 0xa
cmovl eax, ebx
lea r12, [0x1800539d0]
xor eax, dword [rbp + 8]
jmp 0x18001803f
cmp eax, 0x285f
je 0x180018c15
cmp eax, 0x2d36
je 0x180018c5b
cmp eax, 0x2d81
jne 0x18001803f
mov eax, dword [0x1800e5b88]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x328d
mov ecx, 0x2f09
cmove eax, ecx
cmp dword [0x1800e5b8c], 0xa
cmovl eax, ecx
lea rcx, [0x180053bd8]
xor eax, dword [rbp - 0x5c]
jmp 0x18001803f
cmp eax, 0x5f44
je 0x180018fd1
cmp eax, 0x60c4
je 0x180018c82
cmp eax, 0x657f
jne 0x18001803f
mov rax, qword [rbp + 0x108]
mov eax, dword [rax]
mov dword [rbp + 0xf0], eax
mov eax, dword [rbp + 0x40]
mov ebx, 0x6e2
jmp 0x180018e92
cmp eax, 0x124b
je 0x1800190dc
cmp eax, 0x15de
je 0x180019152
cmp eax, 0x1c08
jne 0x18001803f
mov rax, qword [rbp + 0xf8]
cmp byte [rax], 0
mov eax, 0x3040b3b6
mov ecx, 0xc47d92e
cmovne eax, ecx
mov rcx, qword [rbp + 0x130]
mov dword [rcx], eax
mov eax, dword [0x1800e5b90]
mov ecx, eax
not ecx
lea edx, [rax + rax]
add ecx, edx
add ecx, 2
lea r14, [0x180053920]
imul ecx, eax
test cl, 1
mov eax, 0x61cd
mov ecx, 0x2776
cmove eax, ecx
cmp dword [0x1800e5b94], 0xa
cmovl eax, ecx
lea rcx, [0x180053bd8]
xor eax, dword [rbp - 0x54]
jmp 0x18001803f
cmp eax, 0x5035
je 0x180018ccf
cmp eax, 0x5391
je 0x180018ce9
cmp eax, 0x5494
jne 0x18001803f
cmp dword [0x1800e5b98], 0xa
mov eax, dword [0x1800e5b9c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x70], 0
jne 0x18001864e
xor edx, edx
movsxd rcx, dword [rdx + r8]
xor dword [rbp + rcx*4 - 0x78], 0x22f1
add rdx, 4
cmp rdx, 8
jne 0x180018638
test al, al
mov eax, 0x423f
mov ecx, 0x6924
cmovne eax, ecx
xor eax, dword [rbp - 0x38]
mov cl, 1
mov qword [rbp + 0x70], rcx
jmp 0x18001920b
cmp eax, 0x339d
je 0x180018d03
cmp eax, 0x34c1
je 0x180018d4b
cmp eax, 0x3689
jne 0x18001803f
mov eax, dword [rbp + 0x44]
mov rbx, rsi
mov rdx, rdi
mov edi, 0xa9f
xor eax, edi
mov rdi, rdx
jmp 0x18001803f
cmp eax, 0x7109
je 0x180018e30
cmp eax, 0x72dc
jne 0x18001904c
cmp dword [0x1800e5ba0], 0xa
mov eax, dword [0x1800e5ba4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xc8], 0
jne 0x1800186fc
xor edx, edx
movsxd rcx, dword [rdx + r12]
xor dword [rbp + rcx*4 - 0x78], 0x985
add rdx, 4
cmp rdx, 0xac
jne 0x1800186e3
test al, al
mov eax, 0x62dc
mov ecx, 0x6300
cmovne eax, ecx
xor eax, dword [rbp - 0x6c]
mov cl, 1
mov qword [rbp + 0xc8], rcx
jmp 0x18001920b
cmp eax, 0xef
je 0x180018ea0
cmp eax, 0x44e
jne 0x18001803f
mov rax, qword [rbp + 0x110]
mov rax, qword [rax]
movzx r9d, word [rax]
mov rcx, qword [rbp + 0x118]
mov rcx, qword [rcx]
lea rdx, [rcx + 2]
mov rax, rdi
mov rbx, rsi
mov rsi, qword [rbp + 0x118]
mov qword [rsi], rdx
mov rsi, rbx
lea r14, [0x180053920]
cmp r9w, word [rcx]
mov eax, 0xbb1cf8e2
mov ecx, 0x158d12bc
cmove eax, ecx
mov rcx, qword [rbp + 0x130]
mov dword [rcx], eax
mov eax, dword [0x1800e5ba8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x68c0
mov ecx, 0x5f9d
cmove eax, ecx
cmp dword [0x1800e5bac], 0xa
cmovl eax, ecx
lea rcx, [0x180053bd8]
xor eax, dword [rbp - 0x3c]
jmp 0x18001803f
mov rax, qword [rbp + 0x130]
mov dword [rax], 0x9f769422
mov eax, dword [0x1800e5bb0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
lea rcx, [0x180053bd8]
mov eax, 0x4772
mov r10d, 0xbd2
cmove eax, r10d
cmp dword [0x1800e5bb4], 0xa
cmovl eax, r10d
lea r10, [0x180053c34]
xor eax, dword [rbp - 0x44]
jmp 0x18001803f
mov al, byte [rbp + 0x12f]
cmp byte [rbp + 0xb8], 0
jne 0x18001882a
xor edx, edx
movsxd rcx, dword [rdx + r11]
xor byte [rbp + rcx*4 - 0x78], 0x26
add rdx, 4
cmp rdx, 0xb8
jne 0x180018814
test al, 1
mov eax, 0x3ea
mov ecx, 0x1277
cmovne eax, ecx
xor eax, dword [rbp - 0x78]
mov cl, 1
mov qword [rbp + 0xb8], rcx
jmp 0x18001920b
mov eax, dword [rbp + 0x14]
mov ebx, 0x44dc
jmp 0x180018e92
mov rax, qword [rbp + 0x110]
mov rax, qword [rax]
mov eax, dword [rax]
mov rcx, qword [rbp + 0x118]
mov rcx, qword [rcx]
lea rdx, [rcx - 2]
mov r9, rdi
mov rbx, rsi
mov rsi, qword [rbp + 0x118]
mov qword [rsi], rdx
mov rsi, rbx
lea r14, [0x180053920]
sub eax, dword [rcx - 2]
mov rcx, qword [rbp + 0x108]
mov dword [rcx], eax
mov rax, qword [rbp + 0x130]
mov dword [rax], 0x856c335d
mov eax, dword [rbp + 0x28]
mov ecx, 0x4bd5
jmp 0x180018ec8
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf8], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x108], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x100], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x118], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x110], rax
mov rax, qword [rbp + 0x100]
mov rcx, qword [rbp + 0xa0]
mov qword [rax], rcx
mov rax, qword [rbp + 0x118]
mov rcx, qword [rbp + 0xa8]
mov qword [rax], rcx
mov rax, qword [rbp + 0x110]
mov rcx, qword [rbp + 0xb0]
mov qword [rax], rcx
mov rax, qword [rbp + 0x100]
cmp qword [rax], 0
mov rax, qword [rbp + 0xf8]
sete byte [rax]
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x130], rax
mov rax, qword [rbp + 0x130]
mov dword [rax], 0x6e902a58
mov eax, dword [rbp + 0xc]
mov ecx, 0x3cc
jmp 0x180018ec8
mov rax, qword [rbp + 0x100]
mov rax, qword [rax]
lea rcx, [rax + rax]
not rax
mov rdx, qword [rbp + 0x100]
add rax, rcx
mov qword [rdx], rax
lea r14, [0x180053920]
mov eax, 0x9f769422
mov ecx, 0xc100f091
cmove eax, ecx
mov rcx, qword [rbp + 0x130]
mov dword [rcx], eax
mov eax, dword [0x1800e5bb8]
mov ecx, 1
sub ecx, eax
imul ecx, eax
test cl, 1
lea rcx, [0x180053bd8]
mov eax, 0x3f7d
mov ebx, 0x47bd
cmove eax, ebx
cmp dword [0x1800e5bbc], 0xa
cmovl eax, ebx
lea r12, [0x1800539d0]
xor eax, dword [rbp - 0x14]
jmp 0x18001803f
cmp dword [0x1800e5bc0], 0xa
mov eax, dword [0x1800e5bc4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xe0], 0
jne 0x180018a57
xor edx, edx
movsxd rcx, dword [rdx + r10]
xor dword [rbp + rcx*4 - 0x78], 0x24e
add rdx, 4
cmp rdx, 8
jne 0x180018a41
test al, al
mov eax, 0x7f79
mov ecx, 0x8d1
cmovne eax, ecx
xor eax, dword [rbp + 4]
mov cl, 1
mov qword [rbp + 0xe0], rcx
jmp 0x18001920b
mov rax, qword [rbp + 0x130]
mov eax, dword [rax]
mov dword [rbp + 0xf4], eax
mov eax, dword [rbp + 0x10]
mov ecx, 0x6a85
jmp 0x180018ec8
mov rax, qword [rbp + 0x130]
mov eax, dword [rax]
mov dword [rbp + 0xf4], eax
mov eax, dword [0x1800e5bc8]
cmp dword [0x1800e5bcc], 0xa
setl cl
lea edx, [rax + 0xaefd8aa]
not edx
lea r10d, [rax + rax]
add r10d, 0xaefd8aa
add edx, r10d
add edx, 0xfffffffe
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xd0], 0
lea rbx, [0x180053a80]
jne 0x180018b01
xor edx, edx
movsxd rcx, dword [rdx + rbx]
xor dword [rbp + rcx*4 - 0x78], 0x2297
add rdx, 4
cmp rdx, 0xa4
jne 0x180018ae8
test al, al
mov eax, 0x6b59
mov ecx, 0x71b3
cmovne eax, ecx
xor eax, dword [rbp - 0x68]
mov cl, 1
mov qword [rbp + 0xd0], rcx
jmp 0x18001928a
mov rax, qword [rbp + 0x108]
mov eax, dword [rax]
mov dword [rbp + 0xf0], eax
cmp dword [0x1800e5bd0], 0xa
mov eax, dword [0x1800e5bd4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xd8], 0
jne 0x180018b5e
xor dword [rbp], 0x7e16
test al, al
mov eax, 0x972
mov ecx, 0x1cca
cmovne eax, ecx
xor eax, dword [rbp - 4]
mov cl, 1
mov qword [rbp + 0xd8], rcx
jmp 0x18001920b
mov rax, qword [rbp + 0x108]
mov dword [rax], 0
mov rax, qword [rbp + 0x130]
mov dword [rax], 0x856c335d
mov eax, dword [0x1800e5bd8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
lea rcx, [0x180053bd8]
mov eax, 0x1417
mov ebx, 0x7f75
cmove eax, ebx
cmp dword [0x1800e5bdc], 0xa
cmovl eax, ebx
lea r12, [0x1800539d0]
xor eax, dword [rbp - 0xc]
jmp 0x18001803f
mov rax, qword [rbp + 0x100]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x100]
dec rax
mov qword [rcx], rax
mov eax, 0x9f769422
mov ecx, 0xc100f091
cmove eax, ecx
mov rcx, qword [rbp + 0x130]
mov dword [rcx], eax
lea rcx, [0x180053bd8]
mov eax, dword [rbp + 0x38]
mov ebx, 0x40d6
jmp 0x180018e92
mov rax, qword [rbp + 0x110]
mov rax, qword [rax]
lea rcx, [rax + 2]
mov rdx, qword [rbp + 0x110]
mov qword [rdx], rcx
lea r14, [0x180053920]
cmp word [rax], 0
mov eax, 0x18b60546
mov ecx, 0x2e2463bf
cmove eax, ecx
mov rcx, qword [rbp + 0x130]
mov dword [rcx], eax
mov eax, dword [rbp + 0x2c]
mov ecx, 0x2e95
jmp 0x180018ec8
mov rax, qword [rbp + 0x108]
mov dword [rax], 0
mov rax, qword [rbp + 0x130]
mov dword [rax], 0x856c335d
mov eax, dword [rbp + 0x3c]
mov ecx, 0x767
jmp 0x180018ec8
mov rax, qword [rbp + 0x130]
mov dword [rax], 0xc100f091
mov eax, dword [0x1800e5be0]
mov ecx, 1
sub ecx, eax
imul ecx, eax
test cl, 1
lea rcx, [0x180053bd8]
mov eax, 0x4835
mov ebx, 0x5e54
cmove eax, ebx
cmp dword [0x1800e5be4], 0xa
cmovl eax, ebx
lea r12, [0x1800539d0]
xor eax, dword [rbp - 0x24]
jmp 0x18001803f
mov rax, qword [rbp + 0x130]
mov dword [rax], 0xc100f091
mov eax, dword [rbp + 0x30]
mov ebx, 0x78c4
jmp 0x180018e92
mov rax, qword [rbp + 0x130]
mov dword [rax], 0xa7a98ad5
mov eax, dword [rbp + 0x34]
mov ebx, 0x2efa
jmp 0x180018e92
mov rax, qword [rbp + 0x130]
mov dword [rax], 0xa7a98ad5
mov eax, dword [0x1800e5be8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
lea rcx, [0x180053bd8]
mov eax, 0x4ef6
mov rdx, rdi
mov edi, 0x5b33
cmove eax, edi
cmp dword [0x1800e5bec], 0xa
cmovl eax, edi
mov rdi, rdx
xor eax, dword [rbp - 0x1c]
jmp 0x18001803f
mov eax, dword [rbp + 0xf4]
cmp byte [rbp + 0x120], 0
jne 0x180018d75
xor edx, edx
movsxd rcx, dword [rdx + rsi]
xor dword [rbp + rcx*4 - 0x78], 0x2e15
add rdx, 4
cmp rdx, 0xa0
jne 0x180018d5c
cmp eax, 0xc47d92d
jle 0x180018ed6
cmp eax, 0x2e2463be
jg 0x180018f0c
cmp eax, 0xc47d92e
je 0x18001905c
cmp eax, 0x158d12bc
je 0x1800190c5
mov cl, 1
mov qword [rbp + 0x120], rcx
cmp eax, 0x18b60546
jne 0x180018fd1
cmp dword [0x1800e5bf0], 0xa
mov eax, dword [0x1800e5bf4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x88], 0
lea r15, [0x180053c10]
jne 0x180018dfb
xor edx, edx
movsxd rcx, dword [rdx + r15]
xor dword [rbp + rcx*4 - 0x78], 0x5497
add rdx, 4
cmp rdx, 8
jne 0x180018de5
test al, al
mov eax, 0x1a61
mov ecx, 0x7a6d
cmovne eax, ecx
xor eax, dword [rbp - 0x20]
mov cl, 1
mov qword [rbp + 0x88], rcx
lea r14, [0x180053920]
lea rcx, [0x180053bd8]
lea r15, [0x180053be8]
jmp 0x18001803f
mov rax, qword [rbp + 0x110]
mov rax, qword [rax]
movzx r9d, word [rax]
mov rcx, qword [rbp + 0x118]
mov rcx, qword [rcx]
lea rdx, [rcx + 2]
mov rax, rdi
mov rdi, rsi
mov rsi, qword [rbp + 0x118]
mov qword [rsi], rdx
mov rsi, rdi
mov rdi, rax
lea r14, [0x180053920]
cmp r9w, word [rcx]
mov eax, 0xbb1cf8e2
mov ecx, 0x158d12bc
cmove eax, ecx
mov rcx, qword [rbp + 0x130]
mov dword [rcx], eax
lea rcx, [0x180053bd8]
mov eax, dword [rbp + 0x24]
mov ebx, 0x1d87
xor eax, ebx
lea r12, [0x1800539d0]
jmp 0x18001803f
mov rax, qword [rbp + 0xf8]
cmp byte [rax], 0
mov eax, 0x3040b3b6
mov ecx, 0xc47d92e
cmovne eax, ecx
mov rcx, qword [rbp + 0x130]
mov dword [rcx], eax
mov eax, dword [rbp + 0x18]
mov ecx, 0x7d2a
xor eax, ecx
lea rcx, [0x180053bd8]
jmp 0x18001803f
cmp eax, 0xa7a98ad4
jle 0x180018f42
cmp eax, 0xa7a98ad5
je 0x1800190d3
cmp eax, 0xbb1cf8e2
je 0x18001913b
mov cl, 1
mov qword [rbp + 0x120], rcx
cmp eax, 0xc100f091
je 0x180018088
jmp 0x180018fd1
cmp eax, 0x2e2463bf
lea rcx, [0x180053bd8]
je 0x180019149
cmp eax, 0x3040b3b6
je 0x1800191ae
mov dl, 1
mov qword [rbp + 0x120], rdx
cmp eax, 0x6e902a58
je 0x1800192c0
jmp 0x180018fd1
cmp eax, 0x856c335d
je 0x18001921e
mov cl, 1
mov qword [rbp + 0x120], rcx
cmp eax, 0x9f769422
jne 0x180018fd1
mov rbx, rdi
cmp dword [0x1800e5bf8], 0xa
mov eax, dword [0x1800e5bfc]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x68], 0
lea rdi, [0x180053bf0]
jne 0x180018fa3
xor edx, edx
movsxd rcx, dword [rdx + rdi]
xor dword [rbp + rcx*4 - 0x78], 0x5039
add rdx, 4
cmp rdx, 8
jne 0x180018f8d
test al, al
mov eax, 0x38f9
mov ecx, 0x4dbe
cmovne eax, ecx
xor eax, dword [rbp - 0x40]
mov cl, 1
mov qword [rbp + 0x68], rcx
lea r14, [0x180053920]
lea rcx, [0x180053bd8]
mov rdi, rbx
jmp 0x18001803f
mov r9, r8
cmp dword [0x1800e5c00], 0xa
mov eax, dword [0x1800e5c04]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x48], 0
lea r8, [0x180053bd0]
jne 0x180019017
xor edx, edx
movsxd rcx, dword [rdx + r8]
xor dword [rbp + rcx*4 - 0x78], 0x20ad
add rdx, 4
cmp rdx, 8
jne 0x180019001
test al, al
mov eax, 0x1220
mov ecx, 0x6471
cmovne eax, ecx
xor eax, dword [rbp - 0x60]
mov cl, 1
mov qword [rbp + 0x48], rcx
lea r14, [0x180053920]
lea rcx, [0x180053bd8]
mov r8, r9
lea r15, [0x180053be8]
jmp 0x18001803f
cmp eax, 0x70c7
jne 0x18001803f
jmp 0x180019488
mov al, 1
mov qword [rbp + 0x120], rax
cmp dword [0x1800e5c08], 0xa
mov eax, dword [0x1800e5c0c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x58], 0
jne 0x1800190a8
xor edx, edx
lea rcx, [0x180053be0]
movsxd rcx, dword [rdx + rcx]
xor dword [rbp + rcx*4 - 0x78], 0x16dd
add rdx, 4
cmp rdx, 8
jne 0x18001908b
test al, al
mov eax, 0x59aa
mov ecx, 0x2b0
cmovne eax, ecx
xor eax, dword [rbp - 0x50]
mov cl, 1
mov qword [rbp + 0x58], rcx
jmp 0x18001920b
mov al, 1
mov qword [rbp + 0x120], rax
jmp 0x1800181f2
mov al, 1
mov qword [rbp + 0x120], rax
cmp dword [0x1800e5c10], 0xa
mov eax, dword [0x1800e5c14]
setl cl
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x90], 0
jne 0x18001911b
xor edx, edx
movsxd rcx, dword [rdx + r13]
xor dword [rbp + rcx*4 - 0x78], 0x4819
add rdx, 4
cmp rdx, 8
jne 0x180019105
test al, al
mov eax, 0x7764
mov ecx, 0x8cf
cmovne eax, ecx
xor eax, dword [rbp - 0x18]
mov cl, 1
mov qword [rbp + 0x90], rcx
jmp 0x18001920b
mov al, 1
mov qword [rbp + 0x120], rax
jmp 0x180018612
mov al, 1
mov qword [rbp + 0x120], rax
cmp dword [0x1800e5c18], 0xa
mov eax, dword [0x1800e5c1c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x80], 0
jne 0x180019191
xor edx, edx
movsxd rcx, dword [rdx + rdi]
xor dword [rbp + rcx*4 - 0x78], 0x51f0
add rdx, 4
cmp rdx, 8
jne 0x18001917b
test al, al
mov eax, 0x19c5
mov ecx, 0x2934
cmovne eax, ecx
xor eax, dword [rbp - 0x28]
mov cl, 1
mov qword [rbp + 0x80], rcx
jmp 0x18001920b
mov al, 1
mov qword [rbp + 0x120], rax
cmp dword [0x1800e5c20], 0xa
mov eax, dword [0x1800e5c24]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x60], 0
jne 0x1800191f3
xor edx, edx
movsxd rcx, dword [rdx + r15]
xor dword [rbp + rcx*4 - 0x78], 0x476
add rdx, 4
cmp rdx, 8
jne 0x1800191dd
test al, al
mov eax, 0x4304
mov ecx, 0x7ec8
cmovne eax, ecx
xor eax, dword [rbp - 0x48]
mov cl, 1
mov qword [rbp + 0x60], rcx
lea r14, [0x180053920]
lea rcx, [0x180053bd8]
jmp 0x18001803f
mov al, 1
mov qword [rbp + 0x120], rax
mov rbx, qword [rbp + 0xe8]
cmp dword [0x1800e5c28], 0xa
mov eax, dword [0x1800e5c2c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
test bl, bl
lea r10, [0x180053c28]
jne 0x18001926f
xor edx, edx
movsxd rcx, dword [rdx + r10]
xor dword [rbp + rcx*4 - 0x78], 0x25fd
add rdx, 4
cmp rdx, 0xc
jne 0x180019259
test al, al
mov eax, 0x2c8f
mov ecx, 0x231f
cmovne eax, ecx
xor eax, dword [rbp - 8]
mov cl, 1
mov qword [rbp + 0xe8], rcx
lea r13, [0x180053c18]
lea rdi, [0x180053c08]
lea r11, [0x1800537a0]
lea r14, [0x180053920]
lea rcx, [0x180053bd8]
lea r10, [0x180053c34]
lea r12, [0x1800539d0]
jmp 0x18001803f
mov rsi, r11
mov r11, rcx
mov ecx, dword [0x1800e5c30]
cmp dword [0x1800e5c34], 9
setg dl
lea eax, [rcx + 1]
imul eax, ecx
and al, dl
cmp byte [rbp + 0x50], 0
jne 0x1800192fc
xor edx, edx
movsxd rcx, dword [rdx + r11]
xor dword [rbp + rcx*4 - 0x78], 0x28d2
add rdx, 4
cmp rdx, 8
jne 0x1800192e6
test al, al
mov eax, 0x55f8
mov ecx, 0x491f
cmovne eax, ecx
xor eax, dword [rbp - 0x58]
mov cl, 1
mov qword [rbp + 0x50], rcx
lea r14, [0x180053920]
mov rcx, r11
lea rbx, [0x180053b30]
mov r11, rsi
jmp 0x18001803c
mov rsi, r8
mov r8, r11
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf8], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x108], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x100], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x118], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x110], rax
mov rax, qword [rbp + 0x100]
mov rcx, qword [rbp + 0xa0]
mov qword [rax], rcx
mov rax, qword [rbp + 0x118]
mov rcx, qword [rbp + 0xa8]
mov qword [rax], rcx
mov rax, qword [rbp + 0x110]
mov rcx, qword [rbp + 0xb0]
mov qword [rax], rcx
mov rax, qword [rbp + 0x100]
cmp qword [rax], 0
mov rax, qword [rbp + 0xf8]
sete byte [rax]
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x130], rax
mov rax, qword [rbp + 0x130]
mov dword [rax], 0x6e902a58
cmp dword [0x1800e5c38], 0xa
mov eax, dword [0x1800e5c3c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xc0], 0
jne 0x180019454
xor edx, edx
movsxd rcx, dword [rdx + r14]
xor dword [rbp + rcx*4 - 0x78], 0x52f6
add rdx, 4
cmp rdx, 0xb0
jne 0x18001943b
test al, al
mov eax, 0x1251
mov ecx, 0x6cdd
cmovne eax, ecx
xor eax, dword [rbp - 0x70]
mov cl, 1
mov qword [rbp + 0xc0], rcx
lea rcx, [0x180053bd8]
lea rbx, [0x180053b30]
mov r11, r8
mov r8, rsi
jmp 0x18001803c
mov eax, dword [rbp + 0xf0]
lea rsp, [rbp + 0x138]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret