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 ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
mov eax, 0x10
call entry0
sub rsp, rax
mov r10, rsp
mov eax, 0x10
call entry0
sub rsp, rax
mov r8, rsp
cmp edx, 0xa
jl 0x180001102
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x180001250
lea r9, section..data
nop dword [rax]
mov edi, 4
mov rsi, r10
mov r14, r9
jmp 0x180001128
add r14, 1
add rsi, 1
lea r11d, [rcx - 1]
imul r11d, ecx
test r11b, 1
sete al
cmp edx, 0xa
setl bl
or bl, al
nop
test bl, bl
je 0x180001140
sub rdi, 1
jb 0x180001170
mov bl, byte [r14]
nop dword [rax]
mov byte [rsi], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180001120
lea eax, [rcx - 1]
imul eax, ecx
and eax, 1
jne 0x180001150
jmp 0x180001120
cmp dword [0x180020a6c], 0xa
jl 0x180001262
mov eax, dword [0x180020a70]
lea esi, [rax - 1]
imul esi, eax
and esi, 1
je 0x180001262
mov eax, 0x10
call entry0
sub rsp, rax
mov rax, rsp
cmp edx, 0xa
jl 0x1800011b1
and r11d, 1
jne 0x180001260
mov edi, 4
mov r8, r9
jmp 0x1800011c8
add r8, 1
add rax, 1
lea esi, [rcx - 1]
imul esi, ecx
test sil, 1
sete r10b
cmp edx, 0xa
setl bl
or bl, r10b
nop
test bl, bl
je 0x1800011e0
sub rdi, 1
jb 0x180001210
mov bl, byte [r8]
nop dword [rax]
mov byte [rax], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x1800011c0
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
jne 0x1800011f0
jmp 0x1800011c0
mov eax, 0x10
call entry0
sub rsp, rax
mov r10, rsp
mov eax, 0x10
call entry0
sub rsp, rax
mov r8, rsp
cmp edx, 0xa
jl 0x180001110
and esi, 1
je 0x180001110
nop word cs:[rax + rax]
nop dword [rax]
jmp 0x180001250
jmp 0x180001260
mov r12d, dword [r10]
test r12, r12
je 0x180001397
xor esi, esi
cmp r12d, 0x10
jb 0x180001363
lea rax, [r12 - 1]
cmp rax, 0x400
jae 0x180001363
mov esi, r12d
and esi, 0xfffffff0
lea rbx, [rsi - 0x10]
mov rax, rbx
shr rax, 4
add rax, 1
mov r9d, eax
and r9d, 1
test rbx, rbx
je 0x180001329
mov rdi, r9
sub rdi, rax
xor eax, eax
lea r10, section..data
movaps xmm0, xmmword [str._f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f]
nop word cs:[rax + rax]
nop dword [rax]
mov ebx, eax
and ebx, 0x3e0
movups xmm1, xmmword [rbx + r10 + 4]
movups xmm2, xmmword [rax + r10 + 0x404]
xorps xmm2, xmm1
movups xmm1, xmmword [rax + r10 + 0x414]
xorps xmm2, xmm0
movups xmmword [rax + r10 + 0x404], xmm2
lea ebx, [rax + 0x10]
and ebx, 0x3f0
movups xmm2, xmmword [rbx + r10 + 4]
xorps xmm1, xmm0
xorps xmm1, xmm2
movups xmmword [rax + r10 + 0x414], xmm1
add rax, 0x20
add rdi, 2
jne 0x1800012d0
jmp 0x18000132b
xor eax, eax
test r9, r9
je 0x18000135e
mov ebx, eax
and ebx, 0x3f0
lea rdi, section..data
movups xmm0, xmmword [rbx + rdi + 4]
movups xmm1, xmmword [rax + 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 [rax + rdi + 0x404], xmm1
cmp rsi, r12
je 0x180001397
lea rax, section..data
nop word [rax + rax]
mov edi, esi
and edi, 0x3ff
movzx ebx, byte [rdi + rax + 4]
xor bl, byte [rsi + rax + 0x404]
xor bl, 0xc
mov byte [rsi + rax + 0x404], bl
add rsi, 1
cmp rsi, r12
jb 0x180001370
cmp edx, 0xa
jl 0x1800013a6
and r11d, 1
jne 0x180001500
lea r14, section..data
lea r11, [r12 + r14]
add r11, 0x404
mov r9d, 4
mov rax, r8
mov rdi, r11
jmp 0x1800013d8
add rdi, 1
add rax, 1
lea esi, [rcx - 1]
imul esi, ecx
test sil, 1
sete r10b
cmp edx, 0xa
setl bl
or bl, r10b
nop
test bl, bl
je 0x1800013f0
sub r9, 1
jae 0x180001490
cmp dword [0x180020a6c], 0xa
jl 0x180001512
mov eax, dword [0x180020a70]
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
je 0x180001512
cmp edx, 0xa
jl 0x18000142e
and esi, 1
jne 0x180001510
mov edi, 4
mov rbx, r8
mov r9, r11
jmp 0x180001448
add r9, 1
add rbx, 1
lea esi, [rcx - 1]
imul esi, ecx
test sil, 1
sete r10b
cmp edx, 0xa
setl al
or al, r10b
nop
test al, al
je 0x180001460
sub rdi, 1
jb 0x1800014d0
mov al, byte [r9]
nop dword [rax]
mov byte [rbx], al
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180001440
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
jne 0x180001470
jmp 0x180001440
mov bl, byte [rdi]
nop word cs:[rax + rax]
nop dword [rax]
mov byte [rax], bl
mov ecx, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x1800013d0
lea esi, [rcx - 1]
imul esi, ecx
and esi, 1
jne 0x1800014a0
jmp 0x1800013d0
mov r9d, 4
mov rax, r8
mov rdi, r11
cmp edx, 0xa
jl 0x1800013d8
mov rax, r8
mov rdi, r11
and esi, 1
je 0x1800013d8
nop word cs:[rax + rax]
nop
jmp 0x180001500
jmp 0x180001510
add r11, 4
mov r9d, dword [r8]
test r9, r9
je 0x18000167a
xor eax, eax
cmp r9d, 0x20
jb 0x18000164f
lea rdx, [r9 - 1]
cmp rdx, 0x400
jae 0x18000164f
lea rcx, [r12 + r14]
add rcx, 0x408
lea rdx, [r9 + r14]
add rdx, 4
cmp rcx, rdx
jae 0x180001578
lea rcx, [r9 + r12]
add rcx, r14
add rcx, 0x408
lea rdx, str.InCHfQVpRRjWaZemDAhQfGechEGAbUEjHYgbHgnQpiPQfnZwPZYXCOOgfJIvbALVeRlCnYcbPxTPdHbxQgaIwVnsgmAZZepHDFdIFrTFVCafiyQFrYtoHtloGBVAfZjSXCJVTSAcyjiGdjzzoSdxfgWlqLyPfoslKJYkJpLzwXfFaYUvnEqzglmoZuijfJtJeBeGefXydsWwDcpafSpibxdpmakzLZUBZXElGpfikrcWSpIfQjVnBhVVoUkEzkdndHTyOfLgaiLYtQYShBxdtrRzGPdTxvlFerCAxqYFnAdVEMoGZOAXkjAlvrCkBtlFgakVCYaGbXwIxXPhAeBJhyjybbKZgzzDvfGKvFFAZxfJsrIpaGOJKhiyBOyiGpCdTXbDQcHqCTFshDPPCuPpXOrHKUDHSyAVhmTFyhBuuxtgesaEsRBVrfIlbdBVCRdjeDAzhypqRRfXXEOWuIKvowliITnUYQWnkYfqWkAxtbSqVqiOPivmIrfMBnxEMAYoPOFryGrWPXzlHIPUuRbQRvBxjgJbCkeGonTjoMAiZumhOaSROioeaXOEwJpJxmnXqEzetHUPhffgPlgshzMAZSKJnGzfyHcIOsYMmerOCgyKOwxcAgoDwKnctxRRFDgZkxDvoUSmQwcxitpkCGFnZlxLJeFXRRKSsMxsrGykiXruTviVDeMfMlUFOscyysexLXdROYStBThiocGAIUEFMILPXxhCwmHqYhifqJjLGTKQkwsIFsqSanLFMynpZJSJYUsAmnoBnzayvthltjxrYjKMsUboVELeocfrImZqBiTQiQMRiZrIbUEDJgYJUvVnKwIVpunRjlXWhpFWQkjWCUSOUUVHDRdOkJgfjCgiKSKAXdKjwmYlUvdnntyTFFyxzVVnsLigojclJXgApRbIMnTORGHzCJZTvbOnqDFnMJAOwXXjWIcVuVYOQEOmWgbsFWOZAuIYLOhtGKVGZOyExYIwiexrjGEBsqqTrEkryjKloAqFsEjtfjsQAqHZnCP
cmp rcx, rdx
jbe 0x180001578
xor eax, eax
jmp 0x18000164f
mov eax, r9d
and eax, 0xffffffe0
lea rbx, [rax - 0x20]
mov rdx, rbx
shr rdx, 5
add rdx, 1
mov r8d, edx
and r8d, 1
test rbx, rbx
je 0x180001613
lea rdi, [r12 + r14]
add rdi, 0x438
mov rbx, r8
sub rbx, rdx
xor esi, esi
mov edx, esi
and edx, 0x3c0
movups xmm0, xmmword [rdx + r14 + 4]
movups xmm1, xmmword [rdx + r14 + 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 + r14 + 4]
xorps xmm0, xmm1
movups xmm1, xmmword [rdx + r14 + 0x14]
xorps xmm1, xmm3
movups xmmword [rdi + rsi - 0x10], xmm0
movups xmmword [rdi + rsi], xmm1
add rsi, 0x40
add rbx, 2
jne 0x1800015ac
jmp 0x180001615
xor esi, esi
test r8, r8
je 0x18000164a
mov edx, esi
and edx, 0x3e0
movups xmm0, xmmword [rdx + r14 + 4]
movups xmm1, xmmword [rdx + r14 + 0x14]
movups xmm2, xmmword [r11 + rsi]
xorps xmm2, xmm0
movups xmm0, xmmword [r11 + rsi + 0x10]
xorps xmm0, xmm1
movups xmmword [r11 + rsi], xmm2
movups xmmword [r11 + rsi + 0x10], xmm0
cmp rax, r9
je 0x18000167a
lea rdx, [r12 + r14]
add rdx, 0x408
nop word [rax + rax]
mov ecx, eax
and ecx, 0x3ff
movzx ecx, byte [rcx + r14 + 4]
xor byte [rdx + rax], cl
add rax, 1
cmp rax, r9
jb 0x180001660
cmp dword [0x180020a7c], 0xa
jl 0x1800016a2
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800016a2
nop word cs:[rax + rax]
nop
jmp 0x1800016a0
add r12, 0x408
mov qword [rbp - 8], r11
movsxd rax, dword [0x180004440]
lea rsi, [rax + r14]
add rsi, 0x404
mov rdi, r11
nop word cs:[rax + rax]
nop dword [rax]
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x1800016d0
mov r13, rdi
nop dword [rax]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x1800016e0
mov r14, r13
nop
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x1800016f0
mov qword [rbp - 0x18], r14
nop
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001700
mov rbx, r14
nop dword [rax]
cmp byte [rbx], 0
lea rbx, [rbx + 1]
jne 0x180001710
mov r15, rbx
nop dword [rax]
cmp byte [r15], 0
lea r15, [r15 + 1]
jne 0x180001720
sub rsp, 0x20
mov rcx, rdi
call fcn.180002820
add rsp, 0x20
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x18000175b
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d20
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000178a
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d30
mov qword [rbp], 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]
nop
mov esi, dword [rdi]
add rsi, r9
mov rdx, r13
nop dword [rax + rax]
movzx ecx, byte [rdx]
movzx eax, byte [rsi]
test cl, cl
je 0x1800017d6
add rsi, 1
add rdx, 1
cmp cl, al
je 0x1800017c0
cmp cl, al
je 0x1800017e4
add rdi, 4
add r10, 2
jmp 0x1800017b0
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 [0x180020a84], 0xa
jl 0x18000181e
mov eax, dword [0x180020a88]
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 [0x180020a8c], 0xa
jl 0x18000184d
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d50
add r8, r10
mov edx, dword [r10 + rcx + 0x20]
mov edi, dword [r10 + rcx + 0x24]
add rdx, r10
add rdi, r10
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 0x180001886
add rsi, 1
add rax, 1
cmp bl, cl
je 0x180001870
cmp bl, cl
je 0x180001894
add rdx, 4
add rdi, 2
jmp 0x180001860
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]
call fcn.180002820
add rsp, 0x20
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x1800018f7
mov eax, dword [0x180020a88]
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 [0x180020a8c], 0xa
jl 0x180001926
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001d70
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
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 0x180001968
add rsi, 1
cmp al, bl
je 0x180001950
cmp al, bl
je 0x180001976
add rdx, 4
add r9, 2
jmp 0x180001940
movzx eax, word [r9]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rdi, qword [rbp - 0x10]
mov edx, dword [rdi + 0x50]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
mov r14, rax
mov ebx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
cmp ecx, 0xa
jl 0x180001de2
test eax, eax
je 0x180001de2
movsxd rsi, dword [0x180004440]
cmp dword [0x180020a7c], 0xa
mov rdx, qword [rbp - 8]
mov rcx, rdx
jl 0x180001a00
mov eax, dword [0x180020a80]
lea ebx, [rax - 1]
imul ebx, eax
mov rcx, rdx
and ebx, 1
jne 0x180001d80
nop dword [rax]
cmp byte [rcx], 0
lea rcx, [rcx + 1]
jne 0x180001a00
mov r14, rcx
nop dword [rax]
cmp byte [r14], 0
lea r14, [r14 + 1]
jne 0x180001a10
mov r13, r14
nop dword [rax]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001a20
nop dword [rax + rax]
cmp byte [r13], 0
lea r13, [r13 + 1]
jne 0x180001a30
mov rdi, r13
nop
cmp byte [rdi], 0
lea rdi, [rdi + 1]
jne 0x180001a40
mov r15, rdi
nop dword [rax]
cmp byte [r15], 0
lea r15, [r15 + 1]
jne 0x180001a50
sub rsp, 0x20
mov qword [rbp], rcx
call fcn.180002820
add rsp, 0x20
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x180001a8c
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001d90
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001abb
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001da0
mov qword [rbp - 0x10], rsi
add r8, r9
mov esi, dword [r9 + rcx + 0x20]
mov r10d, dword [r9 + rcx + 0x24]
add rsi, r9
add r10, r9
nop word cs:[rax + rax]
nop dword [rax]
mov edx, dword [rsi]
add rdx, r9
mov rcx, r14
nop dword [rax + rax]
movzx eax, byte [rcx]
movzx ebx, byte [rdx]
test al, al
je 0x180001b06
add rdx, 1
add rcx, 1
cmp al, bl
je 0x180001af0
cmp al, bl
je 0x180001b14
add rsi, 4
add r10, 2
jmp 0x180001ae0
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 [0x180020a84], 0xa
jl 0x180001b4e
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001db0
movsxd rax, dword [r10 + 0x3c]
mov eax, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rax + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001b7d
mov ecx, dword [0x180020a90]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
jne 0x180001dc0
add r8, r10
mov edi, dword [r10 + rax + 0x20]
mov esi, dword [r10 + rax + 0x24]
add rdi, r10
add rsi, r10
lea r14, section..data
nop word [rax + rax]
mov eax, dword [rdi]
add rax, r10
mov rbx, r13
nop dword [rax + rax]
movzx ecx, byte [rbx]
movzx edx, byte [rax]
test cl, cl
je 0x180001bc6
add rax, 1
add rbx, 1
cmp cl, dl
je 0x180001bb0
cmp cl, dl
je 0x180001bd4
add rdi, 4
add rsi, 2
jmp 0x180001ba0
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, r15
mov r8, r15
call r10
add rsp, 0x10
mov rcx, qword [rbp]
call fcn.180002820
add rsp, 0x20
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x180001c37
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001dd0
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180001c66
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180001de0
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 0x180001ca9
add rsi, 1
cmp al, bl
je 0x180001c90
cmp al, bl
je 0x180001cb7
add rdx, 4
add rcx, 2
jmp 0x180001c80
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
mov rax, qword [rbp - 0x10]
mov edx, dword [rax + r14 + 0x454]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
xor ecx, ecx
call r10
add rsp, 0x20
cmp dword [0x180020a7c], 0xa
mov r11, qword [rbp - 8]
jl 0x1800016ad
mov eax, dword [0x180020a80]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800016ad
jmp 0x1800016a0
jmp 0x180001d20
jmp 0x180001d30
jmp 0x180001d40
jmp 0x180001d50
jmp 0x180001d60
jmp 0x180001d70
jmp 0x180001d80
jmp 0x180001d90
jmp 0x180001da0
jmp 0x180001db0
jmp 0x180001dc0
jmp 0x180001dd0
jmp 0x180001de0
cmp ecx, 0xa
jl 0x180001df2
test eax, eax
je 0x180001df2
nop dword [rax + rax]
jmp 0x180001df0
lea r9, [rdi + 0x108]
xor r8d, r8d
movzx eax, word [rdi + 6]
cmp r8, rax
jae 0x180001fc2
mov eax, dword [0x180020a74]
mov edx, dword [0x180020a78]
mov qword [rbp - 8], r8
lea rcx, [r8 + r8*4]
lea r10, [r9 + rcx*8]
add r10, 0x14
lea r11, [r9 + rcx*8]
add r11, 0x10
lea r12, [r9 + rcx*8]
add r12, 0xc
cmp edx, 0xa
jl 0x180001e49
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180001fb0
mov ecx, dword [r10]
lea rbx, section..data
add rcx, rbx
add rcx, 0x404
mov esi, dword [r11]
mov edi, dword [r12]
add rdi, r14
jmp 0x180001e71
add rcx, 1
add rdi, 1
lea r8d, [rax - 1]
imul r8d, eax
test r8b, 1
sete r15b
cmp edx, 0xa
setl bl
or bl, r15b
nop word [rax + rax]
test bl, bl
je 0x180001e90
sub rsi, 1
jb 0x180001ec8
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rdi], al
mov eax, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180001e69
lea ebx, [rax - 1]
imul ebx, eax
and ebx, 1
je 0x180001e69
movzx eax, byte [rcx]
mov byte [rdi], al
jmp 0x180001ea0
mov ebx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
cmp ecx, 0xa
jl 0x180001f8c
test esi, esi
je 0x180001f8c
cmp edx, 0xa
jl 0x180001efd
and r8d, 1
jne 0x180001fc0
mov ecx, dword [r10]
lea rbx, section..data
add rcx, rbx
add rcx, 0x404
mov r8d, dword [r11]
mov edi, dword [r12]
add rdi, r14
jmp 0x180001f25
add rcx, 1
add rdi, 1
lea esi, [rax - 1]
imul esi, eax
test sil, 1
sete r15b
cmp edx, 0xa
setl bl
or bl, r15b
nop dword [rax]
test bl, bl
je 0x180001f40
sub r8, 1
jb 0x180001f78
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rdi], al
mov eax, dword [0x180020a74]
mov edx, dword [0x180020a78]
cmp edx, 0xa
jl 0x180001f1d
lea esi, [rax - 1]
imul esi, eax
and esi, 1
je 0x180001f1d
movzx eax, byte [rcx]
mov byte [rdi], al
jmp 0x180001f50
cmp edx, 0xa
jl 0x180001e49
and esi, 1
je 0x180001e49
jmp 0x180001fb0
mov r8, qword [rbp - 8]
add r8, 1
cmp ecx, 0xa
mov rdi, qword [rbp - 0x10]
jl 0x180001dfc
test esi, esi
je 0x180001dfc
jmp 0x180001df0
jmp 0x180001fb0
jmp 0x180001fc0
mov rdx, qword [rdi + 0x30]
mov rax, r14
sub rax, rdx
cmp ecx, 0xa
jl 0x180001fde
lea edx, [rbx - 1]
imul edx, ebx
and edx, 1
je 0x180001fde
jmp 0x180001fdc
mov rdx, qword [rbp - 0x10]
mov edx, dword [rdx + 0xb0]
add rdx, r14
movabs r8, 0x1fffffff8
cmp dword [rdx], 0
je 0x1800021a5
mov edi, dword [rdx + 4]
cmp rdi, 8
jb 0x180002171
cmp ecx, 0xa
jl 0x18000201f
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
jne 0x18000219f
add rdi, r8
shr rdi, 1
mov r9d, edi
xor r10d, r10d
cmp r10, r9
je 0x180002171
movzx edi, word [rdx + r10*2 + 8]
mov esi, edi
shr esi, 0xc
mov r11d, edi
and r11d, 0xfff
cmp edi, 0xa000
jae 0x180002076
cmp esi, 3
jne 0x180002108
cmp ecx, 0xa
jl 0x18000206e
lea ecx, [rbx - 1]
imul ecx, ebx
and ecx, 1
jne 0x180002144
mov rcx, r11
jmp 0x18000211f
cmp esi, 0xa
jne 0x180002108
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
mov r11d, r11d
cmp ecx, 0xa
jl 0x1800020b3
test edi, edi
je 0x1800020b3
mov ecx, dword [rdx]
lea rsi, [r11 + r14]
add qword [rcx + rsi], rax
mov esi, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea edi, [rsi - 1]
imul edi, esi
and edi, 1
cmp ecx, 0xa
jl 0x1800020e2
test edi, edi
je 0x1800020e2
lea rsi, [r11 + r14]
jmp 0x1800020dc
add r10, 1
cmp ecx, 0xa
jl 0x18000202b
test edi, edi
je 0x18000202b
jmp 0x18000219f
mov ecx, dword [rdx]
add qword [rsi + rcx], rax
mov ecx, dword [rdx]
lea rsi, [r11 + r14]
add qword [rcx + rsi], rax
mov ebx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
cmp ecx, 0xa
jl 0x180002108
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
jne 0x1800020dc
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
cmp ecx, 0xa
jl 0x1800020c2
test edi, edi
je 0x1800020c2
jmp 0x1800021a1
mov esi, dword [rdx]
lea rsi, [r14 + rsi*4]
add dword [rsi + rcx*4], eax
mov ebx, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
cmp ecx, 0xa
jl 0x180002108
lea esi, [rbx - 1]
imul esi, ebx
and esi, 1
je 0x180002108
mov ecx, r11d
lea rsi, [r14 + rcx*4]
mov edi, dword [rdx]
add dword [rsi + rdi*4], eax
mov edi, dword [rdx]
add dword [rsi + rdi*4], eax
cmp dword [0x180020a6c], 0xa
jl 0x18000211f
mov edi, dword [0x180020a70]
lea ebx, [rdi - 1]
imul ebx, edi
and ebx, 1
jne 0x18000214b
jmp 0x18000211f
lea edi, [rbx - 1]
imul edi, ebx
and edi, 1
cmp ecx, 0xa
jl 0x180002183
test edi, edi
jne 0x1800021a3
mov esi, dword [rdx + 4]
add rdx, rsi
cmp ecx, 0xa
jl 0x180001ff5
test edi, edi
je 0x180001ff5
jmp 0x180001fdc
jmp 0x18000219f
jmp 0x1800021a1
jmp 0x1800021a3
cmp ecx, 0xa
jl 0x1800021b7
lea eax, [rbx - 1]
imul eax, ebx
and eax, 1
je 0x1800021b7
jmp 0x1800021b5
lea rax, [r14 + 2]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x10]
mov eax, dword [rax + 0x90]
add rax, r14
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x20]
mov r12d, dword [rax + 0xc]
test r12, r12
je 0x18000279f
add r12, r14
sub rsp, 0x20
jmp 0x1800021fe
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r12
call r9
mov rcx, qword [rbp]
call fcn.180002820
add rsp, 0x20
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x18000222c
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002783
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000225b
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002785
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rdi, r9
add rcx, r9
mov esi, dword [rdi]
add rsi, r9
mov rbx, r13
movzx eax, byte [rbx]
movzx edx, byte [rsi]
test al, al
je 0x18000228c
add rsi, 1
add rbx, 1
cmp al, dl
je 0x180002276
cmp al, dl
je 0x18000229a
add rdi, 4
add rcx, 2
jmp 0x18000226e
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r12
call r9
add rsp, 0x20
mov r15, rax
mov eax, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x18000237f
test edx, edx
je 0x18000237f
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002820
add rsp, 0x20
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x18000230d
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002787
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000233c
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002789
add r8, r9
mov edi, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rdi, r9
add rcx, r9
mov esi, dword [rdi]
add rsi, r9
mov rbx, r13
movzx eax, byte [rbx]
movzx edx, byte [rsi]
test al, al
je 0x18000236d
add rsi, 1
add rbx, 1
cmp al, dl
je 0x180002357
cmp al, dl
je 0x1800021ea
add rdi, 4
add rcx, 2
jmp 0x18000234f
cmp ecx, 0xa
jl 0x18000238c
test edx, edx
jne 0x180002799
mov rdx, qword [rbp - 0x20]
mov ebx, dword [rdx]
mov r12d, dword [rdx + 0x10]
add r12, r14
add rbx, r14
mov qword [rbp - 0x28], rbx
mov rdx, qword [rbp - 0x28]
mov rdx, qword [rdx]
test rdx, rdx
je 0x180002761
mov rax, qword [rbp - 0x30]
add rax, rdx
test rdx, rdx
movzx ecx, dx
cmovns rcx, rax
mov qword [rbp - 8], rcx
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002820
add rsp, 0x20
mov r10, rax
cmp dword [0x180020a84], 0xa
jl 0x1800023f7
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002793
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x180002426
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002795
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 rsi, qword [rbp - 0x18]
movzx eax, byte [rsi]
movzx ecx, byte [rdi]
test al, al
je 0x180002458
add rdi, 1
add rsi, 1
cmp al, cl
je 0x180002442
cmp al, cl
je 0x180002466
add rdx, 4
add r9, 2
jmp 0x180002439
movzx eax, word [r9]
mov eax, dword [r8 + rax*4]
add r10, rax
sub rsp, 0x20
mov rcx, r15
mov rdx, qword [rbp - 8]
call r10
add rsp, 0x20
mov qword [r12], rax
mov eax, dword [0x180020a70]
mov ecx, dword [0x180020a6c]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
cmp ecx, 0xa
jl 0x180002745
test edx, edx
je 0x180002745
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002820
add rsp, 0x20
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x1800024df
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x180002797
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000250e
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x18000279b
add r8, r9
mov edx, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rdx, r9
add rcx, r9
mov edi, dword [rdx]
add rdi, r9
mov rsi, qword [rbp - 0x18]
movzx eax, byte [rsi]
movzx ebx, byte [rdi]
test al, al
je 0x180002540
add rdi, 1
add rsi, 1
cmp al, bl
je 0x18000252a
cmp al, bl
je 0x18000254e
add rdx, 4
add rcx, 2
jmp 0x180002521
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r15
mov rdx, qword [rbp - 8]
call r9
add rsp, 0x20
mov qword [r12], rax
cmp dword [0x180020a6c], 0xa
jl 0x1800025ad
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800025ad
jmp 0x18000279d
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r10, rax
sub rsp, 0x20
mov rcx, r15
mov rdx, qword [rbp - 8]
call r10
add rsp, 0x20
mov qword [r12], rax
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002820
add rsp, 0x20
mov r9, rax
cmp dword [0x180020a84], 0xa
jl 0x1800025df
mov eax, dword [0x180020a88]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x18000278b
movsxd rax, dword [r9 + 0x3c]
mov ecx, dword [r9 + rax + 0x88]
mov r8d, dword [r9 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x18000260e
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x18000278d
add r8, r9
mov edx, dword [r9 + rcx + 0x20]
mov ecx, dword [r9 + rcx + 0x24]
add rdx, r9
add rcx, r9
mov edi, dword [rdx]
add rdi, r9
mov rsi, qword [rbp - 0x18]
movzx eax, byte [rsi]
movzx ebx, byte [rdi]
test al, al
je 0x180002640
add rdi, 1
add rsi, 1
cmp al, bl
je 0x18000262a
cmp al, bl
je 0x18000264e
add rdx, 4
add rcx, 2
jmp 0x180002621
movzx eax, word [rcx]
mov eax, dword [r8 + rax*4]
add r9, rax
sub rsp, 0x20
mov rcx, r15
mov rdx, qword [rbp - 8]
call r9
add rsp, 0x20
mov qword [r12], rax
mov esi, dword [0x180020a70]
mov edi, dword [0x180020a6c]
sub rsp, 0x20
mov rcx, qword [rbp]
call fcn.180002820
add rsp, 0x20
mov ecx, dword [0x180020a88]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete cl
cmp dword [0x180020a84], 0xa
mov r10, rax
setl al
or al, cl
cmp edi, 0xa
jl 0x18000273b
lea ecx, [rsi - 1]
imul ecx, esi
and ecx, 1
je 0x18000273b
test al, al
je 0x18000278f
movsxd rax, dword [r10 + 0x3c]
mov ecx, dword [r10 + rax + 0x88]
mov r8d, dword [r10 + rcx + 0x1c]
cmp dword [0x180020a8c], 0xa
jl 0x1800026f7
mov eax, dword [0x180020a90]
lea edx, [rax - 1]
imul edx, eax
and edx, 1
jne 0x180002791
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, qword [rbp - 0x18]
movzx eax, byte [rsi]
movzx ebx, byte [rdi]
test al, al
je 0x180002729
add rdi, 1
add rsi, 1
cmp al, bl
je 0x180002713
cmp al, bl
je 0x18000258d
add rdx, 4
add rcx, 2
jmp 0x18000270a
test al, al
jne 0x1800023f7
jmp 0x180002793
add qword [rbp - 0x28], 8
add r12, 8
cmp ecx, 0xa
jl 0x1800023a0
test edx, edx
je 0x1800023a0
jmp 0x180002799
add qword [rbp - 0x20], 0x14
cmp ecx, 0xa
jl 0x1800021d0
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x1800021d0
jmp 0x1800021b5
jmp 0x180002783
jmp 0x180002785
jmp 0x180002787
jmp 0x180002789
jmp 0x18000278b
jmp 0x18000278d
jmp 0x18000278f
jmp 0x180002791
jmp 0x180002793
jmp 0x180002795
jmp 0x180002797
jmp 0x180002799
jmp 0x18000279b
jmp 0x18000279d
mov rax, qword [rbp - 0x10]
mov eax, dword [rax + 0x28]
add rax, r14
sub rsp, 0x20
call rax
add rsp, 0x20
cmp dword [0x180020a6c], 0xa
jl 0x18000280b
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x18000280b
mov rsi, qword [rbp - 0x10]
mov eax, dword [rsi + 0x28]
add rax, r14
sub rsp, 0x20
call rax
add rsp, 0x20
mov eax, dword [rsi + 0x28]
add rax, r14
sub rsp, 0x20
call rax
add rsp, 0x20
cmp dword [0x180020a6c], 0xa
jl 0x18000280b
mov eax, dword [0x180020a70]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x1800027d1
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret