joyce8/EMBER2024-capa huggingface dataset:
Function at 0x57d4b0
Capabilities:
Accept command line arguments

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x4c
mov dword [esp + 0x3c], 0
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea edx, [esp + 0x3c]
mov dword [esp + 4], edx
mov dword [esp], eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
sub esp, 8
mov dword [esp + 0x2c], eax
test eax, eax
je 0x57d63c
mov eax, dword [esp + 0x3c]
add eax, 1
lea edx, [eax*4]
cmp eax, 0x20000000
mov eax, 0xffffffff
cmovb eax, edx
mov dword [esp], eax
call fcn.00684240
mov edx, dword [esp + 0x3c]
mov edi, eax
test edx, edx
je 0x57d5cc
xor ebx, ebx
nop
lea esi, [esi]
mov eax, dword [esp + 0x2c]
mov ebp, dword [eax + ebx*4]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], ebp
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
sub esp, 0x20
mov dword [esp], eax
mov dword [esp + 0x28], eax
call fcn.00684240
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x1c], 0
mov esi, eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], ebp
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov dword [edi + ebx*4], esi
add ebx, 1
sub esp, 0x20
cmp dword [esp + 0x3c], ebx
jne 0x57d520
lea eax, [edi + ebx*4]
mov dword [eax], 0
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
sub esp, 4
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.004e7530
mov esi, eax
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x57d628
mov eax, dword [edi]
test eax, eax
je 0x57d628
xor ebx, ebx
jmp 0x57d617
mov eax, dword [edi + ebx*4]
test eax, eax
je 0x57d628
mov dword [esp], eax
add ebx, 1
call fcn.00684210
cmp dword [esp + 0x3c], ebx
jne 0x57d610
mov dword [esp], edi
call fcn.00684210
add esp, 0x4c
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret 0x10
mov esi, 0xffffffff
jmp 0x57d630
Function at 0x5bcba0
Capabilities:
Hash data with md5

Disassembly:
push ebp
mov ebp, esp
push edi
lea edi, [ecx + 8]
push esi
push ebx
mov ebx, ecx
lea esi, [ebx + 0x2c]
sub esp, 0x2c
mov dword [ecx], method.0RIPEMD_128E.virtual_0
mov dword [ecx + 4], 0x71efe0
mov ecx, edi
mov dword [esp], 0x40
call fcn.005bf7d0
mov eax, 0x100
mov dword [ebx + 0x28], 8
sub esp, 4
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov word [ebx + 0x24], ax
mov dword [ebx], 0x71d2fc
mov dword [ebx + 4], 0x71d334
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x30], 0
mov dword [esp], 1
call fcn.0047cd10
mov dword [ebx + 0x38], eax
mov ecx, esi
mov dword [esp], 0x10
call fcn.005bee10
sub esp, 4
mov dword [ebx + 0x3c], 0
lea eax, [ebx + 0x3c]
mov dword [ebx + 0x48], 0
mov dword [ebx + 0x44], 0
mov dword [ebx + 0x40], 0
mov dword [esp], 1
mov dword [ebp - 0x1c], eax
call fcn.0047cd10
mov dword [ebx + 0x48], eax
lea ecx, [ebx + 0x3c]
mov dword [esp], 4
call fcn.005bee10
mov eax, dword [ebx + 0xc]
sub esp, 4
test eax, eax
jne 0x5bccd0
mov eax, dword [ebx + 0x30]
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
test eax, eax
jne 0x5bccf0
mov eax, dword [ebx + 0x3c]
mov dword [eax], 0x67452301
mov dword [eax + 4], 0xefcdab89
mov dword [eax + 8], 0x98badcfe
mov dword [eax + 0xc], 0x10325476
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5bcc87
mov edx, dword [ebx + 0x2c]
shl eax, 2
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5bcca3
Function at 0x5bcea0
Capabilities:
Hash data using sha1

Disassembly:
push ebp
mov ebp, esp
push edi
lea edi, [ecx + 8]
push esi
push ebx
mov ebx, ecx
lea esi, [ebx + 0x2c]
sub esp, 0x2c
mov dword [ecx], method.0RIPEMD_128E.virtual_0
mov dword [ecx + 4], 0x71efe0
mov ecx, edi
mov dword [esp], 0x40
call fcn.005bf7d0
mov eax, 0x100
mov dword [ebx + 0x28], 8
sub esp, 4
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov word [ebx + 0x24], ax
mov dword [ebx], 0x71d34c
mov dword [ebx + 4], 0x71d384
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x30], 0
mov dword [esp], 1
call fcn.0047cd10
mov dword [ebx + 0x38], eax
mov ecx, esi
mov dword [esp], 0x10
call fcn.005bee10
sub esp, 4
mov dword [ebx + 0x3c], 0
lea eax, [ebx + 0x3c]
mov dword [ebx + 0x48], 0
mov dword [ebx + 0x44], 0
mov dword [ebx + 0x40], 0
mov dword [esp], 1
mov dword [ebp - 0x1c], eax
call fcn.0047cd10
mov dword [ebx + 0x48], eax
lea ecx, [ebx + 0x3c]
mov dword [esp], 5
call fcn.005bee10
mov eax, dword [ebx + 0xc]
sub esp, 4
test eax, eax
jne 0x5bcfd0
mov eax, dword [ebx + 0x30]
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
test eax, eax
jne 0x5bcff0
mov eax, dword [ebx + 0x3c]
mov dword [eax], 0x67452301
mov dword [eax + 4], 0xefcdab89
mov dword [eax + 8], 0x98badcfe
mov dword [eax + 0xc], 0x10325476
mov dword [eax + 0x10], 0xc3d2e1f0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5bcf87
mov edx, dword [ebx + 0x2c]
shl eax, 2
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5bcfa3
Function at 0x5c9890
Capabilities:
Hash data with md5

Disassembly:
push ebp
mov ebp, esp
push edi
lea edi, [ecx + 8]
push esi
push ebx
mov ebx, ecx
lea esi, [ebx + 0x2c]
sub esp, 0x2c
mov dword [ecx], method.0RIPEMD_128E.virtual_0
mov dword [ecx + 4], 0x71efe0
mov ecx, edi
mov dword [esp], 0x40
call fcn.005bf7d0
mov eax, 0x100
mov dword [ebx + 0x28], 8
sub esp, 4
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov word [ebx + 0x24], ax
mov dword [ebx], 0x71fdfc
mov dword [ebx + 4], 0x71fe34
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x30], 0
mov dword [esp], 1
call fcn.0047cd10
mov dword [ebx + 0x38], eax
mov ecx, esi
mov dword [esp], 0x10
call fcn.005bee10
sub esp, 4
mov dword [ebx + 0x3c], 0
lea eax, [ebx + 0x3c]
mov dword [ebx + 0x48], 0
mov dword [ebx + 0x44], 0
mov dword [ebx + 0x40], 0
mov dword [esp], 1
mov dword [ebp - 0x1c], eax
call fcn.0047cd10
mov dword [ebx + 0x48], eax
lea ecx, [ebx + 0x3c]
mov dword [esp], 4
call fcn.005bee10
mov eax, dword [ebx + 0xc]
sub esp, 4
test eax, eax
jne 0x5c99c0
mov eax, dword [ebx + 0x30]
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
test eax, eax
jne 0x5c99e0
mov eax, dword [ebx + 0x3c]
mov dword [eax], 0x67452301
mov dword [eax + 4], 0xefcdab89
mov dword [eax + 8], 0x98badcfe
mov dword [eax + 0xc], 0x10325476
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5c9977
mov edx, dword [ebx + 0x2c]
shl eax, 2
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5c9993
Function at 0x5c9b90
Capabilities:
Hash data with md5

Disassembly:
push ebp
mov ebp, esp
push edi
lea edi, [ecx + 8]
push esi
push ebx
mov ebx, ecx
lea esi, [ebx + 0x2c]
sub esp, 0x2c
mov dword [ecx], method.0RIPEMD_128E.virtual_0
mov dword [ecx + 4], 0x71efe0
mov ecx, edi
mov dword [esp], 0x40
call fcn.005bf7d0
mov eax, 0x100
mov dword [ebx + 0x28], 8
sub esp, 4
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov word [ebx + 0x24], ax
mov dword [ebx], 0x71fe4c
mov dword [ebx + 4], 0x71fe84
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x30], 0
mov dword [esp], 1
call fcn.0047cd10
mov dword [ebx + 0x38], eax
mov ecx, esi
mov dword [esp], 0x10
call fcn.005bee10
sub esp, 4
mov dword [ebx + 0x3c], 0
lea eax, [ebx + 0x3c]
mov dword [ebx + 0x48], 0
mov dword [ebx + 0x44], 0
mov dword [ebx + 0x40], 0
mov dword [esp], 1
mov dword [ebp - 0x1c], eax
call fcn.0047cd10
mov dword [ebx + 0x48], eax
lea ecx, [ebx + 0x3c]
mov dword [esp], 4
call fcn.005bee10
mov eax, dword [ebx + 0xc]
sub esp, 4
test eax, eax
jne 0x5c9cc0
mov eax, dword [ebx + 0x30]
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
test eax, eax
jne 0x5c9ce0
mov eax, dword [ebx + 0x3c]
mov dword [eax], 0x67452301
mov dword [eax + 4], 0xefcdab89
mov dword [eax + 8], 0x98badcfe
mov dword [eax + 0xc], 0x10325476
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5c9c77
mov edx, dword [ebx + 0x2c]
shl eax, 2
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5c9c93
Function at 0x5cc810
Capabilities:
Hash data using sha1

Disassembly:
push ebp
mov ebp, esp
push edi
lea edi, [ecx + 8]
push esi
push ebx
mov ebx, ecx
lea esi, [ebx + 0x2c]
sub esp, 0x2c
mov dword [ecx], method.0RIPEMD_128E.virtual_0
mov dword [ecx + 4], 0x71efe0
mov ecx, edi
mov dword [esp], 0x40
call fcn.005bf7d0
mov eax, 0x100
mov dword [ebx + 0x28], 8
sub esp, 4
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov word [ebx + 0x24], ax
mov dword [ebx], 0x720780
mov dword [ebx + 4], 0x7207b8
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x30], 0
mov dword [esp], 1
call fcn.0047cd10
mov dword [ebx + 0x38], eax
mov ecx, esi
mov dword [esp], 0x14
call fcn.005bee10
sub esp, 4
mov dword [ebx + 0x3c], 0
lea eax, [ebx + 0x3c]
mov dword [ebx + 0x48], 0
mov dword [ebx + 0x44], 0
mov dword [ebx + 0x40], 0
mov dword [esp], 1
mov dword [ebp - 0x1c], eax
call fcn.0047cd10
mov dword [ebx + 0x48], eax
lea ecx, [ebx + 0x3c]
mov dword [esp], 5
call fcn.005bee10
mov eax, dword [ebx + 0xc]
sub esp, 4
test eax, eax
jne 0x5cc940
mov eax, dword [ebx + 0x30]
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
test eax, eax
jne 0x5cc960
mov eax, dword [ebx + 0x3c]
mov dword [eax], 0x67452301
mov dword [eax + 4], 0xefcdab89
mov dword [eax + 8], 0x98badcfe
mov dword [eax + 0xc], 0x10325476
mov dword [eax + 0x10], 0xc3d2e1f0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5cc8f7
mov edx, dword [ebx + 0x2c]
shl eax, 2
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5cc913
Function at 0x5cccc0
Capabilities:
Hash data using sha1

Disassembly:
push ebp
mov ebp, esp
push edi
lea edi, [ecx + 8]
push esi
push ebx
mov ebx, ecx
lea esi, [ebx + 0x2c]
sub esp, 0x2c
mov dword [ecx], method.0RIPEMD_128E.virtual_0
mov dword [ecx + 4], 0x71efe0
mov ecx, edi
mov dword [esp], 0x40
call fcn.005bf7d0
mov eax, 0x101
mov dword [ebx + 0x28], 8
sub esp, 4
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov word [ebx + 0x24], ax
mov dword [ebx], 0x720804
mov dword [ebx + 4], 0x72083c
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x30], 0
mov dword [esp], 1
call fcn.0047cd10
mov dword [ebx + 0x38], eax
mov ecx, esi
mov dword [esp], 5
call fcn.005bee10
sub esp, 4
mov dword [ebx + 0x3c], 0
lea eax, [ebx + 0x3c]
mov dword [ebx + 0x48], 0
mov dword [ebx + 0x44], 0
mov dword [ebx + 0x40], 0
mov dword [esp], 1
mov dword [ebp - 0x1c], eax
call fcn.0047cd10
mov dword [ebx + 0x48], eax
lea ecx, [ebx + 0x3c]
mov dword [esp], 0x50
call fcn.005bee10
mov eax, dword [ebx + 0xc]
sub esp, 4
test eax, eax
jne 0x5ccdf0
mov eax, dword [ebx + 0x40]
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
test eax, eax
jne 0x5cce10
mov eax, dword [ebx + 0x2c]
mov dword [eax], 0x67452301
mov dword [eax + 4], 0xefcdab89
mov dword [eax + 8], 0x98badcfe
mov dword [eax + 0xc], 0x10325476
mov dword [eax + 0x10], 0xc3d2e1f0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5ccda7
mov edx, dword [ebx + 0x3c]
shl eax, 2
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5ccdc3

Function at 0x5cd0d0
Capabilities:
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
lea esi, [ecx + 8]
push ebx
mov ebx, ecx
lea edi, [ebx + 0x2c]
sub esp, 0x2c
mov dword [ecx], method.0RIPEMD_128E.virtual_0
mov dword [ecx + 4], 0x71efe0
mov ecx, esi
mov dword [esp], 0x40
call fcn.005bf7d0
mov eax, 0x101
mov dword [ebx + 0x28], 8
sub esp, 4
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov word [ebx + 0x24], ax
mov dword [ebx], 0x7208a4
mov dword [ebx + 4], 0x7208dc
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x30], 0
mov dword [esp], 1
call fcn.0047cd10
mov dword [ebx + 0x38], eax
mov ecx, edi
mov dword [esp], 8
call fcn.005bee10
mov eax, dword [ebx + 0xc]
sub esp, 4
test eax, eax
jne 0x5cd1d0
mov eax, dword [ebx + 0x2c]
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [eax], 0x6a09e667
mov dword [eax + 4], 0xbb67ae85
mov dword [eax + 8], 0x3c6ef372
mov dword [eax + 0xc], 0xa54ff53a
mov dword [eax + 0x10], 0x510e527f
mov dword [eax + 0x14], 0x9b05688c
mov dword [eax + 0x18], 0x1f83d9ab
mov dword [eax + 0x1c], 0x5be0cd19
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [ebx + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5cd174
Function at 0x5cd330
Capabilities:
Hash data using sha224

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
lea esi, [ecx + 8]
push ebx
mov ebx, ecx
sub esp, 0x2c
mov dword [ecx], method.0RIPEMD_128E.virtual_0
mov dword [ecx + 4], 0x71efe0
mov ecx, esi
mov dword [esp], pe_nt_image_headers32
call fcn.005bf7d0
mov eax, 0x101
mov dword [ebx + 0x28], 0x10
sub esp, 4
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov word [ebx + 0x24], ax
mov dword [ebx], 0x7208f4
mov dword [ebx + 4], 0x72092c
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x30], 0
mov dword [esp], 1
call fcn.0047cd10
mov edx, dword [ebx + 0x34]
mov dword [ebx + 0x38], eax
cmp edx, 7
jbe 0x5cd480
cmp dword [ebx + 0x30], 8
mov eax, 8
cmovbe eax, dword [ebx + 0x30]
sub edx, eax
jne 0x5cd510
mov eax, dword [ebx + 0xc]
mov dword [ebx + 0x30], 8
test eax, eax
jne 0x5cd4f4
mov eax, dword [ebx + 0x2c]
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [eax], 0xc1059ed8
mov dword [eax + 4], 0xcbbb9d5d
mov dword [eax + 8], 0x367cd507
mov dword [eax + 0xc], 0x629a292a
mov dword [eax + 0x10], 0x3070dd17
mov dword [eax + 0x14], 0x9159015a
mov dword [eax + 0x18], 0xf70e5939
mov dword [eax + 0x1c], 0x152fecd8
mov dword [eax + 0x20], 0xffc00b31
mov dword [eax + 0x24], 0x67332667
mov dword [eax + 0x28], 0x68581511
mov dword [eax + 0x2c], 0x8eb44a87
mov dword [eax + 0x30], 0x64f98fa7
mov dword [eax + 0x34], 0xdb0c2e0d
mov dword [eax + 0x38], 0xbefa4fa4
mov dword [eax + 0x3c], 0x47b5481d
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [eax]
mov ecx, eax
mov dword [esp], 0x40
call dword [edx]
mov edi, eax
mov eax, dword [ebx + 0x30]
sub esp, 4
mov dword [esp], edi
shl eax, 3
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x2c]
mov dword [esp + 4], eax
call sub.msvcrt.dll_memmove
mov ecx, dword [ebx + 0x38]
test ecx, ecx
je 0x5cd4d8
mov edx, dword [ebx + 0x2c]
mov eax, dword [ebx + 0x34]
mov dword [ebp - 0x1c], edx
test edx, edx
je 0x5cd4d8
test eax, eax
je 0x5cd4d8
shl eax, 3
mov edx, dword [ecx]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [edx + 4]
sub esp, 8
mov eax, dword [ebx + 0xc]
mov dword [ebx + 0x2c], edi
mov dword [ebx + 0x30], 8
mov dword [ebx + 0x34], 8
test eax, eax
je 0x5cd3ec
mov edx, dword [ebx + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5cd3ec
mov ecx, dword [ebx + 0x2c]
shl edx, 3
mov dword [esp + 4], 0
mov dword [esp + 8], edx
lea eax, [ecx + eax*8]
mov dword [esp], eax
call sub.msvcrt.dll_memset
jmp 0x5cd3da
Function at 0x5cd670
Capabilities:
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
lea esi, [ecx + 8]
push ebx
mov ebx, ecx
sub esp, 0x2c
mov dword [ecx], method.0RIPEMD_128E.virtual_0
mov dword [ecx + 4], 0x71efe0
mov ecx, esi
mov dword [esp], pe_nt_image_headers32
call fcn.005bf7d0
mov eax, 0x101
mov dword [ebx + 0x28], 0x10
sub esp, 4
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov word [ebx + 0x24], ax
mov dword [ebx], 0x720944
mov dword [ebx + 4], 0x72097c
mov dword [ebx + 0x2c], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x30], 0
mov dword [esp], 1
call fcn.0047cd10
mov edx, dword [ebx + 0x34]
mov dword [ebx + 0x38], eax
cmp edx, 7
jbe 0x5cd7c0
cmp dword [ebx + 0x30], 8
mov eax, 8
cmovbe eax, dword [ebx + 0x30]
sub edx, eax
jne 0x5cd850
mov eax, dword [ebx + 0xc]
mov dword [ebx + 0x30], 8
test eax, eax
jne 0x5cd834
mov eax, dword [ebx + 0x2c]
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [eax], 0xf3bcc908
mov dword [eax + 4], 0x6a09e667
mov dword [eax + 8], 0x84caa73b
mov dword [eax + 0xc], 0xbb67ae85
mov dword [eax + 0x10], 0xfe94f82b
mov dword [eax + 0x14], 0x3c6ef372
mov dword [eax + 0x18], 0x5f1d36f1
mov dword [eax + 0x1c], 0xa54ff53a
mov dword [eax + 0x20], 0xade682d1
mov dword [eax + 0x24], 0x510e527f
mov dword [eax + 0x28], 0x2b3e6c1f
mov dword [eax + 0x2c], 0x9b05688c
mov dword [eax + 0x30], 0xfb41bd6b
mov dword [eax + 0x34], 0x1f83d9ab
mov dword [eax + 0x38], 0x137e2179
mov dword [eax + 0x3c], 0x5be0cd19
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [eax]
mov ecx, eax
mov dword [esp], 0x40
call dword [edx]
mov edi, eax
mov eax, dword [ebx + 0x30]
sub esp, 4
mov dword [esp], edi
shl eax, 3
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x2c]
mov dword [esp + 4], eax
call sub.msvcrt.dll_memmove
mov ecx, dword [ebx + 0x38]
test ecx, ecx
je 0x5cd818
mov edx, dword [ebx + 0x2c]
mov eax, dword [ebx + 0x34]
mov dword [ebp - 0x1c], edx
test edx, edx
je 0x5cd818
test eax, eax
je 0x5cd818
shl eax, 3
mov edx, dword [ecx]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [edx + 4]
sub esp, 8
mov eax, dword [ebx + 0xc]
mov dword [ebx + 0x2c], edi
mov dword [ebx + 0x30], 8
mov dword [ebx + 0x34], 8
test eax, eax
je 0x5cd72c
mov edx, dword [ebx + 8]
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], edx
call sub.msvcrt.dll_memset
jmp 0x5cd72c
mov ecx, dword [ebx + 0x2c]
shl edx, 3
mov dword [esp + 4], 0
mov dword [esp + 8], edx
lea eax, [ecx + eax*8]
mov dword [esp], eax
call sub.msvcrt.dll_memset
jmp 0x5cd71a
Function at 0x5cddc0
Capabilities:
Encode data using xor

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0xc
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 4], edx
cmp edx, 7
jbe 0x5cde1d
lea esi, [edx - 8]
shr esi, 3
lea ebp, [esi*8 + 8]
xor esi, esi
nop
lea esi, [esi]
mov ebx, dword [esp + 0x28]
mov edi, dword [ecx + esi]
xor edi, dword [ebx + esi]
mov dword [eax + esi], edi
mov edi, dword [ecx + esi + 4]
xor edi, dword [ebx + esi + 4]
mov dword [eax + esi + 4], edi
add esi, 8
cmp esi, ebp
jne 0x5cddf0
add dword [esp + 0x28], esi
add eax, esi
add ecx, esi
and dword [esp + 4], 7
mov edx, dword [esp + 4]
test edx, edx
je 0x5cdeb8
lea esi, [ecx + 4]
lea ebp, [eax + 4]
cmp eax, esi
setae bl
cmp ecx, ebp
mov edi, ebx
setae bl
mov esi, ebx
mov ebx, dword [esp + 0x28]
or esi, edi
lea edi, [ebx + 4]
cmp eax, edi
setae bl
cmp dword [esp + 0x28], ebp
mov edi, ebx
setae bl
mov ebp, ebx
or edi, ebp
mov ebp, dword [esp + 4]
and esi, edi
lea edi, [ebp - 1]
cmp edi, 3
seta bl
mov edi, ebx
mov ebx, esi
mov edx, edi
test bl, dl
je 0x5cdec0
mov esi, dword [esp + 0x28]
or esi, ecx
or esi, eax
and esi, 3
jne 0x5cdec0
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x28]
mov esi, dword [ebx]
xor esi, dword [ecx]
mov dword [eax], esi
movzx ebx, byte [ecx + 4]
xor bl, byte [edx + 4]
mov byte [eax + 4], bl
cmp ebp, 5
je 0x5cdeb8
mov ebx, dword [esp + 0x28]
movzx edx, byte [ecx + 5]
xor dl, byte [ebx + 5]
mov byte [eax + 5], dl
cmp ebp, 6
je 0x5cdeb8
movzx ecx, byte [ecx + 6]
xor cl, byte [ebx + 6]
mov byte [eax + 6], cl
add esp, 0xc
pop ebx
pop esi
pop edi
pop ebp
ret
mov ebx, dword [esp + 0x28]
movzx edx, byte [ecx]
xor dl, byte [ebx]
mov ebx, dword [esp + 4]
mov byte [eax], dl
cmp ebx, 1
je 0x5cdeb8
mov edi, dword [esp + 0x28]
movzx edx, byte [ecx + 1]
xor dl, byte [edi + 1]
mov byte [eax + 1], dl
cmp ebx, 2
je 0x5cdeb8
movzx edx, byte [ecx + 2]
xor dl, byte [edi + 2]
mov byte [eax + 2], dl
cmp ebx, 3
je 0x5cdeb8
movzx edx, byte [ecx + 3]
xor dl, byte [edi + 3]
mov byte [eax + 3], dl
cmp ebx, 4
je 0x5cdeb8
movzx edx, byte [ecx + 4]
xor dl, byte [edi + 4]
mov byte [eax + 4], dl
cmp ebx, 5
je 0x5cdeb8
movzx edx, byte [ecx + 5]
xor dl, byte [edi + 5]
mov byte [eax + 5], dl
cmp ebx, 6
je 0x5cdeb8
movzx ecx, byte [ecx + 6]
xor cl, byte [edi + 6]
mov byte [eax + 6], cl
jmp 0x5cdeb8
Function at 0x5cdf30
Capabilities:
Encode data using xor

Disassembly:
push ebp
push edi
push esi
push ebx
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
cmp esi, 7
jbe 0x5ce001
lea edx, [esi - 8]
shr edx, 3
lea edi, [edx*8 + 8]
mov edx, ebx
lea ecx, [eax + edi]
nop
lea esi, [esi]
mov ebp, dword [edx]
xor dword [eax], ebp
add edx, 8
mov ebp, dword [edx - 4]
xor dword [eax + 4], ebp
add eax, 8
cmp eax, ecx
jne 0x5cdf60
add ebx, edi
and esi, 7
test esi, esi
je 0x5cdfcc
lea eax, [ecx + 4]
lea edx, [ebx + 4]
cmp ebx, eax
setae al
cmp ecx, edx
setae dl
or eax, edx
lea edx, [esi - 1]
cmp edx, 2
seta dl
test al, dl
je 0x5cdfd1
mov eax, ebx
or eax, ecx
test al, 3
jne 0x5cdfd1
mov eax, dword [ebx]
xor dword [ecx], eax
cmp esi, 4
je 0x5cdfcc
movzx eax, byte [ebx + 4]
xor byte [ecx + 4], al
cmp esi, 5
je 0x5cdfcc
movzx eax, byte [ebx + 5]
xor byte [ecx + 5], al
cmp esi, 6
je 0x5cdfcc
movzx eax, byte [ebx + 6]
xor byte [ecx + 6], al
pop ebx
pop esi
pop edi
pop ebp
ret
movzx eax, byte [ebx]
xor byte [ecx], al
cmp esi, 1
je 0x5cdfcc
movzx eax, byte [ebx + 1]
xor byte [ecx + 1], al
cmp esi, 2
je 0x5cdfcc
movzx eax, byte [ebx + 2]
xor byte [ecx + 2], al
cmp esi, 3
je 0x5cdfcc
movzx eax, byte [ebx + 3]
xor byte [ecx + 3], al
cmp esi, 4
jne 0x5cdfad
jmp 0x5cdfcc
mov ecx, eax
jmp 0x5cdf79