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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x38
lea rbp, [rsp + 0x30]
mov edx, dword [0x180021a6c]
mov eax, dword [0x180021a70]
lea ecx, [rdx - 1]
imul ecx, edx
and ecx, 1
cmp eax, 0xa
jl 0x1800011aa
test ecx, ecx
je 0x1800011aa
lea rsi, section..data
nop word [rax + rax]
mov eax, 0x10
call entry0
sub rsp, rax
mov rcx, rsp
sub rsp, 0x20
mov r8d, 4
mov rdx, rsi
call fcn.180003490
add rsp, 0x20
mov eax, 0x10
call entry0
sub rsp, rax
mov rcx, rsp
sub rsp, 0x20
mov r8d, 4
mov rdx, rsi
call fcn.180003490
add rsp, 0x20
mov edx, dword [0x180021a6c]
mov eax, dword [0x180021a70]
lea ecx, [rdx - 1]
imul ecx, edx
and ecx, 1
cmp eax, 0xa
jl 0x1800011aa
test ecx, ecx
jne 0x180001140
cmp eax, 0xa
jl 0x1800011f2
test ecx, ecx
je 0x1800011f2
mov eax, 0x10
call entry0
sub rsp, rax
mov rcx, rsp
sub rsp, 0x20
lea rdx, section..data
mov r8d, 4
call fcn.180003490
add rsp, 0x20
mov edx, dword [0x180021a6c]
mov eax, dword [0x180021a70]
lea ecx, [rdx - 1]
imul ecx, edx
and ecx, 1
cmp eax, 0xa
jl 0x1800011fb
test ecx, ecx
jne 0x180001255
mov eax, 0x10
call entry0
sub rsp, rax
mov rsi, rsp
mov eax, 0x10
call entry0
sub rsp, rax
mov r14, rsp
sub rsp, 0x20
lea r13, section..data
mov r8d, 4
mov rcx, rsi
mov rdx, r13
call fcn.180003490
add rsp, 0x20
cmp dword [0x180021a70], 0xa
jl 0x180001284
mov eax, dword [0x180021a6c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001284
mov eax, 0x10
call entry0
sub rsp, rax
mov rcx, rsp
sub rsp, 0x20
lea rdx, section..data
mov r8d, 4
call fcn.180003490
add rsp, 0x20
jmp 0x1800011fb
mov edi, dword [rsi]
test rdi, rdi
je 0x18000139a
xor eax, eax
cmp edi, 0x10
jb 0x180001370
lea rcx, [rdi - 1]
cmp rcx, 0x400
jae 0x180001370
mov eax, edi
and eax, 0xfffffff0
lea rdx, [rax - 0x10]
mov rcx, rdx
shr rcx, 4
add rcx, 1
mov ebx, ecx
and ebx, 1
test rdx, rdx
je 0x1800014c7
mov rdx, rbx
sub rdx, rcx
xor esi, esi
movaps xmm0, xmmword [str._f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f]
nop dword [rax]
mov ecx, esi
and ecx, 0x3e0
movups xmm1, xmmword [rcx + r13 + 4]
movups xmm2, xmmword [rsi + r13 + 0x404]
xorps xmm2, xmm1
movups xmm1, xmmword [rsi + r13 + 0x414]
xorps xmm2, xmm0
movups xmmword [rsi + r13 + 0x404], xmm2
lea ecx, [rsi + 0x10]
and ecx, 0x3f0
movups xmm2, xmmword [rcx + r13 + 4]
xorps xmm1, xmm0
xorps xmm1, xmm2
movups xmmword [rsi + r13 + 0x414], xmm1
add rsi, 0x20
add rdx, 2
jne 0x1800012e0
test rbx, rbx
je 0x180001366
mov ecx, esi
and ecx, 0x3f0
movups xmm0, xmmword [rcx + r13 + 4]
movups xmm1, xmmword [rsi + r13 + 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 + r13 + 0x404], xmm1
cmp rax, rdi
je 0x18000139a
nop dword [rax + rax]
mov ecx, eax
and ecx, 0x3ff
movzx ecx, byte [rcx + r13 + 4]
xor cl, byte [rax + r13 + 0x404]
xor cl, 0xc
mov byte [rax + r13 + 0x404], cl
add rax, 1
cmp rax, rdi
jb 0x180001370
mov qword [rbp - 0x18], rdi
lea rsi, [rdi + r13]
add rsi, 0x404
sub rsp, 0x20
mov r8d, 4
mov rcx, r14
mov rdx, rsi
call fcn.180003490
add rsp, 0x20
nop word cs:[rax + rax]
nop dword [rax]
mov eax, dword [0x180021a6c]
mov r10d, dword [0x180021a70]
cmp r10d, 0xa
jl 0x180001452
lea edx, [rax - 1]
imul edx, eax
and edx, 1
je 0x180001452
cmp r10d, 0xa
jl 0x180001400
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001450
nop
sub rsp, 0x20
mov r8d, 4
mov rcx, r14
mov rdx, rsi
call fcn.180003490
add rsp, 0x20
mov ebx, dword [0x180021a6c]
mov edi, dword [0x180021a70]
sub rsp, 0x20
mov r8d, 4
mov rcx, r14
mov rdx, rsi
call fcn.180003490
add rsp, 0x20
cmp edi, 0xa
jl 0x1800013d0
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
jne 0x180001400
jmp 0x1800013d0
jmp 0x180001450
mov r11, qword [rbp - 0x18]
lea rcx, [r11 + r13]
add rcx, 0x408
mov qword [rbp], rcx
mov r9d, dword [r14]
test r9, r9
je 0x1800015da
xor edx, edx
cmp r9d, 0x20
jb 0x1800015af
lea rbx, [r9 - 1]
cmp rbx, 0x400
jae 0x1800015af
lea rdx, [r11 + r13]
add rdx, 0x408
lea rbx, [r9 + r13]
add rbx, 4
cmp rdx, rbx
jae 0x1800014d7
lea rdx, [r9 + r11]
add rdx, r13
add rdx, 0x408
lea rbx, str.dYziInhyZbIOFpfLBYSdrGLftabYheAoZvjvQBdGMKzVBiWqoZfaxcPCeIYWeZvURhoqbLGvsSTrBxjrfLqisFUMzbXexbmQIebisREJbxbGeMtSXunuifWDBwVkEpTXYALRbTzXsRHMUgREmumzgqFhzGrzyVaTcfHBswiTSeZfMnezmzBKjhsMEiLhoGctglfzslgUVInGgXyKiqxJsdtWtteLLlMaSkuuGaogovniFBdgbpQFTFGVSzuTnFDvkEtSvfiuHumZWWMMQjYebxsdTCKbwmLdEruWiwJkDEASyhhUsDPGqOcBivDmwGnaqjqiTBYobMTyLLEYVTFnRSZiwmDVewwFcLbbmvVDqygztUPjCrTXsdJZiDPUtrmstsuxepIjJkgAJQHTtBWenTxkQLodwfbZLrSTuSJyoJmgHrsGLtMcEMTPjVJKAESWzJrcMwixEARrPtSLWEmgARmrZDGdaLBPusorWvcubfnErsrHIlSFroHLreOqXcJVebhXOMDKTIYSIsrDaIcmCsazJEmFAeiqdnvfQzlDQqrwoyctxhrJlutUYDlDbCfMoXDWnoMqXvqmPXbHrjkCfqjRvruLxJtHzogdtoKzlKsaAbajvhIWdEDAkAaFVPIiXoEciQUtanvXrEdyrMnSFoZPUfLjeoWGjRzuHjpubvYQrDzMhAaRXCEkusqRwgpgLgXCfTQmxVaJLztSLqYORgscdwBXWtnSvjwyTtynPPCkSYdVWpMElPzmGphRmibPBqFAzoHbYtGtighMXzWHkwZZKjvojlfFKMBZfmZROwPLpMZStmfLzADHQlIZKrLHyxskzBRfxwdKChMxKkVdwDpRPSlItsWapnHSFySCCmcLQmqYqtZVeLWnySTXwLzWyshgAYwDebpgFasZxfaUbHaXbozUnAxtlJWIvZpKVqYlHbRTPzeGeGsEBEXCqnjAGgLEJFUpPwhQOWuFtCYkhaCDwBEwpKJnlLKVqxToUcxdVWcYHeqERJwYdHRYyDt
cmp rdx, rbx
jbe 0x1800014d7
xor edx, edx
jmp 0x1800015af
xor esi, esi
test rbx, rbx
jne 0x18000133c
jmp 0x180001366
mov edx, r9d
and edx, 0xffffffe0
lea rbx, [rdx - 0x20]
mov rdi, rbx
shr rdi, 5
add rdi, 1
mov r8d, edi
and r8d, 1
test rbx, rbx
je 0x180001d72
lea rsi, [r11 + r13]
add rsi, 0x438
mov rbx, r8
sub rbx, rdi
xor ecx, ecx
nop
mov edi, ecx
and edi, 0x3c0
movups xmm0, xmmword [rdi + r13 + 4]
movups xmm1, xmmword [rdi + r13 + 0x14]
movups xmm2, xmmword [rsi + rcx - 0x30]
xorps xmm2, xmm0
movups xmm0, xmmword [rsi + rcx - 0x20]
xorps xmm0, xmm1
movups xmm1, xmmword [rsi + rcx - 0x10]
movups xmm3, xmmword [rsi + rcx]
movups xmmword [rsi + rcx - 0x30], xmm2
movups xmmword [rsi + rcx - 0x20], xmm0
lea edi, [rcx + 0x20]
and edi, 0x3e0
movups xmm0, xmmword [rdi + r13 + 4]
xorps xmm0, xmm1
movups xmm1, xmmword [rdi + r13 + 0x14]
xorps xmm1, xmm3
movups xmmword [rsi + rcx - 0x10], xmm0
movups xmmword [rsi + rcx], xmm1
add rcx, 0x40
add rbx, 2
jne 0x180001510
test r8, r8
je 0x1800015aa
mov ebx, ecx
and ebx, 0x3e0
movups xmm0, xmmword [rbx + r13 + 4]
movups xmm1, xmmword [rbx + r13 + 0x14]
mov rbx, qword [rbp]
movups xmm2, xmmword [rbx + rcx]
xorps xmm2, xmm0
movups xmm0, xmmword [rbx + rcx + 0x10]
xorps xmm0, xmm1
movups xmmword [rbx + rcx], xmm2
movups xmmword [rbx + rcx + 0x10], xmm0
cmp rdx, r9
je 0x1800015da
lea rbx, [r11 + r13]
add rbx, 0x408
nop word [rax + rax]
mov ecx, edx
and ecx, 0x3ff
movzx ecx, byte [rcx + r13 + 4]
xor byte [rbx + rdx], cl
add rdx, 1
cmp rdx, r9
jb 0x1800015c0
cmp r10d, 0xa
jl 0x180002492
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180002492
lea r15, [r11 + 0x408]
movsxd rdi, dword [0x180005440]
cmp dword [0x180021a74], 0xa
mov r14, qword [rbp]
jl 0x180001630
mov eax, dword [0x180021a78]
lea ecx, [rax - 1]
imul ecx, eax
mov r14, qword [rbp]
and ecx, 1
jne 0x180001ca0
nop word [rax + rax]
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001630
mov rsi, r14
nop dword [rax]
cmp byte [rsi], 0
lea rsi, [rsi + 1]
jne 0x180001640
mov r13, rsi
nop dword [rax]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001650
nop dword [rax + rax]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001660
mov rbx, r13
nop
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180001670
mov r12, rbx
nop dword [rax]
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180001680
sub rsp, 0x20
mov rcx, r14
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
jl 0x1800016bd
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001cb0
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x1800016ec
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001cc0
mov qword [rbp - 0x10], rdi
add r8, r9
mov r11d, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r11, r9
add r10, r9
nop word cs:[rax + rax]
nop dword [rax]
mov edx, dword [r11]
add rdx, r9
mov rdi, rsi
nop dword [rax]
movzx ecx, byte [rdi]
movzx eax, byte [rdx]
test cl, cl
je 0x180001736
add rdx, 1
add rdi, 1
cmp cl, al
je 0x180001720
cmp cl, al
je 0x180001750
add r11, 4
add r10, 2
jmp 0x180001710
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, rbx
call r9
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x18000178a
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001cd0
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x1800017b9
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001ce0
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rdx, r10
add rcx, r10
nop dword [rax]
mov edi, dword [rdx]
add rdi, r10
mov rsi, r13
nop dword [rax + rax]
movzx eax, byte [rsi]
movzx ebx, byte [rdi]
test al, al
je 0x1800017f6
add rdi, 1
add rsi, 1
cmp al, bl
je 0x1800017e0
cmp al, bl
je 0x180001810
add rdx, 4
add rcx, 2
jmp 0x1800017d0
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
sub rsp, 0x30
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r12
mov r8, r12
call r10
add rsp, 0x10
mov rcx, r14
call fcn.180003620
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x180001872
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001cf0
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x1800018a1
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d00
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov r9d, dword [r10 + rcx + 0x24]
add rdx, r10
add r9, r10
lea rcx, section..data
nop dword [rax + rax]
mov edi, dword [rdx]
add rdi, r10
xor esi, esi
nop word [rax + rax]
lea rax, [r15 + rsi]
movzx eax, byte [rcx + rax]
movzx ebx, byte [rdi + rsi]
test al, al
je 0x1800018e8
add rsi, 1
cmp al, bl
je 0x1800018d0
cmp al, bl
je 0x180001900
add rdx, 4
add r9, 2
jmp 0x1800018c0
movzx eax, word [r9]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rbp - 0x10]
mov edx, dword [rax + rcx + 0x454]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
movsxd rdi, dword [0x180005440]
cmp dword [0x180021a74], 0xa
mov rcx, qword [rbp]
jl 0x180001960
mov eax, dword [0x180021a78]
lea edx, [rax - 1]
imul edx, eax
mov rcx, qword [rbp]
and edx, 1
jne 0x180001d10
nop dword [rax]
cmp byte [rcx], 0
lea rcx, [rcx + 1]
jne 0x180001960
mov r13, rcx
nop dword [rax]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001970
mov r14, r13
nop
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001980
nop word [rax + rax]
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001990
mov rsi, r14
nop dword [rax]
cmp byte [rsi], 0
lea rsi, [rsi + 1]
jne 0x1800019a0
mov r12, rsi
nop dword [rax]
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x1800019b0
sub rsp, 0x20
mov qword [rbp - 0x10], rcx
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
jl 0x1800019ee
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d20
movsxd rax, dword [r9 + 0x3c]
mov eax, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rax + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180001a1d
mov ecx, dword [0x180021a88]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x180001d30
mov qword [rbp - 8], rdi
add r8, r9
mov edi, dword [r9 + rax + 0x20]
mov r10d, dword [r9 + rax + 0x24]
add rdi, r9
add r10, r9
nop word cs:[rax + rax]
nop
mov eax, dword [rdi]
add rax, r9
mov rdx, r13
nop dword [rax + rax]
movzx ecx, byte [rdx]
movzx ebx, byte [rax]
test cl, cl
je 0x180001a66
add rax, 1
add rdx, 1
cmp cl, bl
je 0x180001a50
cmp cl, bl
je 0x180001a80
add rdi, 4
add r10, 2
jmp 0x180001a40
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, rsi
call r9
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x180001aba
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d40
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180001ae9
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d50
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov esi, dword [r10 + rcx + 0x24]
add rdx, r10
add rsi, r10
lea r13, section..data
nop word cs:[rax + rax]
nop dword [rax]
mov edi, dword [rdx]
add rdi, r10
mov rbx, r14
nop dword [rax + rax]
movzx eax, byte [rbx]
movzx ecx, byte [rdi]
test al, al
je 0x180001b36
add rdi, 1
add rbx, 1
cmp al, cl
je 0x180001b20
cmp al, cl
je 0x180001b50
add rdx, 4
add rsi, 2
jmp 0x180001b10
movzx eax, word [rsi]
mov eax, dword [r8 + rax*4]
add r10, rax
sub rsp, 0x30
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r12
mov r8, r12
call r10
add rsp, 0x10
mov rcx, qword [rbp - 0x10]
call fcn.180003620
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x180001bb3
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d60
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180001be2
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d70
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rdx, r10
add rcx, r10
nop word cs:[rax + rax]
nop
mov edi, dword [rdx]
add rdi, r10
xor esi, esi
nop word [rax + rax]
lea rax, [r15 + rsi]
movzx eax, byte [r13 + rax]
movzx ebx, byte [rdi + rsi]
test al, al
je 0x180001c2a
add rsi, 1
cmp al, bl
je 0x180001c10
cmp al, bl
je 0x180001c40
add rdx, 4
add rcx, 2
jmp 0x180001c00
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rbp - 8]
mov edx, dword [rax + r13 + 0x454]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
cmp dword [0x180021a70], 0xa
jl 0x180001db1
mov eax, dword [0x180021a6c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800015fa
jmp 0x180001db1
jmp 0x180001ca0
jmp 0x180001cb0
jmp 0x180001cc0
jmp 0x180001cd0
jmp 0x180001ce0
jmp 0x180001cf0
jmp 0x180001d00
jmp 0x180001d10
jmp 0x180001d20
jmp 0x180001d30
jmp 0x180001d40
jmp 0x180001d50
jmp 0x180001d60
jmp 0x180001d70
xor ecx, ecx
test r8, r8
jne 0x18000157a
jmp 0x1800015aa
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rbp - 8]
mov edx, dword [rax + r13 + 0x454]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
cmp dword [0x180021a74], 0xa
jl 0x180001dcf
mov eax, dword [0x180021a78]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800023c0
movsxd rbx, dword [0x180005440]
mov rax, qword [rbp]
nop word [rax + rax]
cmp byte [rax], 0
lea rax, [rax + 1]
jne 0x180001de0
mov r14, rax
nop dword [rax]
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001df0
mov rsi, r14
nop dword [rax]
cmp byte [rsi], 0
lea rsi, [rsi + 1]
jne 0x180001e00
nop dword [rax]
cmp byte [rsi], 0
lea rsi, [rsi + 1]
jne 0x180001e10
mov rdi, rsi
nop dword [rax]
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x180001e20
mov r12, rdi
nop dword [rax]
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180001e30
sub rsp, 0x20
mov qword [rbp - 0x10], rax
mov rcx, rax
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
jl 0x180001e71
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800023d0
movsxd rax, dword [r9 + 0x3c]
mov eax, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rax + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180001ea0
mov ecx, dword [0x180021a88]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x1800023e0
mov qword [rbp - 8], rbx
add r8, r9
mov r11d, dword [r9 + rax + 0x20]
mov r10d, dword [r9 + rax + 0x24]
add r11, r9
add r10, r9
nop word [rax + rax]
mov eax, dword [r11]
add rax, r9
mov rdx, r14
nop dword [rax]
movzx ecx, byte [rdx]
movzx ebx, byte [rax]
test cl, cl
je 0x180001ee6
add rax, 1
add rdx, 1
cmp cl, bl
je 0x180001ed0
cmp cl, bl
je 0x180001ef4
add r11, 4
add r10, 2
jmp 0x180001ec0
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, rdi
call r9
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x180001f2e
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800023f0
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180001f5d
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002400
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov r9d, dword [r10 + rcx + 0x24]
add rdx, r10
add r9, r10
mov edi, dword [rdx]
add rdi, r10
mov rbx, rsi
nop dword [rax + rax]
movzx eax, byte [rbx]
movzx ecx, byte [rdi]
test al, al
je 0x180001f96
add rdi, 1
add rbx, 1
cmp al, cl
je 0x180001f80
cmp al, cl
je 0x180001fa4
add rdx, 4
add r9, 2
jmp 0x180001f70
movzx eax, word [r9]
mov eax, dword [r8 + rax*4]
add r10, rax
sub rsp, 0x30
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r12
mov r8, r12
call r10
add rsp, 0x10
mov rcx, qword [rbp - 0x10]
call fcn.180003620
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x180002008
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002410
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180002037
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002420
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rdx, r10
add rcx, r10
nop word [rax + rax]
mov edi, dword [rdx]
add rdi, r10
xor esi, esi
nop word [rax + rax]
lea rax, [r15 + rsi]
movzx eax, byte [r13 + rax]
movzx ebx, byte [rdi + rsi]
test al, al
je 0x18000207a
add rsi, 1
cmp al, bl
je 0x180002060
cmp al, bl
je 0x180002088
add rdx, 4
add rcx, 2
jmp 0x180002050
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rbp - 8]
mov edx, dword [rax + r13 + 0x454]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
cmp dword [0x180021a70], 0xa
mov r11, qword [rbp - 0x18]
jl 0x180002492
mov eax, dword [0x180021a6c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180002492
movsxd rdi, dword [0x180005440]
cmp dword [0x180021a74], 0xa
mov rbx, qword [rbp]
jl 0x180002110
mov eax, dword [0x180021a78]
lea ecx, [rax - 1]
imul ecx, eax
mov rbx, qword [rbp]
and ecx, 1
jne 0x180002430
nop word [rax + rax]
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180002110
mov rsi, rbx
nop dword [rax]
cmp byte [rsi], 0
lea rsi, [rsi + 1]
jne 0x180002120
mov r13, rsi
nop dword [rax]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180002130
nop dword [rax + rax]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180002140
mov r12, r13
nop
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180002150
mov r14, r12
nop
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180002160
sub rsp, 0x20
mov rcx, rbx
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
jl 0x18000219b
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002440
movsxd rax, dword [r9 + 0x3c]
mov eax, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rax + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x1800021ca
mov ecx, dword [0x180021a88]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x180002450
mov qword [rbp - 0x10], rbx
mov qword [rbp - 8], rdi
add r8, r9
mov edi, dword [r9 + rax + 0x20]
mov r10d, dword [r9 + rax + 0x24]
add rdi, r9
add r10, r9
nop word cs:[rax + rax]
nop
mov eax, dword [rdi]
add rax, r9
mov rdx, rsi
nop dword [rax + rax]
movzx ecx, byte [rdx]
movzx ebx, byte [rax]
test cl, cl
je 0x180002216
add rax, 1
add rdx, 1
cmp cl, bl
je 0x180002200
cmp cl, bl
je 0x180002224
add rdi, 4
add r10, 2
jmp 0x1800021f0
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r12
call r9
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x18000225e
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002460
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x18000228d
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002470
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rdx, r10
add rcx, r10
mov edi, dword [rdx]
add rdi, r10
mov rsi, r13
nop dword [rax + rax]
movzx eax, byte [rsi]
movzx ebx, byte [rdi]
test al, al
je 0x1800022c6
add rdi, 1
add rsi, 1
cmp al, bl
je 0x1800022b0
cmp al, bl
je 0x1800022d4
add rdx, 4
add rcx, 2
jmp 0x1800022a0
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
sub rsp, 0x30
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r14
mov r8, r14
call r10
add rsp, 0x10
mov rcx, qword [rbp - 0x10]
call fcn.180003620
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x180002337
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002480
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180002366
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002490
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rdx, r10
add rcx, r10
lea r13, section..data
mov edi, dword [rdx]
add rdi, r10
xor esi, esi
nop word [rax + rax]
lea rax, [r15 + rsi]
movzx eax, byte [r13 + rax]
movzx ebx, byte [rdi + rsi]
test al, al
je 0x1800023aa
add rsi, 1
cmp al, bl
je 0x180002390
cmp al, bl
je 0x180001d82
add rdx, 4
add rcx, 2
jmp 0x180002380
jmp 0x1800023c0
jmp 0x1800023d0
jmp 0x1800023e0
jmp 0x1800023f0
jmp 0x180002400
jmp 0x180002410
jmp 0x180002420
jmp 0x180002430
jmp 0x180002440
jmp 0x180002450
jmp 0x180002460
jmp 0x180002470
jmp 0x180002480
jmp 0x180002490
cmp dword [0x180021a74], 0xa
jl 0x1800024b2
mov eax, dword [0x180021a78]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800024b2
nop dword [rax]
jmp 0x1800024b0
add r11, 0x408
mov qword [rbp - 0x18], r11
movsxd rax, dword [0x180005440]
lea rsi, [rax + r13]
add rsi, 0x404
mov rdi, qword [rbp]
nop word cs:[rax + rax]
nop dword [rax]
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x1800024e0
mov r12, rdi
nop dword [rax]
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x1800024f0
mov r15, r12
nop
cmp byte [r15], 0
lea r15, [r15 + 1]
jne 0x180002500
mov r14, r15
nop dword [rax]
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180002510
mov rbx, r14
nop dword [rax]
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180002520
mov r13, rbx
nop dword [rax]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180002530
sub rsp, 0x20
mov rcx, rdi
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
jl 0x18000256c
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002b60
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x18000259b
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002b70
mov qword [rbp - 8], rdi
mov qword [rbp - 0x10], rsi
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rdi, r9
add r10, r9
nop word cs:[rax + rax]
mov esi, dword [rdi]
add rsi, r9
mov rdx, r12
nop dword [rax + rax]
movzx ecx, byte [rdx]
movzx eax, byte [rsi]
test cl, cl
je 0x1800025e6
add rsi, 1
add rdx, 1
cmp cl, al
je 0x1800025d0
cmp cl, al
je 0x180002600
add rdi, 4
add r10, 2
jmp 0x1800025c0
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, rbx
call r9
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x18000263a
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002b80
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180002669
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002b90
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov edi, dword [r10 + rcx + 0x24]
add rdx, r10
add rdi, r10
nop dword [rax]
mov esi, dword [rdx]
add rsi, r10
mov rax, r14
nop dword [rax + rax]
movzx ebx, byte [rax]
movzx ecx, byte [rsi]
test bl, bl
je 0x1800026a6
add rsi, 1
add rax, 1
cmp bl, cl
je 0x180002690
cmp bl, cl
je 0x1800026c0
add rdx, 4
add rdi, 2
jmp 0x180002680
movzx eax, word [rdi]
mov eax, dword [r8 + rax*4]
add r10, rax
sub rsp, 0x30
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r13
mov r8, r13
call r10
add rsp, 0x10
mov rcx, qword [rbp - 8]
call fcn.180003620
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x180002723
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002ba0
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180002752
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002bb0
add r8, r10
mov r11d, dword [r10 + rcx + 0x20]
mov r9d, dword [r10 + rcx + 0x24]
add r11, r10
add r9, r10
lea rcx, section..data
mov rdx, qword [rbp - 0x18]
mov edi, dword [r11]
add rdi, r10
xor esi, esi
nop dword [rax + rax]
lea rax, [rdx + rsi]
movzx eax, byte [rcx + rax]
movzx ebx, byte [rdi + rsi]
test al, al
je 0x180002798
add rsi, 1
cmp al, bl
je 0x180002780
cmp al, bl
je 0x1800027b0
add r11, 4
add r9, 2
jmp 0x180002770
movzx eax, word [r9]
mov eax, dword [r8 + rax*4]
add r10, rax
mov r14, qword [rbp - 0x10]
mov edx, dword [r14 + 0x50]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
mov r13, rax
mov eax, dword [0x180021a6c]
mov ecx, dword [0x180021a70]
lea edi, [rax - 1]
imul edi, eax
cmp ecx, 0xa
jl 0x180002c22
mov edx, edi
and edx, 1
je 0x180002c22
movsxd r14, dword [0x180005440]
cmp dword [0x180021a74], 0xa
mov r12, qword [rbp]
jl 0x180002840
mov eax, dword [0x180021a78]
lea ecx, [rax - 1]
imul ecx, eax
mov r12, qword [rbp]
and ecx, 1
jne 0x180002bc0
nop word cs:[rax + rax]
nop dword [rax]
cmp byte [r12], 0
lea r12, [r12 + 1]
jne 0x180002840
mov rsi, r12
nop
cmp byte [rsi], 0
lea rsi, [rsi + 1]
jne 0x180002850
mov r15, rsi
nop dword [rax]
cmp byte [r15], 0
lea r15, [r15 + 1]
jne 0x180002860
nop word [rax + rax]
cmp byte [r15], 0
lea r15, [r15 + 1]
jne 0x180002870
mov rbx, r15
nop dword [rax]
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180002880
mov r13, rbx
nop dword [rax]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180002890
sub rsp, 0x20
mov rcx, r12
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
jl 0x1800028cc
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002bd0
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x1800028fb
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002be0
add r8, r9
mov r11d, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add r11, r9
add r10, r9
nop
mov edx, dword [r11]
add rdx, r9
mov rdi, rsi
nop dword [rax]
movzx ecx, byte [rdi]
movzx eax, byte [rdx]
test cl, cl
je 0x180002936
add rdx, 1
add rdi, 1
cmp cl, al
je 0x180002920
cmp cl, al
je 0x180002950
add r11, 4
add r10, 2
jmp 0x180002910
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, rbx
call r9
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x18000298a
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002bf0
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x1800029b9
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002c00
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov ecx, dword [r10 + rcx + 0x24]
add rdx, r10
add rcx, r10
nop dword [rax]
mov edi, dword [rdx]
add rdi, r10
mov rsi, r15
nop dword [rax + rax]
movzx eax, byte [rsi]
movzx ebx, byte [rdi]
test al, al
je 0x1800029f6
add rdi, 1
add rsi, 1
cmp al, bl
je 0x1800029e0
cmp al, bl
je 0x180002a10
add rdx, 4
add rcx, 2
jmp 0x1800029d0
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
sub rsp, 0x30
mov qword [rsp + 0x28], 0x1388
mov qword [rsp + 0x20], 0
mov r9d, 0x10
xor ecx, ecx
mov rdx, r13
mov r8, r13
call r10
add rsp, 0x10
mov rcx, r12
call fcn.180003620
add rsp, 0x20
mov r10, rax
cmp dword [0x180021a7c], 0xa
jl 0x180002a72
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002c10
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180002aa1
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002c20
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov r9d, dword [r10 + rcx + 0x24]
add rdx, r10
add r9, r10
lea r13, section..data
mov rcx, qword [rbp - 0x18]
nop
mov edi, dword [rdx]
add rdi, r10
xor esi, esi
nop word [rax + rax]
lea rax, [rcx + rsi]
movzx eax, byte [r13 + rax]
movzx ebx, byte [rdi + rsi]
test al, al
je 0x180002aea
add rsi, 1
cmp al, bl
je 0x180002ad0
cmp al, bl
je 0x180002b00
add rdx, 4
add r9, 2
jmp 0x180002ac0
movzx eax, word [r9]
mov eax, dword [r8 + rax*4]
add r10, rax
mov edx, dword [r14 + r13 + 0x454]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
cmp dword [0x180021a74], 0xa
jl 0x1800024bd
mov eax, dword [0x180021a78]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800024bd
jmp 0x1800024b0
jmp 0x180002b60
jmp 0x180002b70
jmp 0x180002b80
jmp 0x180002b90
jmp 0x180002ba0
jmp 0x180002bb0
jmp 0x180002bc0
jmp 0x180002bd0
jmp 0x180002be0
jmp 0x180002bf0
jmp 0x180002c00
jmp 0x180002c10
jmp 0x180002c20
and edi, 1
sete bl
cmp ecx, 0xa
setl dl
or dl, bl
cmp dl, 1
jne 0x180002e30
lea rbx, [r14 + 0x108]
mov qword [rbp - 0x18], rbx
xor esi, esi
jmp 0x180002c71
mov rsi, qword [rbp]
add rsi, 1
lea edi, [rax - 1]
imul edi, eax
and edi, 1
sete bl
cmp ecx, 0xa
setl dl
or dl, bl
cmp dl, 1
mov r14, qword [rbp - 0x10]
jne 0x180002e30
movzx ebx, word [r14 + 6]
cmp rsi, rbx
jae 0x180002e32
mov qword [rbp], rsi
cmp ecx, 0xa
jl 0x180002d27
test edi, edi
je 0x180002d27
mov rax, qword [rbp]
lea rax, [rax + rax*4]
mov rcx, qword [rbp - 0x18]
lea r14, [rcx + rax*8]
add r14, 0xc
lea rbx, [rcx + rax*8]
add rbx, 0x10
lea rdi, [rcx + rax*8]
add rdi, 0x14
nop dword [rax + rax]
mov ecx, dword [r14]
add rcx, r13
mov r8d, dword [rbx]
mov eax, dword [rdi]
lea rsi, section..data
lea rdx, [rax + rsi]
add rdx, 0x404
sub rsp, 0x20
call fcn.180003490
add rsp, 0x20
mov ecx, dword [r14]
add rcx, r13
mov r8d, dword [rbx]
mov eax, dword [rdi]
lea rdx, [rax + rsi]
add rdx, 0x404
sub rsp, 0x20
call fcn.180003490
add rsp, 0x20
cmp dword [0x180021a70], 0xa
jl 0x180002d27
mov eax, dword [0x180021a6c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002cc0
mov rax, qword [rbp]
lea r14, [rax + rax*4]
mov rax, qword [rbp - 0x18]
mov ecx, dword [rax + r14*8 + 0xc]
mov r8d, dword [rax + r14*8 + 0x10]
add rcx, r13
mov eax, dword [rax + r14*8 + 0x14]
lea rdx, section..data
add rdx, rax
add rdx, 0x404
sub rsp, 0x20
call fcn.180003490
add rsp, 0x20
mov eax, dword [0x180021a6c]
mov ecx, dword [0x180021a70]
cmp ecx, 0xa
jl 0x180002c48
lea edx, [rax - 1]
imul edx, eax
and edx, 1
je 0x180002c48
mov rax, qword [rbp - 0x18]
lea rdi, [rax + r14*8]
add rdi, 0xc
lea rbx, [rax + r14*8]
add rbx, 0x10
lea r14, [rax + r14*8]
add r14, 0x14
nop word cs:[rax + rax]
nop dword [rax]
mov ecx, dword [rdi]
add rcx, r13
mov r8d, dword [rbx]
mov eax, dword [r14]
lea rdx, section..data
mov rsi, rdx
add rdx, rax
add rdx, 0x404
sub rsp, 0x20
call fcn.180003490
add rsp, 0x20
mov ecx, dword [rdi]
add rcx, r13
mov r8d, dword [rbx]
mov eax, dword [r14]
lea rdx, [rax + rsi]
add rdx, 0x404
sub rsp, 0x20
call fcn.180003490
add rsp, 0x20
mov eax, dword [0x180021a6c]
mov ecx, dword [0x180021a70]
cmp ecx, 0xa
jl 0x180002c48
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002db0
jmp 0x180002c48
jmp 0x180002e30
mov r11d, dword [r14 + 0xb0]
cmp dword [r13 + r11], 0
je 0x180002f82
add r11, r13
mov rbx, qword [r14 + 0x30]
mov r9, r13
sub r9, rbx
mov r8, r11
jmp 0x180002e85
mov edi, dword [r8 + 4]
mov r14, qword [rbp - 0x10]
lea r11, [r8 + rdi]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete bl
cmp ecx, 0xa
setl dl
or dl, bl
cmp dword [r8 + rdi], 0
mov r8, r11
je 0x180002f82
test dl, 1
je 0x180002e85
mov edi, dword [r8 + 4]
cmp rdi, 8
jb 0x180002e5f
cmp ecx, 0xa
jl 0x180002ea8
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002f80
movabs rdx, 0x1fffffff8
add rdi, rdx
shr rdi, 1
mov r10d, edi
xor edx, edx
cmp r10, rdx
je 0x180002e57
movzx ebx, word [r8 + rdx*2 + 8]
mov esi, ebx
shr esi, 0xc
mov edi, ebx
and edi, 0xfff
cmp ebx, 0xa000
jae 0x180002f02
cmp esi, 3
jne 0x180002f5c
mov eax, dword [r11]
lea rax, [rax*4]
add rax, r13
add dword [rax + rdi*4], r9d
mov eax, dword [0x180021a6c]
mov ecx, dword [0x180021a70]
jmp 0x180002f5c
cmp esi, 0xa
jne 0x180002f5c
mov edi, edi
cmp ecx, 0xa
jl 0x180002f35
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180002f35
lea rbx, [rdi + r13]
jmp 0x180002f2e
add rdx, 1
cmp ecx, 0xa
jl 0x180002ebd
test esi, esi
je 0x180002ebd
jmp 0x180002f80
mov eax, dword [r11]
add qword [rbx + rax], r9
mov eax, dword [r11]
lea rbx, [rdi + r13]
add qword [rax + rbx], r9
mov eax, dword [0x180021a6c]
mov ecx, dword [0x180021a70]
cmp ecx, 0xa
jl 0x180002f5c
lea esi, [rax - 1]
imul esi, eax
and esi, 1
jne 0x180002f2e
lea esi, [rax - 1]
imul esi, eax
and esi, 1
cmp ecx, 0xa
jl 0x180002f1f
test esi, esi
je 0x180002f1f
nop
jmp 0x180002f70
jmp 0x180002f80
test dl, 1
je 0x180002fb0
cmp ecx, 0xa
jl 0x180002fb2
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180002fb2
nop word [rax + rax]
jmp 0x180002fa0
jmp 0x180002fb0
lea rax, [r13 + 2]
mov qword [rbp - 0x30], rax
mov edx, dword [r14 + 0x90]
add rdx, r13
mov esi, dword [rdx + 0xc]
test rsi, rsi
je 0x18000344d
mov qword [rbp - 0x20], rdx
add rsi, r13
sub rsp, 0x20
mov rcx, qword [rbp - 8]
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
mov r14, rsi
jl 0x18000300c
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180003400
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x18000303b
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180003410
add r8, r9
mov ebx, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rbx, r9
add rcx, r9
mov esi, dword [rbx]
add rsi, r9
mov rdi, r12
nop word cs:[rax + rax]
movzx eax, byte [rdi]
movzx edx, byte [rsi]
test al, al
je 0x180003076
add rsi, 1
add rdi, 1
cmp al, dl
je 0x180003060
cmp al, dl
je 0x180003084
add rbx, 4
add rcx, 2
jmp 0x18000304e
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r14
call r9
add rsp, 0x20
mov edi, dword [0x180021a6c]
mov ebx, dword [0x180021a70]
lea edx, [rdi - 1]
imul edx, edi
and edx, 1
cmp ebx, 0xa
mov rcx, qword [rbp - 8]
jl 0x18000319a
test edx, edx
je 0x18000319a
sub rsp, 0x20
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
jl 0x1800030f4
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180003420
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180003123
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180003430
add r8, r9
mov ebx, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rbx, r9
add rcx, r9
mov esi, dword [rbx]
add rsi, r9
mov rdi, r12
nop
movzx eax, byte [rdi]
movzx edx, byte [rsi]
test al, al
je 0x180003156
add rsi, 1
add rdi, 1
cmp al, dl
je 0x180003140
cmp al, dl
je 0x180003164
add rbx, 4
add rcx, 2
jmp 0x180003136
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r14
call r9
mov rcx, qword [rbp - 8]
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
jge 0x180002ff7
jmp 0x18000300c
mov qword [rbp - 0x18], rax
cmp ebx, 0xa
jl 0x1800031ab
test edx, edx
jne 0x18000343a
mov rcx, qword [rbp - 0x20]
mov eax, dword [rcx]
mov ecx, dword [rcx + 0x10]
add rax, r13
add rcx, r13
mov qword [rbp], rcx
mov qword [rbp - 0x28], rax
mov rdx, qword [rax]
test rdx, rdx
je 0x1800033c8
mov rax, qword [rbp - 0x30]
add rax, rdx
test rdx, rdx
movzx r14d, dx
cmovns r14, rax
jmp 0x180003205
movzx eax, word [rsi]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, qword [rbp - 0x18]
mov rdx, r14
call r9
add rsp, 0x20
mov rcx, qword [rbp]
mov qword [rcx], rax
sub rsp, 0x20
mov rcx, qword [rbp - 8]
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
jl 0x180003237
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180003432
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x180003266
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180003434
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov esi, dword [r9 + rcx + 0x24]
add rdi, r9
add rsi, r9
mov ebx, dword [rdi]
add rbx, r9
mov rax, r15
nop word cs:[rax + rax]
nop dword [rax + rax]
movzx ecx, byte [rax]
movzx edx, byte [rbx]
test cl, cl
je 0x1800032a6
add rbx, 1
add rax, 1
cmp cl, dl
je 0x180003290
cmp cl, dl
je 0x1800032b4
add rdi, 4
add rsi, 2
jmp 0x180003279
movzx eax, word [rsi]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, qword [rbp - 0x18]
mov rdx, r14
call r9
add rsp, 0x20
mov rcx, qword [rbp]
mov qword [rcx], rax
mov edi, dword [0x180021a6c]
mov ebx, dword [0x180021a70]
lea edx, [rdi - 1]
imul edx, edi
and edx, 1
cmp ebx, 0xa
jl 0x1800033a8
test edx, edx
je 0x1800033a8
sub rsp, 0x20
mov rcx, qword [rbp - 8]
call fcn.180003620
add rsp, 0x20
mov r9, rax
cmp dword [0x180021a7c], 0xa
jl 0x18000332f
mov eax, dword [0x180021a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180003436
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180021a84], 0xa
jl 0x18000335e
mov eax, dword [0x180021a88]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180003438
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov esi, dword [r9 + rcx + 0x24]
add rdi, r9
add rsi, r9
mov ebx, dword [rdi]
add rbx, r9
mov rax, r15
nop dword [rax]
movzx ecx, byte [rax]
movzx edx, byte [rbx]
test cl, cl
je 0x180003396
add rbx, 1
add rax, 1
cmp cl, dl
je 0x180003380
cmp cl, dl
je 0x1800031e2
add rdi, 4
add rsi, 2
jmp 0x180003371
mov rax, qword [rbp - 0x28]
add rax, 8
add qword [rbp], 8
cmp ebx, 0xa
jl 0x1800031be
test edx, edx
je 0x1800031be
jmp 0x18000343a
mov rdx, qword [rbp - 0x20]
add rdx, 0x14
cmp ebx, 0xa
mov r14, qword [rbp - 0x10]
jl 0x180002fc4
lea ecx, [rdi - 1]
imul ecx, edi
and ecx, 1
je 0x180002fc4
jmp 0x180002fa0
jmp 0x180003400
jmp 0x180003410
jmp 0x180003420
jmp 0x180003430
jmp 0x180003432
jmp 0x180003434
jmp 0x180003436
jmp 0x180003438
jmp 0x18000343a
mov eax, dword [r14 + 0x28]
add rax, r13
sub rsp, 0x20
call rax
add rsp, 0x20
mov eax, dword [r14 + 0x28]
add rax, r13
sub rsp, 0x20
call rax
add rsp, 0x20
cmp dword [0x180021a70], 0xa
jl 0x180003478
mov eax, dword [0x180021a6c]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x18000343c
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret