Function at 0x180001090
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]
cmp dword [0x180020a6c], 0xa
jl 0x1800010c2
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800010c2
nop
jmp 0x1800010c0
mov edi, dword [0x180020a74]
mov r10d, dword [0x180020a78]
mov eax, 0x10
call entry0
sub rsp, rax
mov rbx, rsp
mov eax, 0x10
call entry0
sub rsp, rax
mov r9, rsp
lea edx, [rdi - 1]
imul edx, edi
and edx, 1
cmp r10d, 0xa
jl 0x180001112
test edx, edx
je 0x180001112
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x180001110
mov al, byte [section..data]
mov byte [rbx], al
mov al, byte [0x180004001]
mov byte [rbx + 1], al
mov al, byte [0x180004002]
mov byte [rbx + 2], al
mov al, byte [0x180004003]
mov byte [rbx + 3], al
mov r12d, dword [rbx]
test r12, r12
je 0x180001257
xor ebx, ebx
cmp r12d, 0x10
jb 0x180001228
lea rax, [r12 - 1]
cmp rax, 0x400
jae 0x180001228
mov ebx, r12d
and ebx, 0xfffffff0
lea rdi, [rbx - 0x10]
mov rax, rdi
shr rax, 4
add rax, 1
mov r8d, eax
and r8d, 1
test rdi, rdi
je 0x180001308
mov rsi, r8
sub rsi, rax
xor ecx, ecx
lea rax, section..data
movaps xmm0, xmmword [str._f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f]
nop dword [rax]
mov edi, ecx
and edi, 0x3e0
movups xmm1, xmmword [rdi + rax + 4]
movups xmm2, xmmword [rcx + rax + 0x404]
xorps xmm2, xmm1
movups xmm1, xmmword [rcx + rax + 0x414]
xorps xmm2, xmm0
movups xmmword [rcx + rax + 0x404], xmm2
lea edi, [rcx + 0x10]
and edi, 0x3f0
movups xmm2, xmmword [rdi + rax + 4]
xorps xmm1, xmm0
xorps xmm1, xmm2
movups xmmword [rcx + rax + 0x414], xmm1
add rcx, 0x20
add rsi, 2
jne 0x1800011a0
test r8, r8
je 0x180001223
mov eax, ecx
and eax, 0x3f0
lea rdi, section..data
movups xmm0, xmmword [rax + rdi + 4]
movups xmm1, xmmword [rcx + rdi + 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 [rcx + rdi + 0x404], xmm1
cmp rbx, r12
je 0x180001257
lea rax, section..data
nop
mov ecx, ebx
and ecx, 0x3ff
movzx ecx, byte [rcx + rax + 4]
xor cl, byte [rbx + rax + 0x404]
xor cl, 0xc
mov byte [rbx + rax + 0x404], cl
add rbx, 1
cmp rbx, r12
jb 0x180001230
cmp r10d, 0xa
jl 0x180001272
test edx, edx
je 0x180001272
nop word cs:[rax + rax]
nop dword [rax + rax]
jmp 0x180001270
lea rbx, section..data
lea r10, [r12 + rbx]
add r10, 0x404
mov al, byte [r10]
mov byte [r9], al
mov al, byte [r10 + 1]
mov byte [r9 + 1], al
mov al, byte [r10 + 2]
mov byte [r9 + 2], al
mov al, byte [r10 + 3]
mov byte [r9 + 3], al
add r10, 4
mov r9d, dword [r9]
test r9, r9
je 0x180001419
xor eax, eax
cmp r9d, 0x20
jb 0x1800013ed
lea rdx, [r9 - 1]
cmp rdx, 0x400
jae 0x1800013ed
lea rcx, [r12 + rbx]
add rcx, 0x408
lea rdx, [r9 + rbx]
add rdx, 4
cmp rcx, rdx
jae 0x180001318
lea rcx, [r9 + r12]
add rcx, rbx
add rcx, 0x408
lea rdx, str.hvljICnymAkhDLSieMaVxOyngDLxDohCpvcvXLivrzrXyrgBfGLoMZtmZhXwSCIWtsMOJyLyMDCnAoZLiIboTMshBnmvizERKwwaoRETWaOxpxwVapLWMyVGtidQVhZFWrKzIBEkIbTbYykDkYIYUnKQzeMiBMjZbLenUFOzeuIeoOjhFgDMRdIBjrEKesjCpsbzCUtGGvyVCzYVZmHLmctLAjUnHnjptWAaTuSufTBtieteSpFfrHheYvRoUCEhkKVMDZsXDeaeFMvmeRaeXdwkoTEWgdcqFxdQakLUYSClvYrruQXFWoagdUPxHusBIvovGwcgeBndmYAOQpYmncKLmpaMVuBqTupXuqBbzZKHnnenjSbHzrKrEanstLpIwLRWXkJQFfsDPDtakabKlXofhSBYGPFtzKBATniHJMKCjywyUsVsGvYerLovsLdkYkazxWRApRHbtoyHdbYmcaZPWesgnxbnGAQqZrnRroCzUZXRWeafnrLBwRfnhLzDBCZBSzLubblIRZxlxInrnkTDpusAVwMcgKYUBekVwAWRUsUVZwWZALlbknppATJwgSJlffUXxKVYPWOuJcimFnpxlVJhAzAyfWcChoHXPgqhUsrebHdumwTmmQHJBccKYTsaUhFqZLpgEbclQZIwhHSkwYOPMerGwettgXaPVCwotfdykJAYFCuBTWhSYtHeDDtDHOTynfMGQZmVHccjdDrrTjOZAawpMQbizuTYexOqCthWXOkBzWmEisfvsOsxiPYSFVxHkitIrLcuLfpzXBrgMXDbamoBuApYGHIrppbFXOTcwqKmbhFmZeCPAPoZMACbklsMwwaLnyqYskiEZMJdbsSUDCGEzqMFdzBytkiMnfnJFcWxeeyHuUngYUPfEARAfguasKKBWhPegjiyKIzwwOzvxwXdvHJhIZSkRgVDwVHXiXyqqqAKOJnrzhzyhrmcOMBSgEtAxXSYpHzUVCBlvqJFAIZKPGltYUOEuMMinBDKzjMjEkKCiQsDhYM
cmp rcx, rdx
jbe 0x180001318
xor eax, eax
jmp 0x1800013ed
xor ecx, ecx
test r8, r8
jne 0x1800011f6
jmp 0x180001223
mov eax, r9d
and eax, 0xffffffe0
lea rcx, [rax - 0x20]
mov rdx, rcx
shr rdx, 5
add rdx, 1
mov r8d, edx
and r8d, 1
test rcx, rcx
je 0x1800013b3
lea rdi, [r12 + rbx]
add rdi, 0x438
mov rcx, r8
sub rcx, rdx
xor esi, esi
mov edx, esi
and edx, 0x3c0
movups xmm0, xmmword [rdx + rbx + 4]
movups xmm1, xmmword [rdx + rbx + 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 edx, [rsi + 0x20]
and edx, 0x3e0
movups xmm0, xmmword [rdx + rbx + 4]
xorps xmm0, xmm1
movups xmm1, xmmword [rdx + rbx + 0x14]
xorps xmm1, xmm3
movups xmmword [rdi + rsi - 0x10], xmm0
movups xmmword [rdi + rsi], xmm1
add rsi, 0x40
add rcx, 2
jne 0x180001350
jmp 0x1800013b5
xor esi, esi
test r8, r8
je 0x1800013e8
mov edx, esi
and edx, 0x3e0
movups xmm0, xmmword [rdx + rbx + 4]
movups xmm1, xmmword [rdx + rbx + 0x14]
movups xmm2, xmmword [r10 + rsi]
xorps xmm2, xmm0
movups xmm0, xmmword [r10 + rsi + 0x10]
xorps xmm0, xmm1
movups xmmword [r10 + rsi], xmm2
movups xmmword [r10 + rsi + 0x10], xmm0
cmp rax, r9
je 0x180001419
lea rdx, [r12 + rbx]
add rdx, 0x408
nop dword [rax + rax]
mov ecx, eax
and ecx, 0x3ff
movzx ecx, byte [rcx + rbx + 4]
xor byte [rdx + rax], cl
add rax, 1
cmp rax, r9
jb 0x180001400
cmp dword [0x180020a7c], 0xa
jl 0x180001442
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180001442
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x180001440
add r12, 0x408
mov qword [rbp - 0x10], r10
movsxd rax, dword [0x180004440]
cmp byte [r10], 0
mov rbx, r10
je 0x18000146a
mov rbx, r10
cmp byte [rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x180001460
cmp byte [rbx + 1], 0
mov rdx, rbx
je 0x18000148a
mov rdx, rbx
nop word cs:[rax + rax]
cmp byte [rdx + 2], 0
lea rdx, [rdx + 1]
jne 0x180001480
lea rsi, [rdx + 2]
cmp byte [rdx + 2], 0
mov rdi, rsi
je 0x1800014aa
mov rdi, rsi
nop word [rax + rax]
cmp byte [rdi + 1], 0
lea rdi, [rdi + 1]
jne 0x1800014a0
cmp byte [rdi + 1], 0
mov rcx, rdi
je 0x1800014ca
mov rcx, rdi
nop word cs:[rax + rax]
cmp byte [rcx + 2], 0
lea rcx, [rcx + 1]
jne 0x1800014c0
cmp byte [rcx + 2], 0
lea r14, [rcx + 2]
mov r13, r14
je 0x1800014eb
mov r13, r14
nop word [rax + rax]
cmp byte [r13 + 1], 0
lea r13, [r13 + 1]
jne 0x1800014e0
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x18], rdx
add rbx, 1
cmp byte [r13 + 1], 0
mov r15, r13
je 0x18000151b
mov r15, r13
nop word cs:[rax + rax]
nop
cmp byte [r15 + 2], 0
lea r15, [r15 + 1]
jne 0x180001510
lea rcx, section..data
lea rdi, [rax + rcx]
add rdi, 0x404
add r13, 1
add r15, 2
sub rsp, 0x20
mov rcx, rbx
call fcn.1800027b0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
nop word cs:[rax + rax]
test al, al
je 0x180001570
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800015a3
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001bf0
mov qword [rbp - 8], rbx
mov qword [rbp], rdi
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rdi, r9
add r10, r9
nop
mov edx, dword [rdi]
add rdx, r9
xor ecx, ecx
nop word [rax + rax]
movzx eax, byte [rsi + rcx]
movzx ebx, byte [rdx + rcx]
test al, al
je 0x1800015e4
add rcx, 1
cmp al, bl
je 0x1800015d0
cmp al, bl
je 0x180001600
add rdi, 4
add r10, 2
jmp 0x1800015c0
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r13
call r9
add rsp, 0x20
mov r10, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
nop word [rax + rax]
test al, al
je 0x180001640
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001673
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001c00
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov edi, dword [r10 + rcx + 0x24]
add rdx, r10
add rdi, r10
nop word cs:[rax + rax]
mov esi, dword [rdx]
add rsi, r10
xor eax, eax
nop word [rax + rax]
movzx ecx, byte [r14 + rax]
movzx ebx, byte [rsi + rax]
test cl, cl
je 0x1800016b5
add rax, 1
cmp cl, bl
je 0x1800016a0
cmp cl, bl
je 0x1800016d0
add rdx, 4
add rdi, 2
jmp 0x180001690
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, r15
mov r8, r15
call r10
add rsp, 0x10
mov rcx, qword [rbp - 8]
call fcn.1800027b0
add rsp, 0x20
mov r10, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
nop word cs:[rax + rax]
nop dword [rax]
test al, al
je 0x180001740
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
lea r14, section..data
jl 0x18000177a
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001c10
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
xor esi, esi
nop word [rax + rax]
lea rax, [r12 + rsi]
movzx eax, byte [r14 + rax]
movzx ebx, byte [rdi + rsi]
test al, al
je 0x1800017b9
add rsi, 1
cmp al, bl
je 0x1800017a0
cmp al, bl
je 0x1800017d0
add rdx, 4
add rcx, 2
jmp 0x180001790
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rsi, qword [rbp]
mov edx, dword [rsi + 0x50]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
mov r13, rax
mov ecx, dword [0x180020a70]
mov edx, dword [0x180020a6c]
lea edi, [rcx - 1]
imul edi, ecx
and edi, 1
cmp edx, 0xa
jl 0x180001c52
test edi, edi
je 0x180001c52
movsxd rsi, dword [0x180004440]
cmp dword [0x180020a7c], 0xa
jl 0x180001848
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001c20
mov rax, qword [rbp - 0x10]
cmp byte [rax], 0
mov rdi, rax
je 0x18000186a
mov rdi, rax
nop word [rax + rax]
cmp byte [rdi + 1], 0
lea rdi, [rdi + 1]
jne 0x180001860
cmp byte [rdi + 1], 0
mov rax, rdi
je 0x18000188a
mov rax, rdi
nop word cs:[rax + rax]
cmp byte [rax + 2], 0
lea rax, [rax + 1]
jne 0x180001880
cmp byte [rax + 2], 0
lea r13, [rax + 2]
mov rax, r13
je 0x1800018aa
mov rax, r13
nop word [rax + rax]
cmp byte [rax + 1], 0
lea rax, [rax + 1]
jne 0x1800018a0
cmp byte [rax + 1], 0
je 0x1800018ba
cmp byte [rax + 2], 0
lea rax, [rax + 1]
jne 0x1800018b0
cmp byte [rax + 2], 0
lea rbx, [rax + 2]
mov r15, rbx
je 0x1800018db
mov r15, rbx
nop word [rax + rax]
cmp byte [r15 + 1], 0
lea r15, [r15 + 1]
jne 0x1800018d0
add rdi, 1
cmp byte [r15 + 1], 0
mov r14, r15
je 0x1800018fb
mov r14, r15
nop dword [rax]
cmp byte [r14 + 2], 0
lea r14, [r14 + 1]
jne 0x1800018f0
add r15, 1
add r14, 2
sub rsp, 0x20
mov rcx, rdi
call fcn.1800027b0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
nop word cs:[rax + rax]
nop
test al, al
je 0x180001940
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001973
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001c30
mov qword [rbp - 8], rdi
mov qword [rbp], rsi
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rdi, r9
add r10, r9
nop
mov edx, dword [rdi]
add rdx, r9
xor esi, esi
nop word [rax + rax]
movzx ecx, byte [r13 + rsi]
movzx eax, byte [rdx + rsi]
test cl, cl
je 0x1800019b6
add rsi, 1
cmp cl, al
je 0x1800019a0
cmp cl, al
je 0x1800019d0
add rdi, 4
add r10, 2
jmp 0x180001990
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r15
call r9
add rsp, 0x20
mov r10, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
nop word [rax + rax]
test al, al
je 0x180001a10
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001a43
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001c40
add r8, r10
mov edi, dword [r10 + rcx + 0x20]
mov r9d, dword [r10 + rcx + 0x24]
add rdi, r10
add r9, r10
nop word cs:[rax + rax]
mov eax, dword [rdi]
add rax, r10
xor esi, esi
nop word [rax + rax]
movzx ecx, byte [rbx + rsi]
movzx edx, byte [rax + rsi]
test cl, cl
je 0x180001a84
add rsi, 1
cmp cl, dl
je 0x180001a70
cmp cl, dl
je 0x180001aa0
add rdi, 4
add r9, 2
jmp 0x180001a60
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, r14
mov r8, r14
call r10
add rsp, 0x10
mov rcx, qword [rbp - 8]
call fcn.1800027b0
add rsp, 0x20
mov r10, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
nop word cs:[rax + rax]
nop
test al, al
je 0x180001b10
movsxd rax, dword [r10 + 0x3c]
mov ebx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rbx + 0x1c]
cmp dword [0x180020a8c], 0xa
lea rcx, section..data
jl 0x180001b4a
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001c50
add r8, r10
mov edx, dword [r10 + rbx + 0x20]
mov r9d, dword [r10 + rbx + 0x24]
add rdx, r10
add r9, r10
nop dword [rax]
mov edi, dword [rdx]
add rdi, r10
xor esi, esi
nop word [rax + rax]
lea rax, [r12 + rsi]
movzx eax, byte [rcx + rax]
movzx ebx, byte [rdi + rsi]
test al, al
je 0x180001b88
add rsi, 1
cmp al, bl
je 0x180001b70
cmp al, bl
je 0x180001b96
add rdx, 4
add r9, 2
jmp 0x180001b60
movzx eax, word [r9]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rbp]
mov edx, dword [rax + rcx + 0x454]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
cmp dword [0x180020a7c], 0xa
mov r10, qword [rbp - 0x10]
jl 0x18000144d
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x18000144d
jmp 0x180001440
jmp 0x180001bf0
jmp 0x180001c00
jmp 0x180001c10
jmp 0x180001c20
jmp 0x180001c30
jmp 0x180001c40
jmp 0x180001c50
cmp edx, 0xa
jl 0x180001c62
test edi, edi
je 0x180001c62
nop dword [rax + rax]
jmp 0x180001c60
lea r8, [rsi + 0x108]
xor r9d, r9d
movzx eax, word [rsi + 6]
cmp r9, rax
jae 0x180002044
cmp edx, 0xa
jl 0x180001c86
test edi, edi
jne 0x180002010
mov eax, dword [0x180020a74]
mov ebx, dword [0x180020a78]
cmp ebx, 0xa
jl 0x180001ca6
lea edi, [rax - 1]
imul edi, eax
and edi, 1
jne 0x180002020
lea rdi, [r9 + r9*4]
lea r10, [r8 + rdi*8]
add r10, 0x10
mov edi, dword [r10]
test rdi, rdi
je 0x180001d34
mov ecx, dword [r10 - 4]
add rcx, r13
mov edx, dword [r10 + 4]
add rdx, r14
add rdx, 0x404
cmp ebx, 0xa
jge 0x180001ce8
jmp 0x180001cf7
add rdx, 1
add rcx, 1
test rdi, rdi
je 0x180001d28
cmp ebx, 0xa
jl 0x180001cf7
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
jne 0x180001fd0
add rdi, 0xffffffffffffffff
nop dword [rax + rax]
movzx eax, byte [rdx]
mov byte [rcx], al
mov eax, dword [0x180020a74]
mov ebx, dword [0x180020a78]
cmp ebx, 0xa
jl 0x180001cd6
lea esi, [rax - 1]
imul esi, eax
and esi, 1
je 0x180001cd6
movzx eax, byte [rdx]
mov byte [rcx], al
jmp 0x180001d00
mov ecx, dword [0x180020a70]
mov edx, dword [0x180020a6c]
lea edi, [rcx - 1]
imul edi, ecx
and edi, 1
cmp edx, 0xa
jl 0x180001fa5
test edi, edi
je 0x180001fa5
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
mov r11d, eax
mov edi, eax
cmp edx, 0xa
jl 0x180001d69
test esi, esi
jne 0x180001e1c
mov ecx, dword [r10]
cmp ebx, 0xa
jl 0x180001d80
lea edx, [rdi - 1]
imul edx, edi
and edx, 1
jne 0x180002040
test ecx, ecx
je 0x180001df8
mov edx, dword [r10 - 4]
add rdx, r13
mov eax, dword [r10 + 4]
lea rsi, [rax + r14]
add rsi, 0x404
mov eax, edi
cmp ebx, 0xa
jge 0x180001dba
jmp 0x180001dc9
add rsi, 1
add rdx, 1
mov r11d, eax
mov edi, eax
test rcx, rcx
je 0x180001df8
cmp ebx, 0xa
jl 0x180001dc9
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
jne 0x180001fe0
add rcx, 0xffffffffffffffff
nop dword [rax]
movzx eax, byte [rsi]
mov byte [rdx], al
mov eax, dword [0x180020a74]
mov ebx, dword [0x180020a78]
cmp ebx, 0xa
jl 0x180001da3
lea edi, [rax - 1]
imul edi, eax
and edi, 1
je 0x180001da3
movzx eax, byte [rsi]
mov byte [rdx], al
jmp 0x180001dd0
mov ecx, dword [0x180020a70]
mov edx, dword [0x180020a6c]
cmp edx, 0xa
jl 0x180001ec0
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
je 0x180001ec0
mov ecx, dword [r10]
cmp ebx, 0xa
jl 0x180001e35
lea edx, [r11 - 1]
imul edx, r11d
and edx, 1
jne 0x180002030
test ecx, ecx
je 0x180001eb8
mov edx, dword [r10 - 4]
add rdx, r13
mov eax, dword [r10 + 4]
lea rsi, [rax + r14]
add rsi, 0x404
mov eax, r11d
cmp ebx, 0xa
jge 0x180001e74
jmp 0x180001e83
add rsi, 1
add rdx, 1
mov r11d, eax
mov edi, eax
test rcx, rcx
je 0x180001d69
cmp ebx, 0xa
jl 0x180001e83
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
jne 0x180001ff0
add rcx, 0xffffffffffffffff
nop word [rax + rax]
movzx eax, byte [rsi]
mov byte [rdx], al
mov eax, dword [0x180020a74]
mov ebx, dword [0x180020a78]
cmp ebx, 0xa
jl 0x180001e59
lea edi, [rax - 1]
imul edi, eax
and edi, 1
je 0x180001e59
movzx eax, byte [rsi]
mov byte [rdx], al
jmp 0x180001e90
mov edi, r11d
jmp 0x180001d69
mov r14d, dword [r10]
cmp ebx, 0xa
jl 0x180001ed7
lea esi, [rdi - 1]
imul esi, edi
and esi, 1
jne 0x180002042
test r14d, r14d
je 0x180001f61
mov eax, dword [r10 - 4]
add rax, r13
mov ecx, dword [r10 + 4]
lea rdx, section..data
add rcx, rdx
add rcx, 0x404
cmp ebx, 0xa
jge 0x180001f15
jmp 0x180001f24
add rcx, 1
add rax, 1
test r14, r14
je 0x180001f50
cmp ebx, 0xa
jl 0x180001f24
lea edx, [rdi - 1]
imul edx, edi
and edx, 1
jne 0x180002000
add r14, 0xffffffffffffffff
movzx edx, byte [rcx]
mov byte [rax], dl
mov edi, dword [0x180020a74]
mov ebx, dword [0x180020a78]
cmp ebx, 0xa
jl 0x180001f03
lea edx, [rdi - 1]
imul edx, edi
and edx, 1
je 0x180001f03
movzx edx, byte [rcx]
mov byte [rax], dl
jmp 0x180001f28
mov ecx, dword [0x180020a70]
mov edx, dword [0x180020a6c]
mov eax, edi
mov r11d, edi
cmp edx, 0xa
lea r14, section..data
jl 0x180001f8b
lea r14d, [rcx - 1]
imul r14d, ecx
mov esi, 1
and r14d, 1
lea r14, section..data
jne 0x180001d5c
cmp ebx, 0xa
jl 0x180001cb2
lea edi, [rax - 1]
imul edi, eax
and edi, 1
je 0x180001cb2
jmp 0x180002020
add r9, 1
cmp edx, 0xa
mov rsi, qword [rbp]
jl 0x180001c6c
test edi, edi
je 0x180001c6c
jmp 0x180001c60
jmp 0x180001fd0
jmp 0x180001fe0
jmp 0x180001ff0
jmp 0x180002000
jmp 0x180002010
jmp 0x180002020
jmp 0x180002030
jmp 0x180002040
jmp 0x180002042
mov rbx, qword [rsi + 0x30]
mov r14, r13
sub r14, rbx
cmp edx, 0xa
jl 0x180002062
lea ebx, [rcx - 1]
imul ebx, ecx
and ebx, 1
je 0x180002062
nop
jmp 0x180002060
mov rax, qword [rbp]
mov ebx, dword [rax + 0xb0]
add rbx, r13
movabs r8, 0x1fffffff8
cmp dword [rbx], 0
je 0x1800021d5
mov edi, dword [rbx + 4]
cmp rdi, 8
jb 0x18000219f
cmp edx, 0xa
jl 0x1800020a3
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
jne 0x1800021cd
add rdi, r8
shr rdi, 1
mov r9d, edi
xor r11d, r11d
cmp r11, r9
je 0x18000219f
movzx esi, word [rbx + r11*2 + 8]
mov edi, esi
shr edi, 0xc
mov eax, esi
and eax, 0xfff
cmp esi, 0xa000
jae 0x18000212a
cmp edi, 3
jne 0x18000218b
cmp edx, 0xa
jl 0x1800020ef
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x1800021d1
mov ecx, dword [rbx]
lea rsi, [rax*4]
add rsi, r13
add dword [rsi + rcx*4], r14d
mov ecx, dword [0x180020a70]
mov edx, dword [0x180020a6c]
cmp edx, 0xa
jl 0x18000218b
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
je 0x18000218b
mov eax, dword [rbx]
add dword [rsi + rax*4], r14d
mov eax, dword [rbx]
add dword [rsi + rax*4], r14d
jmp 0x180002100
cmp edi, 0xa
jne 0x18000218b
mov r10d, eax
cmp edx, 0xa
jl 0x180002165
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
je 0x180002165
lea rsi, [r10 + r13]
jmp 0x18000215f
add r11, 1
cmp edx, 0xa
jl 0x1800020af
test esi, esi
je 0x1800020af
jmp 0x1800021cd
mov eax, dword [rbx]
add qword [rsi + rax], r14
mov eax, dword [rbx]
lea rsi, [r10 + r13]
add qword [rax + rsi], r14
mov ecx, dword [0x180020a70]
mov edx, dword [0x180020a6c]
cmp edx, 0xa
jl 0x18000218b
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x18000215f
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
cmp edx, 0xa
jl 0x180002148
test esi, esi
je 0x180002148
jmp 0x1800021cf
lea edi, [rcx - 1]
imul edi, ecx
and edi, 1
cmp edx, 0xa
jl 0x1800021b1
test edi, edi
jne 0x1800021d3
mov eax, dword [rbx + 4]
add rbx, rax
cmp edx, 0xa
jl 0x180002079
test edi, edi
je 0x180002079
jmp 0x180002060
jmp 0x1800021cd
jmp 0x1800021cf
jmp 0x1800021d1
jmp 0x1800021d3
cmp edx, 0xa
jl 0x1800021e7
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
je 0x1800021e7
jmp 0x1800021e5
lea rax, [r13 + 2]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp]
mov r12d, dword [rax + 0x90]
add r12, r13
mov r15d, dword [r12 + 0xc]
test r15, r15
je 0x1800026d0
add r15, r13
sub rsp, 0x20
mov rcx, qword [rbp - 8]
call fcn.1800027b0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x180002240
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002273
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x1800026ca
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rdi, r9
add r10, r9
mov esi, dword [rdi]
add rsi, r9
xor eax, eax
mov rcx, qword [rbp - 0x18]
movzx ebx, byte [rcx + rax + 2]
movzx edx, byte [rsi + rax]
test bl, bl
je 0x1800022a6
add rax, 1
cmp bl, dl
je 0x180002291
cmp bl, dl
je 0x1800022b4
add rdi, 4
add r10, 2
jmp 0x180002286
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r15
call r9
add rsp, 0x20
mov r14, rax
mov ecx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x180002493
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x180002493
sub rsp, 0x20
mov rcx, qword [rbp - 8]
call fcn.1800027b0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x180002326
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002359
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x1800026c6
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rdi, r9
add r10, r9
mov rcx, qword [rbp - 0x18]
mov esi, dword [rdi]
add rsi, r9
xor ebx, ebx
movzx eax, byte [rcx + rbx + 2]
movzx edx, byte [rsi + rbx]
test al, al
je 0x18000238c
add rbx, 1
cmp al, dl
je 0x180002377
cmp al, dl
je 0x18000239a
add rdi, 4
add r10, 2
jmp 0x180002370
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r15
call r9
mov rcx, qword [rbp - 8]
call fcn.1800027b0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x1800023dd
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002410
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x1800026c8
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rdi, r9
add r10, r9
mov rcx, qword [rbp - 0x18]
mov esi, dword [rdi]
add rsi, r9
xor ebx, ebx
movzx eax, byte [rcx + rbx + 2]
movzx edx, byte [rsi + rbx]
test al, al
je 0x180002443
add rbx, 1
cmp al, dl
je 0x18000242e
cmp al, dl
je 0x180002451
add rdi, 4
add r10, 2
jmp 0x180002427
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r15
call r9
add rsp, 0x20
mov ecx, dword [0x180020a70]
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
cmp dword [0x180020a6c], 0xa
jl 0x18000220e
test eax, eax
jne 0x1800022f4
jmp 0x18000220e
mov edx, dword [r12]
mov ebx, dword [r12 + 0x10]
add rdx, r13
mov qword [rbp - 0x20], rdx
add rbx, r13
mov qword [rbp - 0x10], rbx
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete bl
cmp eax, 0xa
setl cl
or cl, bl
test cl, cl
je 0x1800024be
mov rcx, qword [rbp - 0x20]
mov rcx, qword [rcx]
test rcx, rcx
je 0x1800026ab
mov rax, qword [rbp - 0x30]
add rax, rcx
test rcx, rcx
movzx r15d, cx
cmovns r15, rax
jmp 0x180002509
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r14
mov rdx, r15
call r9
add rsp, 0x20
mov rcx, qword [rbp - 0x10]
mov qword [rcx], rax
sub rsp, 0x20
mov rcx, qword [rbp - 8]
call fcn.1800027b0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x18000253b
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000256e
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x1800026cc
add r8, r9
mov edx, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rdx, r9
add r10, r9
mov esi, dword [rdx]
add rsi, r9
xor edi, edi
mov rcx, qword [rbp - 0x28]
movzx eax, byte [rcx + rdi + 1]
movzx ebx, byte [rsi + rdi]
test al, al
je 0x1800025a1
add rdi, 1
cmp al, bl
je 0x18000258c
cmp al, bl
je 0x1800025af
add rdx, 4
add r10, 2
jmp 0x180002581
movzx eax, word [r10]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r14
mov rdx, r15
call r9
add rsp, 0x20
mov rcx, qword [rbp - 0x10]
mov qword [rcx], rax
mov ecx, dword [0x180020a70]
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x18000269c
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x18000269c
sub rsp, 0x20
mov rcx, qword [rbp - 8]
call fcn.1800027b0
add rsp, 0x20
mov r9, rax
mov eax, dword [0x180020a84]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x180020a88], 0xa
setl al
or al, cl
test al, al
je 0x180002628
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002657
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x1800026ce
add r8, r9
mov edx, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rdx, r9
add r10, r9
mov esi, dword [rdx]
add rsi, r9
xor edi, edi
mov rcx, qword [rbp - 0x28]
movzx eax, byte [rcx + rdi + 1]
movzx ebx, byte [rsi + rdi]
test al, al
je 0x18000268a
add rdi, 1
cmp al, bl
je 0x180002675
cmp al, bl
je 0x1800024e6
add rdx, 4
add r10, 2
jmp 0x18000266a
add qword [rbp - 0x20], 8
add qword [rbp - 0x10], 8
jmp 0x1800024aa
add r12, 0x14
cmp eax, 0xa
jl 0x1800021fd
and edx, 1
je 0x1800021fd
jmp 0x1800021e5
jmp 0x1800026c6
jmp 0x1800026c8
jmp 0x1800026ca
jmp 0x1800026cc
jmp 0x1800026ce
mov rax, qword [rbp]
mov eax, dword [rax + 0x28]
add rax, r13
sub rsp, 0x20
call rax
add rsp, 0x20
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x180002797
mov ecx, dword [0x180020a70]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x180002797
mov rsi, qword [rbp]
cmp eax, 0xa
jl 0x180002720
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x1800027a8
mov rax, qword [rbp]
mov eax, dword [rax + 0x28]
add rax, r13
sub rsp, 0x20
call rax
add rsp, 0x20
cmp dword [0x180020a6c], 0xa
jl 0x180002763
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x180002763
mov eax, dword [rsi + 0x28]
add rax, r13
sub rsp, 0x20
call rax
add rsp, 0x20
mov eax, dword [rsi + 0x28]
jmp 0x180002727
mov rax, qword [rbp]
mov eax, dword [rax + 0x28]
add rax, r13
sub rsp, 0x20
call rax
add rsp, 0x20
mov eax, dword [0x180020a6c]
cmp eax, 0xa
jl 0x180002797
mov ecx, dword [0x180020a70]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x18000270c
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
jmp 0x1800027a8