joyce8/EMBER2024-capa huggingface dataset:
Function at 0x58ff1b
Capabilities:
Encrypt data using rc6

Disassembly:
mov eax, 0x110
call fcn.005cf470
mov eax, dword [0x64c00c]
xor eax, esp
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x114]
push ebx
push ebp
mov ebp, dword [esp + 0x120]
push esi
push edi
mov edi, dword [esp + 0x130]
mov dword [esp + 0x14], eax
cmp edi, 0x10
je 0x58fe7a
cmp edi, 0xc
je 0x58fe7a
cmp edi, 8
mov ecx, 0x10
cmovne edi, ecx
mov dword [eax], edi
xor ebx, ebx
lea eax, [ebp - 8]
xor edx, edx
test eax, eax
js 0x58fef6
mov esi, ebp
shr esi, 3
lea eax, [esi*8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x12c]
nop
movzx ecx, byte [eax + 1]
movzx edx, byte [eax]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 2]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 3]
shl ecx, 0x18
or edx, ecx
movzx ecx, byte [eax + 5]
mov dword [esp + ebx*4 + 0x1c], edx
movzx edx, byte [eax + 4]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 6]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 7]
shl ecx, 0x18
add eax, 8
or edx, ecx
mov dword [esp + ebx*4 + 0x20], edx
add ebx, 2
sub esi, 1
jne 0x58fea0
mov edx, dword [esp + 0x10]
jmp 0x58fefd
mov eax, dword [esp + 0x12c]
mov ecx, ebp
sub ecx, edx
je 0x58ff68
mov ecx, ebp
xor edx, edx
and ecx, 7
xor esi, esi
add eax, ecx
dec ecx
cmp ecx, 7
ja case.default.0x58ff14
jmp dword [ecx*4 + 0x590028]
movzx edx, byte [eax - 1]
dec eax
shl edx, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
or edx, ecx
movzx esi, byte [eax - 1]
dec eax
shl esi, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or esi, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or esi, ecx
movzx eax, byte [eax - 1]
or esi, eax
mov dword [esp + ebx*4 + 0x1c], esi
mov dword [esp + ebx*4 + 0x20], edx
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 3]
cdq
lea edi, [edi*2 + 2]
and edx, 3
mov ecx, 1
add edx, eax
sar edx, 2
mov dword [ebx + 4], 0xb7e15163
cmp edi, ecx
jle 0x58ffa1
nop
mov eax, dword [ebx + ecx*4]
sub eax, 0x61c88647
mov dword [ebx + ecx*4 + 4], eax
inc ecx
cmp ecx, edi
jl 0x58ff90
cmp edi, edx
mov eax, edx
cmovg eax, edi
xor esi, esi
xor ebx, ebx
xor ebp, ebp
xor ecx, ecx
lea eax, [eax + eax*2]
mov dword [esp + 0x18], eax
test eax, eax
jle 0x59000c
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + ebx*4 + 4]
add eax, ebp
add eax, ecx
mov ecx, dword [esp + 0x14]
rol eax, 3
mov dword [esp + 0x10], eax
mov dword [ecx + ebx*4 + 4], eax
lea ecx, [eax + ebp]
add ebp, dword [esp + esi*4 + 0x1c]
and ecx, 0x1f
add ebp, eax
rol ebp, cl
lea eax, [ebx + 1]
xor ebx, ebx
mov dword [esp + esi*4 + 0x1c], ebp
cmp eax, edi
lea ecx, [esi + 1]
cmovl ebx, eax
xor esi, esi
cmp ecx, edx
cmovl esi, ecx
sub dword [esp + 0x18], 1
mov ecx, dword [esp + 0x10]
jne 0x58ffc0
mov ecx, dword [esp + 0x11c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00483ab6
add esp, 0x110
ret
Function at 0x58ff23
Capabilities:
Encrypt data using rc6

Disassembly:
mov eax, 0x110
call fcn.005cf470
mov eax, dword [0x64c00c]
xor eax, esp
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x114]
push ebx
push ebp
mov ebp, dword [esp + 0x120]
push esi
push edi
mov edi, dword [esp + 0x130]
mov dword [esp + 0x14], eax
cmp edi, 0x10
je 0x58fe7a
cmp edi, 0xc
je 0x58fe7a
cmp edi, 8
mov ecx, 0x10
cmovne edi, ecx
mov dword [eax], edi
xor ebx, ebx
lea eax, [ebp - 8]
xor edx, edx
test eax, eax
js 0x58fef6
mov esi, ebp
shr esi, 3
lea eax, [esi*8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x12c]
nop
movzx ecx, byte [eax + 1]
movzx edx, byte [eax]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 2]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 3]
shl ecx, 0x18
or edx, ecx
movzx ecx, byte [eax + 5]
mov dword [esp + ebx*4 + 0x1c], edx
movzx edx, byte [eax + 4]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 6]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 7]
shl ecx, 0x18
add eax, 8
or edx, ecx
mov dword [esp + ebx*4 + 0x20], edx
add ebx, 2
sub esi, 1
jne 0x58fea0
mov edx, dword [esp + 0x10]
jmp 0x58fefd
mov eax, dword [esp + 0x12c]
mov ecx, ebp
sub ecx, edx
je 0x58ff68
mov ecx, ebp
xor edx, edx
and ecx, 7
xor esi, esi
add eax, ecx
dec ecx
cmp ecx, 7
ja case.default.0x58ff14
jmp dword [ecx*4 + 0x590028]
movzx edx, byte [eax - 1]
dec eax
shl edx, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
or edx, ecx
movzx esi, byte [eax - 1]
dec eax
shl esi, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or esi, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or esi, ecx
movzx eax, byte [eax - 1]
or esi, eax
mov dword [esp + ebx*4 + 0x1c], esi
mov dword [esp + ebx*4 + 0x20], edx
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 3]
cdq
lea edi, [edi*2 + 2]
and edx, 3
mov ecx, 1
add edx, eax
sar edx, 2
mov dword [ebx + 4], 0xb7e15163
cmp edi, ecx
jle 0x58ffa1
nop
mov eax, dword [ebx + ecx*4]
sub eax, 0x61c88647
mov dword [ebx + ecx*4 + 4], eax
inc ecx
cmp ecx, edi
jl 0x58ff90
cmp edi, edx
mov eax, edx
cmovg eax, edi
xor esi, esi
xor ebx, ebx
xor ebp, ebp
xor ecx, ecx
lea eax, [eax + eax*2]
mov dword [esp + 0x18], eax
test eax, eax
jle 0x59000c
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + ebx*4 + 4]
add eax, ebp
add eax, ecx
mov ecx, dword [esp + 0x14]
rol eax, 3
mov dword [esp + 0x10], eax
mov dword [ecx + ebx*4 + 4], eax
lea ecx, [eax + ebp]
add ebp, dword [esp + esi*4 + 0x1c]
and ecx, 0x1f
add ebp, eax
rol ebp, cl
lea eax, [ebx + 1]
xor ebx, ebx
mov dword [esp + esi*4 + 0x1c], ebp
cmp eax, edi
lea ecx, [esi + 1]
cmovl ebx, eax
xor esi, esi
cmp ecx, edx
cmovl esi, ecx
sub dword [esp + 0x18], 1
mov ecx, dword [esp + 0x10]
jne 0x58ffc0
mov ecx, dword [esp + 0x11c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00483ab6
add esp, 0x110
ret
Function at 0x58ff2d
Capabilities:
Encrypt data using rc6

Disassembly:
mov eax, 0x110
call fcn.005cf470
mov eax, dword [0x64c00c]
xor eax, esp
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x114]
push ebx
push ebp
mov ebp, dword [esp + 0x120]
push esi
push edi
mov edi, dword [esp + 0x130]
mov dword [esp + 0x14], eax
cmp edi, 0x10
je 0x58fe7a
cmp edi, 0xc
je 0x58fe7a
cmp edi, 8
mov ecx, 0x10
cmovne edi, ecx
mov dword [eax], edi
xor ebx, ebx
lea eax, [ebp - 8]
xor edx, edx
test eax, eax
js 0x58fef6
mov esi, ebp
shr esi, 3
lea eax, [esi*8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x12c]
nop
movzx ecx, byte [eax + 1]
movzx edx, byte [eax]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 2]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 3]
shl ecx, 0x18
or edx, ecx
movzx ecx, byte [eax + 5]
mov dword [esp + ebx*4 + 0x1c], edx
movzx edx, byte [eax + 4]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 6]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 7]
shl ecx, 0x18
add eax, 8
or edx, ecx
mov dword [esp + ebx*4 + 0x20], edx
add ebx, 2
sub esi, 1
jne 0x58fea0
mov edx, dword [esp + 0x10]
jmp 0x58fefd
mov eax, dword [esp + 0x12c]
mov ecx, ebp
sub ecx, edx
je 0x58ff68
mov ecx, ebp
xor edx, edx
and ecx, 7
xor esi, esi
add eax, ecx
dec ecx
cmp ecx, 7
ja case.default.0x58ff14
jmp dword [ecx*4 + 0x590028]
movzx edx, byte [eax - 1]
dec eax
shl edx, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
or edx, ecx
movzx esi, byte [eax - 1]
dec eax
shl esi, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or esi, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or esi, ecx
movzx eax, byte [eax - 1]
or esi, eax
mov dword [esp + ebx*4 + 0x1c], esi
mov dword [esp + ebx*4 + 0x20], edx
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 3]
cdq
lea edi, [edi*2 + 2]
and edx, 3
mov ecx, 1
add edx, eax
sar edx, 2
mov dword [ebx + 4], 0xb7e15163
cmp edi, ecx
jle 0x58ffa1
nop
mov eax, dword [ebx + ecx*4]
sub eax, 0x61c88647
mov dword [ebx + ecx*4 + 4], eax
inc ecx
cmp ecx, edi
jl 0x58ff90
cmp edi, edx
mov eax, edx
cmovg eax, edi
xor esi, esi
xor ebx, ebx
xor ebp, ebp
xor ecx, ecx
lea eax, [eax + eax*2]
mov dword [esp + 0x18], eax
test eax, eax
jle 0x59000c
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + ebx*4 + 4]
add eax, ebp
add eax, ecx
mov ecx, dword [esp + 0x14]
rol eax, 3
mov dword [esp + 0x10], eax
mov dword [ecx + ebx*4 + 4], eax
lea ecx, [eax + ebp]
add ebp, dword [esp + esi*4 + 0x1c]
and ecx, 0x1f
add ebp, eax
rol ebp, cl
lea eax, [ebx + 1]
xor ebx, ebx
mov dword [esp + esi*4 + 0x1c], ebp
cmp eax, edi
lea ecx, [esi + 1]
cmovl ebx, eax
xor esi, esi
cmp ecx, edx
cmovl esi, ecx
sub dword [esp + 0x18], 1
mov ecx, dword [esp + 0x10]
jne 0x58ffc0
mov ecx, dword [esp + 0x11c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00483ab6
add esp, 0x110
ret
Function at 0x58ff37
Capabilities:
Encrypt data using rc6

Disassembly:
mov eax, 0x110
call fcn.005cf470
mov eax, dword [0x64c00c]
xor eax, esp
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x114]
push ebx
push ebp
mov ebp, dword [esp + 0x120]
push esi
push edi
mov edi, dword [esp + 0x130]
mov dword [esp + 0x14], eax
cmp edi, 0x10
je 0x58fe7a
cmp edi, 0xc
je 0x58fe7a
cmp edi, 8
mov ecx, 0x10
cmovne edi, ecx
mov dword [eax], edi
xor ebx, ebx
lea eax, [ebp - 8]
xor edx, edx
test eax, eax
js 0x58fef6
mov esi, ebp
shr esi, 3
lea eax, [esi*8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x12c]
nop
movzx ecx, byte [eax + 1]
movzx edx, byte [eax]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 2]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 3]
shl ecx, 0x18
or edx, ecx
movzx ecx, byte [eax + 5]
mov dword [esp + ebx*4 + 0x1c], edx
movzx edx, byte [eax + 4]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 6]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 7]
shl ecx, 0x18
add eax, 8
or edx, ecx
mov dword [esp + ebx*4 + 0x20], edx
add ebx, 2
sub esi, 1
jne 0x58fea0
mov edx, dword [esp + 0x10]
jmp 0x58fefd
mov eax, dword [esp + 0x12c]
mov ecx, ebp
sub ecx, edx
je 0x58ff68
mov ecx, ebp
xor edx, edx
and ecx, 7
xor esi, esi
add eax, ecx
dec ecx
cmp ecx, 7
ja case.default.0x58ff14
jmp dword [ecx*4 + 0x590028]
movzx edx, byte [eax - 1]
dec eax
shl edx, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
or edx, ecx
movzx esi, byte [eax - 1]
dec eax
shl esi, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or esi, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or esi, ecx
movzx eax, byte [eax - 1]
or esi, eax
mov dword [esp + ebx*4 + 0x1c], esi
mov dword [esp + ebx*4 + 0x20], edx
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 3]
cdq
lea edi, [edi*2 + 2]
and edx, 3
mov ecx, 1
add edx, eax
sar edx, 2
mov dword [ebx + 4], 0xb7e15163
cmp edi, ecx
jle 0x58ffa1
nop
mov eax, dword [ebx + ecx*4]
sub eax, 0x61c88647
mov dword [ebx + ecx*4 + 4], eax
inc ecx
cmp ecx, edi
jl 0x58ff90
cmp edi, edx
mov eax, edx
cmovg eax, edi
xor esi, esi
xor ebx, ebx
xor ebp, ebp
xor ecx, ecx
lea eax, [eax + eax*2]
mov dword [esp + 0x18], eax
test eax, eax
jle 0x59000c
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + ebx*4 + 4]
add eax, ebp
add eax, ecx
mov ecx, dword [esp + 0x14]
rol eax, 3
mov dword [esp + 0x10], eax
mov dword [ecx + ebx*4 + 4], eax
lea ecx, [eax + ebp]
add ebp, dword [esp + esi*4 + 0x1c]
and ecx, 0x1f
add ebp, eax
rol ebp, cl
lea eax, [ebx + 1]
xor ebx, ebx
mov dword [esp + esi*4 + 0x1c], ebp
cmp eax, edi
lea ecx, [esi + 1]
cmovl ebx, eax
xor esi, esi
cmp ecx, edx
cmovl esi, ecx
sub dword [esp + 0x18], 1
mov ecx, dword [esp + 0x10]
jne 0x58ffc0
mov ecx, dword [esp + 0x11c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00483ab6
add esp, 0x110
ret
Function at 0x58ff3e
Capabilities:
Encrypt data using rc6

Disassembly:
mov eax, 0x110
call fcn.005cf470
mov eax, dword [0x64c00c]
xor eax, esp
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x114]
push ebx
push ebp
mov ebp, dword [esp + 0x120]
push esi
push edi
mov edi, dword [esp + 0x130]
mov dword [esp + 0x14], eax
cmp edi, 0x10
je 0x58fe7a
cmp edi, 0xc
je 0x58fe7a
cmp edi, 8
mov ecx, 0x10
cmovne edi, ecx
mov dword [eax], edi
xor ebx, ebx
lea eax, [ebp - 8]
xor edx, edx
test eax, eax
js 0x58fef6
mov esi, ebp
shr esi, 3
lea eax, [esi*8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x12c]
nop
movzx ecx, byte [eax + 1]
movzx edx, byte [eax]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 2]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 3]
shl ecx, 0x18
or edx, ecx
movzx ecx, byte [eax + 5]
mov dword [esp + ebx*4 + 0x1c], edx
movzx edx, byte [eax + 4]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 6]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 7]
shl ecx, 0x18
add eax, 8
or edx, ecx
mov dword [esp + ebx*4 + 0x20], edx
add ebx, 2
sub esi, 1
jne 0x58fea0
mov edx, dword [esp + 0x10]
jmp 0x58fefd
mov eax, dword [esp + 0x12c]
mov ecx, ebp
sub ecx, edx
je 0x58ff68
mov ecx, ebp
xor edx, edx
and ecx, 7
xor esi, esi
add eax, ecx
dec ecx
cmp ecx, 7
ja case.default.0x58ff14
jmp dword [ecx*4 + 0x590028]
movzx edx, byte [eax - 1]
dec eax
shl edx, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
or edx, ecx
movzx esi, byte [eax - 1]
dec eax
shl esi, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or esi, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or esi, ecx
movzx eax, byte [eax - 1]
or esi, eax
mov dword [esp + ebx*4 + 0x1c], esi
mov dword [esp + ebx*4 + 0x20], edx
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 3]
cdq
lea edi, [edi*2 + 2]
and edx, 3
mov ecx, 1
add edx, eax
sar edx, 2
mov dword [ebx + 4], 0xb7e15163
cmp edi, ecx
jle 0x58ffa1
nop
mov eax, dword [ebx + ecx*4]
sub eax, 0x61c88647
mov dword [ebx + ecx*4 + 4], eax
inc ecx
cmp ecx, edi
jl 0x58ff90
cmp edi, edx
mov eax, edx
cmovg eax, edi
xor esi, esi
xor ebx, ebx
xor ebp, ebp
xor ecx, ecx
lea eax, [eax + eax*2]
mov dword [esp + 0x18], eax
test eax, eax
jle 0x59000c
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + ebx*4 + 4]
add eax, ebp
add eax, ecx
mov ecx, dword [esp + 0x14]
rol eax, 3
mov dword [esp + 0x10], eax
mov dword [ecx + ebx*4 + 4], eax
lea ecx, [eax + ebp]
add ebp, dword [esp + esi*4 + 0x1c]
and ecx, 0x1f
add ebp, eax
rol ebp, cl
lea eax, [ebx + 1]
xor ebx, ebx
mov dword [esp + esi*4 + 0x1c], ebp
cmp eax, edi
lea ecx, [esi + 1]
cmovl ebx, eax
xor esi, esi
cmp ecx, edx
cmovl esi, ecx
sub dword [esp + 0x18], 1
mov ecx, dword [esp + 0x10]
jne 0x58ffc0
mov ecx, dword [esp + 0x11c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00483ab6
add esp, 0x110
ret
Function at 0x58ff46
Capabilities:
Encrypt data using rc6

Disassembly:
mov eax, 0x110
call fcn.005cf470
mov eax, dword [0x64c00c]
xor eax, esp
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x114]
push ebx
push ebp
mov ebp, dword [esp + 0x120]
push esi
push edi
mov edi, dword [esp + 0x130]
mov dword [esp + 0x14], eax
cmp edi, 0x10
je 0x58fe7a
cmp edi, 0xc
je 0x58fe7a
cmp edi, 8
mov ecx, 0x10
cmovne edi, ecx
mov dword [eax], edi
xor ebx, ebx
lea eax, [ebp - 8]
xor edx, edx
test eax, eax
js 0x58fef6
mov esi, ebp
shr esi, 3
lea eax, [esi*8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x12c]
nop
movzx ecx, byte [eax + 1]
movzx edx, byte [eax]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 2]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 3]
shl ecx, 0x18
or edx, ecx
movzx ecx, byte [eax + 5]
mov dword [esp + ebx*4 + 0x1c], edx
movzx edx, byte [eax + 4]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 6]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 7]
shl ecx, 0x18
add eax, 8
or edx, ecx
mov dword [esp + ebx*4 + 0x20], edx
add ebx, 2
sub esi, 1
jne 0x58fea0
mov edx, dword [esp + 0x10]
jmp 0x58fefd
mov eax, dword [esp + 0x12c]
mov ecx, ebp
sub ecx, edx
je 0x58ff68
mov ecx, ebp
xor edx, edx
and ecx, 7
xor esi, esi
add eax, ecx
dec ecx
cmp ecx, 7
ja case.default.0x58ff14
jmp dword [ecx*4 + 0x590028]
movzx edx, byte [eax - 1]
dec eax
shl edx, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
or edx, ecx
movzx esi, byte [eax - 1]
dec eax
shl esi, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or esi, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or esi, ecx
movzx eax, byte [eax - 1]
or esi, eax
mov dword [esp + ebx*4 + 0x1c], esi
mov dword [esp + ebx*4 + 0x20], edx
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 3]
cdq
lea edi, [edi*2 + 2]
and edx, 3
mov ecx, 1
add edx, eax
sar edx, 2
mov dword [ebx + 4], 0xb7e15163
cmp edi, ecx
jle 0x58ffa1
nop
mov eax, dword [ebx + ecx*4]
sub eax, 0x61c88647
mov dword [ebx + ecx*4 + 4], eax
inc ecx
cmp ecx, edi
jl 0x58ff90
cmp edi, edx
mov eax, edx
cmovg eax, edi
xor esi, esi
xor ebx, ebx
xor ebp, ebp
xor ecx, ecx
lea eax, [eax + eax*2]
mov dword [esp + 0x18], eax
test eax, eax
jle 0x59000c
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + ebx*4 + 4]
add eax, ebp
add eax, ecx
mov ecx, dword [esp + 0x14]
rol eax, 3
mov dword [esp + 0x10], eax
mov dword [ecx + ebx*4 + 4], eax
lea ecx, [eax + ebp]
add ebp, dword [esp + esi*4 + 0x1c]
and ecx, 0x1f
add ebp, eax
rol ebp, cl
lea eax, [ebx + 1]
xor ebx, ebx
mov dword [esp + esi*4 + 0x1c], ebp
cmp eax, edi
lea ecx, [esi + 1]
cmovl ebx, eax
xor esi, esi
cmp ecx, edx
cmovl esi, ecx
sub dword [esp + 0x18], 1
mov ecx, dword [esp + 0x10]
jne 0x58ffc0
mov ecx, dword [esp + 0x11c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00483ab6
add esp, 0x110
ret
Function at 0x58ff50
Capabilities:
Encrypt data using rc6

Disassembly:
mov eax, 0x110
call fcn.005cf470
mov eax, dword [0x64c00c]
xor eax, esp
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x114]
push ebx
push ebp
mov ebp, dword [esp + 0x120]
push esi
push edi
mov edi, dword [esp + 0x130]
mov dword [esp + 0x14], eax
cmp edi, 0x10
je 0x58fe7a
cmp edi, 0xc
je 0x58fe7a
cmp edi, 8
mov ecx, 0x10
cmovne edi, ecx
mov dword [eax], edi
xor ebx, ebx
lea eax, [ebp - 8]
xor edx, edx
test eax, eax
js 0x58fef6
mov esi, ebp
shr esi, 3
lea eax, [esi*8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x12c]
nop
movzx ecx, byte [eax + 1]
movzx edx, byte [eax]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 2]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 3]
shl ecx, 0x18
or edx, ecx
movzx ecx, byte [eax + 5]
mov dword [esp + ebx*4 + 0x1c], edx
movzx edx, byte [eax + 4]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 6]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 7]
shl ecx, 0x18
add eax, 8
or edx, ecx
mov dword [esp + ebx*4 + 0x20], edx
add ebx, 2
sub esi, 1
jne 0x58fea0
mov edx, dword [esp + 0x10]
jmp 0x58fefd
mov eax, dword [esp + 0x12c]
mov ecx, ebp
sub ecx, edx
je 0x58ff68
mov ecx, ebp
xor edx, edx
and ecx, 7
xor esi, esi
add eax, ecx
dec ecx
cmp ecx, 7
ja case.default.0x58ff14
jmp dword [ecx*4 + 0x590028]
movzx edx, byte [eax - 1]
dec eax
shl edx, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
or edx, ecx
movzx esi, byte [eax - 1]
dec eax
shl esi, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or esi, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or esi, ecx
movzx eax, byte [eax - 1]
or esi, eax
mov dword [esp + ebx*4 + 0x1c], esi
mov dword [esp + ebx*4 + 0x20], edx
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 3]
cdq
lea edi, [edi*2 + 2]
and edx, 3
mov ecx, 1
add edx, eax
sar edx, 2
mov dword [ebx + 4], 0xb7e15163
cmp edi, ecx
jle 0x58ffa1
nop
mov eax, dword [ebx + ecx*4]
sub eax, 0x61c88647
mov dword [ebx + ecx*4 + 4], eax
inc ecx
cmp ecx, edi
jl 0x58ff90
cmp edi, edx
mov eax, edx
cmovg eax, edi
xor esi, esi
xor ebx, ebx
xor ebp, ebp
xor ecx, ecx
lea eax, [eax + eax*2]
mov dword [esp + 0x18], eax
test eax, eax
jle 0x59000c
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + ebx*4 + 4]
add eax, ebp
add eax, ecx
mov ecx, dword [esp + 0x14]
rol eax, 3
mov dword [esp + 0x10], eax
mov dword [ecx + ebx*4 + 4], eax
lea ecx, [eax + ebp]
add ebp, dword [esp + esi*4 + 0x1c]
and ecx, 0x1f
add ebp, eax
rol ebp, cl
lea eax, [ebx + 1]
xor ebx, ebx
mov dword [esp + esi*4 + 0x1c], ebp
cmp eax, edi
lea ecx, [esi + 1]
cmovl ebx, eax
xor esi, esi
cmp ecx, edx
cmovl esi, ecx
sub dword [esp + 0x18], 1
mov ecx, dword [esp + 0x10]
jne 0x58ffc0
mov ecx, dword [esp + 0x11c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00483ab6
add esp, 0x110
ret
Function at 0x58ff5a
Capabilities:
Encrypt data using rc6

Disassembly:
mov eax, 0x110
call fcn.005cf470
mov eax, dword [0x64c00c]
xor eax, esp
mov dword [esp + 0x10c], eax
mov eax, dword [esp + 0x114]
push ebx
push ebp
mov ebp, dword [esp + 0x120]
push esi
push edi
mov edi, dword [esp + 0x130]
mov dword [esp + 0x14], eax
cmp edi, 0x10
je 0x58fe7a
cmp edi, 0xc
je 0x58fe7a
cmp edi, 8
mov ecx, 0x10
cmovne edi, ecx
mov dword [eax], edi
xor ebx, ebx
lea eax, [ebp - 8]
xor edx, edx
test eax, eax
js 0x58fef6
mov esi, ebp
shr esi, 3
lea eax, [esi*8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x12c]
nop
movzx ecx, byte [eax + 1]
movzx edx, byte [eax]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 2]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 3]
shl ecx, 0x18
or edx, ecx
movzx ecx, byte [eax + 5]
mov dword [esp + ebx*4 + 0x1c], edx
movzx edx, byte [eax + 4]
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax + 6]
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax + 7]
shl ecx, 0x18
add eax, 8
or edx, ecx
mov dword [esp + ebx*4 + 0x20], edx
add ebx, 2
sub esi, 1
jne 0x58fea0
mov edx, dword [esp + 0x10]
jmp 0x58fefd
mov eax, dword [esp + 0x12c]
mov ecx, ebp
sub ecx, edx
je 0x58ff68
mov ecx, ebp
xor edx, edx
and ecx, 7
xor esi, esi
add eax, ecx
dec ecx
cmp ecx, 7
ja case.default.0x58ff14
jmp dword [ecx*4 + 0x590028]
movzx edx, byte [eax - 1]
dec eax
shl edx, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or edx, ecx
movzx ecx, byte [eax - 1]
dec eax
or edx, ecx
movzx esi, byte [eax - 1]
dec eax
shl esi, 0x18
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 0x10
or esi, ecx
movzx ecx, byte [eax - 1]
dec eax
shl ecx, 8
or esi, ecx
movzx eax, byte [eax - 1]
or esi, eax
mov dword [esp + ebx*4 + 0x1c], esi
mov dword [esp + ebx*4 + 0x20], edx
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 3]
cdq
lea edi, [edi*2 + 2]
and edx, 3
mov ecx, 1
add edx, eax
sar edx, 2
mov dword [ebx + 4], 0xb7e15163
cmp edi, ecx
jle 0x58ffa1
nop
mov eax, dword [ebx + ecx*4]
sub eax, 0x61c88647
mov dword [ebx + ecx*4 + 4], eax
inc ecx
cmp ecx, edi
jl 0x58ff90
cmp edi, edx
mov eax, edx
cmovg eax, edi
xor esi, esi
xor ebx, ebx
xor ebp, ebp
xor ecx, ecx
lea eax, [eax + eax*2]
mov dword [esp + 0x18], eax
test eax, eax
jle 0x59000c
nop dword [eax + eax]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + ebx*4 + 4]
add eax, ebp
add eax, ecx
mov ecx, dword [esp + 0x14]
rol eax, 3
mov dword [esp + 0x10], eax
mov dword [ecx + ebx*4 + 4], eax
lea ecx, [eax + ebp]
add ebp, dword [esp + esi*4 + 0x1c]
and ecx, 0x1f
add ebp, eax
rol ebp, cl
lea eax, [ebx + 1]
xor ebx, ebx
mov dword [esp + esi*4 + 0x1c], ebp
cmp eax, edi
lea ecx, [esi + 1]
cmovl ebx, eax
xor esi, esi
cmp ecx, edx
cmovl esi, ecx
sub dword [esp + 0x18], 1
mov ecx, dword [esp + 0x10]
jne 0x58ffc0
mov ecx, dword [esp + 0x11c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00483ab6
add esp, 0x110
ret