Function at 0x18017cc00
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x228
mov rax, qword [0x18048aea8]
xor rax, rsp
mov qword [rsp + 0x210], rax
mov rbp, r9
mov r14, r8
mov rdi, rdx
mov r13, rcx
mov qword [rsp + 0x50], rcx
movzx r15d, byte [r8]
mov byte [rsp + 0x38], r15b
mov esi, 1
test r15b, r15b
jne 0x18017cc91
mov rbx, 0xffffffffffffffff
inc rbx
cmp byte [rdx + rbx], 0
jne 0x18017cc51
mov r9, rbx
mov r8, rdi
lea rcx, [rsp + 0x110]
call fcn.180171990
lea rdx, [r14 + 1]
lea r9d, [rbp - 1]
mov qword [rsp + 0x20], rdx
mov r8, rax
lea rdx, str._s_.s
mov rcx, r13
call fcn.180163900
jmp 0x18017dcd1
lea eax, [r15 - 3]
cmp al, 3
ja 0x18017dc81
mov rcx, qword [rcx + 0x30]
mov rax, qword [rcx + r13 + 0x78]
cmp qword [rcx + r13 + 0x88], rax
jb 0x18017ccbd
movzx edx, sil
mov rcx, r13
call qword [0x18048f928]
mov rbp, qword [r13 + 0x30]
add rbp, 0x30
add rbp, r13
mov qword [rsp + 0xc8], rbp
mov r12, qword [rbp + 0x48]
mov qword [rsp + 0xc0], r12
mov qword [rsp + 0xd0], r12
mov rbx, 0xffffffffffffffff
mov qword [rbp + 0x48], rbx
mov rax, qword [r13 + 0x58]
mov qword [rsp + 0x70], rax
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rdi + r8], 0
jne 0x18017cd00
mov rdx, rdi
mov rcx, r13
call fcn.180172d80
mov qword [rsp + 0xa8], rax
mov byte [rsp + 0x30], 0
cmp r15b, 4
jb 0x18017cd90
movzx r15d, byte [r14 + 1]
mov byte [rsp + 0x30], r15b
mov esi, 2
lea ecx, [r15 - 1]
cmp cl, sil
jbe 0x18017cd90
inc rbx
cmp byte [rdi + rbx], 0
jne 0x18017cd40
mov r9, rbx
mov r8, rdi
lea rcx, [rsp + 0x110]
call fcn.180171990
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], 3
mov r9d, 1
mov r8, rax
lea rdx, str._s:_bytecode_type_version_mismatch__expected___d.._d___got__d_
mov rcx, r13
call fcn.180163900
nop
mov qword [rbp + 0x48], r12
mov eax, 1
jmp 0x18017dcd3
xor ebp, ebp
mov ebx, ebp
mov ecx, ebp
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or ebx, eax
add ecx, 7
test dl, dl
js 0x18017cda0
mov r15d, ebx
mov qword [rsp + 0x78], r13
lea rax, [rbx*8]
mov qword [rsp + 0xb8], rax
xor r8d, r8d
mov rdx, rax
mov rcx, r13
call fcn.180170ab0
mov r12, rax
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r15
test ebx, ebx
je 0x18017ce48
mov rdi, rax
nop dword [rax + rax]
mov r8d, ebp
mov ecx, ebp
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017ce10
mov ebx, r8d
lea rdx, [r14 + rsi]
mov rcx, r13
call fcn.180172d80
mov qword [rdi], rax
add rsi, rbx
add rdi, 8
sub r15, 1
jne 0x18017ce00
cmp byte [rsp + 0x30], 3
jne 0x18017cf05
movdqa xmm0, xmmword [str._a_a_a_a_a_a_a_a_a_a_a_a_a_a_a_a]
movups xmmword [rsp + 0xe8], xmm0
movups xmmword [rsp + 0xf8], xmm0
movzx r9d, byte [r14 + rsi]
inc rsi
test r9b, r9b
je 0x18017cf05
nop dword [rax]
mov r8d, ebp
mov ecx, ebp
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017ce90
test r8d, r8d
jne 0x18017ceb3
mov rdx, rbp
jmp 0x18017cebb
lea eax, [r8 - 1]
mov rdx, qword [r12 + rax*8]
movzx ebx, r9b
lea eax, [rbx - 1]
cmp eax, 0x20
jae 0x18017cef4
mov rax, qword [r13 + 0x30]
mov r9, qword [rax + r13 + 0xd80]
test r9, r9
je 0x18017cef4
mov r8d, dword [rdx + 0x14]
add r8d, 0x14
add r8d, edx
add rdx, 0x18
mov rcx, r13
call r9
mov byte [rsp + rbx + 0xe7], al
movzx r9d, byte [r14 + rsi]
inc rsi
test r9b, r9b
jne 0x18017ce80
mov r15d, ebp
mov ecx, ebp
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r15d, eax
add ecx, 7
test dl, dl
js 0x18017cf10
mov dword [rsp + 0x60], r15d
mov ebx, r15d
mov qword [rsp + 0x90], r13
lea rax, [r15*8]
mov qword [rsp + 0xb0], rax
xor r8d, r8d
mov rdx, rax
mov rcx, r13
call fcn.180170ab0
mov rdi, rax
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rbx
mov ebx, ebp
mov dword [rsp + 0x58], ebx
test r15d, r15d
je 0x18017db53
mov qword [rsp + 0x68], rbp
nop
movzx r8d, byte [r13 + 4]
mov edx, 0xb0
mov rcx, r13
call fcn.180170be0
mov rdi, rax
mov qword [rsp + 0x48], rax
mov rcx, qword [r13 + 0x30]
movzx edx, byte [rcx + r13 + 0x50]
and dl, 3
mov byte [rax + 2], dl
mov byte [rax], reloc.WS2_32.dll_inet_addr
movzx ecx, byte [r13 + 4]
mov byte [rax + 1], cl
mov dword [rax + 4], 0
mov byte [rax + 3], 0
lea r12, [rax + 8]
mov qword [rsp + 0x40], r12
mov qword [r12], r12
lea r13, [rax + 0x20]
mov qword [r13], r13
add rax, 0x10
mov qword [rax], rax
mov qword [rdi + 0x18], rbp
mov qword [rdi + 0x28], rbp
mov qword [rdi + 0x30], rbp
lea rax, [rdi + 0x48]
mov qword [rax], rax
lea rax, [rdi + 0x58]
mov qword [rax], rax
lea rax, [rdi + 0x40]
mov qword [rax], rax
lea rax, [rdi + 0x50]
mov qword [rax], rax
lea rax, [rdi + 0x60]
mov qword [rax], rax
lea rax, [rdi + 0x68]
mov qword [rax], rax
lea r15, [rdi + 0x70]
mov rax, r15
neg rax
mov qword [r15], rax
mov qword [rdi + 0x78], rbp
mov qword [rdi + 0x80], rbp
mov qword [rdi + 0x98], rbp
mov qword [rdi + 0xa0], rbp
mov qword [rdi + 0xa8], rbp
mov qword [rdi + 0x8c], rbp
mov dword [rdi + 0x88], ebp
lea rax, [rdi + 0x38]
xor rax, qword [rsp + 0xa8]
mov qword [rdi + 0x38], rax
mov dword [rdi + 0x94], ebx
movzx eax, byte [r14 + rsi]
mov byte [rdi + 6], al
movzx eax, byte [r14 + rsi + 1]
mov byte [rdi + 7], al
movzx eax, byte [r14 + rsi + 2]
mov byte [rdi + 5], al
movzx eax, byte [r14 + rsi + 3]
add rsi, 4
mov byte [rdi + 4], al
cmp byte [rsp + 0x38], 4
jb 0x18017d21a
movzx eax, byte [r14 + rsi]
inc rsi
mov byte [rdi + 3], al
movzx eax, byte [rsp + 0x30]
cmp al, 1
jne 0x18017d173
mov edi, ebp
mov ecx, ebp
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or eax, edi
mov edi, eax
add ecx, 7
test dl, dl
js 0x18017d0b0
test eax, eax
je 0x18017d16b
mov eax, ebp
cmp edi, 0x7f
seta al
add eax, 3
mov dword [rsp + 0x34], eax
lea ebx, [rax + rdi]
mov edx, ebx
mov rax, qword [rsp + 0x48]
movzx r8d, byte [rax + 1]
mov rcx, qword [rsp + 0x50]
call fcn.180170ab0
mov rcx, rax
sub rcx, r15
mov qword [r15], rcx
mov rcx, qword [rsp + 0x48]
mov dword [rcx + 0xac], ebx
cmp edi, 0x7f
jbe 0x18017d13d
movzx ecx, dil
or cl, 0x80
mov byte [rax], cl
mov rcx, qword [r15]
mov eax, edi
shr eax, 7
mov byte [rcx + r15 + 1], al
mov rax, qword [r15]
mov byte [rax + r15 + 2], 0
mov rax, qword [r15]
mov byte [rax + r15 + 3], 0
jmp 0x18017d152
mov byte [rax], dil
mov rax, qword [r15]
mov byte [rax + r15 + 1], 0
mov rax, qword [r15]
mov byte [rax + r15 + 2], 0
mov r9, qword [r15]
add r9, r15
mov r8, rdi
mov ecx, dword [rsp + 0x34]
add rcx, r9
lea rdx, [r14 + rsi]
call sub.VCRUNTIME140.dll_memcpy
add rsi, rdi
jmp 0x18017d215
sub al, 2
cmp al, 1
ja 0x18017d21a
mov r12d, ebp
mov ecx, ebp
nop dword [rax]
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r12d, eax
add ecx, 7
test dl, dl
js 0x18017d190
test r12d, r12d
je 0x18017d36a
lea rbx, [r14 + rsi]
mov edi, r12d
mov rax, qword [rsp + 0x48]
movzx r8d, byte [rax + 1]
mov edx, r12d
mov rcx, qword [rsp + 0x50]
call fcn.180170ab0
mov rcx, rax
sub rcx, r15
mov qword [r15], rcx
mov rcx, qword [rsp + 0x48]
mov dword [rcx + 0xac], r12d
mov r8d, r12d
mov rdx, rbx
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
add rsi, rdi
cmp byte [rsp + 0x30], 3
jne 0x18017d210
mov rcx, qword [r15]
add rcx, r15
lea r8, [rsp + 0xe8]
call fcn.18017cab0
mov r12, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov ebx, ebp
mov ecx, ebp
nop
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or ebx, eax
add ecx, 7
test dl, dl
js 0x18017d220
movsxd rdx, ebx
movabs rax, 0x3fffffffffffffff
cmp rdx, rax
ja 0x18017dcf7
lea rdx, [rdx*4]
movzx r8d, byte [rdi + 1]
mov rcx, qword [rsp + 0x50]
call fcn.180170ab0
mov rcx, r13
sub rcx, rax
mov qword [r13], rcx
mov dword [rdi + 0x98], ebx
mov r8d, ebp
test ebx, ebx
jle 0x18017d2a2
mov rdx, rbp
nop
mov ecx, dword [r14 + rsi]
add rsi, 4
mov rax, r13
sub rax, qword [r13]
mov dword [rdx + rax], ecx
inc r8d
lea rdx, [rdx + 4]
cmp r8d, dword [rdi + 0x98]
jl 0x18017d280
sub r13, qword [r13]
mov qword [rdi + 0x18], r13
mov ebx, ebp
mov ecx, ebp
nop
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or ebx, eax
add ecx, 7
test dl, dl
js 0x18017d2b0
movsxd rdx, ebx
movabs rax, 0xfffffffffffffff
mov r13, qword [rsp + 0x50]
cmp rdx, rax
ja 0x18017dcfc
shl rdx, 4
movzx r8d, byte [rdi + 1]
mov rcx, r13
call fcn.180170ab0
mov rcx, r12
sub rcx, rax
mov qword [r12], rcx
mov dword [rdi + 0xa4], ebx
mov edx, ebp
test ebx, ebx
jle 0x18017d32b
mov rcx, rbp
nop dword [rax]
mov rax, r12
sub rax, qword [r12]
mov dword [rcx + rax + 0xc], ebp
inc edx
lea rcx, [rcx + 0x10]
mov ebx, dword [rdi + 0xa4]
cmp edx, ebx
jl 0x18017d310
mov edx, ebp
mov dword [rsp + 0x34], edx
test ebx, ebx
jle 0x18017d6b4
mov r15, rbp
mov qword [rsp + 0x40], rbp
movzx eax, byte [r14 + rsi]
inc rsi
dec eax
cmp eax, 6
ja case.default.0x18017d368
cdqe
lea r8, [0x180000000]
mov ecx, dword [r8 + rax*4 + 0x17dd08]
add rcx, r8
jmp rcx
mov r12, qword [rsp + 0x40]
jmp 0x18017d21a
movzx eax, byte [r14 + rsi]
inc rsi
mov rcx, r12
sub rcx, qword [r12]
mov dword [r15 + rcx], eax
mov dword [r15 + rcx + 0xc], 1
jmp case.default.0x18017d368
mov rax, qword [r14 + rsi]
mov qword [rsp + 0x40], rax
add rsi, 8
mov rax, r12
sub rax, qword [r12]
movsd xmm0, qword [rsp + 0x40]
movsd qword [r15 + rax], xmm0
mov dword [r15 + rax + 0xc], 4
jmp case.default.0x18017d368
mov eax, dword [r14 + rsi]
mov dword [rsp + 0x34], eax
mov eax, dword [r14 + rsi + 4]
mov dword [rsp + 0x5c], eax
mov eax, dword [r14 + rsi + 8]
mov dword [rsp + 0x40], eax
add rsi, 0x10
mov rax, r12
sub rax, qword [r12]
movss xmm0, dword [rsp + 0x34]
movss dword [r15 + rax], xmm0
movss xmm1, dword [rsp + 0x5c]
movss dword [r15 + rax + 4], xmm1
movss xmm0, dword [rsp + 0x40]
movss dword [r15 + rax + 8], xmm0
mov dword [r15 + rax + 0xc], 3
jmp case.default.0x18017d368
mov r8d, ebp
mov ecx, ebp
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017d421
test r8d, r8d
jne 0x18017d444
mov rcx, rbp
jmp 0x18017d454
lea ecx, [r8 - 1]
mov rax, qword [rsp + 0x80]
mov rcx, qword [rax + rcx*8]
mov rax, r12
sub rax, qword [r12]
mov qword [r15 + rax], rcx
mov dword [r15 + rax + 0xc], 5
jmp 0x18017d695
mov ecx, dword [r14 + rsi]
add rsi, 4
mov rax, r12
sub rax, qword [r12]
mov qword [rsp + 0xd8], rax
mov dword [rsp + 0xe0], ecx
mov rax, qword [r13 + 0x58]
cmp byte [rax + 4], 0
je 0x18017d4ca
mov r9, qword [r13 + 0x10]
sub r9, qword [r13 + 0x20]
mov qword [rsp + 0x20], rbp
lea r8, [rsp + 0xd8]
lea rdx, [0x18017c970]
mov rcx, r13
call fcn.18016ec80
test eax, eax
je 0x18017d4c4
mov rax, qword [r13 + 0x10]
mov dword [rax - 4], ebp
mov edx, dword [rsp + 0x34]
jmp 0x18017d4d6
mov rax, qword [r13 + 0x10]
mov dword [rax + 0xc], ebp
add qword [r13 + 0x10], 0x10
mov rcx, qword [r13 + 0x10]
mov rax, r12
sub rax, qword [r12]
movups xmm0, xmmword [rcx - 0x10]
movups xmmword [r15 + rax], xmm0
add qword [r13 + 0x10], 0xfffffffffffffff0
jmp case.default.0x18017d368
mov ebx, ebp
mov ecx, ebp
nop dword [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or ebx, eax
add ecx, 7
test dl, dl
js 0x18017d500
movzx r8d, byte [r13 + 4]
mov edx, gethostbyaddr
mov rcx, r13
call fcn.180170be0
mov rdi, rax
mov rcx, qword [r13 + 0x30]
movzx edx, byte [rcx + r13 + 0x50]
and dl, 3
mov byte [rax + 2], dl
mov byte [rax], 8
movzx ecx, byte [r13 + 4]
mov byte [rax + 1], cl
lea rcx, [rax + 0x10]
mov qword [rcx], rcx
mov byte [rax + 5], 0xff
add rax, 0x28
mov qword [rax], rax
mov qword [rdi + 8], rbp
mov word [rdi + 6], 0
mov word [rdi + 3], 0
lea rax, [rdi + 0x18]
sub rax, qword [0x18048f8d8]
mov qword [rdi + 0x18], rax
test ebx, ebx
jle 0x18017d615
mov r8d, ebx
mov rdx, rdi
mov rcx, r13
call fcn.180177d70
mov r15d, ebx
nop dword [rax]
nop word [rax + rax]
mov r8d, ebp
mov ecx, ebp
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017d5b0
mov rax, r12
sub rax, qword [r12]
movsxd rbx, r8d
shl rbx, 4
add rbx, rax
mov rdx, rbx
mov rcx, rdi
call fcn.1801788a0
mov byte [rdi + 5], 0
cmp rax, qword [0x18048f8e8]
jne 0x18017d600
mov r8, rbx
mov rdx, rdi
mov rcx, r13
call fcn.1801789b0
mov qword [rax], rbp
mov dword [rax + 0xc], 4
sub r15, 1
jne 0x18017d5a0
mov r15, qword [rsp + 0x40]
mov rax, r12
sub rax, qword [r12]
mov qword [r15 + rax], rdi
mov dword [r15 + rax + 0xc], 8
mov rdi, qword [rsp + 0x48]
jmp 0x18017d695
mov r8d, ebp
mov ecx, ebp
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017d640
mov rcx, qword [rsp + 0x98]
mov r9, qword [rcx + r8*8]
movzx edx, byte [r9 + 5]
mov r8, qword [rsp + 0x70]
mov rcx, r13
call fcn.18016ee70
cmp byte [rax + 4], 0
seta cl
mov byte [rax + 6], cl
mov rcx, r12
sub rcx, qword [r12]
mov qword [r15 + rcx], rax
mov dword [r15 + rcx + 0xc], 0xa
mov edx, dword [rsp + 0x34]
inc edx
mov dword [rsp + 0x34], edx
add r15, 0x10
mov qword [rsp + 0x40], r15
cmp edx, dword [rdi + 0xa4]
jl 0x18017d341
mov ebx, ebp
mov ecx, ebp
nop dword [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or ebx, eax
add ecx, 7
test dl, dl
js 0x18017d6c0
movsxd rdx, ebx
movabs r15, 0x1fffffffffffffff
cmp rdx, r15
ja 0x18017dcfc
lea rdx, [rdx*8]
movzx r8d, byte [rdi + 1]
mov rcx, r13
call fcn.180170ab0
lea rcx, [rdi + 0x10]
sub rcx, rax
mov qword [rdi + 0x10], rcx
mov dword [rdi + 0xa0], ebx
mov r10d, ebp
test ebx, ebx
jle 0x18017d77f
mov r9, rbp
mov r13, qword [rsp + 0x98]
nop word [rax + rax]
mov r8d, ebp
mov ecx, ebp
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017d740
mov rcx, qword [r13 + r8*8]
lea rax, [rdi + 0x10]
sub rax, qword [rdi + 0x10]
mov qword [r9 + rax], rcx
inc r10d
add r9, 8
cmp r10d, dword [rdi + 0xa0]
jl 0x18017d730
mov r13, qword [rsp + 0x50]
mov r8d, ebp
mov ecx, ebp
nop dword [rax]
nop dword [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017d790
mov dword [rdi + 0x9c], r8d
mov r8d, ebp
mov ecx, ebp
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017d7c0
test r8d, r8d
jne 0x18017d7e3
mov rcx, rbp
jmp 0x18017d7f3
lea ecx, [r8 - 1]
mov rax, qword [rsp + 0x80]
mov rcx, qword [rax + rcx*8]
lea rax, [rdi + 0x60]
sub rax, rcx
mov qword [rdi + 0x60], rax
movzx eax, byte [r14 + rsi]
inc rsi
test al, al
je 0x18017d8f5
movzx ecx, byte [r14 + rsi]
inc rsi
mov dword [rdi + 0x88], ecx
mov eax, dword [rdi + 0x98]
lea r15d, [rax - 1]
sar r15d, cl
inc r15d
lea edi, [rax + 3]
and edi, 0xfffffffc
lea ebx, [rdi + r15*4]
movsxd rdx, ebx
mov r12, qword [rsp + 0x48]
movzx r8d, byte [r12 + 1]
mov rcx, r13
call fcn.180170ab0
lea r9, [r12 + 0x48]
mov rcx, r9
xor rcx, rax
mov qword [r9], rcx
mov dword [r12 + 0x90], ebx
xor rcx, r9
movsxd rax, edi
add rcx, rax
lea r10, [r12 + 0x58]
mov rax, r10
xor rax, rcx
mov qword [r10], rax
xor cl, cl
mov edx, ebp
mov r8, rbp
mov rdi, r12
cmp dword [r12 + 0x98], ebp
jle 0x18017d8b4
nop dword [rax]
movzx eax, byte [r14 + rsi]
inc rsi
add cl, al
mov rax, r9
xor rax, qword [r9]
mov byte [r8 + rax], cl
inc edx
lea r8, [r8 + 1]
cmp edx, dword [r12 + 0x98]
jl 0x18017d890
mov edx, ebp
mov rcx, rbp
movsxd r8, r15d
test r15d, r15d
jle 0x18017d8eb
nop dword [rax]
nop word [rax + rax]
mov eax, dword [r14 + rsi]
add rsi, 4
add edx, eax
mov rax, qword [r10]
xor rax, r10
mov dword [rax + rcx*4], edx
inc rcx
cmp rcx, r8
jl 0x18017d8d0
movabs r15, 0x1fffffffffffffff
movzx eax, byte [r14 + rsi]
inc rsi
test al, al
je 0x18017db1b
mov ebx, ebp
mov ecx, ebp
nop dword [rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or ebx, eax
add ecx, 7
test dl, dl
js 0x18017d910
movsxd rax, ebx
movabs rcx, 0xaaaaaaaaaaaaaaa
cmp rax, rcx
ja 0x18017dcfc
lea rdx, [rax + rax*2]
shl rdx, 3
movzx r8d, byte [rdi + 1]
mov rcx, r13
call fcn.180170ab0
lea r11, [rdi + 0x40]
mov rcx, r11
xor rcx, rax
mov qword [r11], rcx
mov dword [rdi + 0xa8], ebx
mov r10d, ebp
test ebx, ebx
jle 0x18017da50
mov r9, rbp
mov r13, qword [rsp + 0x80]
nop dword [rax]
mov r8d, ebp
mov ecx, ebp
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017d990
test r8d, r8d
jne 0x18017d9b3
mov rcx, rbp
jmp 0x18017d9bc
lea eax, [r8 - 1]
mov rcx, qword [r13 + rax*8]
mov rax, qword [r11]
xor rax, r11
mov qword [r9 + rax], rcx
mov r8d, ebp
mov ecx, ebp
nop dword [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017d9d0
mov rax, qword [r11]
xor rax, r11
mov dword [r9 + rax + 8], r8d
mov r8d, ebp
mov ecx, ebp
nop dword [rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017da00
mov rax, qword [r11]
xor rax, r11
mov dword [r9 + rax + 0xc], r8d
movzx ecx, byte [r14 + rsi]
inc rsi
mov rax, r11
xor rax, qword [r11]
mov byte [r9 + rax + 0x10], cl
inc r10d
add r9, 0x18
cmp r10d, dword [rdi + 0xa8]
jl 0x18017d980
mov r13, qword [rsp + 0x50]
mov ebx, ebp
mov ecx, ebp
nop dword [rax]
nop dword [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or ebx, eax
add ecx, 7
test dl, dl
js 0x18017da60
movsxd rdx, ebx
cmp rdx, r15
ja 0x18017dcfc
lea rdx, [rdx*8]
movzx r8d, byte [rdi + 1]
mov rcx, r13
call fcn.180170ab0
lea r11, [rdi + 0x50]
mov rcx, r11
xor rcx, rax
mov qword [r11], rcx
mov dword [rdi + 0x8c], ebx
mov r10d, ebp
test ebx, ebx
jle 0x18017db1b
mov r9, rbp
mov r13, qword [rsp + 0x80]
nop
mov r8d, ebp
mov ecx, ebp
nop word [rax + rax]
movzx edx, byte [r14 + rsi]
inc rsi
mov eax, edx
and eax, 0x7f
shl eax, cl
or r8d, eax
add ecx, 7
test dl, dl
js 0x18017dad0
test r8d, r8d
jne 0x18017daf3
mov rcx, rbp
jmp 0x18017dafc
lea eax, [r8 - 1]
mov rcx, qword [r13 + rax*8]
mov rax, qword [r11]
xor rax, r11
mov qword [r9 + rax], rcx
inc r10d
add r9, 8
cmp r10d, dword [rdi + 0x8c]
jl 0x18017dac0
mov r13, qword [rsp + 0x50]
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x68]
mov qword [rax + rcx*8], rdi
mov ebx, dword [rsp + 0x58]
inc ebx
mov dword [rsp + 0x58], ebx
inc rcx
mov qword [rsp + 0x68], rcx
cmp ebx, dword [rsp + 0x60]
jb 0x18017cf80
mov r12, qword [rsp + 0x80]
mov rdi, rax
mov ecx, ebp
lea r8, [r14 + rsi]
nop dword [rax]
movzx edx, byte [r8]
lea r8, [r8 + 1]
mov eax, edx
and eax, 0x7f
shl eax, cl
or ebp, eax
add ecx, 7
test dl, dl
js 0x18017db60
mov rbx, qword [rdi + rbp*8]
movzx eax, byte [r13 + 2]
test al, 4
je 0x18017db9d
mov rcx, qword [r13 + 0x30]
and al, 0xfb
mov byte [r13 + 2], al
mov rax, qword [rcx + r13 + 0x68]
mov qword [r13 + 0x60], rax
mov qword [rcx + r13 + 0x68], r13
movzx r8d, byte [r13 + 4]
mov edx, 0x20
mov rcx, r13
call fcn.180170be0
mov r8, rax
mov rcx, qword [r13 + 0x30]
movzx edx, byte [rcx + r13 + 0x50]
and dl, 3
mov byte [rax + 2], dl
mov byte [rax], 0xa
movzx ecx, byte [r13 + 4]
mov byte [rax + 1], cl
mov byte [rax + 3], 0
mov rax, qword [rsp + 0x70]
mov qword [r8 + 0x10], rax
mov byte [r8 + 4], 0
movzx ecx, byte [rbx + 6]
mov byte [r8 + 5], cl
mov byte [r8 + 6], 0
lea rax, [r8 + 0x18]
sub rax, rbx
mov qword [r8 + 0x18], rax
mov rax, qword [r13 + 0x10]
mov qword [rax], r8
mov dword [rax + 0xc], 0xa
mov rax, qword [r13 + 0x28]
sub rax, qword [r13 + 0x10]
cmp rax, 0x10
jg 0x18017dc36
mov eax, dword [r13 + 0x48]
lea ecx, [rax + 0x48]
add ecx, r13d
lea edx, [rax + 0x48]
add edx, r13d
cmp ecx, 1
mov rcx, r13
jl 0x18017dc2f
add edx, edx
jmp 0x18017dc31
inc edx
call fcn.18016e2d0
add qword [r13 + 0x10], 0x10
xor r9d, r9d
mov r8, qword [rsp + 0xb0]
mov rdx, rdi
mov rcx, r13
call fcn.180170d70
nop
xor r9d, r9d
mov r8, qword [rsp + 0xb8]
mov rdx, r12
mov rcx, r13
call fcn.180170d70
nop
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0xc0]
mov qword [rax + 0x48], rcx
xor eax, eax
jmp 0x18017dcd3
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
inc rbx
cmp byte [rdx + rbx], 0
jne 0x18017dc90
mov r9, rbx
mov r8, rdi
lea rcx, [rsp + 0x110]
call fcn.180171990
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], 6
mov r9d, 3
mov r8, rax
lea rdx, str._s:_bytecode_version_mismatch__expected___d.._d___got__d_
mov rcx, r13
call fcn.180163900
mov eax, esi
mov rcx, qword [rsp + 0x210]
xor rcx, rsp
call fcn.180394080
add rsp, 0x228
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r13, qword [rsp + 0x50]
mov rcx, r13
call fcn.180170970
int3