Function at 0x180028091
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x1d8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xd0], rcx
sub rsp, 0x20
xor esi, esi
lea rcx, [rbp - 0x78]
mov r8d, 0xd8
xor edx, edx
call fcn.180003c5d
add rsp, 0x20
mov eax, dword [0x1800e4fe8]
cmp dword [0x1800e4fec], 9
setg cl
lea edx, [rax + 1]
imul edx, eax
and dl, cl
mov byte [rbp + 0x13f], dl
lea rax, [0x1800565d0]
movsxd rcx, dword [rsi + rax]
xor dword [rbp + rcx*4 - 0x78], 0x1e27
add rsi, 4
cmp rsi, 0xd4
jne 0x1800280f3
mov eax, 0x5f44
xor ecx, ecx
mov qword [rbp + 0xd8], rcx
lea rdi, [0x180056a3c]
lea r9, [0x1800566b0]
lea r10, [0x180056a28]
lea r11, [0x180056a08]
lea rsi, [0x180056a30]
lea rdx, [0x1800569f8]
lea r14, [0x1800569e8]
lea r12, [0x180056a20]
lea r8, [0x1800569f0]
lea r15, [0x180056a18]
mov ecx, 0
mov qword [rbp + 0xe0], rcx
mov ecx, 0
mov qword [rbp + 0xe8], rcx
mov ecx, 0
mov qword [rbp + 0xf0], rcx
mov ecx, 0
mov qword [rbp + 0x130], rcx
mov ecx, 0
mov qword [rbp + 0x60], rcx
mov ecx, 0
mov qword [rbp + 0x68], rcx
mov ecx, 0
mov qword [rbp + 0x70], rcx
mov ecx, 0
mov qword [rbp + 0x78], rcx
mov ecx, 0
mov qword [rbp + 0x80], rcx
mov ecx, 0
mov qword [rbp + 0x88], rcx
xor ecx, ecx
mov qword [rbp + 0x90], rcx
xor ecx, ecx
mov qword [rbp + 0x98], rcx
xor ecx, ecx
mov qword [rbp + 0xa0], rcx
xor ecx, ecx
mov qword [rbp + 0xa8], rcx
xor ecx, ecx
mov qword [rbp + 0xb0], rcx
xor ecx, ecx
mov qword [rbp + 0xb8], rcx
xor ecx, ecx
mov qword [rbp + 0xc0], rcx
xor ecx, ecx
mov qword [rbp + 0xc8], rcx
xor ecx, ecx
mov qword [rbp + 0xf8], rcx
xor ecx, ecx
mov qword [rbp + 0x100], rcx
cmp eax, 0x3e45
jg 0x180028291
cmp eax, 0x285e
jg 0x180028323
cmp eax, 0xc4f
jle 0x18002842c
cmp eax, 0x15dd
jle 0x180028672
cmp eax, 0x1c07
jg 0x180028acd
cmp eax, 0x15de
je 0x18002967e
cmp eax, 0x1b99
jne 0x180028226
mov rax, qword [rbp + 0x118]
mov dword [rax], 2
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x19d8b54f
mov eax, dword [rbp + 0x34]
mov ecx, 0x790d
xor eax, ecx
jmp 0x180028226
cmp eax, 0x5f02
jg 0x180028388
cmp eax, 0x5034
jle 0x1800284c4
cmp eax, 0x5661
jle 0x18002870b
cmp eax, 0x5c53
jg 0x180028b35
cmp eax, 0x5662
je 0x1800295f2
cmp eax, 0x5bd0
jne 0x180028226
mov rax, qword [rbp + 0x148]
mov eax, dword [rax]
inc eax
mov rcx, qword [rbp + 0x148]
mov dword [rcx], eax
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x182685a8
mov eax, dword [0x1800e5534]
mov ecx, eax
not ecx
imul ecx, eax
test cl, 1
mov eax, 0x510e
mov ecx, 0x4452
cmove eax, ecx
cmp dword [0x1800e5530], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 4]
jmp 0x180028226
cmp eax, 0x321d
jle 0x180028556
cmp eax, 0x3710
jle 0x180028793
cmp eax, 0x3b9b
jg 0x180028b88
cmp eax, 0x3711
je 0x18002899e
cmp eax, 0x3738
jne 0x180028226
mov eax, dword [0x1800e4ffc]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x446b
mov ecx, 0x4102
cmove eax, ecx
cmp dword [0x1800e4ff8], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x5c]
jmp 0x180028226
cmp eax, 0x692f
jle 0x1800285f1
cmp eax, 0x6ccf
jle 0x1800287e7
cmp eax, 0x7108
jg 0x180028bce
cmp eax, 0x6cd0
je 0x180028c8b
cmp eax, 0x70c7
jne 0x180028226
cmp dword [0x1800e550c], 0xa
mov eax, dword [0x1800e5508]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xa8], 0
lea rbx, [0x180056a10]
jne 0x180028405
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x78], 0x4819
add rcx, 4
cmp rcx, 8
jne 0x1800283ef
test al, al
mov eax, 0x33e1
mov ecx, 0xfa4
cmovne eax, ecx
xor eax, dword [rbp - 0x18]
mov cl, 1
mov qword [rbp + 0xa8], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
cmp eax, 0x91a
jle 0x180028876
cmp eax, 0xaf3
jg 0x180028c1a
cmp eax, 0x91b
je 0x180028cd9
cmp eax, 0xabb
jne 0x180028226
mov ecx, dword [0x1800e5570]
cmp dword [0x1800e5574], 0xa
setl al
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete cl
mov edx, eax
xor dl, cl
or al, cl
or al, dl
cmp byte [rbp + 0xa0], 0
jne 0x18002849d
xor ecx, ecx
movsxd rdx, dword [rcx + r11]
xor dword [rbp + rdx*4 - 0x78], 0x5497
add rcx, 4
cmp rcx, 8
jne 0x180028487
test al, al
mov eax, 0x663c
mov ecx, 0x231f
cmovne eax, ecx
xor eax, dword [rbp - 0x20]
mov cl, 1
mov qword [rbp + 0xa0], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
cmp eax, 0x413e
jg 0x18002890c
cmp eax, 0x3e46
je 0x180028d58
cmp eax, 0x3e94
je 0x180028db8
cmp eax, 0x4121
jne 0x180028226
cmp dword [0x1800e5554], 0xa
mov eax, dword [0x1800e5550]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xb0], 0
jne 0x18002852f
xor ecx, ecx
movsxd rdx, dword [rcx + r15]
xor dword [rbp + rdx*4 - 0x78], 0x70d1
add rcx, 4
cmp rcx, 8
jne 0x180028519
test al, al
mov eax, 0x15a4
mov ecx, 0x45a0
cmovne eax, ecx
xor eax, dword [rbp - 0x10]
mov cl, 1
mov qword [rbp + 0xb0], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
cmp eax, 0x2fcb
jg 0x180028a04
cmp eax, 0x285f
je 0x180028dd6
cmp eax, 0x2d36
je 0x180028e3c
cmp eax, 0x2e2b
jne 0x180028226
mov rsi, rdi
cmp dword [0x1800e5524], 9
mov ecx, dword [0x1800e5520]
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 + 0xb8], 0
jne 0x1800285ce
xor ecx, ecx
movsxd rax, dword [rcx + r12]
xor dword [rbp + rax*4 - 0x78], 0x25fd
add rcx, 4
cmp rcx, 8
jne 0x1800285b8
test bl, bl
mov eax, 0x74f3
mov ecx, 0x1220
cmovne eax, ecx
xor eax, dword [rbp - 8]
mov cl, 1
mov qword [rbp + 0xb8], rcx
mov rdi, rsi
jmp 0x1800298ca
cmp eax, 0x60c3
jg 0x180028a65
cmp eax, 0x5f03
je 0x180028e4b
cmp eax, 0x5f11
je 0x18002985e
cmp eax, 0x5f44
jne 0x180028226
mov al, byte [rbp + 0x13f]
cmp byte [rbp + 0xd8], 0
lea rbx, [0x180056500]
jne 0x18002864b
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor byte [rbp + rdx*4 - 0x78], 0x26
add rcx, 4
cmp rcx, 0xd0
jne 0x180028635
test al, 1
mov eax, 0x2e0e
mov ecx, 0x4db6
cmovne eax, ecx
xor eax, dword [rbp - 0x78]
mov cl, 1
mov qword [rbp + 0xd8], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
cmp eax, 0xc50
je 0x180028e5a
cmp eax, 0x105a
je 0x180028e95
cmp eax, 0x124b
jne 0x180028226
mov r8, r12
mov r12, r14
cmp dword [0x1800e5540], 0xa
mov eax, dword [0x1800e5544]
setl cl
mov r14, rdx
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x90], 0
jne 0x1800286db
xor ecx, ecx
movsxd rdx, dword [rcx + r14]
xor dword [rbp + rdx*4 - 0x78], 0xbb5
add rcx, 4
cmp rcx, 8
jne 0x1800286c5
test al, al
mov eax, 0x7bee
mov ecx, 0x8cf
cmovne eax, ecx
xor eax, dword [rbp - 0x30]
mov cl, 1
mov qword [rbp + 0x90], rcx
mov rdx, r14
mov r14, r12
mov r12, r8
lea r8, [0x1800569f0]
jmp 0x180028226
cmp eax, 0x5035
je 0x180028ed7
cmp eax, 0x5391
je 0x180028f05
cmp eax, 0x5494
jne 0x180028226
cmp dword [0x1800e507c], 0xa
mov eax, dword [0x1800e5078]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x70], 0
lea rbx, [0x1800569d8]
jne 0x18002876f
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x78], 0x16dd
add rcx, 4
cmp rcx, 8
jne 0x180028759
test al, al
mov eax, 0x7f79
mov ecx, 0x6924
cmovne eax, ecx
xor eax, dword [rbp - 0x50]
mov cl, 1
mov qword [rbp + 0x70], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
cmp eax, 0x321e
je 0x180029016
cmp eax, 0x339d
je 0x180029053
cmp eax, 0x3689
jne 0x180028226
mov rax, qword [rbp + 0x148]
cmp dword [rax], 0x80
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x503f79b3
mov rax, qword [rbp + 0x110]
setl byte [rax]
mov eax, dword [rbp + 0x2c]
mov ecx, 0x7ff9
xor eax, ecx
jmp 0x180028226
cmp eax, 0x6930
je 0x1800296ed
cmp eax, 0x6aef
je 0x1800290e0
cmp eax, 0x6bb1
jne 0x180028226
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx]
mov cl, byte [rax + rcx]
sub rsp, 0x20
call fcn.180026fb5
lea r8, [0x1800569f0]
lea rdx, [0x1800569f8]
lea r11, [0x180056a08]
lea r10, [0x180056a28]
lea r9, [0x1800566b0]
add rsp, 0x20
test eax, eax
mov eax, 0xe21067df
mov ecx, 0x4badb8f
cmove eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov eax, dword [rbp + 0x38]
mov ecx, 0x589c
xor eax, ecx
jmp 0x180028226
cmp eax, 0xef
je 0x18002975d
cmp eax, 0x270
je 0x18002913c
cmp eax, 0x44e
jne 0x180028226
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx]
cmp byte [rax + rcx], 0
mov eax, 0xd9835698
mov ecx, 0x503f79b3
cmove eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov rax, qword [rbp + 0x110]
mov byte [rax], 0
mov eax, dword [0x1800e5064]
lea ecx, [rax + 0x86e906b]
not ecx
add ecx, eax
add ecx, eax
add ecx, 0x86e906b
imul ecx, eax
test cl, 1
mov eax, 0x45d
mov ecx, 0x497d
cmove eax, ecx
cmp dword [0x1800e5060], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x54]
jmp 0x180028226
cmp eax, 0x413f
je 0x18002916b
cmp eax, 0x4654
je 0x1800291c7
cmp eax, 0x4b40
lea r13, [0x180056910]
jne 0x180028226
mov eax, dword [rbp + 0x10c]
cmp byte [rbp + 0x130], 0
jne 0x18002895e
xor ecx, ecx
movsxd rdx, dword [rcx + r13]
xor dword [rbp + rdx*4 - 0x78], 0x2e15
add rcx, 4
cmp rcx, 0xb8
jne 0x180028945
cmp eax, 0x182685a7
jle 0x180029541
cmp eax, 0x22fbc7f7
jle 0x180029574
cmp eax, 0x503f79b2
jg 0x1800295d3
cmp eax, 0x22fbc7f8
je 0x180029659
mov cl, 1
mov qword [rbp + 0x130], rcx
cmp eax, 0x2639ec99
jne 0x1800295f2
cmp dword [0x1800e66b0], 0xa
mov eax, dword [0x1800e66b4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x88], 0
jne 0x1800289dd
xor ecx, ecx
movsxd rdx, dword [rcx + r8]
xor dword [rbp + rdx*4 - 0x78], 0x22f1
add rcx, 4
cmp rcx, 8
jne 0x1800289c7
test al, al
mov eax, 0x2241
mov ecx, 0x7a6d
cmovne eax, ecx
xor eax, dword [rbp - 0x38]
mov cl, 1
mov qword [rbp + 0x88], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
cmp eax, 0x2fcc
je 0x18002921c
cmp eax, 0x3029
je 0x180029259
cmp eax, 0x319c
jne 0x180028226
mov rax, qword [rbp + 0x128]
mov eax, dword [rax]
mov dword [rbp + 0x108], eax
mov rax, qword [rbp + 0x118]
mov dword [rax], 1
mov rax, qword [rbp + 0x128]
mov rax, qword [rbp + 0x120]
mov rax, qword [rbp + 0x140]
mov eax, dword [rbp + 0x58]
mov ecx, 0x3bb1
xor eax, ecx
jmp 0x180028226
cmp eax, 0x60c4
je 0x1800293c4
cmp eax, 0x647f
je 0x18002940c
cmp eax, 0x657f
jne 0x180028226
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx]
cmp byte [rax + rcx], 0
mov eax, 0xd9835698
mov ecx, 0x503f79b3
cmove eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov rax, qword [rbp + 0x110]
mov byte [rax], 0
mov eax, dword [rbp + 0x28]
mov ecx, 0x656c
xor eax, ecx
jmp 0x180028226
cmp eax, 0x1c08
je 0x18002942f
cmp eax, 0x20d4
jne 0x180028226
mov rax, qword [rbp + 0x148]
cmp dword [rax], 0x80
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x503f79b3
mov rax, qword [rbp + 0x110]
setl byte [rax]
mov eax, dword [0x1800e5074]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x69a4
mov ecx, 0x7772
cmove eax, ecx
cmp dword [0x1800e5070], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x4c]
jmp 0x180028226
cmp eax, 0x5c54
je 0x18002949f
cmp eax, 0x5e67
jne 0x180028226
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx]
cmp byte [rax + rcx], 0x5f
mov eax, 0x1c9b4ae3
mov ecx, 0xe21067df
cmove eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov eax, dword [rbp + 0x40]
mov ecx, 0x2646
xor eax, ecx
jmp 0x180028226
cmp eax, 0x3b9c
je 0x1800297da
cmp eax, 0x3d03
jne 0x180028226
mov rax, qword [rbp + 0x148]
mov eax, dword [rax]
inc eax
mov rcx, qword [rbp + 0x148]
mov dword [rcx], eax
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x182685a8
mov eax, dword [rbp + 0x50]
mov ecx, 0x37dd
xor eax, ecx
jmp 0x180028226
cmp eax, 0x7109
je 0x1800294bb
cmp eax, 0x7a11
jne 0x180028226
mov rax, qword [rbp + 0x128]
mov dword [rax], 0
mov rax, qword [rbp + 0x118]
mov dword [rax], 2
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x19d8b54f
mov eax, dword [rbp + 0x48]
mov ecx, 0x47bd
xor eax, ecx
jmp 0x180028226
cmp eax, 0xaf4
jne 0x1800298dd
cmp dword [0x1800e5578], 0xa
mov eax, dword [0x1800e557c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xc8], 0
jne 0x180028c64
xor ecx, ecx
movsxd rdx, dword [rcx + rsi]
xor dword [rbp + rdx*4 - 0x78], 0x348
add rcx, 4
cmp rcx, 0xc
jne 0x180028c4e
test al, al
mov eax, 0x786c
mov ecx, 0x38f9
cmovne eax, ecx
xor eax, dword [rbp + 8]
mov cl, 1
mov qword [rbp + 0xc8], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
mov rax, qword [rbp + 0x110]
cmp byte [rax], 0
mov eax, 0xa61dd4d9
mov ecx, 0x2639ec99
cmovne eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov eax, dword [0x1800e66c8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x4ff6
mov ecx, 0x65d9
cmove eax, ecx
cmp dword [0x1800e66cc], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x44]
jmp 0x180028226
mov rax, qword [rbp + 0x150]
mov eax, dword [rax]
mov dword [rbp + 0x10c], eax
cmp dword [0x1800e5048], 0xa
mov eax, dword [0x1800e504c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xf0], 0
lea rbx, [0x180056850]
jne 0x180028d31
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x78], 0x2297
add rcx, 4
cmp rcx, 0xbc
jne 0x180028d18
test al, al
mov eax, 0x7be6
mov ecx, 0xe32
cmovne eax, ecx
xor eax, dword [rbp - 0x68]
mov cl, 1
mov qword [rbp + 0xf0], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx]
cmp byte [rax + rcx], 0x5f
mov eax, 0x1c9b4ae3
mov ecx, 0xe21067df
cmove eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov eax, dword [0x1800e5584]
mov ecx, eax
not ecx
add ecx, 0xfffffffe
imul ecx, eax
test cl, 1
mov eax, 0x4667
mov ecx, 0x305f
cmove eax, ecx
cmp dword [0x1800e5580], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x24]
jmp 0x180028226
mov rax, qword [rbp + 0x150]
mov eax, dword [rax]
mov dword [rbp + 0x10c], eax
mov eax, dword [rbp + 0x20]
mov ecx, 0x4c69
xor eax, ecx
jmp 0x180028226
cmp dword [0x1800e553c], 0xa
mov eax, dword [0x1800e5538]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x100], 0
jne 0x180028e15
xor ecx, ecx
movsxd rdx, dword [rcx + rdi]
xor dword [rbp + rdx*4 - 0x78], 0x52f5
add rcx, 4
cmp rcx, 8
jne 0x180028dff
test al, al
mov eax, 0x16f3
mov ecx, 0x19c5
cmovne eax, ecx
xor eax, dword [rbp + 0x14]
mov cl, 1
mov qword [rbp + 0x100], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
mov eax, dword [rbp + 0x24]
mov ecx, 0x5e65
xor eax, ecx
jmp 0x180028226
mov eax, dword [rbp + 0x5c]
mov ecx, 0x4b30
xor eax, ecx
jmp 0x180028226
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x22fbc7f8
mov eax, dword [0x1800e552c]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x6575
mov ecx, 0x117e
cmove eax, ecx
cmp dword [0x1800e5528], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0xc]
jmp 0x180028226
mov rax, qword [rbp + 0x148]
mov rax, qword [rbp + 0x150]
mov dword [rax], 0xa4346fe1
mov eax, dword [0x1800e5588]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2401
mov ecx, 0x6821
cmove eax, ecx
cmp dword [0x1800e558c], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 4]
jmp 0x180028226
mov eax, dword [0x1800e66f8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x4406
mov ecx, 0x70d
cmove eax, ecx
cmp dword [0x1800e66fc], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x18]
jmp 0x180028226
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 + 0x120], 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 + 0x148], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x118], rax
mov rax, qword [rbp + 0x140]
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0xd0]
mov qword [rax], rcx
mov rax, qword [rbp + 0x120]
mov rax, qword [rbp + 0x120]
mov dword [rax], 0x80
mov rax, qword [rbp + 0x128]
mov rax, qword [rbp + 0x128]
mov dword [rax], 1
mov rax, qword [rbp + 0x148]
mov rax, qword [rbp + 0x148]
mov dword [rax], 0
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x150], rax
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x182685a8
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x110], rax
mov eax, dword [rbp + 0x1c]
mov ecx, 0x2e28
xor eax, ecx
jmp 0x180028226
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx]
cmp byte [rax + rcx], 0x2e
mov eax, 0xe3b34ed1
mov ecx, 0xe21067df
cmove eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov eax, dword [rbp + 0x3c]
mov ecx, 0x37a
xor eax, ecx
jmp 0x180028226
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx]
mov cl, byte [rax + rcx]
sub rsp, 0x20
call fcn.180026fb5
lea r8, [0x1800569f0]
lea rdx, [0x1800569f8]
lea r11, [0x180056a08]
lea r10, [0x180056a28]
lea r9, [0x1800566b0]
add rsp, 0x20
test eax, eax
mov eax, 0xe21067df
mov ecx, 0x4badb8f
cmove eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov eax, dword [0x1800e5504]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0xb0
mov ecx, 0x435e
cmove eax, ecx
cmp dword [0x1800e5500], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x34]
jmp 0x180028226
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx]
cmp byte [rax + rcx], 0x2d
mov eax, 0x6a62fb01
mov ecx, 0xe21067df
cmove eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov eax, dword [0x1800e5514]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x32ab
mov ecx, 0x3538
cmove eax, ecx
cmp dword [0x1800e5510], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x1c]
jmp 0x180028226
mov rax, qword [rbp + 0x110]
cmp byte [rax], 0
mov eax, 0xa61dd4d9
mov ecx, 0x2639ec99
cmovne eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov eax, dword [rbp + 0x30]
mov ecx, 0x2156
xor eax, ecx
jmp 0x180028226
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx]
cmp byte [rax + rcx], 0x2e
mov eax, 0xe3b34ed1
mov ecx, 0xe21067df
cmove eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov eax, dword [0x1800e554c]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x705b
mov ecx, 0x6a1a
cmove eax, ecx
cmp dword [0x1800e5548], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x2c]
jmp 0x180028226
mov rax, qword [rbp + 0x128]
mov dword [rax], 0
mov rax, qword [rbp + 0x118]
mov dword [rax], 2
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x19d8b54f
mov eax, dword [0x1800e551c]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x7bf8
mov ecx, 0x29b6
cmove eax, ecx
cmp dword [0x1800e5518], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x14]
jmp 0x180028226
mov rax, qword [rbp + 0x140]
mov rax, qword [rax]
mov rcx, qword [rbp + 0x148]
movsxd rcx, dword [rcx]
cmp byte [rax + rcx], 0x2d
mov eax, 0x6a62fb01
mov ecx, 0xe21067df
cmove eax, ecx
mov rcx, qword [rbp + 0x150]
mov dword [rcx], eax
mov eax, dword [rbp + 0x44]
mov ecx, 0x7788
xor eax, ecx
jmp 0x180028226
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 + 0x120], 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 + 0x148], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x118], rax
mov rax, qword [rbp + 0x140]
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0xd0]
mov qword [rax], rcx
mov rax, qword [rbp + 0x120]
mov rax, qword [rbp + 0x120]
mov dword [rax], 0x80
mov rax, qword [rbp + 0x128]
mov rax, qword [rbp + 0x128]
mov dword [rax], 1
mov rax, qword [rbp + 0x148]
mov rax, qword [rbp + 0x148]
mov dword [rax], 0
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x150], rax
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x182685a8
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x110], rax
cmp dword [0x1800e506c], 0xa
mov eax, dword [0x1800e5068]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xe0], 0
jne 0x18002939d
xor ecx, ecx
movsxd rdx, dword [rcx + r9]
xor dword [rbp + rdx*4 - 0x78], 0x52f6
add rcx, 4
cmp rcx, 0xc8
jne 0x180029384
test al, al
mov eax, 0x4d90
mov ecx, 0x209
cmovne eax, ecx
xor eax, dword [rbp - 0x70]
mov cl, 1
mov qword [rbp + 0xe0], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
mov rax, qword [rbp + 0x118]
mov dword [rax], 2
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x19d8b54f
mov eax, dword [0x1800e6728]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x250
mov ecx, 0x3196
cmove eax, ecx
cmp dword [0x1800e672c], 0xa
cmovl eax, ecx
xor eax, dword [rbp - 0x3c]
jmp 0x180028226
mov rax, qword [rbp + 0x148]
mov rax, qword [rbp + 0x150]
mov dword [rax], 0xa4346fe1
mov eax, dword [rbp + 0x54]
mov ecx, 0x5024
xor eax, ecx
jmp 0x180028226
cmp dword [0x1800e5044], 0xa
mov eax, dword [0x1800e5040]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xe8], 0
lea rbx, [0x180056780]
jne 0x180029478
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x78], 0x985
add rcx, 4
cmp rcx, 0xc4
jne 0x18002945f
test al, al
mov eax, 0x7263
mov ecx, 0x45ec
cmovne eax, ecx
xor eax, dword [rbp - 0x6c]
mov cl, 1
mov qword [rbp + 0xe8], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
mov rax, qword [rbp + 0x150]
mov dword [rax], 0x22fbc7f8
mov eax, dword [rbp + 0x4c]
mov ecx, 0x3571
xor eax, ecx
jmp 0x180028226
mov rax, qword [rbp + 0x128]
mov eax, dword [rax]
mov dword [rbp + 0x108], eax
mov rax, qword [rbp + 0x118]
mov dword [rax], 1
mov rax, qword [rbp + 0x128]
mov rax, qword [rbp + 0x120]
mov rax, qword [rbp + 0x140]
cmp dword [0x1800e5560], 0xa
mov eax, dword [0x1800e5564]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xf8], 0
jne 0x18002951a
xor dword [rbp + 0x10], 0x489b
test al, al
mov eax, 0x7b24
mov ecx, 0x4177
cmovne eax, ecx
xor eax, dword [rbp + 0xc]
mov cl, 1
mov qword [rbp + 0xf8], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
cmp eax, 0xe21067de
jg 0x1800295a0
cmp eax, 0xa4346fe1
je 0x180029667
cmp eax, 0xa61dd4d9
je 0x180029675
mov cl, 1
mov qword [rbp + 0x130], rcx
cmp eax, 0xd9835698
je 0x18002872c
jmp 0x1800295f2
cmp eax, 0x182685a8
je 0x1800296e4
cmp eax, 0x19d8b54f
je 0x180029754
mov cl, 1
mov qword [rbp + 0x130], rcx
cmp eax, 0x1c9b4ae3
je 0x180028458
jmp 0x1800295f2
cmp eax, 0xe21067df
je 0x1800297c3
cmp eax, 0xe3b34ed1
je 0x1800297d1
mov cl, 1
mov qword [rbp + 0x130], rcx
cmp eax, 0x4badb8f
lea rdx, [0x1800569f8]
je 0x180028693
jmp 0x1800295f2
cmp eax, 0x503f79b3
je 0x180029855
mov cl, 1
mov qword [rbp + 0x130], rcx
cmp eax, 0x6a62fb01
je 0x1800283bf
cmp dword [0x1800e5014], 0xa
mov eax, dword [0x1800e5010]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x60], 0
lea rbx, [0x1800569c8]
jne 0x180029635
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x78], 0x20ad
add rcx, 4
cmp rcx, 8
jne 0x18002961f
test al, al
mov eax, 0x64c6
mov ecx, 0x7ec8
cmovne eax, ecx
xor eax, dword [rbp - 0x60]
mov cl, 1
mov qword [rbp + 0x60], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
mov al, 1
mov qword [rbp + 0x130], rax
jmp 0x180028582
mov al, 1
mov qword [rbp + 0x130], rax
jmp 0x180028c25
mov al, 1
mov qword [rbp + 0x130], rax
cmp dword [0x1800e6748], 0xa
mov eax, dword [0x1800e674c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x80], 0
jne 0x1800296bd
xor ecx, ecx
movsxd rdx, dword [rcx + r14]
xor dword [rbp + rdx*4 - 0x78], 0x5039
add rcx, 4
cmp rcx, 8
jne 0x1800296a7
test al, al
mov eax, 0x5269
mov ecx, 0x2934
cmovne eax, ecx
xor eax, dword [rbp - 0x40]
mov cl, 1
mov qword [rbp + 0x80], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
mov al, 1
mov qword [rbp + 0x130], rax
lea rbx, [0x1800569d0]
cmp dword [0x1800e4fd4], 0xa
mov eax, dword [0x1800e4fd0]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x68], 0
jne 0x180029730
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4 - 0x78], 0x28d2
add rcx, 4
cmp rcx, 8
jne 0x18002971a
test al, al
mov eax, 0x2c8f
mov ecx, 0x4dbe
cmovne eax, ecx
xor eax, dword [rbp - 0x58]
mov cl, 1
mov qword [rbp + 0x68], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
mov al, 1
mov qword [rbp + 0x130], rax
cmp dword [0x1800e556c], 0xa
mov eax, dword [0x1800e5568]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0xc0], 0
jne 0x18002979c
xor ecx, ecx
movsxd rdx, dword [rcx + r10]
xor dword [rbp + rdx*4 - 0x78], 0x98e
add rcx, 4
cmp rcx, 8
jne 0x180029786
test al, al
mov eax, 0x2d8f
mov ecx, 0x59aa
cmovne eax, ecx
xor eax, dword [rbp]
mov cl, 1
mov qword [rbp + 0xc0], rcx
lea rdx, [0x1800569f8]
jmp 0x180028226
mov al, 1
mov qword [rbp + 0x130], rax
jmp 0x1800284f0
mov al, 1
mov qword [rbp + 0x130], rax
mov eax, dword [0x1800e555c]
cmp dword [0x1800e5558], 0xa
setl cl
mov edx, eax
not edx
add edx, 0x268d0b0
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x98], 0
lea r15, [0x180056a00]
jne 0x180029827
xor ecx, ecx
movsxd rdx, dword [rcx + r15]
xor dword [rbp + rdx*4 - 0x78], 0x51f0
add rcx, 4
cmp rcx, 8
jne 0x180029811
test al, al
mov eax, 0x1797
mov ecx, 0x77b6
cmovne eax, ecx
xor eax, dword [rbp - 0x28]
mov cl, 1
mov qword [rbp + 0x98], rcx
lea rdx, [0x1800569f8]
lea r15, [0x180056a18]
jmp 0x180028226
mov al, 1
mov qword [rbp + 0x130], rax
mov eax, dword [0x1800e4ff0]
cmp dword [0x1800e4ff4], 0xa
setl cl
lea esi, [rax - 0x5e05f6f7]
mov edx, esi
not edx
add edx, eax
add edx, esi
add edx, 0xa1fa090a
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 0x78], 0
lea rsi, [0x1800569e0]
jne 0x1800298b2
xor ecx, ecx
movsxd rdx, dword [rcx + rsi]
xor dword [rbp + rdx*4 - 0x78], 0x476
add rcx, 4
cmp rcx, 8
jne 0x18002989c
test al, al
mov eax, 0x4b80
mov ecx, 0x2520
cmovne eax, ecx
xor eax, dword [rbp - 0x48]
mov cl, 1
mov qword [rbp + 0x78], rcx
lea rsi, [0x180056a30]
lea rdx, [0x1800569f8]
jmp 0x180028226
cmp eax, 0xbcf
jne 0x180028226
mov eax, dword [rbp + 0x108]
lea rsp, [rbp + 0x158]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret