Function at 0x180011280
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rax, rdx
mov r13, rcx
mov rdx, qword [rdx]
mov r14, qword [rax + 8]
mov r15, qword [r8]
mov r10, qword [r8 + 8]
cmp rdx, r15
jne 0x1800112cb
cmp r10, r14
jne 0x1800112cb
movups xmm0, xmmword [r9]
movups xmmword [r13], xmm0
mov rax, r13
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rdi, qword [r9]
mov rax, r15
sub rax, rdx
mov rcx, r10
sub rcx, r14
lea rcx, [rcx + rax*8]
movups xmm0, xmmword [r9]
movups xmmword [r13], xmm0
mov r11, qword [r13 + 8]
lea rax, [r11 + rcx]
test rcx, rcx
mov qword [rsp + 0x38], r8
jns 0x18001131f
neg rcx
cmp r11, rcx
jae 0x18001131f
mov rcx, rax
shr rcx, 5
shl rcx, 2
add rcx, qword [r13]
movabs r8, 0xe000000000000000
add r8, rcx
jmp 0x18001132e
mov r8, rax
shr r8, 3
and r8, 0xfffffffffffffffc
add r8, qword [r13]
mov qword [r13], r8
and eax, 0x1f
mov qword [r13 + 8], rax
mov ebx, 0xffffffff
mov r12d, 0xffffffff
mov ecx, r14d
shl r12d, cl
mov r11, qword [r9 + 8]
mov ecx, r11d
neg cl
mov ebp, 0xffffffff
shr ebp, cl
xor r9d, r9d
test r11, r11
cmove ebp, r9d
mov ecx, r10d
neg cl
mov esi, 0xffffffff
shr esi, cl
mov ecx, eax
shl ebx, cl
cmp rax, 1
sbb r9, r9
lea r8, [r8 + r9*4]
cmp rdx, r15
je 0x1800114b8
cmp rdi, r8
je 0x18001160d
mov ecx, r14d
and ecx, 7
mov eax, r11d
and eax, 7
cmp rcx, rax
jne 0x180011643
mov rax, r10
not rax
mov r8d, eax
and r8d, 1
mov r9d, r10d
and r9d, 6
or r9, r8
mov r8, r10
and r8, 0xfffffffffffffff8
movabs rsi, 0x1a2075f9830dfb8
or r9, rsi
xor r9, r8
movabs r8, 0xfe5df8a067cf2041
xor r8, r9
or rsi, 6
xor rsi, r9
and rsi, rax
mov rbx, r8
and rbx, r10
or rbx, rsi
and rbx, r8
shr r14, 3
add rdx, r14
sub r10, rbx
shr r10, 3
add r15, r10
shr r11, 3
add rdi, r11
test rcx, rcx
je 0x18001146f
mov r8b, 0xff
shl r8b, cl
mov al, 8
sub al, cl
mov r9d, 0xff
mov ecx, eax
shr r9d, cl
not r8b
and r9b, byte [rdi]
movzx eax, byte [rdx]
not al
or al, r8b
mov ecx, eax
not cl
and al, 0xd6
xor al, r9b
mov r8d, r9d
and r8b, cl
and cl, 0x29
or cl, 0x40
xor al, cl
mov ecx, r8d
not cl
xor al, 0x69
or cl, al
xor al, r8b
mov r8d, eax
xor r8b, cl
or al, cl
not al
or al, r8b
mov byte [rdi], al
inc rdx
inc rdi
mov r14, r15
sub r14, rdx
mov rcx, rdi
mov r8, r14
call sub.VCRUNTIME140.dll_memmove
test rbx, rbx
je 0x1800112b7
movzx eax, byte [rdi + r14]
mov edx, 0xff
mov ecx, ebx
shl edx, cl
mov r8d, 0xff
and edx, eax
mov cl, 8
sub cl, bl
shr r8d, cl
movzx eax, byte [r15]
and eax, r8d
or eax, edx
mov byte [rdi + r14], al
jmp 0x1800112b7
and esi, r12d
cmp r11, r14
jae 0x180011913
sub r14d, r11d
mov ecx, dword [rdx]
mov r9d, ecx
xor r9d, 0xf398477a
mov r10d, esi
xor r10d, 0xc67b885
mov r11d, ecx
xor r11d, 0xc67b885
and r11d, r10d
mov r10d, esi
xor r10d, 0xf398477a
and r10d, r9d
or r10d, r11d
and r10d, ecx
mov ecx, r14d
shr r10d, cl
cmp rdi, r8
je 0x18001192b
mov ecx, dword [rdi]
mov r9d, dword [rdi + 4]
mov r8d, ecx
xor r8d, 0x5a7f064d
mov r11d, ebp
and r11d, 0x5a7f064d
and ebp, 0xa580f9b2
or ebp, 0x187f0409
xor ebp, r11d
mov r11d, ebp
xor r11d, 0xbdfffdbb
mov r14d, esi
mov esi, ecx
xor esi, 0xa580f9b2
and esi, r11d
xor ebp, 0x42000244
and ebp, r8d
or ebp, esi
and ebp, ecx
mov ecx, ebp
and ecx, r10d
mov r8d, r10d
and r8d, 0x5704ec97
or r8d, 0xa0780340
and r10d, 0xa8fb1368
xor r10d, ebp
xor r10d, r8d
mov r8d, r10d
xor r8d, 0xa0780340
xor r10d, r8d
xor r10d, 0x5f87fcbf
and r10d, ecx
and ecx, r8d
xor ecx, r8d
xor ecx, r10d
mov dword [rdi], ecx
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 8]
sub ecx, eax
mov eax, dword [rdx]
mov edx, eax
xor edx, 0x1fd8b6ef
mov r8d, r14d
xor r8d, 0xe0274910
mov r10d, eax
xor r10d, 0xe0274910
and r10d, r8d
xor r14d, 0x1fd8b6ef
and r14d, edx
or r14d, r10d
and r14d, eax
shr r14d, cl
mov eax, r9d
or eax, ebx
and ebx, r9d
and eax, 0x7fffffff
xor eax, ebx
xor r9d, eax
add eax, 0x80000000
xor r9d, 0x7fffffff
or r9d, eax
not r9d
or r9d, r14d
mov dword [rdi + 4], r9d
jmp 0x1800112b7
cmp r11, r14
jae 0x180011a57
sub r14d, r11d
mov ecx, dword [rdx]
mov r8d, ecx
or r8d, r12d
and r12d, ecx
and r8d, 0x7fffffff
xor r8d, r12d
xor r8d, 0x7fffffff
and r8d, ecx
mov ecx, r14d
shr r8d, cl
jmp 0x180011a66
cmp r11, r14
mov qword [rsp + 0x48], rbx
mov dword [rsp + 0x2c], esi
jae 0x180011d34
movabs rax, 0x4f51f777a083fd04
add r14, rax
sub r14, r11
mov r11, rax
movabs r9, 0xb0ae08885f7c02fc
add r9, r14
sub r11, r14
mov r10d, 0xffffffff
mov ecx, r9d
shr r10d, cl
add r11, 0x20
mov eax, dword [rdx]
mov ecx, eax
not ecx
mov r8d, r12d
not r8d
and r8d, eax
and r8d, 0x7fffffff
and ecx, r12d
or ecx, r8d
or eax, r12d
xor eax, ecx
mov ecx, r9d
shr eax, cl
mov r14d, r10d
not r14d
and ebp, dword [rdi]
or ebp, eax
mov dword [rdi], ebp
add rdx, 4
cmp rdx, r15
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x60], r10
mov qword [rsp + 0x40], r11
je 0x1800125bc
mov eax, r14d
and eax, 0x40e04200
mov ecx, r10d
and ecx, 0x2a1ba18c
mov r8d, r10d
and r8d, 0x95041c72
lea r13d, [rcx + rax]
add r13d, 0x81041c00
xor r13d, r8d
mov eax, r13d
xor eax, 0x3e1ba1fe
mov ecx, r13d
and ecx, 0x2e0bf5e6
xor r13d, 0xa15aa432
and r13d, eax
and eax, 0xd1f40a18
or eax, ecx
mov r11d, eax
xor r11d, 0xd1f45e19
xor eax, 0xb14aa42b
and eax, r11d
or r13d, eax
mov eax, r13d
not eax
mov dword [rsp + 0x5c], eax
mov eax, r10d
xor eax, 0xf185c932
mov dword [rsp + 0x58], eax
mov eax, r10d
xor eax, 0xe7a36cd
mov dword [rsp + 0x54], eax
mov esi, r14d
nop word [rax + rax]
mov ecx, ebp
xor ecx, 0x60befa32
and ecx, dword [rsp + 0x5c]
mov r12d, ebp
xor r12d, 0x9f4105cd
and r12d, r13d
or r12d, ecx
or ebp, r11d
not r12d
and r12d, ebp
mov r14d, r12d
or r14d, 0xeb77527b
mov ebx, r14d
not ebx
mov r8d, r12d
and r8d, 0xeb77527b
mov ebp, r12d
xor ebp, 0xa8700003
and ebp, r8d
not r8d
mov r10d, r12d
and r10d, 0x808180
mov ecx, ebx
and ecx, 0x10080400
or ecx, r10d
mov r10d, r12d
or r10d, 0x8000002
and r10d, 0xc002806
or r10d, ecx
mov ecx, r12d
and ecx, 0xa8500000
mov rax, r15
mov r15d, r8d
and r15d, 0x202807
add ecx, r15d
add ecx, 0x43050060
mov r15, rax
xor ecx, ebp
xor ecx, 0xef550060
and ebp, 0xa8700003
or ebp, ecx
xor ebp, r10d
and ebx, 0x1488ac00
and r14d, 0x637151cf
or r14d, ebx
mov ecx, r12d
and ecx, 0x88060230
and r8d, 0x637151cf
or r8d, ecx
mov r10d, dword [rdx]
mov rcx, qword [rsp + 0x40]
shl r10d, cl
xor ebp, 0xa0f08181
xor r8d, r14d
mov ecx, r12d
xor ecx, 0xeb77527b
or ecx, r8d
not ecx
or ecx, ebp
xor ecx, r10d
and r12d, r10d
mov r8d, r12d
not r8d
xor ecx, 0xeb77527b
or r8d, ecx
xor ecx, r12d
mov r10d, ecx
xor r10d, r8d
or ecx, r8d
not ecx
or ecx, r10d
mov dword [rdi], ecx
mov r8d, dword [rdx]
mov ecx, r9d
shr r8d, cl
mov ebp, dword [rdi + 4]
mov ecx, ebp
xor ecx, 0xe7a36cc
and ecx, dword [rsp + 0x54]
mov r10d, ebp
xor r10d, 0xf185c932
and r10d, dword [rsp + 0x58]
or r10d, ecx
or ebp, esi
not ebp
or ebp, r10d
mov ecx, ebp
mov r10d, r8d
mov ebx, ebp
not ebp
and ebp, r8d
and r8d, 0x7581137b
or r8d, 0x8328c84
and r10d, 0x8a7eec84
xor r10d, r8d
mov r8d, r10d
xor r8d, 0x7db39fff
xor ebx, 0x7581137b
and ebx, r8d
xor ecx, 0x8a7eec84
xor r10d, 0x824c6000
and r10d, ecx
or ebp, r10d
or ebp, ebx
lea r12, [rdi + 4]
mov dword [rdi + 4], ebp
add rdx, 4
mov rdi, r12
cmp rdx, r15
jne 0x180011760
jmp 0x1800125c2
sub r11d, r14d
mov r10d, dword [rdx]
and r10d, esi
mov ecx, r11d
shl r10d, cl
cmp rdi, r8
jne 0x18001150c
xor ecx, ecx
test rax, rax
cmove ebx, ecx
mov r8d, ebx
not r8d
mov r11d, r8d
or r11d, 0x74958f2c
mov ecx, r11d
and ecx, 0x59c6d411
mov eax, ebx
and eax, 0x822820c2
or eax, ecx
mov edx, r8d
and edx, 0x74958f2c
mov ecx, eax
xor ecx, 0x59c6d411
mov r9d, r8d
and r9d, 0x80000c
mov esi, ebx
and esi, 0x60000000
add esi, r9d
add esi, 0x1158c3
mov r9d, ebx
and r9d, 0x14158f20
xor r9d, esi
mov esi, r9d
xor esi, 0x1f46a771
mov r14d, ecx
and r14d, 0x3023002
mov r15d, eax
and r15d, 0x8404090
and r11d, 0x90108d20
mov r12d, ebx
and r12d, 0x280041
add r14d, r15d
add r14d, 0x90108d20
add r11d, r12d
add r11d, 0x63823002
xor r11d, r14d
lea r14d, [r11 + 0xc]
xor r9d, 0xe0395882
and r9d, r14d
xor r11d, 0x7fd7ff32
and r11d, esi
and r8d, 0x6014012c
mov esi, ebx
and esi, 0x14818e00
or esi, r8d
mov r8d, ecx
and r8d, 0x8b227000
and eax, 0x10c884d3
or eax, r8d
xor eax, esi
or ecx, edx
xor eax, 0xfbbef5ee
and eax, ecx
or eax, r11d
or eax, r9d
mov ecx, ebp
xor ecx, 0xe0954a9b
mov edx, eax
xor edx, 0x9400c5b7
mov r8d, ebp
xor r8d, 0x1f6ab564
and r8d, edx
xor eax, 0x6bff3a48
and eax, ecx
and ebx, ebp
or ebx, eax
or ebx, r8d
and ebx, dword [rdi]
or ebx, r10d
mov dword [rdi], ebx
jmp 0x1800112b7
sub r11d, r14d
and r12d, dword [rdx]
mov ecx, r11d
shl r12d, cl
mov r8d, r12d
xor ecx, ecx
test rax, rax
cmove ebx, ecx
mov ecx, ebp
and ecx, ebx
xor ebx, ebp
mov edx, ecx
xor edx, 0x20700356
mov r9d, ebx
xor r9d, 0x20700356
xor ecx, 0xdf8ffca9
and ecx, r9d
xor ebx, 0xdf8ffca9
and ebx, edx
or ebx, ecx
test r10, r10
je 0x180012330
sub eax, r10d
mov ecx, dword [r15]
mov edx, esi
not edx
mov r9d, esi
xor r9d, 0x589845c4
and r9d, edx
and esi, 0x85273213
and edx, 0x22408828
or edx, esi
and r9d, 0xfffffffe
mov r10d, edx
and r10d, 0xa767ba3a
xor r10d, r9d
xor r10d, 0x22408829
xor edx, 0x22408828
and edx, r9d
or edx, r10d
xor edx, ecx
xor edx, 0xa767ba3b
and edx, ecx
mov ecx, eax
shl edx, cl
mov eax, dword [rdi]
mov ecx, eax
xor ecx, 0x396a4cda
mov r9d, ebx
xor r9d, 0x396a4cda
mov r10d, eax
xor r10d, 0xc695b325
and r10d, r9d
or eax, ebx
xor ebx, 0xc695b325
and ebx, ecx
or ebx, r10d
not ebx
and ebx, eax
mov ecx, ebx
not ecx
mov r9d, r8d
not r9d
and ecx, r9d
mov eax, ebx
xor eax, r8d
or eax, ecx
mov ecx, ebx
xor ecx, 0x7d6607b6
and r9d, 0x281d841
mov r10d, r8d
and r10d, 0x80182008
and r8d, 0x7d6607b6
or r8d, 0x281d841
add r9d, r10d
add r9d, 0x39440306
xor r9d, r8d
mov r8d, r9d
xor r8d, 0x442204b0
xor ebx, 0x8299f849
and ebx, r8d
xor r9d, 0xbbddfb4f
and r9d, ecx
or r9d, ebx
mov ecx, eax
xor ecx, 0xaa5b0813
mov r8d, eax
mov r10d, r9d
not eax
and eax, r9d
xor r9d, 0x55a4f7ec
xor r8d, 0x55a4f7ec
and r8d, r9d
xor r10d, 0xaa5b0813
and r10d, ecx
or eax, r10d
or eax, r8d
mov ebp, eax
not ebp
mov r8d, ebp
mov r9d, eax
and r9d, 0x3fc9d6da
mov ecx, r9d
not ecx
mov r10d, edx
mov esi, eax
or esi, 0x1a418618
mov r11d, eax
xor r11d, 0x941c45a
and r11d, r9d
mov ebx, eax
or ebx, 0x100401a
and ebx, 0xc136693f
mov r14d, ebx
xor r14d, 0x88438544
mov r15d, eax
and r15d, 0x18000
mov r12d, ecx
and r12d, 0x49604c7b
add r15d, r12d
add r15d, 0x12880300
xor r15d, r11d
xor r15d, 0x129da300
and r11d, 0x941c45a
or r11d, r15d
xor ebx, 0x77bc7abb
and ebx, r15d
not r11d
and r11d, r14d
and ebp, 0x80022004
and esi, 0x5a758f39
or esi, ebp
mov ebp, eax
and ebp, 0x258850c2
and ecx, 0x5a758f39
or ecx, ebp
mov ebp, edx
mov r14d, edx
mov r15d, edx
mov r12d, edx
mov qword [rsp + 0x30], r13
mov r13d, edx
and eax, edx
not edx
and r8d, 0xc0362925
and r10d, 0x3fc9d6da
xor ecx, esi
or r9d, r8d
not ecx
and ecx, r9d
or ecx, ebx
or ecx, r11d
mov r8d, edx
and r8d, 0xc0362925
or r8d, r10d
not r10d
mov r9d, edx
and r9d, 0x40040124
and ebp, 0x80322801
or ebp, r9d
mov r9d, r10d
and r9d, 0xa1b8a04b
and r14d, 0x4014080
and r15d, 0x1a401610
xor r15d, ebp
add r9d, r14d
add r9d, 0x50001024
xor r9d, r15d
xor r9d, 0x718a986e
and edx, 0x40222121
and r12d, 0x80140804
and r13d, 0x100810d0
and r10d, 0xafd5ce0e
or r10d, r13d
mov r13, qword [rsp + 0x30]
add edx, r12d
add edx, 0x2fc1c60a
xor edx, r10d
not edx
and edx, r8d
or edx, r9d
xor edx, ecx
or eax, edx
mov dword [rdi], eax
jmp 0x1800112b7
sub r14, r11
lea r10, [r14 + 0x20]
and r12d, dword [rdx]
mov eax, r14d
neg eax
mov ecx, eax
shl r12d, cl
and ebp, dword [rdi]
mov r9d, ebp
not r9d
mov r8d, ebp
and r8d, 0x7892366a
mov ecx, r9d
and ecx, 0x876dc995
mov esi, ebp
xor esi, 0x20903668
and esi, r8d
mov r11d, r9d
and r11d, 0x14080
mov ebx, ebp
and ebx, 0xc8000
or ebx, r11d
mov qword [rsp + 0x40], r15
mov r15d, ebp
and r15d, 0x87600915
xor r15d, 0xa7f03f7d
mov r11d, ebp
and r11d, 0x20903668
or r11d, 0x4e620801
xor r11d, esi
mov esi, r11d
xor esi, 0x4e6fc881
xor ebx, 0x580e8002
and ebx, esi
xor r11d, 0x91000116
and r11d, r15d
or r11d, ebx
and r9d, 0x4404110
mov esi, ebp
and esi, 0x832d8885
add r9d, esi
add r9d, 0x38023620
or ecx, r8d
xor r9d, r8d
xor r9d, 0x44d0415a
and r9d, ecx
or r9d, r11d
mov r8d, r12d
xor r8d, 0x876dc995
mov ecx, r12d
and ecx, 0xbe68993a
mov r11d, r12d
xor r11d, 0x390550af
and r11d, r8d
xor ecx, 0x3800102a
or ecx, r11d
xor ecx, r9d
mov r9d, ecx
xor r9d, 0xbe68993a
mov r8d, ebp
and r8d, 0x3d0dead6
mov esi, ebp
and esi, 0xc2f21529
or esi, 0x1104aad0
xor esi, r8d
mov r8d, esi
xor r8d, 0xd3f6bff9
mov r11d, r12d
xor r11d, 0xc2f21529
xor esi, 0x2c094006
and esi, r11d
mov r11d, r12d
xor r11d, 0x3d0dead6
and r11d, r8d
or r11d, esi
or ebp, r12d
not r11d
and r11d, ebp
mov r8d, r11d
not r8d
xor ecx, 0x419766c5
mov esi, r9d
mov r12d, r11d
mov ebx, r11d
xor r11d, r9d
and r9d, 0x20c08454
mov r15d, ecx
and r15d, 0x120100
add r9d, r15d
add r9d, 0xc62062a8
mov r15, qword [rsp + 0x40]
and esi, 0xdf2d7aab
xor esi, r9d
mov r9d, esi
xor r9d, 0xe6e0e6fc
and ecx, r8d
and r8d, 0x10d7282
and r12d, 0xde200829
and ebx, 0x20d28554
add r8d, r12d
add r8d, 0x20428440
xor r8d, ebx
mov ebx, r8d
xor ebx, 0x19d7396
xor esi, 0x191f1903
and esi, ebx
xor r8d, 0xfe628c69
and r8d, r9d
or r8d, esi
or r11d, ecx
not r11d
or r11d, r8d
mov dword [rdi], r11d
lea r11, [rdi + 4]
mov ebp, dword [rdx]
add rdx, 4
mov ecx, r14d
shr ebp, cl
cmp rdx, r15
je 0x180012115
mov qword [rsp + 0x30], r13
nop word cs:[rax + rax]
mov r9d, dword [rdx]
mov ecx, eax
shl r9d, cl
mov r14d, r9d
not r14d
mov esi, ebp
xor esi, 0x324672e7
mov edi, ebp
not edi
mov r8d, edi
and r8d, 0x1aeb47e5
mov ecx, ebp
xor ecx, 0xe514b81a
or ecx, r8d
mov r12d, r9d
and r12d, 0xe514b81a
xor ecx, r8d
mov r8d, r9d
and r8d, 0x1aeb47e5
mov ebx, r9d
or ebx, 0xe514b81a
xor r8d, 0x634ba6b3
and r8d, ebx
mov r13d, r9d
xor r13d, 0x6100a012
and r13d, r12d
not r12d
and r14d, r8d
and r8d, 0x1beb67f5
mov ebx, r9d
or ebx, 0xf4a0910a
and ebx, 0xf6eb97ab
xor ebx, r8d
xor ebx, 0x96eb17a9
and r14d, 0x24b06a1
or r14d, ebx
mov r8d, r9d
and r8d, 0x6000a002
mov ebx, r12d
and ebx, 0x11200010
add r8d, ebx
add r8d, 0x808
xor r8d, r13d
xor r8d, 0x6880e94e
and r13d, 0x6100a012
or r13d, r8d
xor r13d, r14d
mov r8d, r9d
and r8d, 0x65103002
and r12d, 0x98a7cdbd
mov ebx, r9d
or ebx, 0x80048818
and ebx, 0x9aefcffd
add r8d, r12d
add r8d, 0x2480240
xor r8d, ebx
mov r14d, r9d
xor r14d, 0xe514b81a
or r14d, r8d
not r14d
or r14d, r13d
mov r8d, ecx
and r8d, 0x3c311f66
and ecx, 0xc3cee099
or ecx, 0x34200f62
xor ecx, r8d
mov r8d, ecx
xor r8d, 0xf7eeeffb
mov ebx, r14d
xor ebx, 0x3c311f66
xor ecx, 0x8111004
and ecx, ebx
xor r14d, 0xc3cee099
and r14d, r8d
and edi, 0x4481009a
mov r8d, esi
and r8d, 0xa0044a40
mov ebx, ebp
and ebx, 0x1122500
and esi, 0x1a689025
add r8d, edi
add r8d, 0x1122500
add esi, ebx
add esi, 0x4481009a
xor esi, r8d
mov r8d, esi
xor r8d, 0x282cc240
mov edi, r9d
xor edi, 0x1b7ab525
xor esi, 0xd7d33dbf
and esi, edi
or ebp, r9d
xor r9d, 0xe4854ada
and r9d, r8d
or r9d, esi
not r9d
and r9d, ebp
or r9d, r14d
or r9d, ecx
mov dword [r11], r9d
add r11, 4
mov ebp, dword [rdx]
add rdx, 4
mov ecx, r10d
shr ebp, cl
cmp rdx, r15
jne 0x180011f40
lea rdi, [r11 - 4]
mov r13, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x48]
mov r8, qword [rsp + 0x38]
mov rcx, qword [r8 + 8]
cmp rcx, r10
jae 0x1800124a1
test rcx, rcx
je 0x180012842
mov ecx, dword [r15]
mov r9d, dword [rsp + 0x2c]
mov edx, r9d
not edx
mov r8d, r9d
xor r8d, 0x3e386948
and r8d, edx
and r9d, 0xb1701cac
and edx, 0x4e8fe352
or edx, r9d
mov r9d, edx
xor r9d, 0x4e8fe353
and edx, 0xc1c796b6
and r8d, 0xfffffffe
mov r10d, edx
xor r10d, r8d
xor r10d, 0x40878213
xor edx, 0x40878212
and edx, r8d
or edx, r10d
xor edx, ecx
or r9d, ecx
xor edx, 0xc1c796b7
and edx, r9d
mov ecx, eax
shl edx, cl
mov eax, dword [r11]
mov ecx, eax
xor ecx, 0x576141e9
mov r8d, esi
xor r8d, 0xa89ebe16
mov r9d, eax
xor r9d, 0x289ebe16
and r9d, r8d
xor esi, 0x576141e9
and esi, ecx
or esi, r9d
and esi, eax
mov eax, esi
xor eax, 0x3eeec2f8
mov ecx, ebp
xor ecx, 0x3eeec2f8
mov r8d, esi
and r8d, 0x7f4e6fcf
xor r8d, 0x41002d07
mov r9d, esi
xor r9d, 0x41a0ad37
and r9d, eax
or r9d, r8d
mov eax, ebp
and eax, 0x7f4e6fcf
and esi, ebp
xor ebp, 0x41a0ad37
and ebp, ecx
xor eax, 0x41002d07
or eax, ebp
xor eax, r9d
or eax, esi
mov ecx, eax
not ecx
mov esi, eax
or esi, 0x60f5537
mov r8d, esi
not r8d
and ecx, 0xf9f0aac8
mov edi, eax
xor edi, 0x60f5537
or edi, ecx
mov ecx, edx
mov r9d, edx
and esi, 0x9b56e555
mov r10d, r8d
and r10d, 0x60a00a88
or r10d, esi
mov ebp, r10d
xor ebp, 0x9b56e555
mov esi, ebp
and esi, 0x28602248
and r8d, 0xd1908880
or r8d, esi
mov r14d, r8d
xor r14d, 0x2e6b226c
mov esi, edi
and ebp, 0xe1c0aa80
mov ebx, r10d
and ebx, 0x1a360459
or ebx, ebp
xor ebx, edi
xor r10d, 0x64a91aaa
and r10d, edi
xor edi, 0xd194dd93
xor r8d, 0xd194dd93
and r8d, edi
xor esi, 0x2e6b226c
and esi, r14d
mov edi, edx
mov ebp, eax
and ebp, 0x8160bf56
mov r14d, eax
or eax, edx
xor ebp, edx
not edx
xor ecx, 0xa9d08000
and ecx, edx
and r9d, 0x60f5537
or esi, r8d
xor ebx, 0xe5e9fbae
or r10d, ebx
not r10d
or r10d, esi
and edi, 0x102028c0
and edx, 0x40000208
or edx, edi
xor edx, 0x4004160c
and ecx, 0xf9f0aac8
or ecx, edx
xor ecx, r9d
xor ecx, r10d
xor ecx, 0x50243ecc
and r14d, 0x7e9f40a9
or r14d, 0x1209854
xor ebp, r14d
xor ebp, 0xfedf67ab
and ebp, eax
or ebp, ecx
mov dword [r11], ebp
jmp 0x1800112b7
and ebx, dword [rdi]
mov r10d, ebx
not r10d
mov edx, r10d
and edx, 0x6b654a8f
mov ecx, ebx
or ecx, 0x84123150
mov eax, ebx
and eax, 0x949ab570
mov r9d, ebx
xor r9d, 0x254a8a
and r9d, edx
mov r11d, ebx
xor r11d, 0x80829460
and r11d, eax
mov esi, ebx
or esi, 0x28040
and esi, 0x6b428045
xor esi, r9d
lea ebp, [rsi - 0x7f7febe0]
mov r9d, ebx
and r9d, 0x80829460
or r9d, 0x14182988
xor r9d, r11d
mov r11d, r9d
xor r11d, 0x7f58298d
xor esi, 0x7f5aa155
and esi, r11d
xor r9d, 0x254212
and r9d, ebp
or r9d, esi
and r10d, 0x8050a85
and ecx, 0xe772715a
or ecx, r10d
xor ecx, eax
xor ecx, 0xe772715a
or eax, edx
not eax
or eax, ecx
not eax
or eax, r9d
mov ecx, r8d
and ecx, 0x42254001
xor ecx, 0x4225c521
mov edx, r8d
and edx, 0x949ab570
lea r9d, [rdx + 0x29400a8e]
mov r10d, r8d
and r10d, 0x29400a8e
xor r10d, 0xffff7adf
and r10d, r9d
xor edx, 0xd6bf7051
and edx, ecx
mov r9d, r8d
xor r9d, 0x949ab570
mov ecx, r8d
xor ecx, 0x6b654a8f
or ecx, r9d
not ecx
or ecx, edx
or ecx, r10d
mov edx, eax
and edx, 0xd473cde1
or edx, 0x3040018
and eax, 0x2b8c321e
mov r9d, ecx
and r9d, 0xd473cde1
or r9d, 0xa04101a
and ecx, 0x2b8c321e
xor ecx, r9d
xor ecx, eax
xor ecx, edx
and ebx, r8d
mov eax, ebx
not eax
mov edx, ecx
xor edx, 0xf6ffeffd
mov r8d, ecx
xor r8d, 0x98319f26
and r8d, edx
and ecx, 0x6ece70db
xor ecx, 0x8001002
or ecx, r8d
xor ecx, ebx
xor ecx, 0x91318f24
or edx, eax
not edx
or edx, ecx
mov dword [rdi], edx
jmp 0x1800112b7
mov edx, dword [r15]
mov ecx, eax
shl edx, cl
or edx, ebp
mov dword [r11], edx
cmp qword [r8 + 8], r10
je 0x1800112b7
mov eax, dword [r15]
mov ecx, r10d
shr eax, cl
mov ecx, esi
not ecx
mov edx, esi
and edx, 0x32445080
mov r8d, ecx
and r8d, 0x4400a236
or r8d, edx
mov r10d, r8d
xor r10d, 0xcdbbaf7f
mov r9d, r8d
xor r9d, 0x32445080
mov r11d, ecx
and r11d, 0x7d9ad56a
mov edx, esi
and edx, 0x2652a95
or edx, r11d
xor edx, 0xbde27dc
and edx, esi
mov r11d, r8d
xor r11d, 0xd6a23a02
and r11d, r10d
xor r8d, 0x56003202
and r8d, r9d
or r8d, r11d
mov r10d, edx
xor r10d, 0xe4e66a82
mov r11d, edx
xor r11d, 0x1b19957d
and r11d, r8d
not r8d
and r8d, r10d
and edx, r9d
or edx, r11d
or edx, r8d
mov r8d, edx
and r8d, 0x60810fb2
or r8d, 0x8606041
and edx, 0x9f7ef04d
xor edx, r8d
mov r8d, dword [rdi + 8]
and esi, 0x2cc8276c
and ecx, 0x5337d893
or ecx, esi
xor ecx, r8d
xor ecx, 0x2cc8276c
and ecx, r8d
mov r8d, edx
xor r8d, 0xfe2492f7
mov r9d, edx
and r9d, 0x6b220f87
xor r9d, 0x1020d00
xor edx, 0x95069d70
and edx, r8d
or edx, r9d
xor edx, eax
xor edx, 0x6b220f87
and edx, eax
or edx, ecx
mov dword [rdi + 8], edx
jmp 0x1800112b7
mov r12, rdi
mov esi, r14d
mov rcx, qword [rsp + 0x40]
mov r14, qword [rsp + 0x38]
mov rdx, qword [r14 + 8]
test rdx, rdx
mov r13, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x48]
je 0x1800112b7
mov r10, r9
mov eax, dword [r15]
mov r11d, eax
not r11d
mov r9d, dword [rsp + 0x2c]
mov r8d, r9d
not r8d
and r8d, eax
and r8d, 0xfffffffe
and r11d, r9d
or r11d, r8d
or eax, r9d
xor eax, r11d
shl eax, cl
cmp rdx, r10
jae 0x18001269b
mov r8, qword [rsp + 0x60]
xor r8d, edi
not edi
and esi, edi
or esi, r8d
mov ecx, esi
xor ecx, 0xe28ac853
mov edx, r8d
xor edx, 0x1d7537ac
xor esi, 0x1d7537ac
and esi, edx
xor r8d, 0xe28ac853
and r8d, ecx
or r8d, esi
mov ecx, r8d
and ecx, 0xc25a7b30
or ecx, 0x35818406
and r8d, 0x3da584cf
xor r8d, ecx
mov ecx, r8d
xor ecx, 0xca7e7bf9
mov edx, r8d
xor edx, 0x35818406
xor r8d, 0x38724e2a
or ecx, edx
and ecx, r8d
or edx, ebp
xor ecx, ebp
xor ecx, 0xf20c35d3
and ecx, edx
or ecx, eax
mov dword [r12], ecx
jmp 0x1800112b7
mov edx, ebp
xor edx, 0x8bca3688
not ebp
mov ebx, esi
and ebx, 0xfffffffe
mov r8d, ebp
and r8d, 0xab9a22fe
mov r14, r10
mov r10d, esi
mov r11, qword [rsp + 0x60]
mov ecx, r11d
mov r9d, r11d
and esi, 0x99c00ce
and r11d, 0xf663ff31
or r11d, esi
mov esi, ebp
and esi, 0x14614100
xor r11d, edx
and edx, 0x40049c01
add edx, esi
add edx, 0x801022b8
xor edx, r8d
mov r8d, edx
xor r8d, 0x947177b8
and r10d, 0x50610400
and ecx, 0x404d900
add r10d, ecx
add r10d, 0x2392204c
and r9d, 0xab9a22fe
xor r9d, r10d
mov r10d, r9d
xor r10d, 0xd86906b3
xor edx, 0x6b8e8847
and edx, r10d
xor r9d, 0x2796f94c
and r9d, r8d
or ebx, ebp
xor r11d, 0x7da9c9b9
and r11d, ebx
or r11d, r9d
or r11d, edx
mov edx, r11d
not edx
mov r10d, eax
and r10d, edx
mov r8d, edx
and r8d, 0x2389200
mov r9d, r11d
and r9d, 0x18020f8
and r11d, 0x78414407
and edx, 0x84060900
add r8d, r9d
add r8d, 0x78414407
add edx, r11d
add edx, 0x2389200
xor edx, r8d
xor edx, eax
xor edx, 0x3b8b2f8
mov eax, r10d
xor eax, 0x78c2ae8b
mov r8d, edx
and r8d, 0x78c2ae8b
or r8d, 0x860c4134
mov r9d, edx
and r9d, 0x873d5174
xor r9d, r8d
mov r8d, r9d
xor r8d, 0xfeceefbf
and edx, r10d
xor r10d, 0x873d5174
and r10d, r8d
xor r9d, 0x1311040
and r9d, eax
or r9d, edx
or r9d, r10d
mov dword [r12], r9d
mov rax, qword [rsp + 0x38]
cmp qword [rax + 8], r14
je 0x1800112b7
mov ebx, dword [rsp + 0x2c]
and ebx, dword [r15]
mov ecx, r14d
shr ebx, cl
mov eax, dword [r12 + 4]
mov ecx, eax
xor ecx, 0x430eeaf1
and edi, 0x7fffffff
mov edx, edi
xor edx, 0x3cf1150e
mov r8d, eax
xor r8d, 0x3cf1150e
and r8d, edx
xor edi, 0xc30eeaf1
and edi, ecx
or edi, r8d
and edi, eax
or edi, ebx
mov dword [r12 + 4], edi
jmp 0x1800112b7
mov eax, dword [r11]
mov ecx, eax
and ecx, 0x143f66d
mov edx, eax
and edx, 0xfebc0992
or edx, 0x101f669
or eax, esi
and esi, 0x7fffffff
xor esi, ecx
xor esi, edx
xor esi, 0x7efe0996
mov ecx, esi
xor ecx, eax
or esi, eax
not esi
or esi, ecx
mov eax, esi
and eax, 0xcbc5958f
or eax, 0x340a0800
and esi, 0x343a6a70
xor esi, eax
mov ecx, esi
xor ecx, 0xcbf5f7ff
mov r10d, esi
xor r10d, 0x340a0800
mov eax, ecx
and eax, 0x100414
mov edx, esi
and edx, 0x91c4f122
mov r8d, r10d
and r8d, 0x66080249
and esi, 0x8230880
add eax, edx
add eax, 0x66080249
lea r9d, [rsi + r8]
add r9d, 0x100414
xor r9d, eax
mov edx, r9d
xor edx, 0x760a0a49
mov r8d, r9d
xor r8d, 0x89f5f5b6
mov eax, edx
and eax, 0xb676a8f
and r10d, 0xab89c203
and ecx, 0x54763dfc
or ecx, r10d
mov r10d, ecx
xor r10d, 0x5f115773
and ecx, 0xb676a8f
xor ecx, 0x66288c
or ecx, r10d
mov r10d, edx
and r10d, 0x8222a00
xor r9d, 0xa202009
and r9d, eax
xor r10d, ecx
xor r10d, r9d
not eax
or eax, ecx
and eax, r10d
xor eax, ebp
mov r9d, eax
xor r9d, 0xb676a8f
mov ecx, r8d
or ecx, ebp
xor edx, r8d
and edx, ebp
xor ecx, r8d
xor ecx, edx
mov edx, ecx
not edx
mov r8d, ecx
and r8d, 0xc22020
mov r10d, edx
and r10d, 0x92101446
and r9d, edx
and edx, 0x28050b81
mov esi, ecx
and esi, 0x4528c018
add r8d, r10d
add r8d, 0x28050b81
add edx, esi
add edx, 0xc22020
xor edx, r8d
xor edx, eax
xor edx, 0x664aa116
xor ecx, eax
xor ecx, 0xf4989570
or ecx, r9d
not ecx
or ecx, edx
mov dword [r11], ecx
jmp 0x1800112b7