Function at 0x180001060
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x28
lea rbp, [rsp + 0x20]
cmp dword [0x180020a64], 0xa
jl 0x180001092
mov eax, dword [0x180020a68]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001092
nop
jmp 0x180001090
mov eax, 0x10
call entry0
sub rsp, rax
mov r10, rsp
mov eax, 0x10
call entry0
sub rsp, rax
mov r9, rsp
cmp dword [0x180020a6c], 0xa
jl 0x1800010d2
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800010d2
nop dword [rax]
jmp 0x1800010d0
lea r8, section..data
mov r11d, 3
mov rdi, r10
mov rax, r8
jmp 0x180001102
add rax, 1
add rdi, 1
sub r11, 1
jb 0x180001186
mov cl, byte [rax]
mov byte [rdi], cl
nop word cs:[rax + rax]
mov edx, dword [0x180020a70]
mov ebx, dword [0x180020a6c]
lea esi, [rdx - 1]
imul esi, edx
and esi, 1
cmp ebx, 0xa
jl 0x180001170
test esi, esi
je 0x180001170
cmp ebx, 0xa
jl 0x180001150
lea esi, [rdx - 1]
imul esi, edx
and esi, 1
jne 0x1800012a0
nop word cs:[rax + rax]
nop dword [rax]
mov byte [rdi], cl
mov edx, dword [0x180020a70]
cmp dword [0x180020a6c], 0xa
mov byte [rdi], cl
jl 0x180001110
lea esi, [rdx - 1]
imul esi, edx
and esi, 1
jne 0x180001150
jmp 0x180001110
cmp ebx, 0xa
jl 0x1800010f0
test esi, esi
je 0x1800010f0
jmp 0x1800012b0
cmp dword [0x180020a64], 0xa
jl 0x1800012e2
mov eax, dword [0x180020a68]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800012e2
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
cmp ebx, 0xa
jl 0x1800011cc
lea ecx, [rdx - 1]
imul ecx, edx
and ecx, 1
jne 0x1800012e0
mov r9d, 3
mov rcx, r8
jmp 0x1800011e5
add rcx, 1
add rax, 1
sub r9, 1
jb 0x180001263
mov dl, byte [rcx]
mov byte [rax], dl
nop dword [rax]
mov ebx, dword [0x180020a70]
mov edi, dword [0x180020a6c]
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
cmp edi, 0xa
jl 0x180001250
test esi, esi
je 0x180001250
cmp edi, 0xa
jl 0x180001230
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
jne 0x1800012c0
nop word cs:[rax + rax]
nop dword [rax]
mov byte [rax], dl
mov ebx, dword [0x180020a70]
cmp dword [0x180020a6c], 0xa
mov byte [rax], dl
jl 0x1800011f0
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
jne 0x180001230
jmp 0x1800011f0
cmp edi, 0xa
jl 0x1800011d7
test esi, esi
je 0x1800011d7
jmp 0x1800012d0
mov eax, 0x10
call entry0
sub rsp, rax
mov r10, rsp
mov eax, 0x10
call entry0
sub rsp, rax
mov r9, rsp
cmp edi, 0xa
jl 0x1800010d9
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
je 0x1800010d9
jmp 0x1800010d0
jmp 0x1800012a0
jmp 0x1800012b0
jmp 0x1800012c0
jmp 0x1800012d0
jmp 0x1800012e0
mov r11d, dword [r10]
test r11, r11
je 0x1800013ff
xor edi, edi
cmp r11d, 0x10
jb 0x1800013d1
lea rax, [r11 - 1]
cmp rax, 0x400
jae 0x1800013d1
mov edi, r11d
and edi, 0xfffffff0
lea rcx, [rdi - 0x10]
mov rax, rcx
shr rax, 4
add rax, 1
mov r8d, eax
and r8d, 1
test rcx, rcx
je 0x180001398
mov rcx, r8
sub rcx, rax
xor esi, esi
lea r10, section..data
movaps xmm0, xmmword [str._f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f]
mov eax, esi
and eax, 0x3e0
movups xmm1, xmmword [rax + r10 + 4]
movups xmm2, xmmword [rsi + r10 + 0x404]
xorps xmm2, xmm1
movups xmm1, xmmword [rsi + r10 + 0x414]
xorps xmm2, xmm0
movups xmmword [rsi + r10 + 0x404], xmm2
lea eax, [rsi + 0x10]
and eax, 0x3f0
movups xmm2, xmmword [rax + r10 + 4]
xorps xmm1, xmm0
xorps xmm1, xmm2
movups xmmword [rsi + r10 + 0x414], xmm1
add rsi, 0x20
add rcx, 2
jne 0x180001341
jmp 0x18000139a
xor esi, esi
test r8, r8
je 0x1800013cc
mov eax, esi
and eax, 0x3f0
lea rcx, section..data
movups xmm0, xmmword [rax + rcx + 4]
movups xmm1, xmmword [rsi + rcx + 0x404]
xorps xmm1, xmm0
xorps xmm1, xmmword [str._f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f]
movups xmmword [rsi + rcx + 0x404], xmm1
cmp rdi, r11
je 0x1800013ff
lea rax, section..data
mov ecx, edi
and ecx, 0x3ff
movzx ecx, byte [rcx + rax + 4]
xor cl, byte [rdi + rax + 0x404]
xor cl, 0xc
mov byte [rdi + rax + 0x404], cl
add rdi, 1
cmp rdi, r11
jb 0x1800013d8
cmp ebx, 0xa
jl 0x180001412
lea eax, [rdx - 1]
imul eax, edx
and eax, 1
je 0x180001412
nop
jmp 0x180001410
lea r15, section..data
lea r8, [r11 + r15]
add r8, 0x404
lea r10, [r11 + r15]
add r10, 0x404
mov r14d, 3
mov rax, r9
mov rdx, r10
jmp 0x18000144b
add rdx, 1
add rax, 1
sub r14, 1
jb 0x1800014be
mov cl, byte [rdx]
mov byte [rax], cl
mov ebx, dword [0x180020a70]
mov esi, dword [0x180020a6c]
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
cmp esi, 0xa
jl 0x1800014b0
test edi, edi
je 0x1800014b0
cmp esi, 0xa
jl 0x180001490
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
jne 0x180001590
nop word cs:[rax + rax]
nop dword [rax + rax]
mov byte [rax], cl
mov esi, dword [0x180020a70]
cmp dword [0x180020a6c], 0xa
mov byte [rax], cl
jl 0x18000144f
lea edi, [rsi - 1]
imul edi, esi
and edi, 1
jne 0x180001490
jmp 0x18000144f
cmp esi, 0xa
jl 0x18000143d
test edi, edi
je 0x18000143d
jmp 0x180001592
cmp dword [0x180020a64], 0xa
jl 0x18000159a
mov eax, dword [0x180020a68]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x18000159a
cmp esi, 0xa
jl 0x1800014f4
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
jne 0x180001598
mov r14d, 3
mov rax, r9
mov rdx, r8
jmp 0x180001510
add rdx, 1
add rax, 1
sub r14, 1
jb 0x18000156d
mov cl, byte [rdx]
mov byte [rax], cl
mov ebx, dword [0x180020a70]
mov esi, dword [0x180020a6c]
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
cmp esi, 0xa
jl 0x180001562
test edi, edi
je 0x180001562
cmp esi, 0xa
jl 0x180001542
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
jne 0x180001594
mov byte [rax], cl
mov esi, dword [0x180020a70]
cmp dword [0x180020a6c], 0xa
mov byte [rax], cl
jl 0x180001514
lea edi, [rsi - 1]
imul edi, esi
and edi, 1
jne 0x180001542
jmp 0x180001514
cmp esi, 0xa
jl 0x180001502
test edi, edi
je 0x180001502
jmp 0x180001596
cmp esi, 0xa
jl 0x18000142f
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
je 0x18000142f
jmp 0x180001410
jmp 0x180001590
jmp 0x180001592
jmp 0x180001594
jmp 0x180001596
jmp 0x180001598
lea rax, [r10 + 4]
mov qword [rbp], rax
mov ebx, dword [r9]
test rbx, rbx
je 0x1800016ee
xor eax, eax
cmp ebx, 0x20
jb 0x1800016c9
lea rcx, [rbx - 1]
cmp rcx, 0x400
jae 0x1800016c9
lea rax, [rbx + r15]
add rax, 4
cmp qword [rbp], rax
jae 0x1800015f3
lea rax, [r10 + rbx]
add rax, 4
lea rcx, str.fOhmsDQiMOjtXImwIDRTVvvyajpEBsYEbwuOrWwumREKXYSFRnHnuMMfOWvPsOQLsTaMstbBgqMFLfanuVajbCMgMMOKWlyASfzLvdmnYKXSmAIBUBeJmCptFmCpWvzAUCLMypnABpoiSjvxeZTSXgyXlxpFwJYeeBuwuBWdQrMqSpsIXcmnBnRjHqUiZdcqlOZRdSFSwXFfCHLLfRTAQgCkHgazeFzeSrSdmxOhPeyRhIPsXumMCbTTmDjhJgGcGLHOKLwxxKOpRzxDAIjdatFSCoOkLatDBrUDIHKdmDORMpgifzUfsnKDzJwoaQJSHUugntQcDsdoXYrkicpcluEkgkIXtJjqpdpEGKaHjGDbAAKztxPeJFUIneSrfaYhzvejRCgAvscXveVfgKwtrWILsXgdUMMsaUdetYFxvtdUEXkVXkOHgyjqHuYqvyrFLpuBmJxfXWcqYDwzjIcHbcLJARKmpXGYqTAmsBnQAHkgsZzOqqVEVBIsCDAAGeCHfklXEAiLPDfMgWUrzKRmjzxEcTrSXtilgqGwQMvoLEGIxmjiGmDTFhFXboyWkbCvhfkZMZseVBArEuCtRQnmyQMKkSDBTrVSdSlUIjSiHcPOkDJXtFrKzZCYywfSqOaRDJnwPrthymSvWaWDpMcCpppbzrRJuvJWBMOakjzBDEsRoFhlnOAgCYQAAKtpuytcYwaUcbrdtyudrYPHKCInSxZpfgJZeUeMIFexrsElAGpFdMurLumSHMtaYACbhfTxdzuFgnDPRkmeSPFDHypLydabCMdPmQuqSmIKRBgPQlMcGdguzsPrMJCCYBhDaPVOUSBisbJbkhiflKJEXbwfsHMZDabnYaKXLLrufpqdynHsVyjLZQpVIzvBTIRkhaKrjJqsTbDlmpmWWMahkYoKWbvIGWyPbbsHlvCYWzHeqSlZZEkwWfeYWdKfpfIwAWktazWKZKPCpUmhLhRyKpojqHtRZraBakuMWsGemLSKVQqhnnDuOWMQpaAFDLubqzf
cmp rax, rcx
jbe 0x1800015f3
xor eax, eax
jmp 0x1800016c9
mov eax, ebx
and eax, 0xffffffe0
lea rdx, [rax - 0x20]
mov rcx, rdx
shr rcx, 5
add rcx, 1
mov r8d, ecx
and r8d, 1
test rdx, rdx
je 0x18000168d
lea rdi, [r11 + r15]
add rdi, 0x438
mov rdx, r8
sub rdx, rcx
xor esi, esi
mov ecx, esi
and ecx, 0x3c0
movups xmm0, xmmword [rcx + r15 + 4]
movups xmm1, xmmword [rcx + r15 + 0x14]
movups xmm2, xmmword [rdi + rsi - 0x30]
xorps xmm2, xmm0
movups xmm0, xmmword [rdi + rsi - 0x20]
xorps xmm0, xmm1
movups xmm1, xmmword [rdi + rsi - 0x10]
movups xmm3, xmmword [rdi + rsi]
movups xmmword [rdi + rsi - 0x30], xmm2
movups xmmword [rdi + rsi - 0x20], xmm0
lea ecx, [rsi + 0x20]
and ecx, 0x3e0
movups xmm0, xmmword [rcx + r15 + 4]
xorps xmm0, xmm1
movups xmm1, xmmword [rcx + r15 + 0x14]
xorps xmm1, xmm3
movups xmmword [rdi + rsi - 0x10], xmm0
movups xmmword [rdi + rsi], xmm1
add rsi, 0x40
add rdx, 2
jne 0x180001626
jmp 0x18000168f
xor esi, esi
test r8, r8
je 0x1800016c4
mov ecx, esi
and ecx, 0x3e0
movups xmm0, xmmword [rcx + r15 + 4]
movups xmm1, xmmword [rcx + r15 + 0x14]
mov rcx, qword [rbp]
movups xmm2, xmmword [rcx + rsi]
xorps xmm2, xmm0
movups xmm0, xmmword [rcx + rsi + 0x10]
xorps xmm0, xmm1
movups xmmword [rcx + rsi], xmm2
movups xmmword [rcx + rsi + 0x10], xmm0
cmp rax, rbx
je 0x1800016ee
lea rcx, [r11 + r15]
add rcx, 0x408
mov edx, eax
and edx, 0x3ff
movzx edx, byte [rdx + r15 + 4]
xor byte [rcx + rax], dl
add rax, 1
cmp rax, rbx
jb 0x1800016d4
movsxd rax, dword [0x180004440]
mov ecx, dword [0x180020a74]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete dl
cmp dword [0x180020a78], 0xa
setl cl
or cl, dl
mov rdx, qword [rbp]
cmp byte [rdx], 0
je 0x180001732
test cl, cl
je 0x180001730
mov rsi, qword [rbp]
cmp byte [rsi + 1], 0
lea rsi, [rsi + 1]
jne 0x180001724
jmp 0x18000173e
jmp 0x180001730
mov rsi, qword [rbp]
test cl, cl
je 0x18000187a
cmp byte [rsi + 1], 0
mov rcx, rsi
je 0x180001754
mov rcx, rsi
cmp byte [rcx + 2], 0
lea rcx, [rcx + 1]
jne 0x18000174a
cmp byte [rcx + 2], 0
lea r14, [rcx + 2]
mov qword [rbp - 0x10], r14
je 0x180001771
mov r14, qword [rbp - 0x10]
cmp byte [r14 + 1], 0
lea r14, [r14 + 1]
jne 0x180001766
cmp byte [r14 + 1], 0
mov rcx, r14
je 0x180001788
mov rcx, r14
cmp byte [rcx + 2], 0
lea rcx, [rcx + 1]
jne 0x18000177e
cmp byte [rcx + 2], 0
lea r12, [rcx + 2]
mov rdi, r12
je 0x1800017a2
mov rdi, r12
cmp byte [rdi + 1], 0
lea rdi, [rdi + 1]
jne 0x180001798
add rax, r15
add rax, 0x404
mov qword [rbp - 8], rax
add rsi, 1
lea r13, [rdi + 1]
cmp byte [rdi + 1], 0
je 0x1800017c7
cmp byte [rdi + 2], 0
lea rdi, [rdi + 1]
jne 0x1800017bd
add rdi, 2
sub rsp, 0x20
mov rcx, rsi
call fcn.180002070
mov rcx, rax
mov rdx, qword [rbp - 0x10]
call fcn.180001f40
mov rcx, r13
call rax
mov rcx, rax
mov rdx, r12
call fcn.180001f40
sub rsp, 0x10
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, rdi
mov r8, rdi
call rax
add rsp, 0x10
mov rcx, rsi
call fcn.180002070
mov rcx, rax
mov rdx, qword [rbp]
call fcn.180001f40
add rsp, 0x20
mov rcx, qword [rbp - 8]
mov edx, dword [rcx + 0x50]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call rax
add rsp, 0x20
mov qword [rbp], rax
mov ecx, dword [0x180020a68]
mov r13d, dword [0x180020a64]
lea edi, [rcx - 1]
imul edi, ecx
cmp r13d, 0xa
jl 0x18000187c
mov eax, edi
and eax, 1
je 0x18000187c
jmp 0x180001878
jmp 0x18000187a
test dil, 1
sete dl
cmp r13d, 0xa
setl al
or al, dl
cmp al, 1
jne 0x180001b72
add r14, 1
mov rdx, qword [rbp - 8]
lea r8, [rdx + 0x108]
xor r9d, r9d
mov rdx, qword [rbp - 8]
movzx edx, word [rdx + 6]
cmp r9, rdx
jae 0x180001b86
lea rax, [r9 + r9*4]
lea r10, [r8 + rax*8]
add r10, 0xc
mov edi, dword [0x180020a70]
mov r12d, dword [0x180020a6c]
cmp r12d, 0xa
jl 0x1800018e5
lea eax, [rdi - 1]
imul eax, edi
and eax, 1
jne 0x180001b7c
cmp r12d, 0xa
jl 0x1800018fa
lea eax, [rdi - 1]
imul eax, edi
and eax, 1
jne 0x180001b7a
mov r11d, dword [r10 + 4]
test r11, r11
je 0x18000199e
mov edx, dword [r10]
add rdx, qword [rbp]
mov eax, dword [r10 + 8]
lea rcx, [rax + r15]
add rcx, 0x404
jmp 0x180001930
add r11, 0xffffffffffffffff
add rcx, 1
add rdx, 1
test r11, r11
je 0x18000199e
mov al, byte [rcx]
mov byte [rdx], al
mov edi, dword [0x180020a70]
mov r12d, dword [0x180020a6c]
lea eax, [rdi - 1]
imul eax, edi
and eax, 1
cmp r12d, 0xa
jl 0x18000198f
test eax, eax
je 0x18000198f
cmp r12d, 0xa
jl 0x180001969
lea eax, [rdi - 1]
imul eax, edi
and eax, 1
jne 0x180001b74
movzx eax, byte [rcx]
mov byte [rdx], al
mov eax, dword [0x180020a70]
cmp dword [0x180020a6c], 0xa
movzx ebx, byte [rcx]
mov byte [rdx], bl
jl 0x180001934
lea edi, [rax - 1]
imul edi, eax
and edi, 1
jne 0x180001969
jmp 0x180001934
cmp r12d, 0xa
jl 0x18000191f
test eax, eax
je 0x18000191f
jmp 0x180001b7a
mov ecx, dword [0x180020a68]
mov r13d, dword [0x180020a64]
lea eax, [rcx - 1]
imul eax, ecx
cmp r13d, 0xa
jl 0x180001b58
mov edx, eax
and edx, 1
je 0x180001b58
cmp r12d, 0xa
jl 0x1800019db
lea eax, [rdi - 1]
imul eax, edi
and eax, 1
jne 0x180001b80
mov r11d, dword [r10 + 4]
test r11, r11
je 0x180001a7f
mov eax, dword [r10 + 8]
lea rdx, [rax + r15]
add rdx, 0x404
mov ecx, dword [r10]
add rcx, qword [rbp]
jmp 0x180001a11
add r11, 0xffffffffffffffff
add rdx, 1
add rcx, 1
test r11, r11
je 0x180001a7f
mov al, byte [rdx]
mov byte [rcx], al
mov edi, dword [0x180020a70]
mov r12d, dword [0x180020a6c]
lea eax, [rdi - 1]
imul eax, edi
and eax, 1
cmp r12d, 0xa
jl 0x180001a70
test eax, eax
je 0x180001a70
cmp r12d, 0xa
jl 0x180001a4a
lea eax, [rdi - 1]
imul eax, edi
and eax, 1
jne 0x180001b76
movzx eax, byte [rdx]
mov byte [rcx], al
mov eax, dword [0x180020a70]
cmp dword [0x180020a6c], 0xa
movzx ebx, byte [rdx]
mov byte [rcx], bl
jl 0x180001a15
lea edi, [rax - 1]
imul edi, eax
and edi, 1
jne 0x180001a4a
jmp 0x180001a15
cmp r12d, 0xa
jl 0x180001a00
test eax, eax
je 0x180001a00
jmp 0x180001b7e
cmp r12d, 0xa
jl 0x180001a94
lea eax, [rdi - 1]
imul eax, edi
and eax, 1
jne 0x180001b84
mov r11d, dword [r10 + 4]
test r11, r11
je 0x180001b31
mov eax, dword [r10 + 8]
lea rdx, [rax + r15]
add rdx, 0x404
mov ecx, dword [r10]
add rcx, qword [rbp]
jmp 0x180001aca
add r11, 0xffffffffffffffff
add rdx, 1
add rcx, 1
test r11, r11
je 0x180001b31
mov al, byte [rdx]
mov byte [rcx], al
mov edi, dword [0x180020a70]
mov r12d, dword [0x180020a6c]
lea eax, [rdi - 1]
imul eax, edi
and eax, 1
cmp r12d, 0xa
jl 0x180001b25
test eax, eax
je 0x180001b25
cmp r12d, 0xa
jl 0x180001aff
lea eax, [rdi - 1]
imul eax, edi
and eax, 1
jne 0x180001b78
movzx eax, byte [rdx]
mov byte [rcx], al
mov eax, dword [0x180020a70]
cmp dword [0x180020a6c], 0xa
movzx ebx, byte [rdx]
mov byte [rcx], bl
jl 0x180001ace
lea edi, [rax - 1]
imul edi, eax
and edi, 1
jne 0x180001aff
jmp 0x180001ace
cmp r12d, 0xa
jl 0x180001ab9
test eax, eax
je 0x180001ab9
jmp 0x180001b82
cmp dword [0x180020a64], 0xa
jl 0x1800018d0
mov eax, dword [0x180020a68]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800019c6
jmp 0x1800018d0
add r9, 1
test al, 1
sete dl
cmp r13d, 0xa
setl al
or al, dl
cmp al, 1
je 0x1800018a6
jmp 0x180001b72
jmp 0x180001b74
jmp 0x180001b76
jmp 0x180001b78
jmp 0x180001b7a
jmp 0x180001b7c
jmp 0x180001b7e
jmp 0x180001b80
jmp 0x180001b82
jmp 0x180001b84
mov rdx, qword [rbp - 8]
mov r15d, dword [rdx + 0xb0]
mov rdx, qword [rbp]
cmp dword [rdx + r15], 0
je 0x180001d09
mov r9, qword [rbp]
add r15, r9
mov rdx, qword [rbp - 8]
mov rdx, qword [rdx + 0x30]
sub r9, rdx
movabs r8, 0x1fffffff8
mov r11, r15
test al, 1
jne 0x180001bfa
jmp 0x180001d07
mov edx, dword [r11 + 4]
lea r15, [r11 + rdx]
lea eax, [rcx - 1]
imul eax, ecx
test al, 1
sete bl
cmp r13d, 0xa
setl al
or al, bl
cmp dword [r11 + rdx], 0
mov r11, r15
je 0x180001d09
test al, 1
je 0x180001d07
mov eax, dword [r11 + 4]
lea edi, [rcx - 1]
imul edi, ecx
and edi, 1
cmp rax, 7
jbe 0x180001cef
cmp r13d, 0xa
jl 0x180001c1f
test edi, edi
jne 0x180001d03
add rax, r8
shr rax, 1
mov r10d, eax
xor r12d, r12d
cmp r10, r12
je 0x180001cef
movzx edx, word [r11 + r12*2 + 8]
mov eax, edx
shr eax, 0xc
mov edi, edx
and edi, 0xfff
cmp edx, 0xa000
jae 0x180001c6b
cmp eax, 3
jne 0x180001cda
cmp r13d, 0xa
jl 0x180001c9c
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x180001cc9
jmp 0x180001c9c
cmp eax, 0xa
jne 0x180001cda
mov eax, dword [r15]
mov ecx, edi
add rcx, qword [rbp]
add qword [rax + rcx], r9
mov ecx, dword [0x180020a68]
mov r13d, dword [0x180020a64]
jmp 0x180001cda
add r12, 1
cmp r13d, 0xa
jl 0x180001c2b
test edi, edi
je 0x180001c2b
jmp 0x180001d03
mov eax, dword [r15]
mov rcx, qword [rbp]
lea rax, [rcx + rax*4]
add dword [rax + rdi*4], r9d
mov ecx, dword [0x180020a68]
mov r13d, dword [0x180020a64]
cmp r13d, 0xa
jl 0x180001cda
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
je 0x180001cda
mov eax, dword [r15]
mov rcx, qword [rbp]
lea rax, [rcx + rax*4]
add dword [rax + rdi*4], r9d
jmp 0x180001c9c
lea edi, [rcx - 1]
imul edi, ecx
and edi, 1
cmp r13d, 0xa
jl 0x180001c8c
test edi, edi
je 0x180001c8c
jmp 0x180001d05
cmp r13d, 0xa
jl 0x180001bc8
test edi, edi
je 0x180001bc8
jmp 0x180001d01
jmp 0x180001d03
jmp 0x180001d05
jmp 0x180001d07
test al, 1
je 0x180001d20
cmp r13d, 0xa
jl 0x180001d22
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
je 0x180001d22
jmp 0x180001d1e
jmp 0x180001d20
mov rcx, qword [rbp]
lea rbx, [rcx + 2]
mov rax, qword [rbp - 8]
mov eax, dword [rax + 0x90]
add rax, rcx
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x18]
mov r12d, dword [rax + 0xc]
test r12, r12
je 0x180001eaf
add r12, qword [rbp]
sub rsp, 0x20
mov rcx, rsi
call fcn.180002070
mov rcx, rax
mov rdx, qword [rbp - 0x10]
call fcn.180001f40
mov rcx, r12
call rax
add rsp, 0x20
mov r13, rax
mov eax, dword [0x180020a68]
mov ecx, dword [0x180020a64]
cmp ecx, 0xa
jl 0x180001dc0
lea edx, [rax - 1]
imul edx, eax
and edx, 1
je 0x180001dc0
sub rsp, 0x20
mov rcx, rsi
call fcn.180002070
mov rcx, rax
mov rdi, qword [rbp - 0x10]
mov rdx, rdi
call fcn.180001f40
mov rcx, r12
call rax
mov rcx, rsi
call fcn.180002070
mov rcx, rax
mov rdx, rdi
jmp 0x180001d63
cmp ecx, 0xa
jl 0x180001dd4
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001ead
mov rdx, qword [rbp - 0x18]
mov r12d, dword [rdx]
mov r15d, dword [rdx + 0x10]
mov rdx, qword [rbp]
add r12, rdx
add r15, rdx
mov rdx, qword [r12]
test rdx, rdx
je 0x180001e8b
lea rax, [rbx + rdx]
test rdx, rdx
movzx edi, dx
cmovns rdi, rax
sub rsp, 0x20
mov rcx, rsi
call fcn.180002070
mov rcx, rax
mov rdx, r14
call fcn.180001f40
mov rcx, r13
mov rdx, rdi
call rax
add rsp, 0x20
mov qword [r15], rax
mov eax, dword [0x180020a68]
mov ecx, dword [0x180020a64]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x180001e70
test edx, edx
je 0x180001e70
sub rsp, 0x20
mov rcx, rsi
call fcn.180002070
mov rcx, rax
mov rdx, r14
call fcn.180001f40
mov rcx, r13
mov rdx, rdi
call rax
add rsp, 0x20
mov qword [r15], rax
jmp 0x180001e04
add r15, 8
add r12, 8
cmp ecx, 0xa
jl 0x180001de9
test edx, edx
je 0x180001de9
jmp 0x180001ead
add qword [rbp - 0x18], 0x14
cmp ecx, 0xa
jl 0x180001d3b
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001d3b
jmp 0x180001d1e
jmp 0x180001ead
mov rax, qword [rbp - 8]
mov eax, dword [rax + 0x28]
add rax, qword [rbp]
sub rsp, 0x20
call rax
add rsp, 0x20
cmp dword [0x180020a64], 0xa
jl 0x180001f20
mov eax, dword [0x180020a68]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001f20
mov rsi, qword [rbp - 8]
mov rdi, qword [rbp]
mov eax, dword [rsi + 0x28]
add rax, rdi
sub rsp, 0x20
call rax
add rsp, 0x20
mov eax, dword [rsi + 0x28]
add rax, rdi
sub rsp, 0x20
call rax
add rsp, 0x20
cmp dword [0x180020a64], 0xa
jl 0x180001f20
mov eax, dword [0x180020a68]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001ee6
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret