Function at 0x180027eb0
Capabilities:
Hash data using sha256

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x4f8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x470], 0xfffffffffffffffe
mov rsi, rdx
mov qword [rbp + 0x1c8], rcx
test r9, r9
je 0x180027eee
cmp byte [r8], 0x40
sete al
jmp 0x180027ef0
xor eax, eax
movzx eax, al
add r8, rax
sub r9, rax
mov qword [rbp + 0x418], r8
mov qword [rbp + 0x420], r9
mov rbx, qword [rsi + 0x28]
imul r14, qword [rsi + 0x30], 0x98
add r14, rbx
lea rcx, [rbp + 0x18]
mov rdx, rbx
mov r8, r14
call fcn.18007a670
mov byte [rbp + 0x469], 1
lea rcx, [rbp + 0x210]
mov rdx, rbx
mov r8, r14
call fcn.18007a520
mov qword [rbp + 0x428], rsi
mov rax, qword [rbp + 0x210]
mov qword [rbp + 0x3b0], rax
mov rsi, qword [rbp + 0x218]
mov rax, qword [rbp + 0x220]
mov qword [rbp + 0x3e0], rax
mov rdi, qword [rbp + 0x228]
mov byte [rbp + 0x468], 1
mov byte [rbp + 0x467], 1
lea rcx, [rbp + 0x210]
mov rdx, rbx
mov r8, r14
call fcn.18007a7c0
mov rax, qword [rbp + 0x4e8]
mov rcx, qword [rbp + 0x4e0]
mov rdx, qword [rbp + 0x210]
mov qword [rbp + 0x3b8], rdx
mov r12, qword [rbp + 0x218]
mov rdx, qword [rbp + 0x220]
mov qword [rbp + 0x3e8], rdx
mov r13, qword [rbp + 0x228]
mov dword [rbp + 0x454], 0
test rax, rax
je 0x180027fe1
cmp byte [rcx + rax - 1], 0xa
sete r15b
jmp 0x180027fe4
xor r15d, r15d
mov qword [rbp + 0x3c8], rcx
mov qword [rbp + 0x3d0], rax
mov qword [rbp + 0x3d8], 0
mov byte [rbp + 0x46f], 1
mov byte [rbp + 0x46e], 1
mov byte [rbp + 0x46d], 1
lea rcx, [rbp + 0x60]
lea rdx, [rbp + 0x3c8]
call fcn.180020ca0
movabs rbx, 0x8000000000000001
cmp qword [rbp + 0x60], rbx
mov qword [rbp + 0x3f0], rdi
jne 0x180028105
movzx eax, byte [0x1803225a1]
mov ecx, 0x800
mov edx, 1
call fcn.1800043b0
test rax, rax
je 0x18002953a
mov rbx, rax
mov r8d, 0x800
mov rcx, rax
xor edx, edx
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
movups xmmword [rbp + 0x220], xmm0
mov word [rbp + 0x230], 0
movups xmmword [rbp + 0x66], xmm0
mov qword [rbp + 0x248], 1
movabs rax, 0x8000000000000000
mov qword [rbp + 0x210], rax
mov qword [rbp + 0x218], rbx
movdqu xmm0, xmmword [rbp + 0x60]
movdqu xmmword [rbp + 0x232], xmm0
mov rax, qword [rbp + 0x6e]
mov qword [rbp + 0x240], rax
movzx eax, byte [0x1803225a1]
mov ecx, 0x40
mov edx, 8
call fcn.1800043b0
test rax, rax
je 0x180029571
movdqu xmm0, xmmword [rbp + 0x210]
movdqu xmm1, xmmword [rbp + 0x220]
movdqu xmm2, xmmword [rbp + 0x230]
movdqu xmm3, xmmword [rbp + 0x240]
jmp 0x1800286ea
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x240], rax
movdqu xmm0, xmmword [rbp + 0x60]
movdqu xmm1, xmmword [rbp + 0x70]
movdqu xmm2, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x230], xmm2
movdqa xmmword [rbp + 0x220], xmm1
movdqa xmmword [rbp + 0x210], xmm0
mov qword [rbp + 0x248], 1
movzx eax, byte [0x1803225a1]
mov ecx, 0x40
mov edx, 8
call fcn.1800043b0
test rax, rax
je 0x180029560
movdqa xmm0, xmmword [rbp + 0x210]
movdqa xmm1, xmmword [rbp + 0x220]
movdqa xmm2, xmmword [rbp + 0x230]
movdqa xmm3, xmmword [rbp + 0x240]
movdqu xmmword [rax + 0x30], xmm3
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
mov qword [rbp + 0x458], rax
movdqu xmmword [rax], xmm0
mov byte [rbp + 0x46a], 1
lea rcx, [rbp + 0x60]
lea rdx, [rbp + 0x3c8]
call fcn.180020ca0
cmp qword [rbp + 0x60], rbx
jne 0x1800281ca
mov rax, qword [rbp + 0x458]
jmp 0x1800286fd
mov rax, qword [rbp + 0x90]
mov qword [rbp + 0x240], rax
movdqu xmm0, xmmword [rbp + 0x60]
movdqu xmm1, xmmword [rbp + 0x70]
movdqu xmm2, xmmword [rbp + 0x80]
movdqa xmmword [rbp + 0x230], xmm2
movdqa xmmword [rbp + 0x220], xmm1
movdqa xmmword [rbp + 0x210], xmm0
mov qword [rbp + 0x248], 1
movzx eax, byte [0x1803225a1]
mov ecx, 0x40
mov edx, 8
call fcn.1800043b0
test rax, rax
mov rbx, qword [rbp + 0x458]
je 0x180029582
mov r14, rax
movdqa xmm0, xmmword [rbp + 0x210]
movdqa xmm1, xmmword [rbp + 0x220]
movdqa xmm2, xmmword [rbp + 0x230]
movdqa xmm3, xmmword [rbp + 0x240]
movdqu xmmword [rax + 0x30], xmm3
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
movzx eax, byte [0x1803225a1]
mov ecx, 0x10
mov edx, 8
call fcn.1800043b0
test rax, rax
mov qword [rbp + 0x3c0], r14
mov qword [rbp + 0x38], rax
je 0x180029593
mov qword [rbp + 0x210], 2
mov qword [rbp + 0x218], rax
mov qword [rax], rbx
mov qword [rax + 8], r14
mov qword [rbp + 0x220], 2
movdqu xmm0, xmmword [rbp + 0x3c8]
movdqa xmmword [rbp + 0x40], xmm0
mov rax, qword [rbp + 0x3d8]
mov qword [rbp + 0x50], rax
lea r8, [0x18023d390]
lea rcx, [rbp + 0x210]
lea rdx, [rbp + 0x40]
call fcn.180058cc0
mov rax, qword [rbp + 0x210]
mov rdx, qword [rbp + 0x218]
mov r8, qword [rbp + 0x220]
lea rcx, [rdx + r8*8]
cmp r8, 0x11
mov dword [rbp + 0x3f8], r15d
jae 0x1800283b4
mov qword [rbp + 0x210], rdx
mov qword [rbp + 0x218], rdx
mov qword [rbp + 0x220], rax
mov qword [rbp + 0x228], rcx
lea r8, [0x18023d1c0]
lea rcx, [rbp + 0x60]
lea rdx, [rbp + 0x210]
call fcn.180054350
mov r8, qword [rbp + 0x70]
test r8, r8
je 0x1800295bc
mov r9, qword [rbp + 0x68]
mov rcx, qword [r9]
xor eax, eax
cmp rax, qword [rcx]
jno 0x180028504
mov eax, 1
mov edx, 0x28
mov r10d, 1
movdqu xmm1, xmmword [rcx + rdx]
lea r11, [r8*8]
cmp r11, 8
je 0x18002852b
lea rdx, [r9 + 8]
test r8b, 1
jne 0x180028563
mov rdx, qword [rdx]
xor ecx, ecx
cmp rcx, qword [rdx]
jno 0x18002856a
mov ecx, 1
mov edi, 0x28
jmp 0x180028573
mov qword [rbp + 0x1d0], rdx
mov qword [rbp + 0x1d8], rdx
mov qword [rbp + 0x1e0], rax
mov qword [rbp + 0x1e8], rcx
lea r8, [0x18023d1c0]
lea rcx, [rbp + 0x400]
lea rdx, [rbp + 0x1d0]
call fcn.1800594f0
mov rax, qword [rbp + 0x410]
cmp rax, 0x11
jb 0x180028451
lea r14, [rbp + 0x400]
lea rbx, [rbp + 0x60]
nop word cs:[rax + rax]
mov rcx, qword [rbp + 0x400]
mov rdx, qword [rbp + 0x408]
lea rax, [rdx + rax*8]
mov qword [rbp + 0x60], rdx
mov qword [rbp + 0x68], rdx
mov qword [rbp + 0x70], rcx
mov qword [rbp + 0x78], rax
mov rcx, r14
mov rdx, rbx
lea r8, [0x18023d1c0]
call fcn.1800594f0
mov rax, qword [rbp + 0x410]
cmp rax, 0x10
ja 0x180028410
mov rcx, qword [rbp + 0x400]
mov rdx, qword [rbp + 0x408]
lea rax, [rdx + rax*8]
mov qword [rbp + 0x210], rdx
mov qword [rbp + 0x218], rdx
mov qword [rbp + 0x220], rcx
mov qword [rbp + 0x228], rax
lea r8, [0x18023d1c0]
lea rcx, [rbp + 0x430]
lea rdx, [rbp + 0x210]
call fcn.180054350
mov r8, qword [rbp + 0x440]
test r8, r8
je 0x1800295ce
mov r9, qword [rbp + 0x438]
mov rcx, qword [r9]
xor eax, eax
cmp rax, qword [rcx]
jno 0x180028534
mov eax, 1
mov edx, 0x28
mov r10d, 1
movdqu xmm1, xmmword [rcx + rdx]
lea r11, [r8*8]
cmp r11, 8
je 0x180028557
lea rdx, [r9 + 8]
test r8b, 1
jne 0x180028565
mov rdx, qword [rdx]
xor ecx, ecx
cmp rcx, qword [rdx]
jno 0x18002861f
mov ecx, 1
mov edi, 0x28
jmp 0x180028628
mov rax, qword [rcx + 0x28]
mov r10, qword [rcx + 0x30]
inc rax
mov edx, 0x18
movdqu xmm1, xmmword [rcx + rdx]
lea r11, [r8*8]
cmp r11, 8
jne 0x180028389
mov rcx, r10
movdqa xmm0, xmm1
jmp 0x180028590
mov rax, qword [rcx + 0x28]
mov r10, qword [rcx + 0x30]
inc rax
mov edx, 0x18
movdqu xmm1, xmmword [rcx + rdx]
lea r11, [r8*8]
cmp r11, 8
jne 0x1800284dd
mov rcx, r10
movdqa xmm0, xmm1
jmp 0x180028649
jmp 0x18002858a
jmp 0x18002863f
mov rcx, qword [rdx + 0x30]
mov edi, 0x18
add rcx, r10
movdqu xmm0, xmmword [rdx + rdi]
paddq xmm0, xmm1
lea rdx, [r9 + 0x10]
mov r10, rcx
movdqa xmm1, xmm0
cmp r11, 0x10
jne 0x1800285a4
mov rdx, qword [rbp + 0x70]
mov qword [rbp + 0x3a0], rdx
movups xmm1, xmmword [rbp + 0x60]
jmp 0x18002865e
lea r8, [r9 + r8*8]
xor r9d, r9d
mov rcx, r10
movdqa xmm0, xmm1
jmp 0x1800285e3
add rcx, r14
add rcx, rdi
movdqu xmm1, xmmword [r10 + rbx]
paddq xmm0, xmm1
movdqu xmm1, xmmword [r15 + r11]
paddq xmm0, xmm1
add rdx, 0x10
cmp rdx, r8
je 0x180028590
mov r10, qword [rdx]
mov edi, 1
mov r11d, 0x28
cmp r9, qword [r10]
mov ebx, 0x28
mov r14d, 1
jo 0x18002860a
mov r14, qword [r10 + 0x30]
mov ebx, 0x18
mov r15, qword [rdx + 8]
cmp r9, qword [r15]
jo 0x1800285c0
mov rdi, qword [r15 + 0x30]
mov r11d, 0x18
jmp 0x1800285c0
mov rcx, qword [rdx + 0x30]
mov edi, 0x18
add rcx, r10
movdqu xmm0, xmmword [rdx + rdi]
paddq xmm0, xmm1
lea rdx, [r9 + 0x10]
mov r10, rcx
movdqa xmm1, xmm0
cmp r11, 0x10
jne 0x1800293a0
mov rdx, qword [rbp + 0x440]
mov qword [rbp + 0x3a0], rdx
movups xmm1, xmmword [rbp + 0x430]
movaps xmmword [rbp + 0x390], xmm1
mov qword [rbp + 0x248], 1
movdqa xmm1, xmmword [rbp + 0x390]
movdqa xmmword [rbp + 0x210], xmm1
mov rdx, qword [rbp + 0x3a0]
mov qword [rbp + 0x220], rdx
movdqu xmmword [rbp + 0x228], xmm0
mov qword [rbp + 0x238], rax
mov qword [rbp + 0x240], rcx
movzx eax, byte [0x1803225a1]
mov ecx, 0x40
mov edx, 8
call fcn.1800043b0
test rax, rax
mov r15d, dword [rbp + 0x3f8]
je 0x1800295ab
movdqa xmm0, xmmword [rbp + 0x210]
movdqa xmm1, xmmword [rbp + 0x220]
movdqa xmm2, xmmword [rbp + 0x230]
movdqa xmm3, xmmword [rbp + 0x240]
movdqu xmmword [rax + 0x30], xmm3
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax], xmm0
mov qword [rbp + 0x3c8], rax
mov byte [rbp + 0x3d0], r15b
mov rcx, qword [rbp + 0x428]
mov rax, qword [rcx + 0x98]
test rax, rax
sete byte [rbp + 0x3c0]
je 0x18002951b
mov rcx, qword [rcx + 0xa0]
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x48], rcx
mov rax, qword [rbp + 0x18]
mov qword [rbp + 0x3f8], rax
mov r14, qword [rbp + 0x20]
mov rax, qword [rbp + 0x28]
mov qword [rbp + 0x458], rax
mov r15, qword [rbp + 0x30]
cmp r14, r15
je 0x1800287a3
mov rbx, qword [rbp + 0x4f0]
lea rdi, [rbp + 0x40]
jmp 0x180028779
add r14, 0x10
cmp r14, r15
je 0x1800287a3
mov rcx, qword [r14]
mov rdx, qword [rbp + 0x418]
mov r8, qword [rbp + 0x420]
mov qword [rsp + 0x20], rdi
mov r9, rbx
call fcn.1800473c0
test al, al
je 0x180028770
inc dword [rbp + 0x454]
jmp 0x180028770
mov rdx, qword [rbp + 0x458]
test rdx, rdx
je 0x1800287c5
shl rdx, 4
mov r8d, 8
mov rcx, qword [rbp + 0x3f8]
call fcn.1800043c0
mov rdi, qword [rbp + 0x3f0]
cmp rsi, rdi
je 0x18002880e
lea rbx, [rbp + 0x3c8]
jmp 0x1800287e9
add rsi, 0x10
cmp rsi, rdi
je 0x18002880e
mov rcx, qword [rsi]
mov rdx, qword [rbp + 0x418]
mov r8, qword [rbp + 0x420]
mov r9, rbx
call fcn.18009e990
test al, al
je 0x1800287e0
inc dword [rbp + 0x454]
jmp 0x1800287e0
mov rdx, qword [rbp + 0x3e0]
test rdx, rdx
je 0x180028830
shl rdx, 4
mov r8d, 8
mov rcx, qword [rbp + 0x3b0]
call fcn.1800043c0
mov esi, 1
lea rbx, [rbp + 0x3c8]
nop dword [rax]
cmp r12, r13
je 0x1800288b6
mov rcx, qword [r12]
add r12, 0x10
mov rax, qword [rcx]
add rax, 0xfffffffffffffffe
cmp rax, 4
cmovae rax, rsi
test rax, rax
je 0x180028890
cmp rax, 1
jne 0x180029487
mov rdx, qword [rbp + 0x418]
mov r8, qword [rbp + 0x420]
mov r9, rbx
call fcn.1800b4e40
test al, al
je 0x180028840
inc dword [rbp + 0x454]
jmp 0x180028840
add rcx, 8
mov rdx, qword [rbp + 0x418]
mov r8, qword [rbp + 0x420]
mov r9, rbx
call fcn.1800cc5c0
test al, al
je 0x180028840
inc dword [rbp + 0x454]
jmp 0x180028840
mov rdx, qword [rbp + 0x3e8]
test rdx, rdx
je 0x1800288d8
shl rdx, 4
mov r8d, 8
mov rcx, qword [rbp + 0x3b8]
call fcn.1800043c0
mov r15, qword [rbp + 0x3c8]
mov qword [rbp + 0x430], 0
mov qword [rbp + 0x438], 1
mov qword [rbp + 0x440], 0
mov qword [rbp + 0x200], 0x20
mov byte [rbp + 0x208], 3
mov qword [rbp + 0x1d0], 0
mov qword [rbp + 0x1e0], 0
lea rax, [rbp + 0x430]
mov qword [rbp + 0x1f0], rax
lea rax, [0x18023d000]
mov qword [rbp + 0x1f8], rax
mov rcx, qword [r15]
mov rax, rcx
neg rax
jno 0x180028953
xor edi, edi
jmp 0x180028957
mov rdi, qword [r15 + 0x28]
xor r14d, r14d
sub rdi, 1
cmovb rdi, r14
mov rbx, rdi
shl rbx, 4
mov rax, rdi
shr rax, 0x3c
jne 0x1800294e6
movabs rsi, 0x7ffffffffffffff8
cmp rbx, rsi
ja 0x1800294e6
test rbx, rbx
je 0x1800289e5
movzx eax, byte [0x1803225a1]
mov r14d, 8
mov edx, 8
mov rcx, rbx
call fcn.1800043b0
test rax, rax
je 0x1800294e6
mov qword [rbp + 0x458], rax
mov rcx, qword [r15]
mov rax, rcx
neg rax
jno 0x1800289fb
pxor xmm0, xmm0
movdqa xmmword [rbp + 0x210], xmm0
mov qword [rbp + 0x220], 0
mov r12d, 1
xor r13d, r13d
jmp 0x180028a1a
mov eax, 8
mov qword [rbp + 0x458], rax
xor edi, edi
mov rax, rcx
neg rax
jo 0x1800289c3
mov r12, qword [r15 + 0x30]
pxor xmm0, xmm0
movdqa xmmword [rbp + 0x210], xmm0
mov qword [rbp + 0x220], 0
mov r13, qword [r15 + 0x28]
xor r14d, r14d
sub r13, 1
cmovb r13, r14
mov rbx, r13
shl rbx, 4
mov rax, r13
shr rax, 0x3c
jne 0x1800294fd
cmp rbx, rsi
ja 0x1800294fd
test rbx, rbx
je 0x180028a7e
movzx eax, byte [0x1803225a1]
mov r14d, 8
mov edx, 8
mov rcx, rbx
call fcn.1800043b0
test rax, rax
je 0x1800294fd
mov rcx, qword [r15]
neg rcx
jno 0x180028a8b
mov ecx, 1
mov edx, 0x28
jmp 0x180028a94
mov eax, 8
xor r13d, r13d
neg rcx
jo 0x180028a72
mov rcx, qword [r15 + 0x30]
mov edx, 0x18
pxor xmm0, xmm0
movdqu xmmword [rbp + 0x130], xmm0
mov qword [rbp + 0x140], 0
mov qword [rbp + 0x60], rdi
mov r8, qword [rbp + 0x458]
mov qword [rbp + 0x68], r8
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x78], r15
mov qword [rbp + 0x80], 8
movdqa xmm0, xmmword [rbp + 0x210]
movdqu xmmword [rbp + 0x88], xmm0
mov r8, qword [rbp + 0x220]
mov qword [rbp + 0x98], r8
mov qword [rbp + 0xc0], 0
mov qword [rbp + 0xe8], 0
mov qword [rbp + 0xf0], 1
mov qword [rbp + 0xf8], r12
mov byte [rbp + 0x100], 0
mov qword [rbp + 0x108], r13
mov qword [rbp + 0x110], rax
mov qword [rbp + 0x118], 0
mov qword [rbp + 0x120], r15
mov qword [rbp + 0x128], 8
mov qword [rbp + 0x168], 0
mov qword [rbp + 0x190], 0
mov qword [rbp + 0x198], 1
mov qword [rbp + 0x1a0], rcx
mov byte [rbp + 0x1a8], 0
mov qword [rbp + 0x1b0], 0
mov qword [rbp + 0x1b8], rcx
cmp qword [r15 + rdx], 0
mov r13, qword [rbp + 0x428]
jne 0x180028bb8
test rcx, rcx
je 0x180028bb8
mov qword [rbp + 0x1b0], 1
lea rcx, [rbp + 0x210]
lea rdx, [rbp + 0x60]
call fcn.180022280
lea r14, [rbp + 0x210]
lea r12, [rbp + 0x60]
mov r8d, 0x160
mov rcx, r14
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp + 0x370], 0
mov qword [rbp + 0x380], 0
lea rbx, [rbp + 0x1d0]
nop word cs:[rax + rax]
mov rdx, qword [rbp + 0x370]
mov r8, qword [rbp + 0x378]
mov qword [rbp + 0x370], 0
test rdx, rdx
jne 0x180028cc1
mov rax, qword [rbp + 0x360]
cmp rax, qword [rbp + 0x368]
je 0x180028ca0
inc rax
mov qword [rbp + 0x360], rax
mov rcx, r12
mov rdx, r14
call fcn.180022280
mov rdx, qword [rbp + 0x60]
test rdx, rdx
je 0x180028ca0
mov rax, qword [rbp + 0x68]
mov r8, qword [rbp + 0x70]
cmp r8, rax
ja 0x1800294a4
movzx r10d, word [rbp + 0x80]
movzx r9d, r10w
mov rcx, rax
sub rcx, r9
test r8, r8
je 0x180028cd6
cmp rax, r9
jb 0x1800294be
test r10w, r10w
je 0x180028cc1
add rcx, rdx
mov qword [rbp + 0x370], rcx
mov qword [rbp + 0x378], r9
jmp 0x180028cc1
mov rdx, qword [rbp + 0x380]
mov r9, qword [rbp + 0x388]
mov qword [rbp + 0x380], 0
mov r8, r9
test rdx, rdx
je 0x180028cea
mov rcx, rbx
call fcn.18021c990
test al, al
je 0x180028c00
jmp 0x180029413
cmp rax, r9
jb 0x1800294d2
add rdx, rcx
mov r8, r9
test rdx, rdx
jne 0x180028cc1
mov rdx, qword [rbp + 0x210]
test rdx, rdx
je 0x180028d0c
mov rcx, qword [rbp + 0x218]
shl rdx, 4
mov r8d, 8
call fcn.1800043c0
mov rdx, qword [rbp + 0x2b8]
test rdx, rdx
je 0x180028d2e
mov rcx, qword [rbp + 0x2c0]
shl rdx, 4
mov r8d, 8
call fcn.1800043c0
mov rax, qword [rbp + 0x430]
mov qword [rbp + 0x458], rax
mov rcx, qword [rbp + 0x438]
mov rax, qword [rbp + 0x440]
mov qword [rbp - 0x30], 0
mov qword [rbp - 0x28], rax
mov qword [rbp + 0x3f0], rcx
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], 0
mov qword [rbp - 8], rax
movabs rax, 0xa0000000a
mov qword [rbp], rax
mov byte [rbp + 8], 1
mov word [rbp + 0x10], 0
lea r8, [0x18023d1c0]
lea rcx, [rbp + 0x390]
lea rdx, [rbp - 0x30]
call fcn.18005d610
mov rdx, qword [rbp + 0x458]
test rdx, rdx
je 0x180028dbe
mov r8d, 1
mov rcx, qword [rbp + 0x3f0]
call fcn.1800043c0
mov r14, qword [rbp + 0x398]
mov r15, qword [rbp + 0x3a0]
lea rax, [r15 + r15*2]
lea rsi, [r14 + rax*8]
add r13, 0x68
mov rcx, r14
nop dword [rax + rax]
cmp rcx, rsi
je 0x180028df6
lea rdi, [rcx + 0x18]
mov rdx, r13
call fcn.180081a10
mov rcx, rdi
jmp 0x180028de0
mov qword [rsp + 0x20], 0
lea rcx, [rbp + 0x210]
mov r9d, 1
mov rdx, r14
mov r8, r15
call fcn.180079e70
mov rax, qword [rbp + 0x220]
mov qword [rbp + 0x410], rax
movdqu xmm0, xmmword [rbp + 0x210]
movdqa xmmword [rbp + 0x400], xmm0
cmp dword [rbp + 0x454], 1
mov rax, qword [0x180322450]
mov rax, qword [rax]
jne 0x180028ece
cmp rax, 3
jb 0x180028f61
lea rax, [rbp + 0x418]
mov qword [rbp + 0x60], rax
lea rax, [0x18002d0f0]
mov qword [rbp + 0x68], rax
lea rax, str.Applied_1_patch_to_
mov qword [rbp + 0x210], rax
mov qword [rbp + 0x218], 2
mov qword [rbp + 0x230], 0
mov qword [rbp + 0x220], r12
mov qword [rbp + 0x228], 1
mov qword [rsp + 0x20], 0
lea r8, str.lovely_core
lea rcx, [rbp + 0x210]
mov edx, 3
mov r9d, 0x1e0
call fcn.1801f62f0
jmp 0x180028f61
cmp rax, 3
jb 0x180028f61
lea rax, [rbp + 0x454]
mov qword [rbp + 0x60], rax
lea rax, [0x180222480]
mov qword [rbp + 0x68], rax
lea rax, [rbp + 0x418]
mov qword [rbp + 0x70], rax
lea rax, [0x18002d0f0]
mov qword [rbp + 0x78], rax
lea rax, str.Applied__patches_to_
mov qword [rbp + 0x210], rax
mov qword [rbp + 0x218], 3
mov qword [rbp + 0x230], 0
mov qword [rbp + 0x220], r12
mov qword [rbp + 0x228], 2
mov qword [rsp + 0x20], 0
lea r8, str.lovely_core
lea rcx, [rbp + 0x210]
mov edx, 3
mov r9d, 0x1e2
call fcn.1801f62f0
lea r12, [rbp + 0x88]
pxor xmm0, xmm0
movdqu xmmword [rbp + 0xb8], xmm0
movdqu xmmword [rbp + 0xa8], xmm0
movdqu xmmword [rbp + 0x98], xmm0
movdqu xmmword [rbp + 0x88], xmm0
mov byte [rbp + 0xc8], 0
movups xmm0, xmmword [0x18023d6b0]
movaps xmmword [rbp + 0x60], xmm0
movdqu xmm0, xmmword [0x18023d6c0]
movdqa xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x80], 0
mov r13, qword [rbp + 0x408]
mov rdi, qword [rbp + 0x410]
cmp rdi, 0x40
jb 0x180028ff1
mov r8, rdi
shr r8, 6
mov qword [rbp + 0x80], r8
lea rcx, [rbp + 0x60]
mov rdx, r13
call fcn.1801f8f10
mov rax, rdi
and rax, 0xffffffffffffffc0
add r13, rax
and edi, 0x3f
mov rcx, r12
mov rdx, r13
mov r8, rdi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbp + 0xc8], dil
mov rax, qword [rbp + 0xc0]
mov qword [rbp + 0x270], rax
movzx eax, byte [rbp + 0xc8]
mov byte [rbp + 0x278], al
mov eax, dword [rbp + 0xc9]
mov dword [rbp + 0x279], eax
movzx eax, word [rbp + 0xcd]
mov word [rbp + 0x27d], ax
movzx eax, byte [rbp + 0xcf]
mov byte [rbp + 0x27f], al
movdqa xmm0, xmmword [rbp + 0x60]
movdqa xmm1, xmmword [rbp + 0x70]
movaps xmm2, xmmword [rbp + 0x80]
movdqa xmm3, xmmword [rbp + 0x90]
movaps xmmword [rbp + 0x230], xmm2
movaps xmm2, xmmword [rbp + 0xb0]
movaps xmmword [rbp + 0x260], xmm2
movdqa xmm2, xmmword [rbp + 0xa0]
movdqa xmmword [rbp + 0x250], xmm2
movdqa xmmword [rbp + 0x240], xmm3
movdqa xmmword [rbp + 0x220], xmm1
movdqa xmmword [rbp + 0x210], xmm0
lea rdi, [rbp + 0x238]
movzx r12d, byte [rbp + 0x278]
mov rax, qword [rbp + 0x230]
shl rax, 9
lea esi, [r12*8]
or rsi, rax
bswap rsi
mov byte [rbp + r12 + 0x238], 0x80
cmp r12d, 0x3f
je 0x1800290fb
lea rcx, [r12 + rbp]
add rcx, 0x238
inc rcx
mov r8, r12
xor r8, 0x3f
xor edx, edx
call sub.VCRUNTIME140.dll_memset
xor r12d, 0x38
cmp r12d, 7
ja 0x180029159
lea rcx, [rbp + 0x210]
mov r8d, 1
mov rdx, rdi
call fcn.1801f8f10
pxor xmm0, xmm0
movdqa xmmword [rbp + 0x1f0], xmm0
movdqa xmmword [rbp + 0x1e0], xmm0
movdqa xmmword [rbp + 0x1d0], xmm0
mov qword [rbp + 0x200], 0
mov qword [rbp + 0x208], rsi
lea rcx, [rbp + 0x210]
lea rdx, [rbp + 0x1d0]
mov r8d, 1
call fcn.1801f8f10
jmp 0x180029175
mov qword [rbp + 0x270], rsi
lea rcx, [rbp + 0x210]
mov r8d, 1
mov rdx, rdi
call fcn.1801f8f10
pxor xmm0, xmm0
movdqa xmm1, xmmword [rbp + 0x210]
movdqa xmm2, xmmword [rbp + 0x220]
movdqa xmm3, xmm1
punpckhbw xmm3, xmm0
pshuflw xmm3, xmm3, 0x1b
pshufhw xmm3, xmm3, 0x1b
punpcklbw xmm1, xmm0
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
packuswb xmm1, xmm3
movdqa xmm3, xmm2
punpckhbw xmm3, xmm0
pshuflw xmm3, xmm3, 0x1b
pshufhw xmm3, xmm3, 0x1b
punpcklbw xmm2, xmm0
pshuflw xmm0, xmm2, 0x1b
pshufhw xmm0, xmm0, 0x1b
packuswb xmm0, xmm3
movdqa xmmword [rbp + 0x1d0], xmm1
movdqa xmmword [rbp + 0x1e0], xmm0
mov qword [rbp + 0x430], rbx
lea rax, [0x18008aa00]
mov qword [rbp + 0x438], rax
lea rax, [0x18023e340]
mov qword [rbp + 0x210], rax
mov qword [rbp + 0x218], 1
mov qword [rbp + 0x230], 0
lea rax, [rbp + 0x430]
mov qword [rbp + 0x220], rax
mov qword [rbp + 0x228], 1
lea rcx, [rbp - 0x48]
lea rdx, [rbp + 0x210]
call fcn.180214d70
movdqu xmm0, xmmword [rbp - 0x48]
movdqa xmmword [rbp + 0x430], xmm0
mov rax, qword [rbp - 0x38]
mov qword [rbp + 0x440], rax
lea rax, [rbp + 0x430]
mov qword [rbp + 0x1d0], rax
lea rax, [0x180001cc0]
mov qword [rbp + 0x1d8], rax
lea rcx, [rbp + 0x400]
mov qword [rbp + 0x1e0], rcx
mov qword [rbp + 0x1e8], rax
lea rax, str.LOVELY_INTEGRITY___n_n
mov qword [rbp + 0x210], rax
mov qword [rbp + 0x218], 2
mov qword [rbp + 0x230], 0
mov qword [rbp + 0x220], rbx
mov qword [rbp + 0x228], 2
lea rdx, [rbp + 0x210]
mov rcx, qword [rbp + 0x1c8]
call fcn.180214d70
mov rdx, qword [rbp + 0x430]
test rdx, rdx
je 0x1800292f3
mov rcx, qword [rbp + 0x438]
mov r8d, 1
call fcn.1800043c0
mov rdx, qword [rbp + 0x400]
test rdx, rdx
je 0x180029311
mov rcx, qword [rbp + 0x408]
mov r8d, 1
call fcn.1800043c0
test r15, r15
je 0x180029342
lea rsi, [r14 + 8]
jmp 0x180029329
add rsi, 0x18
dec r15
je 0x180029342
mov rdx, qword [rsi - 8]
test rdx, rdx
je 0x180029320
mov rcx, qword [rsi]
mov r8d, 1
call fcn.1800043c0
jmp 0x180029320
mov rax, qword [rbp + 0x390]
test rax, rax
je 0x180029364
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
mov rcx, r14
call fcn.1800043c0
mov rcx, qword [rbp + 0x3c8]
mov byte [rbp + 0x46f], 0
mov byte [rbp + 0x46e], 0
mov byte [rbp + 0x46d], 0
call fcn.180021800
mov rax, qword [rbp + 0x1c8]
add rsp, 0x4f8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea r8, [r9 + r8*8]
xor r9d, r9d
mov rcx, r10
movdqa xmm0, xmm1
jmp 0x1800293d7
add rcx, r14
add rcx, rdi
movdqu xmm1, xmmword [r10 + rbx]
paddq xmm0, xmm1
movdqu xmm1, xmmword [r15 + r11]
paddq xmm0, xmm1
add rdx, 0x10
cmp rdx, r8
je 0x180028649
mov r10, qword [rdx]
mov edi, 1
mov r11d, 0x28
cmp r9, qword [r10]
mov ebx, 0x28
mov r14d, 1
jo 0x1800293fe
mov r14, qword [r10 + 0x30]
mov ebx, 0x18
mov r15, qword [rdx + 8]
cmp r9, qword [r15]
jo 0x1800293b0
mov rdi, qword [r15 + 0x30]
mov r11d, 0x18
jmp 0x1800293b0
mov rdx, qword [rbp + 0x210]
test rdx, rdx
je 0x180029435
mov rcx, qword [rbp + 0x218]
shl rdx, 4
mov r8d, 8
call fcn.1800043c0
mov rdx, qword [rbp + 0x2b8]
test rdx, rdx
je 0x180029457
mov rcx, qword [rbp + 0x2c0]
shl rdx, 4
mov r8d, 8
call fcn.1800043c0
lea rax, [0x18023d0b8]
mov qword [rsp + 0x20], rax
lea rcx, [0x18023d030]
lea r9, [0x18023d1d8]
lea r8, [rbp + 0x210]
mov edx, 0x37
call fcn.18022e1f0
jmp 0x1800295de
lea rcx, [0x18023cf48]
lea r8, [0x18023e388]
mov edx, 0x28
call fcn.18022df20
jmp 0x1800295de
lea r9, [0x18023d740]
mov rcx, r8
mov rdx, rax
mov r8, r9
call fcn.18022e330
jmp 0x1800295de
lea r8, [0x18023d758]
mov rdx, rax
call fcn.18022e2c0
jmp 0x1800295de
lea r8, [0x18023d758]
mov rdx, rax
call fcn.18022e2c0
jmp 0x1800295de
lea r8, [0x18023cf18]
mov rcx, r14
mov rdx, rbx
call fcn.18022dbb3
jmp 0x1800295de
mov qword [rbp + 0x428], rdi
lea r8, [0x18023cf30]
mov rcx, r14
mov rdx, rbx
call fcn.18022dbb3
jmp 0x1800295de
mov byte [rbp + 0x46c], 1
mov byte [rbp + 0x46b], 1
lea rcx, [0x18023e2a8]
call fcn.18022de00
jmp 0x1800295de
mov byte [rbp + 0x46f], 1
mov byte [rbp + 0x46e], 1
mov byte [rbp + 0x46d], 1
mov ecx, 1
mov edx, 0x800
call fcn.18022dbd0
jmp 0x1800295de
mov ecx, 8
mov edx, 0x40
call fcn.18022dbd0
jmp 0x1800295de
mov ecx, 8
mov edx, 0x40
call fcn.18022dbd0
jmp 0x1800295de
mov ecx, 8
mov edx, 0x40
call fcn.18022dbd0
jmp 0x1800295de
lea r8, [0x18023d378]
mov ecx, 8
mov edx, 0x10
call fcn.18022dbb3
jmp 0x1800295de
mov ecx, 8
mov edx, 0x40
call fcn.18022dbd0
jmp 0x1800295de
lea r8, [0x18023d2f8]
xor ecx, ecx
xor edx, edx
call fcn.18022dfa4
jmp 0x1800295de
lea r8, [0x18023d2f8]
xor ecx, ecx
xor edx, edx
call fcn.18022dfa4
ud2