Function at 0x1400521b0
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]
movaps xmmword [rbp + 0x120], xmm6
mov qword [rbp - 0x40], r9
mov dword [rbp + 0xb4], r8d
mov qword [rbp - 0x38], rdx
mov qword [rbp - 0x30], rcx
xorps xmm0, xmm0
movups xmmword [rbp + 0x9c], xmm0
movaps xmmword [rbp + 0x90], xmm0
movaps xmmword [rbp + 0x80], xmm0
movaps xmmword [rbp + 0x70], 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
mov eax, dword [0x140066510]
cmp dword [0x140066514], 0xa
setl bl
lea edx, [rax + 1]
imul edx, eax
and edx, 1
sete al
mov r8d, ebx
xor r8b, al
or al, bl
mov byte [rbp + 0x117], al
mov ecx, ebx
and cl, dl
xor cl, al
xor cl, r8b
xor cl, 1
mov byte [rbp + 0x116], cl
or bl, dl
mov byte [rbp + 0x115], bl
mov eax, 1
lea rcx, [0x140064640]
nop dword [rax]
movsxd rdx, dword [rcx + rax*4 - 4]
xor dword [rbp + rdx*4 + 0x10], 0x1e27
movsxd rdx, dword [rcx + rax*4]
xor dword [rbp + rdx*4 + 0x10], 0x1e27
add rax, 2
cmp rax, 0x27
jne 0x140052270
mov eax, 0x363
xor ecx, ecx
mov qword [rbp - 0x28], rcx
lea rdi, [0x1400645a0]
xorps xmm6, xmm6
lea r12, [0x1400646e0]
lea r14, [0x140064800]
lea r15, [0x140064770]
lea rbx, [0x140064880]
mov ecx, 0
mov qword [rbp - 8], rcx
mov ecx, 0
mov qword [rbp - 0x10], rcx
mov ecx, 0
mov qword [rbp], rcx
mov ecx, 0
mov qword [rbp - 0x20], rcx
mov ecx, 0
mov qword [rbp - 0x80], 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 - 0x48], rcx
xor r13d, r13d
xor ecx, ecx
mov qword [rbp - 0x18], rcx
xor ecx, ecx
jmp 0x14005236c
cmp dword [0x140066e50], 0xa
mov eax, dword [0x140066e54]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp + 8], 0
je 0x140053560
test al, al
mov eax, 0x231f
mov ecx, 0x6924
cmovne eax, ecx
xor eax, dword [rbp + 0x74]
mov cl, 1
mov qword [rbp + 8], rcx
cmp eax, 0x3b9b
jle 0x1400523d0
cmp eax, 0x5f10
jle 0x140052480
cmp eax, 0x6ccf
jg 0x14005259c
cmp eax, 0x60c3
jle 0x1400527b5
cmp eax, 0x60c4
je 0x140052de9
cmp eax, 0x6930
je 0x140052e1b
cmp eax, 0x6aef
jne 0x140052370
mov eax, dword [rbp + 0xa8]
mov ecx, 0x6c0f
xor eax, ecx
jmp 0x140052370
cmp eax, 0x20d3
jg 0x140052510
cmp eax, 0x15dd
jle 0x14005265c
cmp eax, 0x1c07
jle 0x140052806
cmp eax, 0x1c08
je 0x14005260a
cmp eax, 0x1d9a
je 0x140052e9c
cmp eax, 0x1dcd
jne 0x140052370
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0xc8]
mov rcx, qword [rcx]
sub rsp, 0x20
mov edx, 0xffffffff
call qword [rax]
add rsp, 0x20
test eax, eax
mov eax, 0x9ac20bc
mov ecx, 0x4923c527
cmove eax, ecx
mov rcx, qword [rbp + 0x118]
mov dword [rcx], eax
mov eax, dword [0x140066dc0]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x683c
mov ecx, 0xbb9
cmove eax, ecx
cmp dword [0x140066dc4], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x3c]
jmp 0x140052370
cmp eax, 0x45de
jle 0x1400526e8
cmp eax, 0x5067
jle 0x140052ac6
cmp eax, 0x5068
je 0x1400534ff
cmp eax, 0x5494
je 0x140052330
cmp eax, 0x5662
jne 0x140052370
mov rax, qword [rbp + 0xd8]
mov dword [rax], 0
mov rax, qword [rbp + 0xb8]
mov dword [rax], 1
mov rax, qword [rbp + 0x118]
mov dword [rax], 0xaf13d761
mov eax, dword [0x140066e40]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2646
mov ecx, 0x4c94
cmove eax, ecx
cmp dword [0x140066e44], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x64]
jmp 0x140052370
cmp eax, 0x3028
jle 0x140052742
cmp eax, 0x34c0
jle 0x140052b2e
cmp eax, 0x34c1
je 0x140053449
cmp eax, 0x3711
je 0x140052eea
cmp eax, 0x3738
jne 0x140052370
cmp dword [0x140066e78], 0xa
mov eax, dword [0x140066e7c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
test r13b, r13b
jne 0x140052582
xor dword [rbp + 0x6c], 0x5497
xor dword [rbp + 0x70], 0x5497
xor dword [rbp + 0xa4], 0x5497
test al, al
mov eax, 0x434b
mov ecx, 0x20c0
cmovne eax, ecx
xor eax, dword [rbp + 0x68]
mov r13b, 1
jmp 0x140052370
cmp eax, 0x72db
jle 0x140052b75
cmp eax, 0x72dc
je 0x14005334b
cmp eax, 0x7987
je 0x1400534ad
cmp eax, 0x7b6d
jne 0x140052370
mov eax, dword [rbp + 0xb0]
cmp byte [rbp - 0x20], 0
je 0x1400533a1
mov cl, 1
mov qword [rbp - 0x20], rcx
cmp eax, 0xd2d296d
jg 0x14005332a
cmp eax, 0xfd814eea
jg 0x140053433
cmp eax, 0xaf13d761
je 0x140052547
cmp eax, 0xea5177c5
jne 0x1400534ff
cmp dword [0x140066e6c], 0xa
mov eax, dword [0x140066e68]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x50], 0
jne 0x14005263f
xor dword [rbp + 0x5c], 0xbb5
xor dword [rbp + 0x9c], 0xbb5
test al, al
mov eax, 0x726c
mov ecx, 0x40eb
cmovne eax, ecx
xor eax, dword [rbp + 0x58]
mov cl, 1
mov qword [rbp - 0x50], rcx
jmp 0x140052370
cmp eax, 0xaba
jg 0x140052c00
cmp eax, 0x363
je 0x140052f34
cmp eax, 0x91b
jne 0x140053551
mov rax, qword [rbp + 0x100]
mov eax, dword [rax + 8]
mov rcx, qword [rbp + 0xd0]
mov rcx, qword [rcx]
mov dword [rcx], eax
mov rax, qword [rbp + 0xd8]
mov dword [rax], 1
mov rax, qword [rbp + 0xb8]
mov dword [rax], 1
mov rax, qword [rbp + 0x118]
mov dword [rax], 0xaf13d761
mov eax, dword [0x140066e4c]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x79d9
mov ecx, 0x16d1
cmove eax, ecx
cmp dword [0x140066e48], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x5c]
jmp 0x140052370
cmp eax, 0x413e
jg 0x140052c35
cmp eax, 0x3b9c
je 0x140052d0c
cmp eax, 0x3e46
jne 0x140052370
mov rax, qword [rbp + 0xd8]
mov dword [rax], 0
mov rax, qword [rbp + 0xb8]
mov dword [rax], 1
mov rax, qword [rbp + 0x118]
mov dword [rax], 0xaf13d761
mov eax, dword [rbp + 0xa0]
mov ecx, 0x4e62
xor eax, ecx
jmp 0x140052370
cmp eax, 0x2fb3
jg 0x140052c9d
cmp eax, 0x20d4
je 0x140052d5b
cmp eax, 0x2d81
jne 0x140052370
cmp dword [0x140066e04], 0xa
mov eax, dword [0x140066e00]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x58], 0
jne 0x140052798
xor dword [rbp + 0x54], 0x22f1
xor dword [rbp + 0x98], 0x22f1
test al, al
mov eax, 0x8cf
mov ecx, 0x79d9
cmovne eax, ecx
xor eax, dword [rbp + 0x50]
mov cl, 1
mov qword [rbp - 0x58], rcx
jmp 0x140052370
cmp eax, 0x5f11
je 0x140052f6c
cmp eax, 0x5f44
jne 0x140052370
mov rax, qword [rbp + 0x118]
mov dword [rax], 0x4b77f01c
mov eax, dword [0x14006899c]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0xb82
mov ecx, 0x4d5d
cmove eax, ecx
cmp dword [0x140068998], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x4c]
jmp 0x140052370
cmp eax, 0x15de
je 0x1400531e0
cmp eax, 0x1ade
jne 0x140052370
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc0], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd8], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd0], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc8], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf8], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf0], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xe8], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xe0], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x108], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x100], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb8], rax
mov rax, qword [rbp + 0xd0]
mov rcx, qword [rbp - 0x40]
mov qword [rax], rcx
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rbp - 0x30]
mov qword [rax], rcx
mov rax, qword [rbp + 0xf8]
sub rsp, 0x20
call fcn.140033970
add rsp, 0x20
mov rcx, qword [rbp + 0xf8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0x159c3ac3
call fcn.14001f820
add rsp, 0x20
mov rcx, qword [rbp + 0xf0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xe8]
sub rsp, 0x20
call fcn.140031f80
add rsp, 0x20
mov rcx, qword [rbp + 0xe8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xe0]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0xe9369340
call fcn.14001f820
add rsp, 0x20
mov rcx, qword [rbp + 0xe0]
mov qword [rcx], rax
mov rax, qword [rbp + 0x108]
mov rax, qword [rbp + 0x100]
mov rax, qword [rbp + 0x100]
movups xmmword [rax], xmm6
mov rax, qword [rbp + 0xd0]
mov rax, qword [rax]
mov dword [rax], 0
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xc8]
mov rcx, qword [rcx]
mov rdx, qword [rbp + 0x100]
sub rsp, 0x50
movups xmmword [rsp + 0x38], xmm6
mov esi, dword [rbp + 0xb4]
mov dword [rsp + 0x30], esi
mov rsi, qword [rbp - 0x38]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rdx
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call rax
add rsp, 0x50
mov rcx, qword [rbp + 0x108]
mov dword [rcx], eax
mov rax, qword [rbp + 0x108]
cmp dword [rax], 0x103
mov rax, qword [rbp + 0xc0]
sete byte [rax]
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x118], rax
mov rax, qword [rbp + 0x118]
mov dword [rax], 0x51c39cf4
cmp dword [0x140066520], 0xa
mov eax, dword [0x140066524]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 8], 0
je 0x1400533d9
test al, al
mov eax, 0x4110
mov ecx, 0x703e
cmovne eax, ecx
xor eax, dword [rbp + 0x18]
mov cl, 1
mov qword [rbp - 8], rcx
jmp 0x140052370
cmp eax, 0x45df
je 0x1400531f2
cmp eax, 0x4b40
jne 0x140052370
cmp dword [0x140066e38], 0xa
mov eax, dword [0x140066e3c]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x48], 0
jne 0x140052b11
xor dword [rbp + 0x64], 0x51f0
xor dword [rbp + 0xa0], 0x51f0
test al, al
mov eax, 0x77b6
mov ecx, 0x1f92
cmovne eax, ecx
xor eax, dword [rbp + 0x60]
mov cl, 1
mov qword [rbp - 0x48], rcx
jmp 0x140052370
cmp eax, 0x3029
je 0x140053270
cmp eax, 0x339d
jne 0x140052370
mov rax, qword [rbp + 0x100]
mov eax, dword [rax]
mov rcx, qword [rbp + 0x108]
mov dword [rcx], eax
mov rax, qword [rbp + 0x118]
mov dword [rax], 0x9ac20bc
mov eax, dword [rbp + 0x90]
mov ecx, 0x6271
xor eax, ecx
jmp 0x140052370
cmp eax, 0x6cd0
je 0x1400532be
cmp eax, 0x6e3f
jne 0x140052370
cmp dword [0x14006659c], 0xa
mov eax, dword [0x140066598]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x10], 0
jne 0x140052be3
mov ecx, 1
nop word cs:[rax + rax]
nop
movsxd rdx, dword [r15 + rcx*4 - 4]
xor dword [rbp + rdx*4 + 0x10], 0x985
movsxd rdx, dword [r15 + rcx*4]
xor dword [rbp + rdx*4 + 0x10], 0x985
add rcx, 2
cmp rcx, 0x23
jne 0x140052bc0
test al, al
mov eax, 0x2027
mov ecx, 0x928
cmovne eax, ecx
xor eax, dword [rbp + 0x1c]
mov cl, 1
mov qword [rbp - 0x10], rcx
jmp 0x140052370
cmp eax, 0xabb
je 0x1400532df
cmp eax, 0x124b
jne 0x140052370
mov rax, qword [rbp + 0x118]
mov dword [rax], 0x4b77f01c
mov eax, dword [rbp + 0x94]
mov ecx, 0x468d
xor eax, ecx
jmp 0x140052370
cmp eax, 0x413f
je 0x140052d89
cmp eax, 0x42aa
jne 0x140052370
cmp dword [0x1400665cc], 0xa
mov eax, dword [0x1400665c8]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x70], 0
jne 0x140052c80
xor dword [rbp + 0x3c], 0x16dd
xor dword [rbp + 0x8c], 0x16dd
test al, al
mov eax, 0x7ee1
mov ecx, 0x543d
cmovne eax, ecx
xor eax, dword [rbp + 0x38]
mov cl, 1
mov qword [rbp - 0x70], rcx
jmp 0x140052370
cmp eax, 0x2fb4
je 0x140052dbb
cmp eax, 0x2ff7
jne 0x140052370
mov rax, qword [rbp + 0x100]
mov eax, dword [rax]
mov rcx, qword [rbp + 0x108]
mov dword [rcx], eax
mov rax, qword [rbp + 0x118]
mov dword [rax], 0x9ac20bc
mov eax, dword [0x140068a64]
mov ecx, eax
not ecx
lea edx, [rax + rax]
add ecx, edx
add ecx, 0x159488c0
imul ecx, eax
test cl, 1
mov eax, 0x7e1b
mov ecx, 0x1912
cmove eax, ecx
cmp dword [0x140068a60], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x44]
jmp 0x140052370
mov rax, qword [rbp + 0x100]
mov eax, dword [rax + 8]
mov rcx, qword [rbp + 0xd0]
mov rcx, qword [rcx]
mov dword [rcx], eax
mov rax, qword [rbp + 0xd8]
mov dword [rax], 1
mov rax, qword [rbp + 0xb8]
mov dword [rax], 1
mov rax, qword [rbp + 0x118]
mov dword [rax], 0xaf13d761
mov eax, dword [rbp + 0x9c]
mov ecx, 0x4b5e
xor eax, ecx
jmp 0x140052370
mov eax, dword [0x140066e08]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2634
mov ecx, 0x22e4
cmove eax, ecx
cmp dword [0x140066e0c], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x78]
jmp 0x140052370
mov rax, qword [rbp + 0x108]
cmp dword [rax], 0
mov eax, 0xfd814eeb
mov ecx, 0xea5177c5
cmovns eax, ecx
mov rcx, qword [rbp + 0x118]
mov dword [rcx], eax
mov eax, dword [rbp + 0x98]
mov ecx, 0x5b28
xor eax, ecx
jmp 0x140052370
mov eax, dword [0x1400665f8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x7c83
mov ecx, 0x3dc9
cmove eax, ecx
cmp dword [0x1400665fc], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x2c]
jmp 0x140052370
mov rax, qword [rbp + 0xc0]
cmp byte [rax], 0
mov eax, 0x4b77f01c
mov ecx, 0xd2d296e
cmovne eax, ecx
mov rcx, qword [rbp + 0x118]
mov dword [rcx], eax
mov eax, dword [rbp + 0x88]
mov ecx, 0x7cb8
xor eax, ecx
jmp 0x140052370
mov rax, qword [rbp + 0x100]
mov rax, qword [rbp + 0x108]
mov rax, qword [rbp + 0xe0]
mov rax, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xf8]
mov rax, qword [rbp + 0xd8]
mov eax, dword [rax]
mov dword [rbp + 0xac], eax
cmp dword [0x140066e24], 0xa
mov eax, dword [0x140066e20]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x18], 0
jne 0x140052e7f
xor dword [rbp + 0x70], 0x6532
test al, al
mov eax, 0x17dc
mov ecx, 0x1929
cmovne eax, ecx
xor eax, dword [rbp + 0x6c]
mov cl, 1
mov qword [rbp - 0x18], rcx
jmp 0x140052370
mov rax, qword [rbp + 0xc0]
cmp byte [rax], 0
mov eax, 0x4b77f01c
mov ecx, 0xd2d296e
cmovne eax, ecx
mov rcx, qword [rbp + 0x118]
mov dword [rcx], eax
mov eax, dword [0x1400664c8]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x1e6
mov ecx, 0x35b6
cmove eax, ecx
cmp dword [0x1400664cc], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x34]
jmp 0x140052370
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0xc8]
mov rcx, qword [rcx]
sub rsp, 0x20
mov edx, 0xffffffff
call qword [rax]
add rsp, 0x20
test eax, eax
mov eax, 0x9ac20bc
mov ecx, 0x4923c527
cmove eax, ecx
mov rcx, qword [rbp + 0x118]
mov dword [rcx], eax
mov eax, dword [rbp + 0x8c]
mov ecx, 0x42e0
xor eax, ecx
jmp 0x140052370
mov al, byte [rbp + 0x116]
mov al, byte [rbp + 0x115]
cmp byte [rbp - 0x28], 0
je 0x140053409
cmp byte [rbp + 0x117], 0
mov eax, 0x4136
mov ecx, 0x4f9
cmovne eax, ecx
xor eax, dword [rbp + 0x10]
mov cl, 1
mov qword [rbp - 0x28], rcx
jmp 0x140052370
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc0], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd8], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd0], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xc8], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf8], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xf0], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xe8], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xe0], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x108], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x100], rax
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xb8], rax
mov rax, qword [rbp + 0xd0]
mov rcx, qword [rbp - 0x40]
mov qword [rax], rcx
mov rax, qword [rbp + 0xc8]
mov rcx, qword [rbp - 0x30]
mov qword [rax], rcx
mov rax, qword [rbp + 0xf8]
sub rsp, 0x20
call fcn.140033970
add rsp, 0x20
mov rcx, qword [rbp + 0xf8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0x159c3ac3
call fcn.14001f820
add rsp, 0x20
mov rcx, qword [rbp + 0xf0]
mov qword [rcx], rax
mov rax, qword [rbp + 0xe8]
sub rsp, 0x20
call fcn.140031f80
add rsp, 0x20
mov rcx, qword [rbp + 0xe8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xe0]
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rax]
sub rsp, 0x20
mov edx, 0xe9369340
call fcn.14001f820
add rsp, 0x20
mov rcx, qword [rbp + 0xe0]
mov qword [rcx], rax
mov rax, qword [rbp + 0x108]
mov rax, qword [rbp + 0x100]
mov rax, qword [rbp + 0x100]
movups xmmword [rax], xmm6
mov rax, qword [rbp + 0xd0]
mov rax, qword [rax]
mov dword [rax], 0
mov rax, qword [rbp + 0xf0]
mov rax, qword [rax]
mov rcx, qword [rbp + 0xc8]
mov rcx, qword [rcx]
mov rdx, qword [rbp + 0x100]
sub rsp, 0x50
movups xmmword [rsp + 0x38], xmm6
mov esi, dword [rbp + 0xb4]
mov dword [rsp + 0x30], esi
mov rsi, qword [rbp - 0x38]
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rdx
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call rax
add rsp, 0x50
mov rcx, qword [rbp + 0x108]
mov dword [rcx], eax
mov rax, qword [rbp + 0x108]
cmp dword [rax], 0x103
mov rax, qword [rbp + 0xc0]
sete byte [rax]
mov eax, 0x10
call fcn.1400585d0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x118], rax
mov rax, qword [rbp + 0x118]
mov dword [rax], 0x51c39cf4
mov eax, dword [rbp + 0x7c]
mov ecx, 0x4df
xor eax, ecx
jmp 0x140052370
mov eax, dword [rbp + 0x84]
mov ecx, 0x46e9
xor eax, ecx
jmp 0x140052370
mov rax, qword [rbp + 0x118]
mov eax, dword [rax]
mov dword [rbp + 0xb0], eax
cmp dword [0x140066590], 0xa
mov eax, dword [0x140066594]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp], 0
jne 0x140053253
xor ecx, ecx
nop word [rax + rax]
movsxd rdx, dword [r14 + rcx*4]
xor dword [rbp + rdx*4 + 0x10], 0x2297
movsxd rdx, dword [r14 + rcx*4 + 4]
xor dword [rbp + rdx*4 + 0x10], 0x2297
add rcx, 2
cmp rcx, 0x20
jne 0x140053230
test al, al
mov eax, 0x29a2
mov ecx, 0x3e1f
cmovne eax, ecx
xor eax, dword [rbp + 0x20]
mov cl, 1
mov qword [rbp], rcx
jmp 0x140052370
mov rax, qword [rbp + 0x108]
cmp dword [rax], 0
mov eax, 0xfd814eeb
mov ecx, 0xea5177c5
cmovns eax, ecx
mov rcx, qword [rbp + 0x118]
mov dword [rcx], eax
mov eax, dword [0x140066e30]
lea ecx, [rax + 1]
imul ecx, eax
test cl, 1
mov eax, 0x2a3e
mov ecx, 0x3f95
cmove eax, ecx
cmp dword [0x140066e34], 0xa
cmovl eax, ecx
xor eax, dword [rbp + 0x54]
jmp 0x140052370
mov rax, qword [rbp + 0x118]
mov eax, dword [rax]
mov dword [rbp + 0xb0], eax
mov eax, dword [rbp + 0x80]
mov ecx, 0xad
xor eax, ecx
jmp 0x140052370
mov rax, qword [rbp + 0x100]
mov rax, qword [rbp + 0x108]
mov rax, qword [rbp + 0xe0]
mov rax, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xf8]
mov rax, qword [rbp + 0xd8]
mov eax, dword [rax]
mov dword [rbp + 0xac], eax
mov eax, dword [rbp + 0xa4]
mov ecx, 0x7457
xor eax, ecx
jmp 0x140052370
cmp eax, 0x4b77f01b
jg 0x14005349b
cmp eax, 0xd2d296e
je 0x140052c4b
cmp eax, 0x4923c527
jne 0x1400534ff
mov eax, dword [0x140068a38]
cmp dword [0x140068a3c], 0xa
setl cl
mov edx, 1
sub edx, eax
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x68], 0
jne 0x140053384
xor dword [rbp + 0x44], 0x476
xor dword [rbp + 0x90], 0x476
test al, al
mov eax, 0x7a6d
mov ecx, 0x6607
cmovne eax, ecx
xor eax, dword [rbp + 0x40]
mov cl, 1
mov qword [rbp - 0x68], rcx
jmp 0x140052370
mov ecx, 1
nop word cs:[rax + rax]
movsxd rdx, dword [rbx + rcx*4 - 4]
xor dword [rbp + rdx*4 + 0x10], 0x2e15
cmp rcx, 0x1f
je 0x1400525d8
movsxd rdx, dword [rbx + rcx*4]
xor dword [rbp + rdx*4 + 0x10], 0x2e15
add rcx, 2
jmp 0x1400533b0
mov ecx, 1
nop
movsxd rdx, dword [r12 + rcx*4 - 4]
xor dword [rbp + rdx*4 + 0x10], 0x52f6
cmp rcx, 0x23
je 0x140052aa9
movsxd rdx, dword [r12 + rcx*4]
xor dword [rbp + rdx*4 + 0x10], 0x52f6
add rcx, 2
jmp 0x1400533e0
mov eax, 1
nop
movsxd rcx, dword [rdi + rax*4 - 4]
xor byte [rbp + rcx*4 + 0x10], 0x26
cmp rax, 0x25
je 0x140052f4a
movsxd rcx, dword [rdi + rax*4]
xor byte [rbp + rcx*4 + 0x10], 0x26
add rax, 2
jmp 0x140053410
cmp eax, 0xfd814eeb
je 0x140052adc
cmp eax, 0x9ac20bc
jne 0x1400534ff
cmp dword [0x1400689d4], 0xa
mov eax, dword [0x1400689d0]
setl cl
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x60], 0
jne 0x14005347e
xor dword [rbp + 0x4c], 0x5039
xor dword [rbp + 0x94], 0x5039
test al, al
mov eax, 0x5bbb
mov ecx, 0x16b4
cmovne eax, ecx
xor eax, dword [rbp + 0x48]
mov cl, 1
mov qword [rbp - 0x60], rcx
jmp 0x140052370
cmp eax, 0x4b77f01c
je 0x140052763
cmp eax, 0x51c39cf4
jne 0x1400534ff
cmp dword [0x1400665c0], 0xa
mov eax, dword [0x1400665c4]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x78], 0
jne 0x1400534e2
xor dword [rbp + 0x34], 0x28d2
xor dword [rbp + 0x88], 0x28d2
test al, al
mov eax, 0x2934
mov ecx, 0x546a
cmovne eax, ecx
xor eax, dword [rbp + 0x30]
mov cl, 1
mov qword [rbp - 0x78], rcx
jmp 0x140052370
cmp dword [0x140066544], 0xa
mov eax, dword [0x140066540]
setl cl
lea edx, [rax + 1]
imul edx, eax
test dl, 1
sete al
or al, cl
cmp byte [rbp - 0x80], 0
jne 0x140053534
xor dword [rbp + 0x2c], 0x20ad
xor dword [rbp + 0x84], 0x20ad
test al, al
mov eax, 0x5c2e
mov ecx, 0x6644
cmovne eax, ecx
xor eax, dword [rbp + 0x28]
mov cl, 1
mov qword [rbp - 0x80], rcx
jmp 0x140052370
cmp eax, 0x44e
jne 0x140052370
jmp 0x140053576
xor dword [rbp + 0x78], 0x52b
xor dword [rbp + 0xa8], 0x52b
jmp 0x140052358
mov eax, dword [rbp + 0xac]
movaps xmm6, xmmword [rbp + 0x120]
lea rsp, [rbp + 0x138]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret