Function at 0x1800194a2
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1e8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xc8], rdx
mov qword [rbp + 0xd0], rcx
sub rsp, 0x20
xor esi, esi
lea rcx, [rbp - 0x74]
mov r8d, 0xcc
xor edx, edx
call fcn.180003c5d
add rsp, 0x20
mov eax, dword [0x1800e5c40]
cmp dword [0x1800e5c44], 0xa
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
mov edx, ecx
and dl, al
mov byte [rbp + 0x157], dl
xor cl, al
mov byte [rbp + 0x156], cl
lea rax, [0x180053d10]
movsxd rcx, dword [rsi + rax]
xor dword [rbp + rcx*4 - 0x74], 0x1e27
add rsi, 4
cmp rsi, 0xc8
jne 0x18001951b
mov eax, 0x72dc
xor ecx, ecx
mov qword [rbp + 0xd8], rcx
lea rcx, [0x180054128]
lea r8, [0x18005411c]
lea r9, [0x1800540bc]
lea r10, [0x180054010]
lea r11, [0x1800540f4]
lea rdx, [0x180053de0]
lea rdi, [0x1800540ec]
lea r14, [0x180054104]
lea r15, [0x1800540c4]
lea r12, [0x18005410c]
mov esi, 0
mov qword [rbp + 0xe0], rsi
mov esi, 0
mov qword [rbp + 0xe8], rsi
mov esi, 0
mov qword [rbp + 0xf0], rsi
mov esi, 0
mov qword [rbp + 0x148], rsi
mov esi, 0
mov qword [rbp + 0x60], rsi
mov esi, 0
mov qword [rbp + 0x68], rsi
mov esi, 0
mov qword [rbp + 0x70], rsi
mov esi, 0
mov qword [rbp + 0x78], rsi
mov esi, 0
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 + 0xa0], rsi
xor esi, esi
mov qword [rbp + 0xa8], rsi
xor esi, esi
mov qword [rbp + 0xb0], rsi
xor esi, esi
mov qword [rbp + 0xb8], rsi
xor esi, esi
mov qword [rbp + 0xc0], rsi
xor esi, esi
mov qword [rbp + 0xf8], rsi
xor esi, esi
mov qword [rbp + 0x100], rsi
cmp eax, 0x3737
jg 0x180019851
cmp eax, 0x1c07
jle 0x1800198ff
cmp eax, 0x2fcb
jle 0x180019a30
cmp eax, 0x339c
jle 0x180019c16
cmp eax, 0x3688
jg 0x18001a14a
cmp eax, 0x339d
je 0x18001a1de
cmp eax, 0x34c1
jne 0x180019642
mov rsi, rcx
mov rbx, r15
mov r15, r14
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 + 0x120], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x140], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x158], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x138], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x130], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x128], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x110], rax
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0xc8]
mov qword [rax], rcx
mov rax, qword [rbp + 0x158]
mov rcx, qword [rbp + 0xd0]
mov qword [rax], rcx
mov rax, qword [rbp + 0x138]
mov rax, qword [rbp + 0x130]
mov rax, qword [rbp + 0x128]
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
lea rcx, [rax + 2]
mov r12, rdx
mov rdx, qword [rbp + 0x140]
mov qword [rdx], rcx
movzx eax, word [rax]
mov rcx, qword [rbp + 0x138]
mov word [rcx], ax
test ax, ax
mov rax, qword [rbp + 0x118]
setne byte [rax]
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x160], rax
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xdec371c
cmp dword [0x1800e5c48], 0xa
mov eax, dword [0x1800e5c4c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xe0], 0
jne 0x18001981e
xor ecx, ecx
movsxd rdx, dword [rcx + r12]
xor dword [rbp + rdx*4 - 0x74], 0x52f6
add rcx, 4
cmp rcx, 0xbc
jne 0x180019805
test al, al
mov eax, 0x14f5
mov ecx, 0x4145
cmovne eax, ecx
xor eax, dword [rbp - 0x6c]
mov cl, 1
mov qword [rbp + 0xe0], rcx
mov rdx, r12
mov r14, r15
mov r15, rbx
lea r12, [0x18005410c]
mov rcx, rsi
jmp 0x180019642
cmp eax, 0x5bcf
jle 0x18001999d
cmp eax, 0x6aee
jg 0x180019a8c
cmp eax, 0x60c3
jg 0x180019c75
cmp eax, 0x5f10
jle 0x18001a1a1
cmp eax, 0x5f11
je 0x18001a240
cmp eax, 0x5f44
jne 0x180019642
mov rsi, rcx
cmp dword [0x1800e5c50], 0xa
mov eax, dword [0x1800e5c54]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xe8], 0
lea rbx, [0x180053ea0]
jne 0x1800198df
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x74], 0x985
add rcx, 4
cmp rcx, 0xb8
jne 0x1800198c6
test al, al
mov eax, 0x3dfe
mov ecx, 0x6176
cmovne eax, ecx
xor eax, dword [rbp - 0x68]
mov cl, 1
mov qword [rbp + 0xe8], rcx
jmp 0x18001ab5b
cmp eax, 0xbce
jg 0x180019b21
cmp eax, 0x91a
jg 0x180019d1b
cmp eax, 0xef
je 0x18001a2ca
cmp eax, 0x270
je 0x18001a32c
cmp eax, 0x44e
jne 0x180019642
mov rsi, rcx
mov eax, dword [0x1800e5c58]
cmp dword [0x1800e5c5c], 0xa
setl cl
mov edx, 1
sub edx, eax
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x78], 0
jne 0x180019980
xor ecx, ecx
lea rdx, [0x1800540d4]
movsxd rdx, dword [rcx + rdx]
xor dword [rbp + rdx*4 - 0x74], 0x476
add rcx, 4
cmp rcx, 8
jne 0x180019963
test al, al
mov eax, 0x1a61
mov ecx, 0x1d64
cmovne eax, ecx
xor eax, dword [rbp - 0x44]
mov cl, 1
mov qword [rbp + 0x78], rcx
jmp 0x18001ab5b
cmp eax, 0x4653
jg 0x180019b84
cmp eax, 0x3e93
jg 0x180019e9b
cmp eax, 0x3738
je 0x18001aaa4
cmp eax, 0x3b9c
je 0x18001a349
cmp eax, 0x3e46
jne 0x180019642
mov rsi, rcx
mov ecx, dword [0x1800e5c60]
cmp dword [0x1800e5c64], 9
setg dl
lea eax, [rcx + 1]
imul eax, ecx
and al, dl
cmp byte [rbp + 0xa8], 0
jne 0x180019a10
xor ecx, ecx
movsxd rdx, dword [rcx + r14]
xor dword [rbp + rdx*4 - 0x74], 0x4819
add rcx, 4
cmp rcx, 8
jne 0x1800199fa
test al, al
mov eax, 0x434b
mov ecx, 0x5269
cmovne eax, ecx
xor eax, dword [rbp - 0x14]
mov cl, 1
mov qword [rbp + 0xa8], rcx
jmp 0x18001ab5b
cmp eax, 0x2d35
jg 0x180019f2b
cmp eax, 0x1c08
je 0x18001ab04
cmp eax, 0x20d4
je 0x18001a38a
cmp eax, 0x285f
jne 0x180019642
mov rax, qword [rbp + 0x118]
cmp byte [rax], 0
mov eax, 0x56a7a4c6
mov rsi, rcx
mov ecx, 0x7b83d5e3
cmovne eax, ecx
mov rcx, qword [rbp + 0x160]
mov dword [rcx], eax
mov eax, dword [rbp + 0x24]
mov ecx, 0x3740
jmp 0x18001a9a4
cmp eax, 0x70c6
jg 0x180019fc3
cmp eax, 0x6aef
je 0x18001a3fa
cmp eax, 0x6bb1
je 0x18001a460
cmp eax, 0x6cd0
jne 0x180019642
mov rsi, rcx
cmp dword [0x1800e5c68], 0xa
mov eax, dword [0x1800e5c6c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x88], 0
lea rbx, [0x1800540e4]
jne 0x180019b01
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x74], 0x22f1
add rcx, 4
cmp rcx, 8
jne 0x180019aeb
test al, al
mov eax, 0x64c6
mov ecx, 0x5c2e
cmovne eax, ecx
xor eax, dword [rbp - 0x34]
mov cl, 1
mov qword [rbp + 0x88], rcx
jmp 0x18001ab5b
cmp eax, 0x124a
jg 0x18001a03b
mov r13, rcx
cmp eax, 0xbcf
je 0x18001a49a
cmp eax, 0xc50
je 0x18001ac3d
cmp eax, 0x105a
mov rcx, r13
jne 0x180019642
mov eax, dword [0x1800e5c70]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2ea7
mov ecx, 0x5e2f
cmove eax, ecx
cmp dword [0x1800e5c74], 0xa
cmovl eax, ecx
mov rcx, r13
xor eax, dword [rbp + 0x14]
jmp 0x180019642
cmp eax, 0x5390
jg 0x18001a0d5
cmp eax, 0x4654
je 0x18001a9e6
cmp eax, 0x4b40
je 0x18001ab92
cmp eax, 0x5035
jne 0x180019642
mov rax, qword [rbp + 0x140]
mov rbx, rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.180014973
lea rdx, [0x180053de0]
lea r11, [0x1800540f4]
lea r10, [0x180054010]
lea r9, [0x1800540bc]
lea r8, [0x18005411c]
add rsp, 0x20
mov rcx, qword [rbp + 0x128]
mov qword [rcx], rax
mov rcx, rbx
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xdf976523
mov eax, dword [rbp + 0x28]
mov esi, 0x361d
xor eax, esi
jmp 0x180019642
cmp eax, 0x2fcc
je 0x18001a4ac
cmp eax, 0x3029
je 0x18001a4bc
cmp eax, 0x321e
jne 0x180019642
mov rax, qword [rbp + 0x158]
mov rax, qword [rax]
mov rsi, rcx
mov rcx, qword [rbp + 0x120]
mov qword [rcx], rax
mov rax, qword [rbp + 0x110]
mov dword [rax], 1
mov rax, qword [rbp + 0x160]
mov dword [rax], 0x786f1442
mov eax, dword [rbp + 0x4c]
mov ecx, 0x2d2c
jmp 0x18001a9a4
cmp eax, 0x60c4
je 0x18001a531
cmp eax, 0x657f
je 0x18001a596
cmp eax, 0x6930
jne 0x180019642
mov rax, qword [rbp + 0x140]
mov rbx, rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.180014973
lea rdx, [0x180053de0]
lea r11, [0x1800540f4]
lea r10, [0x180054010]
lea r9, [0x1800540bc]
lea r8, [0x18005411c]
add rsp, 0x20
mov rcx, qword [rbp + 0x128]
mov qword [rcx], rax
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xdf976523
mov eax, dword [0x1800e5c78]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov rcx, rbx
mov eax, 0xf18
mov esi, 0x5fc2
cmove eax, esi
cmp dword [0x1800e5c7c], 0xa
cmovl eax, esi
xor eax, dword [rbp - 0x48]
jmp 0x180019642
mov rbx, rcx
cmp eax, 0x91b
je 0x18001a5b2
cmp eax, 0xabb
je 0x18001a5e3
cmp eax, 0xaf4
mov rcx, rbx
jne 0x180019642
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 + 0x120], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x140], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x158], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x138], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x130], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x128], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x110], rax
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0xc8]
mov qword [rax], rcx
mov rax, qword [rbp + 0x158]
mov rcx, qword [rbp + 0xd0]
mov qword [rax], rcx
mov rax, qword [rbp + 0x138]
mov rax, qword [rbp + 0x130]
mov rax, qword [rbp + 0x128]
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
lea rcx, [rax + 2]
mov rdx, qword [rbp + 0x140]
mov qword [rdx], rcx
lea rdx, [0x180053de0]
movzx eax, word [rax]
mov rcx, qword [rbp + 0x138]
mov word [rcx], ax
test ax, ax
mov rax, qword [rbp + 0x118]
setne byte [rax]
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x160], rax
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xdec371c
mov eax, dword [rbp + 0x18]
mov ecx, 0x2ac0
jmp 0x18001a75b
mov rsi, rcx
cmp eax, 0x3e94
je 0x18001a67a
cmp eax, 0x4121
je 0x18001a6cc
cmp eax, 0x413f
mov rcx, rsi
jne 0x180019642
mov rsi, rcx
cmp dword [0x1800e5c80], 0xa
mov eax, dword [0x1800e5c84]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xa0], 0
lea rbx, [0x1800540fc]
jne 0x180019f0b
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x74], 0x5497
add rcx, 4
cmp rcx, 8
jne 0x180019ef5
test al, al
mov eax, 0x4b80
mov ecx, 0x726c
cmovne eax, ecx
xor eax, dword [rbp - 0x1c]
mov cl, 1
mov qword [rbp + 0xa0], rcx
jmp 0x18001ab5b
mov rbx, rcx
cmp eax, 0x2d36
je 0x18001a72b
cmp eax, 0x2d81
je 0x18001a765
cmp eax, 0x2e2b
mov rcx, rbx
jne 0x180019642
mov rax, qword [rbp + 0x128]
mov rax, qword [rbp + 0x130]
mov rax, qword [rbp + 0x138]
mov rax, qword [rbp + 0x120]
mov rax, qword [rax]
mov qword [rbp + 0x58], rax
cmp dword [0x1800e5c88], 0xa
mov eax, dword [0x1800e5c8c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xf8], 0
jne 0x180019fa3
xor dword [rbp + 0xc], 0x24e
test al, al
mov eax, 0x1e19
mov ecx, 0x1bae
cmovne eax, ecx
xor eax, dword [rbp + 8]
mov cl, 1
mov qword [rbp + 0xf8], rcx
jmp 0x18001a7d8
cmp eax, 0x70c7
je 0x18001a7e7
cmp eax, 0x7109
je 0x18001a840
cmp eax, 0x72dc
jne 0x180019642
mov rsi, rcx
mov al, byte [rbp + 0x157]
or al, byte [rbp + 0x156]
cmp byte [rbp + 0xd8], 0
lea rbx, [0x180053c40]
jne 0x18001a01b
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor byte [rbp + rdx*4 - 0x74], 0x26
add rcx, 4
cmp rcx, 0xc4
jne 0x18001a005
test al, 1
mov eax, 0x14d3
mov ecx, 0x2ae6
cmovne eax, ecx
xor eax, dword [rbp - 0x74]
mov cl, 1
mov qword [rbp + 0xd8], rcx
jmp 0x18001ab5b
mov rbx, rcx
cmp eax, 0x124b
je 0x18001a85e
cmp eax, 0x15de
je 0x18001a8b9
cmp eax, 0x1b99
mov rcx, rbx
jne 0x180019642
mov rax, qword [rbp + 0x128]
mov r8, qword [rax]
mov rax, qword [rbp + 0x140]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x158]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.180017eba
lea rdx, [0x180053de0]
lea r11, [0x1800540f4]
lea r10, [0x180054010]
lea r9, [0x1800540bc]
lea r8, [0x18005411c]
add rsp, 0x20
test eax, eax
mov eax, 0xdf976523
mov ecx, 0x1d19c253
cmove eax, ecx
mov rcx, qword [rbp + 0x160]
mov dword [rcx], eax
mov eax, dword [rbp + 0x44]
mov ecx, 0xb52
jmp 0x18001a75b
cmp eax, 0x5391
je 0x18001a912
cmp eax, 0x5494
je 0x18001a92e
cmp eax, 0x5662
jne 0x180019642
mov rax, qword [rbp + 0x118]
cmp byte [rax], 0
mov eax, 0x56a7a4c6
mov rsi, rcx
mov ecx, 0x7b83d5e3
cmovne eax, ecx
mov rcx, qword [rbp + 0x160]
mov dword [rcx], eax
mov eax, dword [0x1800e5c90]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov rcx, rsi
mov eax, 0x497d
mov esi, 0x61cd
cmove eax, esi
cmp dword [0x1800e5c94], 0xa
cmovl eax, esi
xor eax, dword [rbp - 0x50]
jmp 0x180019642
cmp eax, 0x3689
je 0x18001a96f
cmp eax, 0x3711
jne 0x180019642
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xa52537e5
mov eax, dword [0x1800e5c98]
mov rsi, rcx
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x273a
mov ecx, 0x42aa
cmove eax, ecx
cmp dword [0x1800e5c9c], 0xa
cmovl eax, ecx
mov rcx, rsi
xor eax, dword [rbp - 0x28]
jmp 0x180019642
cmp eax, 0x5e67
jne 0x18001aca6
mov rax, qword [rbp + 0x128]
mov rax, qword [rbp + 0x130]
mov rax, qword [rbp + 0x138]
mov rax, qword [rbp + 0x120]
mov rax, qword [rax]
mov qword [rbp + 0x58], rax
mov eax, dword [rbp + 0x50]
mov esi, 0x6e55
xor eax, esi
jmp 0x180019642
mov r13, rcx
cmp dword [0x1800e5ca0], 0xa
mov eax, dword [0x1800e5ca4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x98], 0
jne 0x18001a220
xor ecx, ecx
movsxd rdx, dword [rcx + r11]
xor dword [rbp + rdx*4 - 0x74], 0x51f0
add rcx, 4
cmp rcx, 8
jne 0x18001a20a
test al, al
mov eax, 0x7f79
mov ecx, 0x5bbb
cmovne eax, ecx
xor eax, dword [rbp - 0x24]
mov cl, 1
mov qword [rbp + 0x98], rcx
jmp 0x18001ac97
mov rax, qword [rbp + 0x158]
mov rax, qword [rax]
mov rsi, rcx
lea rcx, [rax + 2]
mov rdx, qword [rbp + 0x158]
mov qword [rdx], rcx
movzx eax, word [rax]
mov rcx, qword [rbp + 0x130]
mov word [rcx], ax
test ax, ax
mov eax, 0x8a029fc0
mov ecx, 0xc3ac1393
cmove eax, ecx
mov rcx, qword [rbp + 0x160]
mov dword [rcx], eax
mov eax, dword [0x1800e5ca8]
lea ecx, [rax + 0x751a8f9e]
not ecx
lea edx, [rax + rax]
add edx, ecx
mov ecx, 0x8ae57062
sub ecx, edx
lea rdx, [0x180053de0]
imul ecx, eax
test cl, 1
mov rcx, rsi
mov eax, 0x275d
mov esi, 0x1926
cmove eax, esi
cmp dword [0x1800e5cac], 0xa
cmovl eax, esi
xor eax, dword [rbp - 0x38]
jmp 0x180019642
cmp dword [0x1800e5cb0], 0xa
mov eax, dword [0x1800e5cb4]
mov rsi, rcx
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x100], 0
jne 0x18001a30c
xor ecx, ecx
movsxd rdx, dword [rcx + rsi]
xor dword [rbp + rdx*4 - 0x74], 0x489b
add rcx, 4
cmp rcx, 8
jne 0x18001a2f6
test al, al
mov eax, 0x663c
mov ecx, 0x59aa
cmovne eax, ecx
xor eax, dword [rbp + 0x10]
mov cl, 1
mov qword [rbp + 0x100], rcx
jmp 0x18001ab5b
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xe15196cb
mov eax, dword [rbp + 0x40]
mov rsi, rcx
mov ecx, 0x26fb
jmp 0x18001a9a4
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xe15196cb
mov eax, dword [0x1800e5cb8]
mov rsi, rcx
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov rcx, rsi
mov eax, 0x1f17
mov esi, 0x1d88
cmove eax, esi
cmp dword [0x1800e5cbc], 0xa
cmovl eax, esi
xor eax, dword [rbp - 0x18]
jmp 0x180019642
mov r13, rcx
mov eax, dword [0x1800e5cc0]
cmp dword [0x1800e5cc4], 0xa
setl cl
mov edx, eax
not edx
add edx, 0xff5c724c
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x80], 0
jne 0x18001a3da
xor ecx, ecx
lea rdx, [0x1800540dc]
movsxd rdx, dword [rcx + rdx]
xor dword [rbp + rdx*4 - 0x74], 0x5039
add rcx, 4
cmp rcx, 8
jne 0x18001a3bd
test al, al
mov eax, 0x7764
mov ecx, 0x16e1
cmovne eax, ecx
xor eax, dword [rbp - 0x3c]
mov cl, 1
mov qword [rbp + 0x80], rcx
jmp 0x18001ac97
mov r13, rcx
mov eax, dword [0x1800e5cc8]
cmp dword [0x1800e5ccc], 0xa
setl cl
mov edx, 1
sub edx, eax
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xb0], 0
jne 0x18001a440
xor ecx, ecx
movsxd rdx, dword [rcx + r12]
xor dword [rbp + rdx*4 - 0x74], 0x70d1
add rcx, 4
cmp rcx, 8
jne 0x18001a42a
test al, al
mov eax, 0x2241
mov ecx, 0x3937
cmovne eax, ecx
xor eax, dword [rbp - 0xc]
mov cl, 1
mov qword [rbp + 0xb0], rcx
jmp 0x18001ac97
mov rax, qword [rbp + 0x158]
mov rax, qword [rax]
add rax, 0xfffffffffffffffe
mov rsi, rcx
mov rcx, qword [rbp + 0x158]
mov qword [rcx], rax
mov rcx, rsi
mov rax, qword [rbp + 0x160]
mov dword [rax], 0x56a7a4c6
mov eax, dword [rbp + 0x48]
mov esi, 0x49e6
xor eax, esi
jmp 0x180019642
mov eax, dword [rbp + 0x20]
mov ecx, 0x6046
xor eax, ecx
mov rcx, r13
jmp 0x180019642
mov eax, dword [rbp + 0x54]
mov rsi, rcx
mov ecx, 0x1131
jmp 0x18001a9a4
mov r13, rcx
mov eax, dword [rbp + 0x10c]
cmp byte [rbp + 0x148], 0
jne 0x18001a4e9
xor ecx, ecx
movsxd rdx, dword [rcx + r10]
xor dword [rbp + rdx*4 - 0x74], 0x2e15
add rcx, 4
cmp rcx, 0xac
jne 0x18001a4d0
cmp eax, 0xdec371b
jg 0x18001a9ae
cmp eax, 0xd674be9c
mov rcx, r13
jg 0x18001aa4f
cmp eax, 0x8a029fc0
je 0x18001ab6a
cmp eax, 0xa52537e5
je 0x18001ab7b
mov dl, 1
mov qword [rbp + 0x148], rdx
cmp eax, 0xc3ac1393
je 0x180019ab8
jmp 0x18001ab04
mov rsi, rdi
mov r13, rcx
cmp dword [0x1800e5cd0], 0xa
mov eax, dword [0x1800e5cd4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x90], 0
jne 0x18001a576
xor ecx, ecx
movsxd rdx, dword [rcx + rsi]
xor dword [rbp + rdx*4 - 0x74], 0xbb5
add rcx, 4
cmp rcx, 8
jne 0x18001a560
test al, al
mov eax, 0x2c8f
mov ecx, 0x7ee1
cmovne eax, ecx
xor eax, dword [rbp - 0x2c]
mov cl, 1
mov qword [rbp + 0x90], rcx
jmp 0x18001ac97
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xa52537e5
mov eax, dword [rbp + 0x38]
mov esi, 0x7554
xor eax, esi
jmp 0x180019642
mov eax, dword [0x1800e5cd8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x6292
mov ecx, 0x69b2
cmove eax, ecx
cmp dword [0x1800e5cdc], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x58]
mov rcx, rbx
jmp 0x180019642
mov rax, qword [rbp + 0x128]
mov r8, qword [rax]
mov rax, qword [rbp + 0x140]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x158]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.180017eba
lea rdx, [0x180053de0]
lea r11, [0x1800540f4]
lea r10, [0x180054010]
lea r9, [0x1800540bc]
lea r8, [0x18005411c]
add rsp, 0x20
test eax, eax
mov eax, 0xdf976523
mov ecx, 0x1d19c253
cmove eax, ecx
mov rcx, qword [rbp + 0x160]
mov dword [rcx], eax
mov eax, dword [0x1800e5ce0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x1a70
mov ecx, 0x106
cmove eax, ecx
cmp dword [0x1800e5ce4], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x10]
mov rcx, rbx
jmp 0x180019642
mov rax, qword [rbp + 0x158]
mov rax, qword [rax]
lea rcx, [rax + 2]
mov rdx, qword [rbp + 0x158]
mov qword [rdx], rcx
lea rdx, [0x180053de0]
movzx eax, word [rax]
mov rcx, qword [rbp + 0x130]
mov word [rcx], ax
test ax, ax
mov eax, 0x8a029fc0
mov ecx, 0xc3ac1393
cmove eax, ecx
mov rcx, qword [rbp + 0x160]
mov dword [rcx], eax
mov eax, dword [rbp + 0x30]
mov ecx, 0x46d8
jmp 0x18001a9a4
mov rax, qword [rbp + 0x158]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x120]
mov qword [rcx], rax
mov rax, qword [rbp + 0x110]
mov dword [rax], 1
mov rax, qword [rbp + 0x160]
mov dword [rax], 0x786f1442
mov eax, dword [0x1800e5ce8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x5e13
mov ecx, 0x6ce2
cmove eax, ecx
cmp dword [0x1800e5cec], 0xa
cmovl eax, ecx
xor eax, dword [rbp]
mov rcx, rsi
jmp 0x180019642
mov rax, qword [rbp + 0x120]
mov qword [rax], 0
mov rax, qword [rbp + 0x110]
mov dword [rax], 1
mov rax, qword [rbp + 0x160]
mov dword [rax], 0x786f1442
mov eax, dword [rbp + 0x34]
mov ecx, 0x7edf
xor eax, ecx
mov rcx, rbx
jmp 0x180019642
mov rax, qword [rbp + 0x160]
mov eax, dword [rax]
mov dword [rbp + 0x10c], eax
cmp dword [0x1800e5cf0], 0xa
mov eax, dword [0x1800e5cf4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xf0], 0
jne 0x18001a7bd
xor ecx, ecx
lea rdx, [0x180053f60]
movsxd rdx, dword [rcx + rdx]
xor dword [rbp + rdx*4 - 0x74], 0x2297
add rcx, 4
cmp rcx, 0xb0
jne 0x18001a79d
test al, al
mov eax, 0x347b
mov ecx, 0x755b
cmovne eax, ecx
xor eax, dword [rbp - 0x64]
mov cl, 1
mov qword [rbp + 0xf0], rcx
lea rdx, [0x180053de0]
mov rcx, rbx
jmp 0x180019642
mov rax, qword [rbp + 0x158]
mov rax, qword [rax]
add rax, 0xfffffffffffffffe
mov rsi, rcx
mov rcx, qword [rbp + 0x158]
mov qword [rcx], rax
mov rax, qword [rbp + 0x160]
mov dword [rax], 0x56a7a4c6
mov eax, dword [0x1800e5cf8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov rcx, rsi
mov eax, 0x5290
mov esi, 0x39ce
cmove eax, esi
cmp dword [0x1800e5cfc], 0xa
cmovl eax, esi
xor eax, dword [rbp - 8]
jmp 0x180019642
mov rax, qword [rbp + 0x160]
mov eax, dword [rax]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x1c]
mov esi, 0x68f3
xor eax, esi
jmp 0x180019642
mov rax, qword [rbp + 0x130]
movzx eax, word [rax]
mov rcx, qword [rbp + 0x138]
cmp ax, word [rcx]
mov eax, 0xd674be9d
mov ecx, 0x707ce080
cmove eax, ecx
mov rcx, qword [rbp + 0x160]
mov dword [rcx], eax
mov eax, dword [0x1800e5d00]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2e89
mov ecx, 0x18ef
cmove eax, ecx
cmp dword [0x1800e5d04], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x20]
mov rcx, rbx
jmp 0x180019642
mov rax, qword [rbp + 0x120]
mov qword [rax], 0
mov rax, qword [rbp + 0x110]
mov dword [rax], 1
mov rax, qword [rbp + 0x160]
mov dword [rax], 0x786f1442
mov eax, dword [0x1800e5d08]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x4637
mov ecx, 0x6bee
cmove eax, ecx
cmp dword [0x1800e5d0c], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x30]
mov rcx, rbx
jmp 0x180019642
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xd674be9d
mov eax, dword [rbp + 0x2c]
mov esi, 0x1912
xor eax, esi
jmp 0x180019642
mov rax, qword [rbp + 0x160]
mov dword [rax], 0xd674be9d
mov eax, dword [0x1800e5d10]
mov rsi, rcx
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov rcx, rsi
mov eax, 0x1e17
mov esi, 0x4d69
cmove eax, esi
cmp dword [0x1800e5d14], 0xa
cmovl eax, esi
xor eax, dword [rbp - 0x40]
jmp 0x180019642
mov rax, qword [rbp + 0x130]
movzx eax, word [rax]
mov rsi, rcx
mov rcx, qword [rbp + 0x138]
cmp ax, word [rcx]
mov eax, 0xd674be9d
mov ecx, 0x707ce080
cmove eax, ecx
mov rcx, qword [rbp + 0x160]
mov dword [rcx], eax
mov eax, dword [rbp + 0x3c]
mov ecx, 0xa4b
xor eax, ecx
mov rcx, rsi
jmp 0x180019642
cmp eax, 0x707ce07f
mov rcx, r13
jg 0x18001aa7e
cmp eax, 0xdec371c
je 0x18001ab89
cmp eax, 0x1d19c253
je 0x18001ac0a
mov dl, 1
mov qword [rbp + 0x148], rdx
cmp eax, 0x56a7a4c6
jne 0x18001ab04
mov rsi, rcx
cmp dword [0x1800e5d18], 0xa
mov eax, dword [0x1800e5d1c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xb8], 0
jne 0x18001aa2f
xor ecx, ecx
lea rdx, [0x180054114]
movsxd rdx, dword [rcx + rdx]
xor dword [rbp + rdx*4 - 0x74], 0x25fd
add rcx, 4
cmp rcx, 8
jne 0x18001aa12
test al, al
mov eax, 0x7bee
mov ecx, 0x8d1
cmovne eax, ecx
xor eax, dword [rbp - 4]
mov cl, 1
mov qword [rbp + 0xb8], rcx
jmp 0x18001ab5b
cmp eax, 0xd674be9d
je 0x18001ac18
mov dl, 1
mov qword [rbp + 0x148], rdx
cmp eax, 0xdf976523
je 0x180019936
cmp eax, 0xe15196cb
je 0x1800199d4
jmp 0x18001ab04
cmp eax, 0x707ce080
je 0x18001ac26
cmp eax, 0x786f1442
je 0x18001ac34
mov dl, 1
mov qword [rbp + 0x148], rdx
cmp eax, 0x7b83d5e3
jne 0x18001ab04
mov rsi, rcx
cmp dword [0x1800e5d20], 0xa
mov eax, dword [0x1800e5d24]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x70], 0
lea rbx, [0x1800540cc]
jne 0x18001aaea
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x74], 0x16dd
add rcx, 4
cmp rcx, 8
jne 0x18001aad4
test al, al
mov eax, 0x19c5
mov ecx, 0x20c0
cmovne eax, ecx
xor eax, dword [rbp - 0x4c]
mov cl, 1
mov qword [rbp + 0x70], rcx
jmp 0x18001ab5b
mov rsi, rcx
cmp dword [0x1800e5d28], 0xa
mov eax, dword [0x1800e5d2c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x60], 0
jne 0x18001ab43
xor ecx, ecx
movsxd rdx, dword [rcx + r9]
xor dword [rbp + rdx*4 - 0x74], 0x20ad
add rcx, 4
cmp rcx, 8
jne 0x18001ab2d
test al, al
mov eax, 0x423f
mov ecx, 0x40eb
cmovne eax, ecx
xor eax, dword [rbp - 0x5c]
mov cl, 1
mov qword [rbp + 0x60], rcx
lea rdx, [0x180053de0]
mov rcx, rsi
jmp 0x180019642
mov rsi, rdi
mov al, 1
mov qword [rbp + 0x148], rax
jmp 0x18001a537
mov al, 1
mov qword [rbp + 0x148], rax
jmp 0x18001a1e1
mov al, 1
mov qword [rbp + 0x148], rax
cmp dword [0x1800e5d30], 9
mov ecx, dword [0x1800e5d34]
setg bl
lea edx, [rcx + 1]
imul edx, ecx
and edx, 1
sete cl
mov eax, ebx
and al, cl
or dl, bl
xor dl, al
or bl, cl
xor bl, dl
cmp byte [rbp + 0x68], 0
jne 0x18001abd8
xor ecx, ecx
movsxd rax, dword [rcx + r15]
xor dword [rbp + rax*4 - 0x74], 0x28d2
add rcx, 4
cmp rcx, 8
jne 0x18001abc2
test bl, bl
mov eax, 0x61af
mov ecx, 0x1f92
cmovne eax, ecx
xor eax, dword [rbp - 0x54]
mov cl, 1
mov qword [rbp + 0x68], rcx
lea rcx, [0x180054128]
lea rdx, [0x180053de0]
lea r12, [0x18005410c]
jmp 0x180019642
mov al, 1
mov qword [rbp + 0x148], rax
jmp 0x18001a3fd
mov al, 1
mov qword [rbp + 0x148], rax
jmp 0x18001a38d
mov al, 1
mov qword [rbp + 0x148], rax
jmp 0x180019ec2
mov al, 1
mov qword [rbp + 0x148], rax
cmp dword [0x1800e5d38], 0xa
mov eax, dword [0x1800e5d3c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xc0], 0
jne 0x18001ac7c
xor ecx, ecx
movsxd rdx, dword [rcx + r8]
xor dword [rbp + rdx*4 - 0x74], 0x98e
add rcx, 4
cmp rcx, 0xc
jne 0x18001ac66
test al, al
mov eax, 0x1797
mov ecx, 0x67db
cmovne eax, ecx
xor eax, dword [rbp + 4]
mov cl, 1
mov qword [rbp + 0xc0], rcx
lea rdx, [0x180053de0]
mov rcx, r13
jmp 0x180019642
cmp eax, 0x5bd0
jne 0x180019642
mov rax, qword [rbp + 0x58]
lea rsp, [rbp + 0x168]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret