Function at 0x18000fb7b
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x78
lea rbp, [rsp + 0x70]
mov r15, rdx
mov qword [rbp], rcx
mov eax, dword [0x180018ac8]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x180018ac4], 0xa
setl cl
test cl, al
jne 0x18000fbc3
xor cl, al
je 0x18000fc47
mov eax, 0x10
call fcn.1800151d0
sub rsp, rax
mov r12, rsp
mov eax, 0x10
call fcn.1800151d0
sub rsp, rax
mov r13, rsp
mov eax, 0x20
call fcn.1800151d0
sub rsp, rax
mov rsi, rsp
sub rsp, 0x20
mov ecx, 0x140
call fcn.18000d227
add rsp, 0x20
mov r14, rax
sub rsp, 0x20
mov ecx, 0x105
call fcn.18000d227
add rsp, 0x20
mov rdi, rax
mov eax, dword [0x180018ac8]
mov edx, dword [0x180018ac4]
lea ecx, [rax - 1]
imul ecx, eax
mov ebx, ecx
xor ebx, 0xfffffffe
and ebx, ecx
sete al
cmp edx, 0xa
setl cl
test cl, al
jne 0x18000fc68
xor cl, al
jne 0x18000fc68
sub rsp, 0x20
mov ecx, 0x140
call fcn.18000d227
mov ecx, 0x105
call fcn.18000d227
add rsp, 0x20
jmp 0x18000fbc3
mov cl, byte [r15]
test cl, cl
mov qword [rbp - 0x18], rdi
je 0x18000fcaf
xor eax, eax
mov byte [rdi + rax], cl
mov cl, byte [r15 + rax + 1]
inc rax
test cl, cl
jne 0x18000fc75
movabs r9, 0xffffffff00000000
xor r9, rax
and r9, rax
mov edi, dword [0x180018ac8]
mov edx, dword [0x180018ac4]
lea ebx, [rdi - 1]
imul ebx, edi
mov rdi, qword [rbp - 0x18]
and ebx, 1
jmp 0x18000fcb4
xor eax, eax
xor r9d, r9d
test ebx, ebx
sete bl
setne r8b
cmp edx, 0xa
setl cl
cmp edx, 9
setg dl
cmp cl, bl
jne 0x18000fcd7
or dl, r8b
xor dl, 1
jne 0x18000fcd7
jmp 0x18000fcd5
mov qword [rbp - 0x20], rsi
lea ecx, [rax - 1]
movsxd rcx, ecx
cmp byte [rdi + rcx], 0x5c
je 0x18000fd5f
inc eax
mov byte [rdi + r9], 0x5c
mov byte [rdi + rax], 0
mov ecx, dword [0x180018ac8]
mov edi, dword [0x180018ac4]
lea edx, [rcx - 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
setne r8b
sete cl
cmp edi, 9
setg bl
cmp edi, 0xa
mov rdi, qword [rbp - 0x18]
setl dl
xor dl, cl
jne 0x18000fd5f
or bl, r8b
xor bl, 1
jne 0x18000fd5f
mov byte [rdi + r9], 0x5c
mov byte [rdi + rax], 0
mov ecx, dword [0x180018ac8]
lea edx, [rcx - 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete dl
cmp dword [0x180018ac4], 0xa
setl bl
test bl, dl
jne 0x18000fd5f
xor bl, dl
je 0x18000fd2e
sub rsp, 0x20
mov ecx, 0x105
call fcn.18000d227
add rsp, 0x20
mov r15, rax
sub rsp, 0x20
mov ecx, 0x105
call fcn.18000d227
add rsp, 0x20
mov qword [rbp - 8], rax
sub rsp, 0x20
lea rdx, [0x180016605]
mov rcx, r15
mov r8, rdi
call fcn.1800086a6
add rsp, 0x20
mov eax, dword [0x180018a30]
mov edx, dword [0x180018a2c]
lea ecx, [rax - 1]
imul ecx, eax
mov esi, 0xffffffff
xor ecx, esi
or ecx, 0xfffffffe
cmp ecx, esi
setne al
sete bl
cmp edx, 9
setg cl
cmp edx, 0xa
setl dl
xor dl, bl
jne 0x18000fddf
or cl, al
xor cl, 1
je 0x18000fe2f
sub rsp, 0x20
xor ecx, ecx
mov edx, 1
mov r8d, 0x968fb126
mov r9d, 0x8b
call fcn.18000e5ac
mov rcx, r15
mov rdx, r14
call rax
add rsp, 0x20
mov edx, dword [0x180018a30]
lea ecx, [rdx - 1]
imul ecx, edx
xor ecx, esi
or ecx, 0xfffffffe
cmp ecx, esi
sete dl
cmp dword [0x180018a2c], 0xa
setl cl
test cl, dl
jne 0x18000fe59
xor cl, dl
jne 0x18000fe59
sub rsp, 0x20
xor ecx, ecx
mov edx, 1
mov r8d, 0x968fb126
mov r9d, 0x8b
call fcn.18000e5ac
mov rcx, r15
mov rdx, r14
call rax
add rsp, 0x20
jmp 0x18000fddf
cmp rax, 0xffffffffffffffff
je 0x180010a2f
mov qword [rbp - 0x28], rax
mov rcx, r13
mov r13, r14
add r13, 0x2c
mov eax, 4
mov qword [rbp - 0x70], r12
add r12, rax
mov qword [rbp - 0x68], r12
mov qword [rbp - 0x10], rcx
add rcx, rax
mov qword [rbp - 0x48], rcx
mov rcx, qword [rbp - 0x20]
add rcx, rax
mov qword [rbp - 0x60], rcx
mov rax, qword [rbp]
lea rcx, [rax + 0x311]
mov qword [rbp - 0x38], rcx
lea rcx, [rax + 0x107]
mov qword [rbp - 0x30], rcx
lea rcx, [rax + 0x20c]
mov qword [rbp - 0x58], rcx
lea rax, [rax + 2]
mov qword [rbp - 0x50], rax
mov esi, dword [0x180018ac8]
mov edi, dword [0x180018ac4]
mov r12d, 0xffffffff
lea eax, [rsi - 1]
imul eax, esi
xor eax, r12d
or eax, 0xfffffffe
cmp eax, r12d
setne al
sete cl
cmp edi, 9
setg dl
cmp edi, 0xa
setl bl
xor bl, cl
jne 0x18000ff06
or dl, al
xor dl, 1
je 0x18001096c
mov rax, qword [rbp]
cmp byte [rax], 0
jne 0x180010978
sub rsp, 0x20
mov r8d, 2
mov rcx, r13
lea rsi, [0x180016609]
mov rdx, rsi
call fcn.18000cf6f
add rsp, 0x20
mov ecx, dword [0x180018ac8]
mov ebx, dword [0x180018ac4]
lea edx, [rcx - 1]
imul edx, ecx
xor edx, r12d
or edx, 0xfffffffe
cmp edx, r12d
setne r8b
sete cl
cmp ebx, 9
setg dl
cmp ebx, 0xa
setl bl
xor bl, cl
jne 0x18000ffc1
or dl, r8b
xor dl, 1
jne 0x18000ffc1
sub rsp, 0x20
mov r8d, 2
mov rcx, r13
mov rdx, rsi
call fcn.18000cf6f
mov r8d, 2
mov rcx, r13
mov rdx, rsi
call fcn.18000cf6f
add rsp, 0x20
mov ecx, dword [0x180018ac8]
lea edx, [rcx - 1]
imul edx, ecx
xor edx, r12d
or edx, 0xfffffffe
cmp edx, r12d
sete cl
cmp dword [0x180018ac4], 0xa
setl dl
test dl, cl
jne 0x18000ffc1
xor dl, cl
je 0x18000ff6d
test eax, eax
je 0x1800102dc
sub rsp, 0x20
mov r8d, 3
mov rcx, r13
lea rdx, [0x18001660b]
call fcn.18000cf6f
add rsp, 0x20
test eax, eax
je 0x1800102dc
mov eax, dword [0x180018ac8]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x180018ac4], 0xa
setl cl
test cl, al
mov rdi, qword [rbp - 0x18]
jne 0x18001001e
xor cl, al
je 0x180010105
sub rsp, 0x20
mov rcx, r15
lea rdx, str._s_s
mov r8, rdi
mov r9, r13
call fcn.1800086a6
add rsp, 0x20
mov esi, eax
mov eax, dword [0x180018a28]
lea ecx, [rax - 1]
imul ecx, eax
xor ecx, r12d
or ecx, 0xfffffffe
cmp ecx, r12d
sete al
cmp dword [0x180018a24], 0xa
setl cl
test cl, al
jne 0x180010067
xor cl, al
je 0x1800100b6
sub rsp, 0x20
xor ecx, ecx
mov edx, 1
mov r8d, 0xad130ca5
mov r9d, 0x54
call fcn.18000e5ac
mov rcx, r15
call rax
add rsp, 0x20
mov ecx, dword [0x180018a28]
lea edx, [rcx - 1]
imul edx, ecx
xor edx, r12d
or edx, 0xfffffffe
cmp edx, r12d
sete cl
cmp dword [0x180018a24], 0xa
setl dl
test dl, cl
jne 0x1800100dd
xor dl, cl
jne 0x1800100dd
sub rsp, 0x20
xor ecx, ecx
mov edx, 1
mov r8d, 0xad130ca5
mov r9d, 0x54
call fcn.18000e5ac
mov rcx, r15
call rax
add rsp, 0x20
jmp 0x180010067
mov ecx, dword [0x180018ac8]
lea edx, [rcx - 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x180018ac4], 0xa
setl dl
test dl, cl
jne 0x180010165
xor dl, cl
jne 0x180010165
sub rsp, 0x20
mov rcx, r15
lea rdx, str._s_s
mov r8, rdi
mov r9, r13
call fcn.1800086a6
add rsp, 0x20
mov eax, dword [0x180018a28]
mov ecx, dword [0x180018a24]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete dl
setne al
cmp ecx, 0xa
setl bl
cmp ecx, 9
setg cl
cmp bl, dl
jne 0x1800108ee
or cl, al
xor cl, 1
je 0x180010945
jmp 0x1800108ee
mov rcx, rax
xor rcx, 0xffffffffffffffef
test rcx, rax
je 0x18001021e
sub rsp, 0x20
mov rcx, qword [rbp]
mov rdx, r15
call fcn.18000fb7b
add rsp, 0x20
mov eax, dword [0x180018ac8]
mov edx, dword [0x180018ac4]
lea ecx, [rax - 1]
imul ecx, eax
xor ecx, r12d
or ecx, 0xfffffffe
cmp ecx, r12d
setne al
sete bl
cmp edx, 9
setg cl
cmp edx, 0xa
setl dl
xor dl, bl
jne 0x1800102dc
or cl, al
xor cl, 1
jne 0x1800102dc
sub rsp, 0x20
mov rsi, qword [rbp]
mov rcx, rsi
mov rdx, r15
call fcn.18000fb7b
mov rcx, rsi
mov rdx, r15
call fcn.18000fb7b
add rsp, 0x20
mov eax, dword [0x180018ac8]
lea ecx, [rax - 1]
imul ecx, eax
xor ecx, r12d
or ecx, 0xfffffffe
cmp ecx, r12d
sete al
cmp dword [0x180018ac4], 0xa
setl cl
test cl, al
jne 0x1800102dc
xor cl, al
je 0x1800101c9
jmp 0x1800102dc
mov rbx, qword [rbp - 0x70]
xor eax, eax
mov byte [rbx], al
mov dword [rbx + 4], 0x53a8e2bb
mov dword [rbx + 8], 0x38c68e95
cmp byte [rbx], al
jne 0x180010264
xor eax, eax
mov ecx, dword [rbx + rax*4 + 4]
mov edx, ecx
not edx
and edx, 0xcd7bb72f
and ecx, 0x328448d0
or ecx, edx
xor ecx, 0xf5bd39ba
mov dword [rbx + rax*4 + 4], ecx
test rax, rax
mov eax, 1
je 0x18001023a
add esi, 0xfffffffc
add rsi, r15
sub rsp, 0x20
mov r8d, 4
mov rcx, rsi
mov rdx, qword [rbp - 0x68]
call fcn.18000cf6f
add rsp, 0x20
test eax, eax
jne 0x1800102dc
mov rax, qword [rbp]
cmp byte [rax], 0
jne 0x180010978
mov eax, dword [0x180018ac8]
mov ecx, dword [0x180018ac4]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete dl
setne al
cmp ecx, 0xa
setl bl
cmp ecx, 9
setg cl
cmp bl, dl
mov rdi, qword [rbp - 8]
jne 0x1800103b6
or cl, al
xor cl, 1
je 0x180010402
jmp 0x1800103b6
mov eax, dword [0x180018ac8]
mov ecx, dword [0x180018ac4]
lea edx, [rax - 1]
imul edx, eax
xor edx, r12d
or edx, 0xfffffffe
cmp edx, r12d
sete dl
setne al
cmp ecx, 0xa
setl bl
cmp ecx, 9
setg cl
cmp bl, dl
mov rbx, qword [rbp - 0x28]
jne 0x180010318
or cl, al
xor cl, 1
je 0x18001037c
sub rsp, 0x20
xor ecx, ecx
mov edx, 1
mov r8d, 0xfbc27bb5
mov r9d, 0x8d
call fcn.18000e5ac
mov rcx, rbx
mov rdx, r14
call rax
add rsp, 0x20
mov esi, dword [0x180018ac8]
mov edi, dword [0x180018ac4]
lea ebx, [rsi - 1]
imul ebx, esi
mov ecx, ebx
xor ecx, 0xfffffffe
test ecx, ebx
sete bl
setne r8b
cmp edi, 0xa
setl dl
cmp edi, 9
setg cl
cmp dl, bl
mov rbx, qword [rbp - 0x28]
jne 0x1800103a9
or cl, r8b
xor cl, 1
jne 0x1800103a9
sub rsp, 0x20
xor ecx, ecx
mov edx, 1
mov r8d, 0xfbc27bb5
mov r9d, 0x8d
call fcn.18000e5ac
mov rcx, rbx
mov rdx, r14
call rax
add rsp, 0x20
jmp 0x180010318
test eax, eax
jne 0x18000fed6
jmp 0x180010978
mov byte [rdi], 0
sub rsp, 0x20
mov rcx, r15
mov rdx, rdi
call fcn.18000610c
add rsp, 0x20
mov eax, dword [0x180018ac8]
mov ecx, dword [0x180018ac4]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete dl
setne al
cmp ecx, 0xa
setl bl
cmp ecx, 9
setg cl
cmp bl, dl
jne 0x18001041a
or cl, al
xor cl, 1
jne 0x18001041a
mov byte [rdi], 0
sub rsp, 0x20
mov rcx, r15
mov rdx, rdi
call fcn.18000610c
add rsp, 0x20
jmp 0x1800103b6
cmp byte [rdi], 0
je 0x180010802
xor esi, esi
inc esi
cmp byte [rdi + rsi], 0
jne 0x180010425
xor edi, edi
test esi, esi
je 0x180010804
cmp esi, 0xa
jb 0x180010804
mov rax, qword [rbp - 0x10]
mov byte [rax], 0
mov eax, dword [0x180018968]
mov ecx, dword [0x180018964]
lea edx, [rax - 1]
imul edx, eax
xor edx, r12d
or edx, 0xfffffffe
cmp edx, r12d
sete dl
setne al
cmp ecx, 0xa
setl bl
cmp ecx, 9
setg cl
cmp bl, dl
jne 0x180010483
or cl, al
xor cl, 1
je 0x18001096e
lea eax, [rsi - 0xa]
add rax, qword [rbp - 8]
mov qword [rbp - 0x40], rax
mov rdi, qword [rbp - 0x10]
mov dword [rdi + 4], 0x1cc8b050
mov dword [rdi + 8], 0x1694bd5e
mov dword [rdi + 0xc], 0x73babd4b
cmp byte [rdi], 0
jne 0x1800104d7
mov eax, 1
xor ecx, ecx
mov edx, dword [rdi + rax*4]
mov ebx, edx
not ebx
and ebx, 0x73bad833
and edx, 0x8c4527cc
or edx, ebx
mov dword [rdi + rax*4], edx
inc rcx
inc rax
cmp rax, 4
jne 0x1800104b3
sub rsp, 0x20
mov r8d, 0xa
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x48]
call fcn.18000cf6f
add rsp, 0x20
mov ecx, dword [0x180018ac8]
mov edx, dword [0x180018ac4]
lea ebx, [rcx - 1]
imul ebx, ecx
xor ebx, r12d
or ebx, 0xfffffffe
cmp ebx, r12d
sete r8b
setne cl
cmp edx, 0xa
setl bl
cmp edx, 9
setg dl
cmp bl, r8b
jne 0x180010603
or dl, cl
xor dl, 1
jne 0x180010603
mov rax, qword [rbp - 0x10]
mov byte [rax], 0
mov eax, dword [0x180018968]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x180018964], 0xa
setl cl
test cl, al
jne 0x180010567
xor cl, al
je 0x180010970
mov rdi, qword [rbp - 0x10]
mov dword [rdi + 4], 0x1cc8b050
mov dword [rdi + 8], 0x1694bd5e
mov dword [rdi + 0xc], 0x73babd4b
cmp byte [rdi], 0
jne 0x1800105b0
mov eax, 1
xor ecx, ecx
mov edx, dword [rdi + rax*4]
mov ebx, edx
not ebx
and ebx, 0x73bad833
and edx, 0x8c4527cc
or edx, ebx
mov dword [rdi + rax*4], edx
inc rcx
inc rax
cmp rax, 4
jne 0x18001058c
sub rsp, 0x20
mov r8d, 0xa
mov rcx, qword [rbp - 0x40]
mov rdx, qword [rbp - 0x48]
call fcn.18000cf6f
add rsp, 0x20
mov byte [rdi], 0
mov eax, dword [0x180018968]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete al
cmp dword [0x180018964], 0xa
setl cl
test cl, al
jne 0x18001048e
xor cl, al
jne 0x18001048e
jmp 0x18001096e
test eax, eax
mov rbx, qword [rbp - 8]
mov edi, 0
je 0x18001075c
cmp esi, 0xc
jb 0x180010804
mov rax, qword [rbp - 0x20]
mov byte [rax], 0
mov eax, dword [0x180018960]
lea ecx, [rax - 1]
imul ecx, eax
xor ecx, r12d
or ecx, 0xfffffffe
cmp ecx, r12d
sete al
cmp dword [0x18001895c], 0xa
setl cl
test cl, al
jne 0x180010652
xor cl, al
je 0x180010976
mov rdi, qword [rbp - 0x20]
mov dword [rdi + 4], 0x1fbf992f
mov dword [rdi + 8], 0xab5932a
mov dword [rdi + 0xc], 0xabf9968
mov dword [rdi + 0x10], 0x6fc7fc46
cmp byte [rdi], 0
jne 0x1800106d2
mov eax, dword [0x180018a88]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
cmp dword [0x180018a84], 0xa
setl al
mov edx, eax
and dl, cl
xor al, cl
or al, dl
xor ecx, ecx
mov edx, dword [rdi + rcx*4 + 4]
test al, al
je 0x180010974
mov ebx, edx
not ebx
and ebx, 0x7b68f7f0
and edx, 0x8497080f
or edx, ebx
xor edx, 0x14af0bb6
mov dword [rdi + rcx*4 + 4], edx
inc rcx
cmp rcx, 4
jne 0x1800106a1
lea ecx, [rsi - 0xc]
mov rdi, qword [rbp - 8]
add rcx, rdi
sub rsp, 0x20
mov r8d, 0xc
mov rdx, qword [rbp - 0x60]
call fcn.18000cf6f
add rsp, 0x20
test eax, eax
jne 0x180010802
sub rsp, 0x20
mov rcx, rdi
call fcn.18000f8d6
add rsp, 0x20
test al, al
je 0x180010802
mov rax, qword [rbp]
cmp byte [rax + 1], 0
jne 0x180010802
mov eax, dword [0x180018ac8]
lea ecx, [rax - 1]
imul ecx, eax
xor ecx, r12d
or ecx, 0xfffffffe
cmp ecx, r12d
sete al
cmp dword [0x180018ac4], 0xa
setl cl
inc esi
test cl, al
mov dl, 1
jne 0x18001084b
xor cl, al
je 0x1800108b9
jmp 0x18001084b
sub rsp, 0x20
mov rcx, rbx
call fcn.18000f8d6
add rsp, 0x20
mov ecx, dword [0x180018ac8]
lea edx, [rcx - 1]
imul edx, ecx
mov ecx, edx
xor ecx, 0xfffffffe
test ecx, edx
sete cl
cmp dword [0x180018ac4], 0xa
setl dl
test dl, cl
jne 0x1800107c3
xor dl, cl
jne 0x1800107c3
sub rsp, 0x20
mov rcx, rbx
call fcn.18000f8d6
mov rcx, rbx
call fcn.18000f8d6
add rsp, 0x20
mov ecx, dword [0x180018ac8]
lea edx, [rcx - 1]
imul edx, ecx
xor edx, r12d
or edx, 0xfffffffe
cmp edx, r12d
jmp 0x18001077f
test al, al
mov edi, 0
je 0x180010804
mov rax, qword [rbp]
mov byte [rax], 1
inc esi
sub rsp, 0x20
mov rdi, qword [rbp - 0x58]
mov rcx, rdi
mov rdx, rbx
mov r8d, esi
call fcn.18000ce55
mov rcx, rdi
mov rdx, qword [rbp - 0x50]
call fcn.18000fa33
add rsp, 0x20
mov edi, 4
jmp 0x180010804
xor edi, edi
mov eax, dword [0x180018ac8]
mov edx, dword [0x180018ac4]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
setne al
sete bl
cmp edx, 9
setg cl
cmp edx, 0xa
setl dl
xor dl, bl
jne 0x18001083e
or cl, al
xor cl, 1
je 0x180010972
test edi, edi
je 0x1800102dc
jmp 0x180010978
mov rax, qword [rbp]
mov byte [rax + 1], dl
sub rsp, 0x20
mov rbx, qword [rbp - 0x38]
mov rcx, rbx
mov rdx, rdi
mov r8d, esi
call fcn.18000ce55
mov rcx, rbx
mov rdx, qword [rbp - 0x30]
call fcn.18000fa33
add rsp, 0x20
mov eax, dword [0x180018ac8]
mov edx, dword [0x180018ac4]
lea ecx, [rax - 1]
imul ecx, eax
xor ecx, r12d
or ecx, 0xfffffffe
cmp ecx, r12d
setne al
sete bl
cmp edx, 9
setg cl
cmp edx, 0xa
setl dl
xor dl, bl
jne 0x180010802
or cl, al
mov al, 1
xor cl, al
jne 0x180010802
mov rax, qword [rbp]
mov byte [rax + 1], 1
sub rsp, 0x20
mov rbx, qword [rbp - 0x38]
mov rcx, rbx
mov rdx, rdi
mov r8d, esi
call fcn.18000ce55
mov rcx, rbx
mov rdx, qword [rbp - 0x30]
call fcn.18000fa33
mov dl, 1
add rsp, 0x20
jmp 0x18001084b
sub rsp, 0x20
xor ecx, ecx
mov edx, 1
mov r8d, 0xad130ca5
mov r9d, 0x54
call fcn.18000e5ac
mov rcx, r15
call rax
add rsp, 0x20
mov eax, dword [0x180018a28]
lea ecx, [rax - 1]
imul ecx, eax
xor ecx, r12d
or ecx, 0xfffffffe
cmp ecx, r12d
sete al
cmp dword [0x180018a24], 0xa
setl cl
test cl, al
jne 0x18001001e
xor cl, al
jne 0x18001001e
sub rsp, 0x20
xor ecx, ecx
mov edx, 1
mov r8d, 0xad130ca5
mov r9d, 0x54
call fcn.18000e5ac
mov rcx, r15
call rax
add rsp, 0x20
jmp 0x1800108ee
jmp 0x18001096c
jmp 0x18001096e
jmp 0x180010970
jmp 0x180010972
jmp 0x180010974
jmp 0x180010976
mov eax, dword [0x180018a98]
mov ecx, dword [0x180018a94]
lea edx, [rax - 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete dl
setne al
cmp ecx, 0xa
setl bl
cmp ecx, 9
setg cl
cmp bl, dl
mov rdi, qword [rbp - 0x18]
mov rsi, qword [rbp - 0x28]
jne 0x1800109b6
or cl, al
xor cl, 1
je 0x180010a08
sub rsp, 0x20
xor ecx, ecx
mov edx, 1
mov r8d, 0x34c730ad
mov r9d, 0x8f
call fcn.18000e5ac
mov rcx, rsi
call rax
add rsp, 0x20
mov eax, dword [0x180018a98]
lea ecx, [rax - 1]
imul ecx, eax
mov eax, 0xffffffff
xor ecx, eax
or ecx, 0xfffffffe
cmp ecx, eax
sete al
cmp dword [0x180018a94], 0xa
setl cl
test cl, al
jne 0x180010a2f
xor cl, al
jne 0x180010a2f
sub rsp, 0x20
xor ecx, ecx
mov edx, 1
mov r8d, 0x34c730ad
mov r9d, 0x8f
call fcn.18000e5ac
mov rcx, rsi
call rax
add rsp, 0x20
jmp 0x1800109b6
sub rsp, 0x20
mov rcx, r15
call fcn.18000d001
mov rcx, qword [rbp - 8]
call fcn.18000d001
mov rcx, rdi
call fcn.18000d001
mov rcx, r14
call fcn.18000d001
nop
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret