Function at 0x18004336d
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x198
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x100], xmm6
mov qword [rbp - 0x48], r8
mov dword [rbp + 0x7c], edx
mov qword [rbp - 0x40], rcx
xorps xmm0, xmm0
movaps xmmword [rbp + 0x60], xmm0
movaps xmmword [rbp + 0x50], xmm0
movaps xmmword [rbp + 0x40], xmm0
movaps xmmword [rbp + 0x30], xmm0
movaps xmmword [rbp + 0x20], xmm0
movaps xmmword [rbp + 0x10], xmm0
movaps xmmword [rbp], xmm0
mov qword [rbp + 0x70], 0
cmp dword [0x1800e6484], 0xa
mov eax, dword [0x1800e6480]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
mov edx, ecx
and dl, al
mov byte [rbp + 0xe7], dl
xor cl, al
mov byte [rbp + 0xe6], cl
xor eax, eax
lea rcx, [0x18005a9c0]
movsxd rdx, dword [rax + rcx]
xor dword [rbp + rdx*4], 0x1e27
add rax, 4
cmp rax, 0x74
jne 0x1800433f8
mov eax, 0x98e
xorps xmm6, xmm6
lea r8, [0x18005a950]
lea rsi, [0x18005ac00]
lea r9, [0x18005abe0]
lea r10, [0x18005ab20]
lea r11, [0x18005ac0c]
lea rdi, [0x18005aab0]
lea rbx, [0x18005ab80]
lea r12, [0x18005abf8]
lea r15, [0x18005abd8]
lea r13, [0x18005abf0]
lea r14, [0x18005abe8]
mov ecx, 0
mov qword [rbp - 0x30], rcx
mov ecx, 0
mov qword [rbp - 0x20], rcx
mov ecx, 0
mov qword [rbp - 0x18], rcx
xor ecx, ecx
mov qword [rbp - 0x10], rcx
xor ecx, ecx
mov qword [rbp - 0x38], rcx
xor ecx, ecx
mov qword [rbp - 0x78], rcx
xor ecx, ecx
mov qword [rbp - 0x70], rcx
xor ecx, ecx
mov qword [rbp - 0x68], rcx
xor ecx, ecx
mov qword [rbp - 0x60], rcx
xor ecx, ecx
mov qword [rbp - 0x58], rcx
xor ecx, ecx
mov qword [rbp - 0x50], rcx
xor ecx, ecx
mov qword [rbp - 0x28], rcx
xor ecx, ecx
mov qword [rbp - 8], rcx
cmp eax, 0x420a
jg 0x18004354e
cmp eax, 0x2d80
jg 0x180043594
cmp eax, 0x1add
jg 0x18004369e
cmp eax, 0x91a
jg 0x18004385c
cmp eax, 0x348
je 0x180043a4a
cmp eax, 0x363
jne 0x1800434ba
mov rax, qword [rbp + 0xf8]
mov eax, dword [rax]
mov rcx, qword [rbp + 0x98]
cmp eax, dword [rcx]
mov eax, 0x7e190e30
mov ecx, 0xf5fac822
cmovl eax, ecx
mov rcx, qword [rbp + 0xd8]
mov dword [rcx], eax
mov eax, dword [0x1800e538c]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x3e66
mov ecx, 0x2388
cmove eax, ecx
cmp dword [0x1800e5388], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x24]
jmp 0x1800434ba
cmp eax, 0x5c3a
jg 0x180043619
cmp eax, 0x489a
jle 0x1800436ef
cmp eax, 0x5067
jg 0x1800438b6
cmp eax, 0x489b
je 0x180043dc2
cmp eax, 0x4b40
jne 0x1800434ba
mov eax, dword [rbp + 0x74]
mov ecx, 0x6d65
xor eax, ecx
jmp 0x1800434ba
cmp eax, 0x3028
jle 0x1800437a6
cmp eax, 0x3148
jg 0x180043924
cmp eax, 0x3029
je 0x180043e1b
cmp eax, 0x30a8
jne 0x1800434ba
cmp dword [0x1800e4e7c], 0xa
mov eax, dword [0x1800e4e78]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x70], 0
jne 0x1800435fc
xor ecx, ecx
movsxd rdx, dword [rcx + r9]
xor dword [rbp + rdx*4], 0x28d2
add rcx, 4
cmp rcx, 8
jne 0x1800435e6
test al, al
mov eax, 0x16b4
mov ecx, 0x4a93
cmovne eax, ecx
xor eax, dword [rbp + 0x20]
mov cl, 1
mov qword [rbp - 0x70], rcx
jmp 0x1800434ba
cmp eax, 0x72db
jle 0x1800437e2
cmp eax, 0x7986
jg 0x180043949
cmp eax, 0x72dc
je 0x180043eb9
cmp eax, 0x735d
jne 0x1800434ba
cmp dword [0x1800e53b8], 0xa
mov eax, dword [0x1800e53bc]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x68], 0
jne 0x180043681
xor ecx, ecx
movsxd rdx, dword [rcx + r14]
xor dword [rbp + rdx*4], 0x16dd
add rcx, 4
cmp rcx, 8
jne 0x18004366b
test al, al
mov eax, 0x6471
mov ecx, 0x532e
cmovne eax, ecx
xor eax, dword [rbp + 0x28]
mov cl, 1
mov qword [rbp - 0x68], rcx
jmp 0x1800434ba
cmp eax, 0x1d99
jg 0x180043a11
cmp eax, 0x1ade
je 0x1800441e0
cmp eax, 0x1c08
jne 0x1800434ba
mov rax, qword [rbp + 0xf8]
mov eax, dword [rax]
inc eax
mov rcx, qword [rbp + 0xf8]
mov dword [rcx], eax
mov rax, qword [rbp + 0xd8]
mov dword [rax], 0xec48af3d
mov eax, dword [rbp + 0x6c]
mov ecx, 0x49a1
xor eax, ecx
jmp 0x1800434ba
cmp eax, 0x420b
je 0x180044222
cmp eax, 0x42aa
je 0x180044707
cmp eax, 0x45df
jne 0x1800434ba
mov rax, qword [rbp + 0x80]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xf8]
movsxd rcx, dword [rcx]
mov al, byte [rax + rcx]
mov rcx, qword [rbp + 0x88]
mov rcx, qword [rcx]
mov rdx, qword [rbp + 0xf8]
mov edx, dword [rdx]
lea edi, [rdx + 7]
test edx, edx
cmovns edi, edx
and edi, 0xfffffff8
sub edx, edi
lea rdi, [0x18005aab0]
movsxd rdx, edx
xor al, byte [rcx + rdx]
mov rcx, qword [rbp + 0xf0]
mov rcx, qword [rcx]
mov rdx, qword [rbp + 0xf8]
movsxd rdx, dword [rdx]
mov byte [rcx + rdx], al
mov rax, qword [rbp + 0xd8]
mov dword [rax], 0xc2639a66
mov eax, dword [0x1800e4ecc]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x7daf
mov ecx, 0xf2c
cmove eax, ecx
cmp dword [0x1800e4ec8], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x34]
jmp 0x1800434ba
cmp eax, 0x2d81
je 0x180044287
cmp eax, 0x2fb4
je 0x1800439b8
cmp eax, 0x2ff7
jne 0x1800434ba
mov rax, qword [rbp + 0xd8]
mov eax, dword [rax]
mov dword [rbp + 0x78], eax
mov eax, dword [rbp + 0x58]
mov ecx, 0x779
xor eax, ecx
jmp 0x1800434ba
cmp eax, 0x5c3b
je 0x1800446a1
cmp eax, 0x5f44
je 0x1800442aa
cmp eax, 0x6e3f
jne 0x1800434ba
cmp dword [0x1800e4ea8], 0xa
mov eax, dword [0x1800e4eac]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x60], 0
jne 0x18004383f
xor ecx, ecx
movsxd rdx, dword [rcx + r13]
xor dword [rbp + rdx*4], 0x476
add rcx, 4
cmp rcx, 8
jne 0x180043829
test al, al
mov eax, 0x79d9
mov ecx, 0xc2f
cmovne eax, ecx
xor eax, dword [rbp + 0x30]
mov cl, 1
mov qword [rbp - 0x60], rcx
jmp 0x1800434ba
cmp eax, 0x91b
je 0x1800442e1
cmp eax, 0x98e
jne 0x1800434ba
mov al, byte [rbp + 0xe7]
or al, byte [rbp + 0xe6]
cmp byte [rbp - 0x30], 0
jne 0x180043899
xor ecx, ecx
movsxd rdx, dword [rcx + r8]
xor byte [rbp + rdx*4], 0x26
add rcx, 4
cmp rcx, 0x70
jne 0x180043886
test al, 1
mov eax, 0x6cfb
mov ecx, 0x1d6f
cmovne eax, ecx
xor eax, dword [rbp]
mov cl, 1
mov qword [rbp - 0x30], rcx
jmp 0x1800434ba
cmp eax, 0x5068
je 0x180044447
cmp eax, 0x52f5
jne 0x1800434ba
mov eax, dword [rbp + 0x78]
cmp byte [rbp - 0x38], 0
jne 0x1800438ed
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4], 0x2e15
add rcx, 4
cmp rcx, 0x58
jne 0x1800438d7
mov cl, 1
mov qword [rbp - 0x38], rcx
cmp eax, 0xf5fac821
jle 0x18004468b
cmp eax, 0xf5fac822
je 0x180043803
cmp eax, 0x2bb993d0
je 0x1800439b8
cmp eax, 0x7e190e30
je 0x180043645
jmp 0x1800446a1
cmp eax, 0x3149
je 0x1800444ba
cmp eax, 0x34c1
jne 0x1800434ba
mov eax, dword [rbp + 0x5c]
mov ecx, 0x5814
xor eax, ecx
jmp 0x1800434ba
cmp eax, 0x7987
je 0x1800444e8
cmp eax, 0x7b6d
jne 0x1800434ba
cmp dword [0x1800e4ed0], 0xa
mov eax, dword [0x1800e4ed4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x58], 0
jne 0x18004399b
xor ecx, ecx
movsxd rdx, dword [rcx + r12]
xor dword [rbp + rdx*4], 0x5039
add rcx, 4
cmp rcx, 8
jne 0x180043985
test al, al
mov eax, 0x55f8
mov ecx, 0x1998
cmovne eax, ecx
xor eax, dword [rbp + 0x38]
mov cl, 1
mov qword [rbp - 0x58], rcx
jmp 0x1800434ba
cmp dword [0x1800e4ec4], 0xa
mov eax, dword [0x1800e4ec0]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x50], 0
jne 0x1800439f4
xor ecx, ecx
movsxd rdx, dword [rcx + rsi]
xor dword [rbp + rdx*4], 0x22f1
add rcx, 4
cmp rcx, 0xc
jne 0x1800439de
test al, al
mov eax, 0x40eb
mov ecx, 0x3077
cmovne eax, ecx
xor eax, dword [rbp + 0x40]
mov cl, 1
mov qword [rbp - 0x50], rcx
jmp 0x1800434ba
cmp eax, 0x1dcd
jne 0x1800446fa
mov eax, dword [0x1800e4e94]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x3be8
mov ecx, 0x3833
cmove eax, ecx
cmp dword [0x1800e4e90], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x50]
jmp 0x1800434ba
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x88], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x98], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x80], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xe8], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc8], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc0], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb8], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x90], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb0], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd0], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf0], rax
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 + 0xa8], rax
mov eax, 0x30
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xa0], rax
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp - 0x48]
mov qword [rax], rcx
mov rax, qword [rbp + 0x98]
mov ecx, dword [rbp + 0x7c]
mov dword [rax], ecx
mov rax, qword [rbp + 0x80]
mov rcx, qword [rbp - 0x40]
mov qword [rax], rcx
mov rax, qword [rbp + 0xe8]
sub rsp, 0x20
call fcn.180022fd5
add rsp, 0x20
mov rcx, qword [rbp + 0xe8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xc8]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0xa5b822e4
call fcn.18001ea27
add rsp, 0x20
mov rcx, qword [rbp + 0xc8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xc0]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0xfc26e024
call fcn.18001ea27
add rsp, 0x20
mov rcx, qword [rbp + 0xc0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xb8]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0xc3b76098
call fcn.18001ea27
add rsp, 0x20
mov rcx, qword [rbp + 0xb8]
mov qword [rcx], rax
mov rax, qword [rbp + 0x90]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0xf1bf6cd5
call fcn.18001ea27
add rsp, 0x20
mov rcx, qword [rbp + 0x90]
mov qword [rcx], rax
mov rax, qword [rbp + 0xb0]
mov rax, qword [rbp + 0xb0]
xor edi, edi
mov dword [rax], edi
mov rax, qword [rbp + 0xd0]
mov rax, qword [rbp + 0x98]
movsxd rax, dword [rax]
mov rcx, qword [rbp + 0xd0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xf0]
mov qword [rax], 0
mov rax, qword [rbp + 0xc8]
mov rax, qword [rax]
mov r9, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xf0]
sub rsp, 0x30
mov dword [rsp + 0x28], 4
mov dword [rsp + 0x20], 0x3000
mov rcx, 0xffffffffffffffff
xor r8d, r8d
call rax
lea rbx, [0x18005aa40]
add rsp, 0x30
mov rax, qword [rbp + 0xf8]
mov rax, qword [rbp + 0xf8]
mov dword [rax], edi
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
mov dword [rax], 0xec48af3d
cmp dword [0x1800e4e50], 0xa
mov eax, dword [0x1800e4e54]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x20], 0
jne 0x180043d7b
xor ecx, ecx
movsxd rdx, dword [rcx + rbx]
xor dword [rbp + rdx*4], 0x52f6
add rcx, 4
cmp rcx, 0x68
jne 0x180043d65
test al, al
mov eax, 0x6cdd
mov ecx, 0x569a
cmovne eax, ecx
xor eax, dword [rbp + 8]
mov cl, 1
mov qword [rbp - 0x20], rcx
lea r8, [0x18005a950]
lea r9, [0x18005abe0]
lea r10, [0x18005ab20]
lea r11, [0x18005ac0c]
lea rdi, [0x18005aab0]
lea rbx, [0x18005ab80]
jmp 0x1800434ba
cmp dword [0x1800e4e5c], 0xa
mov eax, dword [0x1800e4e58]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x18], 0
jne 0x180043dfe
xor ecx, ecx
movsxd rdx, dword [rcx + rdi]
xor dword [rbp + rdx*4], 0x985
add rcx, 4
cmp rcx, 0x64
jne 0x180043de8
test al, al
mov eax, 0x6300
mov ecx, 0xefc
cmovne eax, ecx
xor eax, dword [rbp + 0xc]
mov cl, 1
mov qword [rbp - 0x18], rcx
jmp 0x1800434ba
mov rax, qword [rbp + 0x80]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xf8]
movsxd rcx, dword [rcx]
movzx eax, byte [rax + rcx]
mov rcx, qword [rbp + 0x88]
mov rcx, qword [rcx]
mov rdx, qword [rbp + 0xf8]
mov edx, dword [rdx]
lea edi, [rdx + 7]
test edx, edx
cmovns edi, edx
and edi, 0xfffffff8
sub edx, edi
movsxd rdx, edx
movzx ecx, byte [rcx + rdx]
mov edx, eax
mov ebx, 0xaeb4094d
xor edx, ebx
mov edi, ecx
xor edi, ebx
lea rbx, [0x18005ab80]
xor ecx, eax
xor eax, 0xb2
and eax, edi
or edi, edx
add ecx, edx
add ecx, eax
sub ecx, edi
lea rdi, [0x18005aab0]
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
mov rdx, qword [rbp + 0xf8]
movsxd rdx, dword [rdx]
mov byte [rax + rdx], cl
mov rax, qword [rbp + 0xd8]
mov dword [rax], 0xc2639a66
mov eax, dword [rbp + 0x68]
mov ecx, 0x859
xor eax, ecx
jmp 0x1800434ba
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x88], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x98], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x80], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xe8], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc8], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc0], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb8], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x90], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb0], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd0], rax
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf0], rax
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 + 0xa8], rax
mov eax, 0x30
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xa0], rax
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp - 0x48]
mov qword [rax], rcx
mov rax, qword [rbp + 0x98]
mov ecx, dword [rbp + 0x7c]
mov dword [rax], ecx
mov rax, qword [rbp + 0x80]
mov rcx, qword [rbp - 0x40]
mov qword [rax], rcx
mov rax, qword [rbp + 0xe8]
sub rsp, 0x20
call fcn.180022fd5
add rsp, 0x20
mov rcx, qword [rbp + 0xe8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xc8]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0xa5b822e4
call fcn.18001ea27
add rsp, 0x20
mov rcx, qword [rbp + 0xc8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xc0]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0xfc26e024
call fcn.18001ea27
add rsp, 0x20
mov rcx, qword [rbp + 0xc0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xb8]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0xc3b76098
call fcn.18001ea27
add rsp, 0x20
mov rcx, qword [rbp + 0xb8]
mov qword [rcx], rax
mov rax, qword [rbp + 0x90]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0xf1bf6cd5
call fcn.18001ea27
add rsp, 0x20
mov rcx, qword [rbp + 0x90]
mov qword [rcx], rax
mov rax, qword [rbp + 0xb0]
mov rax, qword [rbp + 0xb0]
xor edi, edi
mov dword [rax], edi
mov rax, qword [rbp + 0xd0]
mov rax, qword [rbp + 0x98]
movsxd rax, dword [rax]
mov rcx, qword [rbp + 0xd0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xf0]
mov qword [rax], 0
mov rax, qword [rbp + 0xc8]
mov rax, qword [rax]
mov r9, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xf0]
sub rsp, 0x30
mov dword [rsp + 0x28], 4
mov dword [rsp + 0x20], 0x3000
mov rcx, 0xffffffffffffffff
xor r8d, r8d
call rax
lea r11, [0x18005ac0c]
lea r10, [0x18005ab20]
lea r9, [0x18005abe0]
lea r8, [0x18005a950]
lea rbx, [0x18005ab80]
add rsp, 0x30
mov rax, qword [rbp + 0xf8]
mov rax, qword [rbp + 0xf8]
mov dword [rax], edi
lea rdi, [0x18005aab0]
mov eax, 0x10
call fcn.1800506c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
mov dword [rax], 0xec48af3d
mov eax, dword [rbp + 0x54]
mov ecx, 0x1d49
xor eax, ecx
jmp 0x1800434ba
mov rax, qword [rbp + 0xf8]
mov rax, qword [rbp + 0xd8]
mov dword [rax], 0x2bb993d0
mov eax, dword [0x1800e4e84]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x72ac
mov ecx, 0x1d87
cmove eax, ecx
cmp dword [0x1800e4e80], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x2c]
jmp 0x1800434ba
mov rax, qword [rbp + 0xd8]
mov eax, dword [rax]
mov dword [rbp + 0x78], eax
cmp dword [0x1800e4e64], 0xa
mov eax, dword [0x1800e4e60]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x10], 0
jne 0x18004426a
xor ecx, ecx
movsxd rdx, dword [rcx + r10]
xor dword [rbp + rdx*4], 0x2297
add rcx, 4
cmp rcx, 0x5c
jne 0x180044254
test al, al
mov eax, 0x6a85
mov ecx, 0x1787
cmovne eax, ecx
xor eax, dword [rbp + 0x10]
mov cl, 1
mov qword [rbp - 0x10], rcx
jmp 0x1800434ba
mov rax, qword [rbp + 0xf8]
mov rax, qword [rbp + 0xd8]
mov dword [rax], 0x2bb993d0
mov eax, dword [rbp + 0x64]
mov ecx, 0x45f3
xor eax, ecx
jmp 0x1800434ba
mov rax, qword [rbp + 0xf8]
mov eax, dword [rax]
mov rcx, qword [rbp + 0x98]
cmp eax, dword [rcx]
mov eax, 0x7e190e30
mov ecx, 0xf5fac822
cmovl eax, ecx
mov rcx, qword [rbp + 0xd8]
mov dword [rcx], eax
mov eax, dword [rbp + 0x60]
mov ecx, 0x6241
xor eax, ecx
jmp 0x1800434ba
sub rsp, 0x20
call fcn.180041d75
add rsp, 0x20
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.180041f89
add rsp, 0x20
mov rax, qword [rbp + 0xc0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xb0]
mov r8, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xf0]
sub rsp, 0x30
mov qword [rsp + 0x20], rcx
mov rcx, 0xffffffffffffffff
mov r9d, 0x20
call rax
add rsp, 0x30
mov rax, qword [rbp + 0xa8]
mov rax, qword [rbp + 0xa8]
mov qword [rax], 0xffffffffffffffff
mov rax, qword [rbp + 0xa0]
mov rax, qword [rbp + 0xa0]
movups xmmword [rax], xmm6
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax + 0x20], xmm6
mov dword [rax], 0x30
mov rax, qword [rbp + 0xb8]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xf0]
mov rdx, qword [rcx]
mov rcx, qword [rbp + 0xa8]
mov r8, qword [rbp + 0xa0]
sub rsp, 0x60
movups xmmword [rsp + 0x48], xmm6
movups xmmword [rsp + 0x38], xmm6
mov qword [rsp + 0x28], rdx
lea rdx, [0x1800431e0]
mov qword [rsp + 0x20], rdx
mov dword [rsp + 0x30], 0
mov edx, 0x1fffff
mov r9, 0xffffffffffffffff
call rax
lea r11, [0x18005ac0c]
lea r10, [0x18005ab20]
lea r9, [0x18005abe0]
lea r8, [0x18005a950]
lea rbx, [0x18005ab80]
add rsp, 0x60
mov rax, qword [rbp + 0xa0]
mov rax, qword [rbp + 0xa8]
mov rax, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xd0]
mov rax, qword [rbp + 0xb0]
mov rax, qword [rbp + 0x90]
mov rax, qword [rbp + 0xb8]
mov rax, qword [rbp + 0xc0]
mov rax, qword [rbp + 0xc8]
mov rax, qword [rbp + 0xe8]
mov eax, dword [rbp + 0x70]
mov ecx, 0x1286
xor eax, ecx
jmp 0x1800434ba
mov rax, qword [rbp + 0xf8]
mov eax, dword [rax]
lea ecx, [rax + 0x4e88f273]
mov edx, 0xb1770d8c
sub edx, eax
mov ebx, 0xb1770d8e
and edx, ebx
and ecx, ebx
lea rbx, [0x18005ab80]
add eax, ecx
add eax, 0x4e88f273
add eax, edx
mov rcx, qword [rbp + 0xf8]
mov dword [rcx], eax
mov rax, qword [rbp + 0xd8]
mov dword [rax], 0xec48af3d
mov eax, dword [0x1800e4f04]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x5c1
mov ecx, 0x5b63
cmove eax, ecx
cmp dword [0x1800e4f00], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x3c]
jmp 0x1800434ba
mov eax, dword [0x1800e4e74]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x5d9c
mov ecx, 0x2bf7
cmove eax, ecx
cmp dword [0x1800e4e70], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x1c]
jmp 0x1800434ba
sub rsp, 0x20
call fcn.180041d75
add rsp, 0x20
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.180041f89
add rsp, 0x20
mov rax, qword [rbp + 0xc0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xb0]
mov r8, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xf0]
sub rsp, 0x30
mov qword [rsp + 0x20], rcx
mov rcx, 0xffffffffffffffff
mov r9d, 0x20
call rax
add rsp, 0x30
mov rax, qword [rbp + 0xa8]
mov rax, qword [rbp + 0xa8]
mov qword [rax], 0xffffffffffffffff
mov rax, qword [rbp + 0xa0]
mov rax, qword [rbp + 0xa0]
movups xmmword [rax], xmm6
movups xmmword [rax + 0x10], xmm6
movups xmmword [rax + 0x20], xmm6
mov dword [rax], 0x30
mov rax, qword [rbp + 0xb8]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xf0]
mov rdx, qword [rcx]
mov rcx, qword [rbp + 0xa8]
mov r8, qword [rbp + 0xa0]
sub rsp, 0x60
movups xmmword [rsp + 0x48], xmm6
movups xmmword [rsp + 0x38], xmm6
mov qword [rsp + 0x28], rdx
lea rdx, [0x1800431e0]
mov qword [rsp + 0x20], rdx
mov dword [rsp + 0x30], 0
mov edx, 0x1fffff
mov r9, 0xffffffffffffffff
call rax
add rsp, 0x60
mov rax, qword [rbp + 0xa0]
mov rax, qword [rbp + 0xa8]
mov rax, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xd0]
mov rax, qword [rbp + 0xb0]
mov rax, qword [rbp + 0x90]
mov rax, qword [rbp + 0xb8]
mov rax, qword [rbp + 0xc0]
mov rax, qword [rbp + 0xc8]
mov rax, qword [rbp + 0xe8]
mov eax, dword [0x1800e4ef4]
cmp dword [0x1800e4ef0], 0xa
setl cl
mov edx, 1
sub edx, eax
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x28], 0
jne 0x18004464b
xor dword [rbp + 0x48], 0x66ad
test al, al
mov eax, 0x621a
mov ecx, 0x769b
cmovne eax, ecx
xor eax, dword [rbp + 0x44]
mov cl, 1
mov qword [rbp - 0x28], rcx
lea r8, [0x18005a950]
lea r9, [0x18005abe0]
lea r10, [0x18005ab20]
lea r11, [0x18005ac0c]
lea rbx, [0x18005ab80]
jmp 0x1800434ba
cmp eax, 0xc2639a66
je 0x18004395f
cmp eax, 0xec48af3d
je 0x1800435c0
cmp dword [0x1800e4e6c], 0xa
mov eax, dword [0x1800e4e68]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x78], 0
jne 0x1800446dd
xor ecx, ecx
movsxd rdx, dword [rcx + r15]
xor dword [rbp + rdx*4], 0x20ad
add rcx, 4
cmp rcx, 8
jne 0x1800446c7
test al, al
mov eax, 0x7d31
mov ecx, 0x78b9
cmovne eax, ecx
xor eax, dword [rbp + 0x18]
mov cl, 1
mov qword [rbp - 0x78], rcx
jmp 0x1800434ba
cmp eax, 0x1d9a
jne 0x1800434ba
jmp 0x180044760
mov eax, dword [0x1800e4e88]
cmp dword [0x1800e4e8c], 0xa
setl cl
mov edx, 1
sub edx, eax
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 8], 0
jne 0x180044747
xor ecx, ecx
movsxd rdx, dword [rcx + r11]
xor dword [rbp + rdx*4], 0x3958
add rcx, 4
cmp rcx, 8
jne 0x180044731
test al, al
mov eax, 0x2b0
mov ecx, 0x543d
cmovne eax, ecx
xor eax, dword [rbp + 0x4c]
mov cl, 1
jmp 0x1800434b6
movaps xmm6, xmmword [rbp + 0x100]
lea rsp, [rbp + 0x118]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret