Function at 0x140018a10
Capabilities:
Hash data using sha256
Hash data with md5

Disassembly:
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2500]
mov eax, 0x2600
call fcn.140020430
sub rsp, rax
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x2638], rbx
mov qword [rsp + 0x2640], rsi
mov qword [rsp + 0x2648], rdi
mov rax, qword [0x140081080]
xor rax, rsp
mov qword [rbp + 0x24f0], rax
mov r15, rcx
mov qword [rsp + 0x38], rcx
lea r13, [0x140081b20]
cmp qword [0x140081b30], 0
jne 0x14001934b
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp + 0x4f0]
call fcn.140021810
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp + 0x14f0]
call fcn.140021810
lea rdx, [0x1400753e0]
lea rcx, [rbp - 0x10]
call fcn.140040e80
nop
lea rdx, [0x140075418]
lea rcx, [rbp + 0xb0]
call fcn.14001d020
nop
lea rcx, [rbp + 0x90]
call fcn.140057b40
nop
lea rcx, [rbp + 0x70]
call fcn.1400581a0
nop
lea rcx, [rbp + 0x50]
call fcn.140018430
nop
lea rcx, [rbp + 0x30]
call fcn.140057650
nop
lea rcx, [rbp + 0x10]
call fcn.1400571a0
nop
lea r8, [rbp + 0xb0]
cmp qword [rbp + 0xc8], 8
cmovae r8, qword [rbp + 0xb0]
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.1400280d4
lea r8, [rbp + 0x90]
cmp qword [rbp + 0xa8], 8
cmovae r8, qword [rbp + 0x90]
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.14002813c
lea r8, [rbp + 0x70]
cmp qword [rbp + 0x88], 8
cmovae r8, qword [rbp + 0x70]
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.14002813c
lea r8, [rbp + 0x50]
cmp qword [rbp + 0x68], 8
cmovae r8, qword [rbp + 0x50]
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.14002813c
lea r8, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae r8, qword [rbp - 0x10]
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.14002813c
lea r8, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae r8, qword [rbp + 0x10]
mov edx, 0x800
lea rcx, [rbp + 0x14f0]
call fcn.14002813c
lea r8, [rbp + 0x30]
cmp qword [rbp + 0x48], 8
cmovae r8, qword [rbp + 0x30]
mov edx, 0x800
lea rcx, [rbp + 0x14f0]
call fcn.14002813c
lea r8, [rbp - 0x10]
cmp qword [rbp + 8], 8
cmovae r8, qword [rbp - 0x10]
mov edx, 0x800
lea rcx, [rbp + 0x14f0]
call fcn.14002813c
mov edx, 0x800
lea rcx, [rbp + 0x4f0]
call fcn.1400279a8
xor r12d, r12d
mov qword [rbp - 0x80], r12
mov ecx, r12d
mov qword [rbp - 0x78], rcx
mov dword [rbp - 0x30], 0x6a09e667
mov dword [rbp - 0x2c], 0xbb67ae85
mov dword [rbp - 0x28], 0x3c6ef372
mov dword [rbp - 0x24], 0xa54ff53a
mov dword [rbp - 0x20], 0x510e527f
mov dword [rbp - 0x1c], 0x9b05688c
mov dword [rbp - 0x18], 0x1f83d9ab
mov dword [rbp - 0x14], 0x5be0cd19
lea rdi, [rax + rax]
lea rbx, [rbp + 0x4f0]
test rdi, rdi
je 0x140018cdc
cmp rdi, 0x40
jb 0x140018caf
mov rsi, rdi
shr rsi, 6
imul rax, rsi, 0xffffffffffffffc0
add rdi, rax
nop dword [rax + rax]
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.140051550
add rbx, 0x40
add qword [rbp - 0x80], 0x40
sub rsi, 1
jne 0x140018c90
mov rcx, qword [rbp - 0x78]
test rdi, rdi
je 0x140018cdc
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rbx]
mov byte [rbp + rcx - 0x70], al
mov rcx, qword [rbp - 0x78]
inc rcx
mov qword [rbp - 0x78], rcx
lea rbx, [rbx + 1]
sub rdi, 1
jne 0x140018cc0
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x80]
call fcn.1400135e0
nop
mov edx, 0x800
lea rcx, [rbp + 0x14f0]
call fcn.1400279a8
mov qword [rbp - 0x80], r12
mov rcx, r12
mov qword [rbp - 0x78], rcx
mov dword [rbp - 0x30], 0x6a09e667
mov dword [rbp - 0x2c], 0xbb67ae85
mov dword [rbp - 0x28], 0x3c6ef372
mov dword [rbp - 0x24], 0xa54ff53a
mov dword [rbp - 0x20], 0x510e527f
mov dword [rbp - 0x1c], 0x9b05688c
mov dword [rbp - 0x18], 0x1f83d9ab
mov dword [rbp - 0x14], 0x5be0cd19
lea rdi, [rax + rax]
lea rbx, [rbp + 0x14f0]
test rdi, rdi
je 0x140018dac
cmp rdi, 0x40
jb 0x140018d82
mov rsi, rdi
shr rsi, 6
imul rax, rsi, 0xffffffffffffffc0
add rdi, rax
mov rdx, rbx
lea rcx, [rbp - 0x80]
call fcn.140051550
add rbx, 0x40
add qword [rbp - 0x80], 0x40
sub rsi, 1
jne 0x140018d63
mov rcx, qword [rbp - 0x78]
test rdi, rdi
je 0x140018dac
nop word [rax + rax]
movzx eax, byte [rbx]
mov byte [rbp + rcx - 0x70], al
mov rcx, qword [rbp - 0x78]
inc rcx
mov qword [rbp - 0x78], rcx
lea rbx, [rbx + 1]
sub rdi, 1
jne 0x140018d90
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.1400135e0
nop
lea r9, [rsp + 0x40]
mov rdi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x58]
cmp r14, 0x10
cmovae r9, rdi
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rax, rdx
sub rax, rcx
mov rsi, qword [rsp + 0x50]
cmp rsi, rax
ja 0x140018e1b
lea rax, [rcx + rsi]
mov qword [rsp + 0x70], rax
lea rbx, [rsp + 0x60]
cmp rdx, 0x10
cmovae rbx, qword [rsp + 0x60]
add rbx, rcx
mov r8, rsi
mov rdx, r9
mov rcx, rbx
call fcn.1400213b0
mov byte [rbx + rsi], 0
jmp 0x140018e37
mov qword [rsp + 0x20], rsi
mov rdx, rsi
lea rcx, [rsp + 0x60]
call fcn.14001c670
mov r14, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x40]
cmp r14, 0x10
jb 0x140018e6e
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140018e66
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001938f
mov rcx, rdi
call fcn.14001f794
xor edx, edx
mov r8d, 0x400
lea rcx, [rbp + 0xf0]
call fcn.140021810
lea rdx, [0x140072acc]
lea rcx, [rsp + 0x40]
call fcn.140001390
lea r9, [rsp + 0x60]
cmp qword [rsp + 0x78], 0x10
cmovae r9, qword [rsp + 0x60]
cmp qword [rax + 0x18], 0x10
jb 0x140018eae
mov rax, qword [rax]
mov r8, rax
mov edx, 0x400
lea rcx, [rbp + 0xf0]
call fcn.14001c300
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140018eff
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140018efa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140019395
call fcn.14001f794
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], r12
mov dword [rbp - 0x30], 0x67452301
mov dword [rbp - 0x2c], 0xefcdab89
mov dword [rbp - 0x28], 0x98badcfe
mov dword [rbp - 0x24], 0x10325476
lea rdx, [rbp + 0xf0]
lea rcx, [rbp - 0x80]
call fcn.140050290
lea rdx, [rbp + 0xd0]
lea rcx, [rbp - 0x80]
call fcn.1400120c0
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140018f50
mov rdx, qword [rax]
mov rax, r13
test rdx, rdx
jne 0x140018f76
mov qword [0x140081b30], r12
cmp qword [0x140081b38], 0x10
cmovae rax, qword [0x140081b20]
mov byte [rax], dl
jmp 0x140019073
mov r9, qword [0x140081b38]
mov r10, qword [0x140081b20]
cmp r9, 0x10
cmovae rax, r10
cmp rdx, rax
jb 0x140019052
mov rax, r13
cmp r9, 0x10
cmovae rax, r10
mov rcx, qword [0x140081b30]
add rax, rcx
cmp rdx, rax
ja 0x140019052
mov rax, r13
cmp r9, 0x10
cmovae rax, r10
sub rdx, rax
movdqa xmm0, xmmword [0x1400755e0]
movdqu xmmword [rsp + 0x50], xmm0
mov byte [rsp + 0x40], 0
cmp rcx, rdx
jb 0x14001939b
sub rcx, rdx
mov r8, 0xffffffffffffffff
cmp rcx, r8
cmovb r8, rcx
mov rax, r13
cmp r9, 0x10
cmovae rax, r10
add rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140019f10
lea rdx, [rsp + 0x40]
mov rcx, r13
call fcn.140019ce0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x140019073
inc rdx
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001904b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400193a1
call fcn.14001f794
jmp 0x140019073
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x140019060
mov rcx, r13
call fcn.140019f10
nop
mov rdx, qword [rbp + 0xe8]
cmp rdx, 0x10
jb 0x1400190b5
inc rdx
mov rcx, qword [rbp + 0xd0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400190af
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400193a7
call fcn.14001f794
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1400190f2
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400190ed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400193ad
call fcn.14001f794
movdqa xmm0, xmmword [0x1400755e0]
movdqu xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], 0
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x140019145
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019140
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400193b3
call fcn.14001f794
movdqa xmm0, xmmword [0x1400755d0]
movdqu xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x10], r12w
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x140019197
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019192
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400193b9
call fcn.14001f794
movdqa xmm0, xmmword [0x1400755d0]
movdqu xmmword [rbp + 0x40], xmm0
mov word [rbp + 0x30], r12w
mov rdx, qword [rbp + 0x68]
cmp rdx, 8
jb 0x1400191e9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400191e4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400193bf
call fcn.14001f794
movdqa xmm0, xmmword [0x1400755d0]
movdqu xmmword [rbp + 0x60], xmm0
mov word [rbp + 0x50], r12w
mov rdx, qword [rbp + 0x88]
cmp rdx, 8
jb 0x14001923e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019239
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400193c5
call fcn.14001f794
movdqa xmm0, xmmword [0x1400755d0]
movdqu xmmword [rbp + 0x80], xmm0
mov word [rbp + 0x70], r12w
mov rdx, qword [rbp + 0xa8]
cmp rdx, 8
jb 0x140019299
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019294
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400193cb
call fcn.14001f794
movdqa xmm0, xmmword [0x1400755d0]
movdqu xmmword [rbp + 0xa0], xmm0
mov word [rbp + 0x90], r12w
mov rdx, qword [rbp + 0xc8]
cmp rdx, 8
jb 0x1400192f7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400192f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400193d1
call fcn.14001f794
movdqa xmm0, xmmword [0x1400755d0]
movdqu xmmword [rbp + 0xc0], xmm0
mov word [rbp + 0xb0], r12w
mov rdx, qword [rbp + 8]
cmp rdx, 8
jb 0x14001934b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140019346
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140019389
call fcn.14001f794
mov rdx, r13
mov rcx, r15
call fcn.140019c00
mov rax, r15
mov rcx, qword [rbp + 0x24f0]
xor rcx, rsp
call fcn.14001f770
lea r11, [rsp + 0x2600]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140023c64
nop
call fcn.140023c64
nop
call fcn.140023c64
nop
call fcn.140019be0
int3
call fcn.140023c64
nop
call fcn.140023c64
nop
call fcn.140023c64
nop
call fcn.140023c64
nop
call fcn.140023c64
nop
call fcn.140023c64
nop
call fcn.140023c64
nop
call fcn.140023c64
nop
call fcn.140023c64
int3