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

Disassembly:
push rbp
push r12
push r13
push r14
push r15
mov eax, 0x2680
call fcn.14001ed30
sub rsp, rax
lea rbp, [rsp + 0x30]
mov qword [rbp + 0x2688], rbx
mov qword [rbp + 0x2690], rsi
mov qword [rbp + 0x2698], rdi
mov rax, qword [0x1400f7020]
xor rax, rbp
mov qword [rbp + 0x2640], rax
mov r12, rcx
mov qword [rbp + 8], rcx
lea r13, [0x1400f83a8]
cmp qword [0x1400f83b8], 0
jne 0x1400d5330
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp + 0x640]
call fcn.140020c60
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp + 0x1640]
call fcn.140020c60
lea rdx, [0x1400ebf90]
lea rcx, [rbp + 0x220]
call fcn.1400bd560
nop
lea rdx, [0x1400ebf90]
lea rcx, [rbp + 0x10]
call fcn.1400bd560
mov r8, rax
cmp qword [rax + 0x18], 0x10
jb 0x1400d4837
mov r8, qword [rax]
mov rsi, 0xffffffffffffffff
test r8, r8
je 0x1400d48b5
mov rax, rsi
inc rax
cmp byte [r8 + rax], 0
jne 0x1400d4846
lea edx, [rax + 1]
cmp edx, 0x3fffffff
jg 0x1400d48b5
cdqe
lea rax, [rax*2 + 2]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1400d4878
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.14001ed30
sub rsp, rcx
lea rdi, [rsp + 0x30]
test rdi, rdi
je 0x1400d48b5
xor ebx, ebx
mov word [rdi], bx
mov dword [rsp + 0x28], edx
mov qword [rsp + 0x20], rdi
mov r9d, esi
xor edx, edx
lea ecx, [rbx + 3]
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
test eax, eax
cmove rdi, rbx
jmp 0x1400d48b9
xor ebx, ebx
mov edi, ebx
mov qword [rbp + 0x30], rbx
mov qword [rbp + 0x40], rbx
mov qword [rbp + 0x48], 7
mov word [rbp + 0x30], bx
lea rax, [rdi - 1]
lea rcx, [rbp + 0x30]
cmp rax, 0xfffe
ja 0x1400d48e7
movzx edx, di
call fcn.14001c450
jmp 0x1400d48f0
mov rdx, rdi
call fcn.14001bec0
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x1400d492b
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d4926
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d537f
call fcn.14001e44c
mov qword [rbp + 0x20], rbx
mov qword [rbp + 0x28], 0xf
mov byte [rbp + 0x10], 0
lea rdx, [0x1400ebfc8]
lea rcx, [rbp + 0x180]
call fcn.14001ba80
nop
lea rcx, [rbp + 0x160]
call fcn.140017520
nop
lea rcx, [rbp + 0x140]
call fcn.140017a90
nop
lea rcx, [rbp + 0x120]
call fcn.1400171b0
nop
lea rcx, [rbp + 0x100]
call fcn.1400d41a0
nop
lea rcx, [rbp + 0xe0]
call fcn.1400c60a0
nop
lea r8, [rbp + 0x180]
cmp qword [rbp + 0x198], 8
cmovae r8, qword [rbp + 0x180]
mov edx, 0x800
lea rcx, [rbp + 0x640]
call fcn.14002ab24
lea r8, [rbp + 0x160]
cmp qword [rbp + 0x178], 8
cmovae r8, qword [rbp + 0x160]
mov edx, 0x800
lea rcx, [rbp + 0x640]
call fcn.14002ab8c
lea r8, [rbp + 0x140]
cmp qword [rbp + 0x158], 8
cmovae r8, qword [rbp + 0x140]
mov edx, 0x800
lea rcx, [rbp + 0x640]
call fcn.14002ab8c
lea r8, [rbp + 0x120]
cmp qword [rbp + 0x138], 8
cmovae r8, qword [rbp + 0x120]
mov edx, 0x800
lea rcx, [rbp + 0x640]
call fcn.14002ab8c
lea r8, [rbp + 0x30]
cmp qword [rbp + 0x48], 8
cmovae r8, qword [rbp + 0x30]
mov edx, 0x800
lea rcx, [rbp + 0x640]
call fcn.14002ab8c
lea r8, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 8
cmovae r8, qword [rbp + 0xe0]
mov edx, 0x800
lea rcx, [rbp + 0x1640]
call fcn.14002ab8c
lea r8, [rbp + 0x100]
cmp qword [rbp + 0x118], 8
cmovae r8, qword [rbp + 0x100]
mov edx, 0x800
lea rcx, [rbp + 0x1640]
call fcn.14002ab8c
lea r8, [rbp + 0x30]
cmp qword [rbp + 0x48], 8
cmovae r8, qword [rbp + 0x30]
mov edx, 0x800
lea rcx, [rbp + 0x1640]
call fcn.14002ab8c
mov edx, 0x800
lea rcx, [rbp + 0x640]
call fcn.14002a03c
mov qword [rbp + 0x70], rbx
mov rcx, rbx
mov qword [rbp + 0x78], rbx
mov dword [rbp + 0xc0], 0x6a09e667
mov dword [rbp + 0xc4], 0xbb67ae85
mov dword [rbp + 0xc8], 0x3c6ef372
mov dword [rbp + 0xcc], 0xa54ff53a
mov dword [rbp + 0xd0], 0x510e527f
mov dword [rbp + 0xd4], 0x9b05688c
mov dword [rbp + 0xd8], 0x1f83d9ab
mov dword [rbp + 0xdc], 0x5be0cd19
lea r14, [rax + rax]
lea rdi, [rbp + 0x640]
test r14, r14
je 0x1400d4b9f
cmp r14, 0x40
jb 0x1400d4b6f
mov r15, r14
shr r15, 6
imul rax, r15, 0xffffffffffffffc0
add r14, rax
nop
mov rdx, rdi
lea rcx, [rbp + 0x70]
call fcn.1400d0f20
add rdi, 0x40
add qword [rbp + 0x70], 0x40
sub r15, 1
jne 0x1400d4b50
mov rcx, qword [rbp + 0x78]
test r14, r14
je 0x1400d4b9f
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdi]
mov byte [rbp + rcx + 0x80], al
mov rcx, qword [rbp + 0x78]
inc rcx
mov qword [rbp + 0x78], rcx
lea rdi, [rdi + 1]
sub r14, 1
jne 0x1400d4b80
lea rdx, [rbp + 0x50]
lea rcx, [rbp + 0x70]
call fcn.1400d0b90
nop
mov edx, 0x800
lea rcx, [rbp + 0x1640]
call fcn.14002a03c
mov qword [rbp + 0x70], rbx
mov rcx, rbx
mov qword [rbp + 0x78], rbx
mov dword [rbp + 0xc0], 0x6a09e667
mov dword [rbp + 0xc4], 0xbb67ae85
mov dword [rbp + 0xc8], 0x3c6ef372
mov dword [rbp + 0xcc], 0xa54ff53a
mov dword [rbp + 0xd0], 0x510e527f
mov dword [rbp + 0xd4], 0x9b05688c
mov dword [rbp + 0xd8], 0x1f83d9ab
mov dword [rbp + 0xdc], 0x5be0cd19
lea r14, [rax + rax]
lea rdi, [rbp + 0x1640]
test r14, r14
je 0x1400d4c8f
cmp r14, 0x40
jb 0x1400d4c5f
mov r15, r14
shr r15, 6
imul rax, r15, 0xffffffffffffffc0
add r14, rax
nop dword [rax]
mov rdx, rdi
lea rcx, [rbp + 0x70]
call fcn.1400d0f20
add rdi, 0x40
add qword [rbp + 0x70], 0x40
sub r15, 1
jne 0x1400d4c40
mov rcx, qword [rbp + 0x78]
test r14, r14
je 0x1400d4c8f
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rdi]
mov byte [rbp + rcx + 0x80], al
mov rcx, qword [rbp + 0x78]
inc rcx
mov qword [rbp + 0x78], rcx
lea rdi, [rdi + 1]
sub r14, 1
jne 0x1400d4c70
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x70]
call fcn.1400d0b90
nop
lea r9, [rbp + 0x10]
mov r14, qword [rbp + 0x10]
mov r13, qword [rbp + 0x28]
cmp r13, 0x10
cmovae r9, r14
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x68]
mov rax, rdx
sub rax, rcx
mov r15, qword [rbp + 0x20]
cmp r15, rax
ja 0x1400d4cf5
lea rax, [r15 + rcx]
mov qword [rbp + 0x60], rax
lea rdi, [rbp + 0x50]
cmp rdx, 0x10
cmovae rdi, qword [rbp + 0x50]
add rdi, rcx
mov r8, r15
mov rdx, r9
mov rcx, rdi
call fcn.1400205b0
mov byte [rdi + r15], 0
jmp 0x1400d4d0e
mov qword [rsp + 0x20], r15
mov rdx, r15
lea rcx, [rbp + 0x50]
call fcn.140018490
mov r13, qword [rbp + 0x28]
mov r14, qword [rbp + 0x10]
cmp r13, 0x10
jb 0x1400d4d45
lea rdx, [r13 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x1400d4d3d
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d5385
mov rcx, r14
call fcn.14001e44c
xor edx, edx
mov r8d, 0x400
lea rcx, [rbp + 0x240]
call fcn.140020c60
mov word [rbp + 1], 0x73
mov byte [rbp], 0x25
lea r9, [rbp + 0x50]
cmp qword [rbp + 0x68], 0x10
cmovae r9, qword [rbp + 0x50]
lea r8, [rbp]
mov edx, 0x400
lea rcx, [rbp + 0x240]
call fcn.14001a7d0
mov qword [rbp + 0x1a0], rbx
mov qword [rbp + 0x1a8], rbx
mov dword [rbp + 0x1f0], 0x67452301
mov dword [rbp + 0x1f4], 0xefcdab89
mov dword [rbp + 0x1f8], 0x98badcfe
mov dword [rbp + 0x1fc], 0x10325476
lea rdi, [rbp + 0x240]
mov r14d, 0x10
nop dword [rax]
mov rdx, rdi
lea rcx, [rbp + 0x1a0]
call fcn.1400093a0
add rdi, 0x40
add qword [rbp + 0x1a0], 0x40
sub r14, 1
jne 0x1400d4dd0
lea rdx, [rbp + 0x200]
lea rcx, [rbp + 0x1a0]
call fcn.1400090f0
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1400d4e11
mov rdx, qword [rax]
lea r13, [0x1400f83a8]
mov rax, r13
test rdx, rdx
jne 0x1400d4e3e
mov qword [0x1400f83b8], rbx
cmp qword [0x1400f83c0], 0x10
cmovae rax, qword [0x1400f83a8]
mov byte [rax], dl
jmp 0x1400d4fdc
mov r8, qword [0x1400f83c0]
mov r9, qword [0x1400f83a8]
cmp r8, 0x10
cmovae rax, r9
cmp rdx, rax
jb 0x1400d4fc7
mov rax, r13
cmp r8, 0x10
cmovae rax, r9
mov rcx, qword [0x1400f83b8]
add rax, rcx
cmp rdx, rax
ja 0x1400d4fc7
mov rax, r13
cmp r8, 0x10
cmovae rax, r9
sub rdx, rax
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x28], 0xf
cmp rcx, rdx
jb 0x1400d538b
sub rcx, rdx
cmp rcx, 0xffffffffffffffff
cmovb rsi, rcx
mov r15, r13
cmp r8, 0x10
cmovae r15, r9
add r15, rdx
cmp rsi, 0xf
ja 0x1400d4eda
mov qword [rbp + 0x20], rsi
mov r8, rsi
mov rdx, r15
lea rcx, [rbp + 0x10]
call fcn.1400205b0
mov byte [rbp + rsi + 0x10], 0
jmp 0x1400d4f7e
movabs rdi, 0x7fffffffffffffff
cmp rsi, rdi
ja 0x1400d5391
mov rax, rsi
or rax, 0xf
cmp rax, rdi
jbe 0x1400d4f22
movabs rax, 0x8000000000000027
mov rcx, rax
call fcn.14001e454
test rax, rax
je 0x1400d5397
lea r14, [rax + 0x27]
and r14, 0xffffffffffffffe0
mov qword [r14 - 8], rax
jmp 0x1400d4f5f
mov rdi, rax
mov ecx, 0x16
cmp rax, rcx
cmovb rdi, rcx
lea rcx, [rdi + 1]
cmp rcx, 0x1000
jb 0x1400d4f4d
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400d5379
jmp 0x1400d4f03
test rcx, rcx
je 0x1400d4f5c
call fcn.14001e454
mov r14, rax
jmp 0x1400d4f5f
mov r14, rbx
mov qword [rbp + 0x20], rsi
mov qword [rbp + 0x28], rdi
mov r8, rsi
mov rdx, r15
mov rcx, r14
call fcn.1400205b0
mov byte [r14 + rsi], 0
mov qword [rbp + 0x10], r14
lea rdx, [rbp + 0x10]
mov rcx, r13
call fcn.140018e50
mov rdx, qword [rbp + 0x28]
cmp rdx, 0x10
jb 0x1400d4fdc
inc rdx
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d4fc0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d5397
call fcn.14001e44c
jmp 0x1400d4fdc
inc rsi
cmp byte [rdx + rsi], 0
jne 0x1400d4fc7
mov r8, rsi
mov rcx, r13
call fcn.1400190d0
nop
mov rdx, qword [rbp + 0x218]
cmp rdx, 0x10
jb 0x1400d501e
inc rdx
mov rcx, qword [rbp + 0x200]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d5018
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d539d
call fcn.14001e44c
nop
mov rdx, qword [rbp + 0x68]
cmp rdx, 0x10
jb 0x1400d5059
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d5054
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d53a3
call fcn.14001e44c
mov qword [rbp + 0x60], rbx
mov qword [rbp + 0x68], 0xf
mov byte [rbp + 0x50], 0
mov rdx, qword [rbp + 0xf8]
cmp rdx, 8
jb 0x1400d50af
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d50aa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d53a9
call fcn.14001e44c
mov qword [rbp + 0xf0], rbx
mov qword [rbp + 0xf8], 7
mov word [rbp + 0xe0], bx
mov rdx, qword [rbp + 0x118]
cmp rdx, 8
jb 0x1400d510e
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d5109
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d53af
call fcn.14001e44c
mov qword [rbp + 0x110], rbx
mov qword [rbp + 0x118], 7
mov word [rbp + 0x100], bx
mov rdx, qword [rbp + 0x138]
cmp rdx, 8
jb 0x1400d516d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d5168
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d53b5
call fcn.14001e44c
mov qword [rbp + 0x130], rbx
mov qword [rbp + 0x138], 7
mov word [rbp + 0x120], bx
mov rdx, qword [rbp + 0x158]
cmp rdx, 8
jb 0x1400d51cc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d51c7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d53bb
call fcn.14001e44c
mov qword [rbp + 0x150], rbx
mov qword [rbp + 0x158], 7
mov word [rbp + 0x140], bx
mov rdx, qword [rbp + 0x178]
cmp rdx, 8
jb 0x1400d522b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d5226
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d53c1
call fcn.14001e44c
mov qword [rbp + 0x170], rbx
mov qword [rbp + 0x178], 7
mov word [rbp + 0x160], bx
mov rdx, qword [rbp + 0x198]
cmp rdx, 8
jb 0x1400d528a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x180]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d5285
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d53c7
call fcn.14001e44c
mov qword [rbp + 0x190], rbx
mov qword [rbp + 0x198], 7
mov word [rbp + 0x180], bx
mov rdx, qword [rbp + 0x48]
cmp rdx, 8
jb 0x1400d52e3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d52de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d53cd
call fcn.14001e44c
mov qword [rbp + 0x40], rbx
mov qword [rbp + 0x48], 7
mov word [rbp + 0x30], bx
mov rdx, qword [rbp + 0x238]
cmp rdx, 0x10
jb 0x1400d5330
inc rdx
mov rcx, qword [rbp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400d532b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400d5373
call fcn.14001e44c
mov rdx, r13
mov rcx, r12
call fcn.140018d70
mov rax, r12
mov rcx, qword [rbp + 0x2640]
xor rcx, rbp
call fcn.14001e190
mov rbx, qword [rbp + 0x2688]
mov rsi, qword [rbp + 0x2690]
mov rdi, qword [rbp + 0x2698]
lea rsp, [rbp + 0x2650]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140024b1c
nop
call fcn.140019070
nop
call fcn.140024b1c
nop
call fcn.140024b1c
nop
call fcn.140018c50
int3
call fcn.140018f40
int3
call fcn.140024b1c
nop
call fcn.140024b1c
nop
call fcn.140024b1c
nop
call fcn.140024b1c
nop
call fcn.140024b1c
nop
call fcn.140024b1c
nop
call fcn.140024b1c
nop
call fcn.140024b1c
nop
call fcn.140024b1c
nop
call fcn.140024b1c
int3