joyce8/EMBER2024-capa huggingface dataset:
Function at 0x6279c0
Capabilities:
Encrypt data using curve25519

Disassembly:
push ebp
mov ebp, esp
mov eax, 4
call fcn.006d13f0
push esi
mov esi, dword [ebp + 0x1c]
push edi
mov edi, dword [ebp + 0xc]
cmp esi, 2
je 0x627a4c
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x627a18
push eax
push 0
lea eax, [ebp - 4]
push eax
push 0
call fcn.005f1250
add esp, 0x10
cmp dword [ebp - 4], 0xffffffff
je 0x627a18
push 0x3b
push str.....cryptoececx_meth.c
push 0x66
push 0x10a
push 0x10
call fcn.005e34c0
add esp, 0x14
xor eax, eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp dword [ebp + 0x14], 0
je 0x627a48
cmp edi, 0x40a
je 0x627a3e
cmp edi, 0x43f
je 0x627a3e
xor eax, eax
cmp edi, 0x40b
setne al
add eax, 0x38
jmp 0x627a43
mov eax, 0x20
cmp dword [ebp + 0x18], eax
je 0x627a4c
push 0x41
jmp 0x6279fa
push ebx
push 0x46
push str.....cryptoececx_meth.c
push 0x40
call fcn.005e9440
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x627a85
push 0x48
push str.....cryptoececx_meth.c
push 0x41
push 0x10a
push 0x10
call fcn.005e34c0
add esp, 0x14
xor eax, eax
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
test esi, esi
jne 0x627a9e
push dword [ebp + 0x18]
mov eax, dword [ebp + 0x14]
push eax
push ebx
call fcn.006d2cf0
add esp, 0xc
jmp case.0x627bd0.1036
cmp edi, 0x40a
je 0x627abe
cmp edi, 0x43f
je 0x627abe
xor eax, eax
cmp edi, 0x40b
setne al
add eax, 0x38
jmp 0x627ac3
mov eax, 0x20
push 0x50
push str.....cryptoececx_meth.c
push eax
call fcn.005f9460
mov esi, eax
add esp, 0xc
mov dword [ebx + 0x3c], esi
test esi, esi
jne 0x627af6
push 0x52
push str.....cryptoececx_meth.c
push 0x41
push 0x10a
push 0x10
call fcn.005e34c0
add esp, 0x14
jmp 0x627b4a
cmp dword [ebp + 0x1c], 2
jne 0x627b8b
cmp edi, 0x40a
je 0x627b20
cmp edi, 0x43f
je 0x627b20
xor eax, eax
cmp edi, 0x40b
setne al
add eax, 0x38
jmp 0x627b25
mov eax, 0x20
push eax
push esi
call fcn.005dba20
add esp, 8
test eax, eax
jg 0x627b63
push 0x57
push str.....cryptoececx_meth.c
push esi
call fcn.005f9450
add esp, 0xc
mov dword [ebx + 0x3c], 0
push 0x79
push str.....cryptoececx_meth.c
push ebx
call fcn.005e9230
add esp, 0xc
xor eax, eax
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
cmp edi, 0x40a
jne 0x627b7a
mov al, byte [esi + 0x1f]
and byte [esi], 0xf8
and al, 0x3f
or al, 0x40
mov byte [esi + 0x1f], al
jmp 0x627bbe
cmp edi, 0x40b
jne 0x627bbe
and byte [esi], 0xfc
or byte [esi + 0x37], 0x80
jmp 0x627bbe
cmp edi, 0x40a
je 0x627bab
cmp edi, 0x43f
je 0x627bab
xor eax, eax
cmp edi, 0x40b
setne al
add eax, 0x38
jmp 0x627bb0
mov eax, 0x20
push eax
mov eax, dword [ebp + 0x14]
push eax
push esi
call fcn.006d2cf0
add esp, 0xc
lea eax, [edi - 0x40a]
cmp eax, 0x36
ja case.0x627bd0.1036
movzx eax, byte [eax + 0x627c2c]
jmp dword [eax*4 + 0x627c18]
push esi
push ebx
call fcn.00656390
jmp 0x627bf9
push esi
push ebx
call fcn.00655f40
jmp 0x627bf9
push esi
push ebx
call fcn.00660590
jmp 0x627bf9
push esi
push ebx
call fcn.00662580
add esp, 8
push ebx
push edi
push dword [ebp + 8]
call fcn.005dad60
add esp, 0xc
mov eax, 1
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x62a7b0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 4
call fcn.006d13f0
push esi
mov esi, dword [ebp + 8]
push edi
push esi
call fcn.005d9a00
add esp, 4
cmp eax, 0x72
jne 0x62a955
mov esi, dword [ebp + 0x20]
mov eax, dword [ebp + 0x10]
mov edi, eax
push esi
push dword [ebp + 0x1c]
and eax, 1
shr edi, 1
push dword [ebp + 0x18]
add eax, edi
push dword [ebp + 0x14]
mov dword [ebp - 4], eax
push eax
push dword [ebp + 0xc]
call fcn.00619610
push eax
call fcn.0062a580
add esp, 0x1c
test eax, eax
je 0x62a974
push ebx
push 0x104
push str.....cryptokdf_tls1_prf.c
push esi
call fcn.005e91f0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x62a845
push 0x105
push str.....cryptokdf_tls1_prf.c
push 0x41
push 0x6f
push 0x34
call fcn.005e34c0
add esp, 0x14
xor eax, eax
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0xc]
push esi
push ebx
push dword [ebp + 0x18]
add eax, edi
push dword [ebp + 0x14]
push dword [ebp - 4]
push eax
call fcn.0060f500
push eax
call fcn.0062a580
add esp, 0x1c
test eax, eax
jne 0x62a885
push 0x10a
push str.....cryptokdf_tls1_prf.c
push esi
push ebx
call fcn.005e9300
add esp, 0x10
xor eax, eax
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
xor edi, edi
test esi, esi
je 0x62a935
mov edx, dword [ebp + 0x1c]
cmp esi, 0x40
jb 0x62a910
lea eax, [esi - 1]
lea ecx, [edx - 1]
add eax, ebx
add ecx, esi
cmp edx, eax
ja 0x62a8a9
cmp ecx, ebx
jae 0x62a910
mov ecx, esi
mov eax, edx
mov esi, ebx
and ecx, 0xffffffc0
sub esi, edx
mov dword [ebp - 4], esi
mov esi, dword [ebp + 0x20]
mov edx, dword [ebp - 4]
nop dword [eax]
movups xmm0, xmmword [eax]
lea eax, [eax + 0x40]
movups xmm1, xmmword [edx + eax - 0x40]
pxor xmm1, xmm0
movups xmmword [eax - 0x40], xmm1
movups xmm0, xmmword [eax - 0x30]
movups xmm1, xmmword [ebx + edi + 0x10]
pxor xmm1, xmm0
movups xmmword [eax - 0x30], xmm1
movups xmm0, xmmword [eax - 0x20]
movups xmm1, xmmword [ebx + edi + 0x20]
pxor xmm1, xmm0
movups xmmword [eax - 0x20], xmm1
movups xmm0, xmmword [eax - 0x10]
movups xmm1, xmmword [ebx + edi + 0x30]
add edi, 0x40
pxor xmm1, xmm0
movups xmmword [eax - 0x10], xmm1
cmp edi, ecx
jb 0x62a8c0
mov edx, dword [ebp + 0x1c]
cmp edi, esi
jae 0x62a935
mov eax, ebx
lea ecx, [edi + edx]
sub eax, edx
mov edx, esi
mov dword [ebp - 4], eax
sub edx, edi
mov esi, eax
mov al, byte [ecx + esi]
lea ecx, [ecx + 1]
xor byte [ecx - 1], al
sub edx, 1
jne 0x62a924
mov esi, dword [ebp + 0x20]
push 0x10f
push str.....cryptokdf_tls1_prf.c
push esi
push ebx
call fcn.005e9300
add esp, 0x10
mov eax, 1
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.0062a580
add esp, 0x1c
test eax, eax
jne 0x62a97c
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret
pop edi
mov eax, 1
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x635700
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x28
call fcn.006d13f0
push ebx
push esi
mov esi, dword [ebp + 0x18]
mov ebx, 1
push edi
push dword [ebp + 0xc]
mov edi, dword [ebp + 0x10]
mov ecx, esi
push dword [ebp + 8]
shl ebx, cl
call fcn.005f7070
add esp, 8
test eax, eax
jne 0x635738
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp esi, 3
jg 0x63579d
xor ecx, ecx
mov dword [ebp + 0x18], ecx
cmp dword [ebp + 0xc], ecx
jle 0x6358da
nop dword [eax + eax]
xor esi, esi
xor eax, eax
test ebx, ebx
jle 0x63577e
mov ecx, eax
xor ecx, dword [ebp + 0x14]
lea edx, [ecx - 1]
not ecx
shr edx, 0x1f
shr ecx, 0x1f
and edx, ecx
neg edx
and edx, 1
neg edx
and edx, dword [edi + eax*4]
inc eax
or esi, edx
cmp eax, ebx
jl 0x635758
mov ecx, dword [ebp + 0x18]
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [eax + ecx*4], esi
inc ecx
lea eax, [ebx*4]
mov dword [ebp + 0x18], ecx
add edi, eax
cmp ecx, dword [ebp + 0xc]
jl 0x635750
jmp 0x6358da
mov edx, dword [ebp + 0x14]
lea ecx, [esi - 2]
sar edx, cl
mov esi, 1
shl esi, cl
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x24], esi
lea eax, [esi - 1]
and ecx, eax
mov eax, edx
mov dword [ebp - 0x10], ecx
not eax
shr eax, 0x1f
lea ecx, [edx - 1]
shr ecx, 0x1f
and ecx, eax
mov eax, edx
neg ecx
xor eax, 1
and ecx, 1
neg ecx
mov dword [ebp - 0x20], ecx
lea ecx, [eax - 1]
not eax
shr eax, 0x1f
shr ecx, 0x1f
and ecx, eax
mov eax, edx
neg ecx
xor eax, 2
and ecx, 1
xor edx, 3
neg ecx
mov dword [ebp - 0x1c], ecx
lea ecx, [eax - 1]
not eax
shr eax, 0x1f
shr ecx, 0x1f
and ecx, eax
lea eax, [edx - 1]
shr eax, 0x1f
not edx
shr edx, 0x1f
neg ecx
and eax, edx
and ecx, 1
neg eax
xor edx, edx
and eax, 1
mov dword [ebp - 0xc], edx
neg ecx
neg eax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp + 0xc], edx
jle 0x6358da
lea eax, [ebx*4]
mov dword [ebp - 0x28], eax
nop dword [eax]
xor eax, eax
xor ebx, ebx
mov dword [ebp + 0x18], eax
test esi, esi
jle 0x6358c2
lea eax, [esi + esi*2]
lea edx, [edi + esi*4]
lea ecx, [edi + esi*8]
mov dword [ebp - 8], edx
lea eax, [edi + eax*4]
mov dword [ebp - 4], ecx
mov dword [ebp + 0x10], eax
mov eax, dword [eax]
mov esi, ebx
mov ecx, dword [ecx]
and ecx, dword [ebp - 0x18]
and eax, dword [ebp - 0x14]
xor esi, dword [ebp - 0x10]
or ecx, eax
mov edx, dword [edx]
and edx, dword [ebp - 0x1c]
mov eax, dword [edi + ebx*4]
or edx, ecx
and eax, dword [ebp - 0x20]
lea ecx, [esi - 1]
shr ecx, 0x1f
not esi
shr esi, 0x1f
or eax, edx
mov edx, dword [ebp - 8]
and ecx, esi
mov esi, dword [ebp - 0x24]
neg ecx
and ecx, 1
inc ebx
neg ecx
add edx, 4
and ecx, eax
mov dword [ebp - 8], edx
or dword [ebp + 0x18], ecx
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 4]
add eax, 4
add ecx, 4
mov dword [ebp + 0x10], eax
mov dword [ebp - 4], ecx
cmp ebx, esi
jl 0x635860
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp + 8]
add edi, dword [ebp - 0x28]
mov ecx, dword [ecx]
mov dword [ecx + edx*4], eax
inc edx
mov dword [ebp - 0xc], edx
cmp edx, dword [ebp + 0xc]
jl 0x635840
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov dword [eax + 4], edi
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x635bd0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 4
call fcn.006d13f0
mov edx, dword [ebp + 0x10]
push esi
mov esi, dword [ebp + 0xc]
mov dword [ebp - 4], 0x10
lea eax, [edx + 0xf]
lea ecx, [esi + 0xf]
cmp esi, eax
ja 0x635c14
cmp ecx, edx
jb 0x635c14
push edi
mov ecx, esi
sub edx, esi
mov edi, 0x10
mov al, byte [edx + ecx]
lea ecx, [ecx + 1]
xor byte [ecx - 1], al
sub edi, 1
jne 0x635c03
pop edi
jmp 0x635c21
movups xmm1, xmmword [esi]
movups xmm0, xmmword [edx]
pxor xmm1, xmm0
movups xmmword [esi], xmm1
push 0x10
push esi
lea eax, [ebp - 4]
push eax
mov eax, dword [ebp + 8]
push esi
push dword [eax + 4]
call fcn.005d91e0
add esp, 0x14
pop esi
test eax, eax
je 0x635c4b
cmp dword [ebp - 4], 0x10
jne 0x635c4b
mov eax, 1
mov esp, ebp
pop ebp
ret
xor eax, eax
mov esp, ebp
pop ebp
ret

Function at 0x635da0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, dword [ebp + 0xc]
test esi, esi
je 0x635e03
mov edx, dword [ebp + 0x10]
test edx, edx
je 0x635e03
push ebx
push edi
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0xc]
cmp edx, eax
mov ebx, eax
cmovb ebx, edx
xor ecx, ecx
test ebx, ebx
je 0x635dd6
mov al, byte [ecx + esi]
xor byte [edi + ecx + 0x10], al
inc ecx
cmp ecx, ebx
jb 0x635dc7
mov eax, dword [edi + 0xc]
cmp edx, eax
jbe 0x635e01
sub edx, eax
mov eax, 0x10
cmp edx, eax
cmova edx, eax
xor ecx, ecx
test edx, edx
je 0x635e01
nop dword [eax]
mov eax, dword [edi + 0xc]
add eax, ecx
mov al, byte [eax + esi]
xor byte [edi + ecx + 0x30], al
inc ecx
cmp ecx, edx
jb 0x635df0
pop edi
pop ebx
pop esi
pop ebp
ret
Function at 0x638790
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, dword [ebp + 0x14]
cmp dword [ebp + 0x18], esi
jne 0x638814
mov ecx, dword [ebp + 0x10]
mov al, byte [ecx]
cmp al, 0x6a
je 0x6387a9
cmp al, 0x6b
jne 0x638814
inc ecx
cmp al, 0x6b
jne 0x6387eb
add esi, 0xfffffffd
xor eax, eax
test esi, esi
jle 0x6387c9
mov dl, byte [ecx]
inc ecx
cmp dl, 0xba
je 0x6387c9
cmp dl, 0xbb
jne 0x6387dd
inc eax
cmp eax, esi
jl 0x6387b7
sub esi, eax
test eax, eax
jne 0x6387ee
push 0x50
push str.....crypto_rsa_rsa_x931.c
push 0x8a
jmp 0x638820
push 0x48
push str.....crypto_rsa_rsa_x931.c
push 0x8a
jmp 0x638820
add esi, 0xfffffffe
cmp byte [esi + ecx], 0xcc
je 0x638802
push 0x59
push str.....crypto_rsa_rsa_x931.c
push 0x8b
jmp 0x638820
push esi
push ecx
push dword [ebp + 8]
call fcn.006d2cf0
add esp, 0xc
mov eax, esi
pop esi
pop ebp
ret
push 0x3d
push str.....crypto_rsa_rsa_x931.c
push 0x89
push 0x80
push 4
call fcn.005e34c0
add esp, 0x14
or eax, 0xffffffff
pop esi
pop ebp
ret
Function at 0x63d320
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x10
call fcn.006d13f0
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x14]
push ebx
mov ebx, dword [ebp + 0x10]
push esi
mov esi, dword [ebp + 8]
push edi
mov dword [ebp + 8], edx
mov esi, dword [esi + 0x60]
mov dword [ebp - 0x10], esi
mov edi, dword [esi + 0x70]
test edi, edi
je 0x63d388
test ecx, ecx
je 0x63d368
cmp edi, 0x40
jae 0x63d368
mov al, byte [edi + esi + 0x30]
inc edi
xor al, byte [ebx]
inc ebx
mov byte [edx], al
inc edx
mov dword [ebp + 8], edx
sub ecx, 1
jne 0x63d350
mov dword [esi + 0x70], edi
test ecx, ecx
je 0x63d44c
cmp edi, 0x40
jne 0x63d388
mov dword [esi + 0x70], 0
add dword [esi + 0x20], 1
jne 0x63d388
inc dword [esi + 0x24]
mov edi, dword [esi + 0x20]
mov eax, ecx
and eax, 0x3f
mov dword [ebp - 0xc], edi
sub ecx, eax
mov dword [ebp - 4], eax
mov dword [ebp - 8], ecx
cmp ecx, 0x40
jb 0x63d3f8
mov eax, ecx
xor edx, edx
mov ecx, dword [ebp - 0xc]
shr eax, 6
add ecx, eax
cmp ecx, eax
cmovae edx, ecx
neg edi
cmp ecx, eax
mov dword [ebp - 0xc], edx
mov edx, dword [ebp + 8]
cmovae edi, eax
lea eax, [esi + 0x20]
push eax
push esi
shl edi, 6
push edi
push ebx
push edx
call fcn.00413c40
mov ecx, dword [ebp - 8]
add esp, 0x14
mov eax, dword [ebp - 0xc]
sub ecx, edi
add dword [ebp + 8], edi
add ebx, edi
mov dword [ebp - 8], ecx
mov dword [esi + 0x20], eax
test eax, eax
jne 0x63d3eb
inc dword [esi + 0x24]
mov dword [ebp - 0xc], eax
mov edi, eax
cmp ecx, 0x40
jae 0x63d3a0
mov eax, dword [ebp - 4]
test eax, eax
je 0x63d44c
push 0x40
lea edi, [esi + 0x30]
push 0
push edi
mov dword [ebp - 0xc], edi
call fcn.006d4310
lea eax, [esi + 0x20]
push eax
push esi
push 0x40
push edi
push edi
call fcn.00413c40
mov eax, dword [ebp - 4]
add esp, 0x20
xor edi, edi
test eax, eax
je 0x63d449
mov edx, dword [ebp + 8]
mov esi, eax
sub ebx, edx
nop dword [eax]
mov eax, dword [ebp - 0xc]
lea ecx, [edi + edx]
mov al, byte [eax + edi]
inc edi
xor al, byte [ebx + ecx]
mov byte [ecx], al
cmp edi, esi
jb 0x63d430
mov esi, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov dword [esi + 0x70], eax
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x63f840
Capabilities:
Hash data using sha1

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, dword [ebp + 8]
push 0x4c
push 0
lea eax, [esi + 0x14]
push eax
call fcn.006d4310
add esp, 0xc
mov dword [esi], 0x67452301
mov dword [esi + 4], 0xefcdab89
mov eax, 1
mov dword [esi + 8], 0x98badcfe
mov dword [esi + 0xc], 0x10325476
mov dword [esi + 0x10], 0xc3d2e1f0
pop esi
pop ebp
ret

Function at 0x6447b0
Capabilities:
Hash data using sha224

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
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
mov dword [eax + 0x40], 0
mov dword [eax + 0x44], 0
mov dword [eax + 0x48], 0
mov dword [eax + 0x4c], 0
mov dword [eax + 0xd0], 0
mov dword [eax + 0xd4], 0x30
mov eax, 1
pop ebp
ret

Function at 0x644870
Capabilities:
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
mov eax, 0xdc
call fcn.006d13f0
mov eax, dword [0x7c0ab4]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
xorps xmm0, xmm0
mov ecx, dword [ebp + 8]
test eax, eax
push esi
push dword [ebp + 0xc]
mov esi, 0x7cb3e0
mov dword [ebp - 0xdc], 0xf3bcc908
cmovne esi, eax
mov dword [ebp - 0xd8], 0x6a09e667
push ecx
lea eax, [ebp - 0xdc]
mov dword [ebp - 0xd4], 0x84caa73b
push eax
mov dword [ebp - 0xd0], 0xbb67ae85
mov dword [ebp - 0xcc], 0xfe94f82b
mov dword [ebp - 0xc8], 0x3c6ef372
mov dword [ebp - 0xc4], 0x5f1d36f1
mov dword [ebp - 0xc0], 0xa54ff53a
mov dword [ebp - 0xbc], 0xade682d1
mov dword [ebp - 0xb8], 0x510e527f
mov dword [ebp - 0xb4], 0x2b3e6c1f
mov dword [ebp - 0xb0], 0x9b05688c
mov dword [ebp - 0xac], 0xfb41bd6b
mov dword [ebp - 0xa8], 0x1f83d9ab
mov dword [ebp - 0xa4], 0x137e2179
mov dword [ebp - 0xa0], 0x5be0cd19
movlpd qword [ebp - 0x9c], xmm0
movlpd qword [ebp - 0x94], xmm0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0x40
call fcn.006451a0
lea eax, [ebp - 0xdc]
push eax
push esi
call fcn.006449a0
lea eax, [ebp - 0xdc]
push 0xd8
push eax
call fcn.004019e0
mov ecx, dword [ebp - 4]
add esp, 0x1c
mov eax, esi
xor ecx, ebp
pop esi
call fcn.006d0856
mov esp, ebp
pop ebp
ret
Function at 0x6450d0
Capabilities:
Hash data using sha256

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
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
mov dword [eax + 0x40], 0
mov dword [eax + 0x44], 0
mov dword [eax + 0x48], 0
mov dword [eax + 0x4c], 0
mov dword [eax + 0xd0], 0
mov dword [eax + 0xd4], 0x40
mov eax, 1
pop ebp
ret

Function at 0x64b9f0
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
mov eax, 4
call fcn.006d13f0
mov eax, dword [ebp + 8]
xor ecx, ecx
mov dword [ebp - 4], ecx
push ebx
push esi
test eax, eax
je 0x64ba16
test byte [eax + 0x5c], 2
mov ebx, str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz._
jne 0x64ba1b
mov ebx, 0x74ce08
mov esi, dword [ebp + 0x14]
test esi, esi
jle 0x64baf0
mov edx, dword [ebp + 0xc]
push edi
mov edi, dword [ebp + 0x10]
inc edi
nop
movzx eax, byte [edi - 1]
cmp esi, 3
jl 0x64ba7e
movzx ecx, byte [edi]
shl eax, 8
or eax, ecx
movzx ecx, byte [edi + 1]
shl eax, 8
or eax, ecx
mov ecx, eax
shr ecx, 0x12
movzx ecx, byte [ecx + ebx]
mov byte [edx], cl
mov ecx, eax
shr ecx, 0xc
and ecx, 0x3f
movzx ecx, byte [ecx + ebx]
mov byte [edx + 1], cl
mov ecx, eax
shr ecx, 6
and ecx, 0x3f
and eax, 0x3f
movzx ecx, byte [ecx + ebx]
mov byte [edx + 2], cl
mov cl, byte [eax + ebx]
lea eax, [edx + 3]
jmp 0x64bac8
shl eax, 0x10
cmp esi, 2
jne 0x64ba8e
movzx ecx, byte [edi]
shl ecx, 8
or eax, ecx
mov ecx, eax
shr ecx, 0x12
movzx ecx, byte [ecx + ebx]
mov byte [edx], cl
mov ecx, eax
shr ecx, 0xc
inc edx
and ecx, 0x3f
mov dword [ebp + 0xc], edx
movzx ecx, byte [ecx + ebx]
mov byte [edx], cl
cmp esi, 1
jne 0x64bab4
mov al, 0x3d
jmp 0x64babd
shr eax, 6
and eax, 0x3f
mov al, byte [eax + ebx]
mov byte [edx + 1], al
mov cl, 0x3d
mov eax, dword [ebp + 0xc]
add eax, 2
mov byte [eax], cl
lea edx, [eax + 1]
mov ecx, dword [ebp - 4]
sub esi, 3
add ecx, 4
add edi, 3
mov dword [ebp - 4], ecx
test esi, esi
jg 0x64ba30
pop edi
pop esi
mov byte [edx], 0
mov eax, ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0xc]
pop esi
pop ebx
mov byte [eax], cl
mov eax, ecx
mov esp, ebp
pop ebp
ret
Function at 0x6517b0
Capabilities:
Connect socket
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
mov eax, 4
call fcn.006d13f0
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 4], 1
cmp edi, 0xffffffff
jne 0x6517ef
push 0x52
push str.....crypto_bio_b_sock2.c
push 0x87
push 0x8a
push 0x20
call fcn.005e34c0
add esp, 0x14
xor eax, eax
pop edi
mov esp, ebp
pop ebp
ret
push ebx
mov ebx, dword [ebp + 0x10]
mov eax, ebx
shr eax, 3
push esi
and eax, 1
push eax
push edi
call fcn.0061e180
add esp, 8
test eax, eax
je 0x65185b
mov esi, dword [sym.imp.WS2_32.dll_setsockopt]
test bl, 4
je 0x651864
push 4
lea eax, [ebp - 4]
push eax
push 8
push 0xffff
push edi
call esi
test eax, eax
je 0x651864
push 0x5c
push str.....crypto_bio_b_sock2.c
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push 0xe
push 2
call fcn.005e34c0
push 0x5d
push str.....crypto_bio_b_sock2.c
push 0x89
push 0x8a
push 0x20
call fcn.005e34c0
add esp, 0x28
pop esi
pop ebx
xor eax, eax
pop edi
mov esp, ebp
pop ebp
ret
test bl, 0x10
je 0x65189f
push 4
lea eax, [ebp - 4]
push eax
push 1
push 6
push edi
call esi
test eax, eax
je 0x65189f
push 0x65
push str.....crypto_bio_b_sock2.c
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push 0xe
push 2
call fcn.005e34c0
push 0x66
push str.....crypto_bio_b_sock2.c
push 0x8a
jmp 0x65184c
mov esi, dword [ebp + 0xc]
push esi
call fcn.0061e350
add esp, 4
push eax
push esi
call fcn.0060ee10
add esp, 4
push eax
push edi
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x6518f4
push eax
call fcn.006516c0
add esp, 4
test eax, eax
jne 0x65185b
push 0x6e
push str.....crypto_bio_b_sock2.c
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
push eax
push 2
push 2
call fcn.005e34c0
push 0x6f
push str.....crypto_bio_b_sock2.c
push 0x67
jmp 0x65184c
pop esi
pop ebx
mov eax, 1
pop edi
mov esp, ebp
pop ebp
ret
Function at 0x655f40
Capabilities:
Encrypt data using curve25519

Disassembly:
push ebp
mov ebp, esp
mov eax, 0xe4
call fcn.006d13f0
mov eax, dword [0x7c0ab4]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
lea ecx, [ebp - 0x44]
push esi
mov esi, dword [ebp + 8]
push ecx
push 0x20
push eax
call fcn.00644870
mov al, byte [ebp - 0x25]
and byte [ebp - 0x44], 0xf8
and al, 0x3f
or al, 0x40
mov byte [ebp - 0x25], al
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0xe4]
push eax
call fcn.00659fa0
lea eax, [ebp - 0xe4]
push eax
push esi
call fcn.00659f30
lea eax, [ebp - 0x44]
push 0x40
push eax
call fcn.004019e0
mov ecx, dword [ebp - 4]
add esp, 0x24
xor ecx, ebp
pop esi
call fcn.006d0856
mov esp, ebp
pop ebp
ret

Function at 0x655fc0
Capabilities:
Encrypt data using curve25519

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x240
call fcn.006d13f0
mov eax, dword [0x7c0ab4]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, dword [ebp + 0x18]
mov dword [ebp - 0x240], eax
lea eax, [ebp - 0x19c]
push edi
mov edi, dword [ebp + 0x14]
push eax
call fcn.006450d0
push 0x20
lea eax, [ebp - 0x19c]
push esi
push eax
call fcn.006451a0
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.006449a0
mov al, byte [ebp - 0x25]
and byte [ebp - 0x44], 0xf8
and al, 0x3f
or al, 0x40
mov byte [ebp - 0x25], al
lea eax, [ebp - 0x19c]
push eax
call fcn.006450d0
push 0x20
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x19c]
push eax
call fcn.006451a0
mov esi, dword [ebp + 0x10]
lea eax, [ebp - 0x19c]
push esi
push ebx
push eax
call fcn.006451a0
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0x84]
push eax
call fcn.006449a0
lea eax, [ebp - 0x84]
push eax
call fcn.0065e350
add esp, 0x40
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x23c]
push eax
call fcn.00659fa0
lea eax, [ebp - 0x23c]
push eax
push dword [ebp - 0x240]
call fcn.00659f30
lea eax, [ebp - 0x19c]
push eax
call fcn.006450d0
push 0x20
push dword [ebp - 0x240]
lea eax, [ebp - 0x19c]
push eax
call fcn.006451a0
push 0x20
lea eax, [ebp - 0x19c]
push edi
push eax
call fcn.006451a0
push esi
lea eax, [ebp - 0x19c]
push ebx
push eax
call fcn.006451a0
lea eax, [ebp - 0x19c]
push eax
lea eax, [ebp - 0xc4]
push eax
call fcn.006449a0
add esp, 0x40
lea eax, [ebp - 0xc4]
push eax
call fcn.0065e350
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0xc4]
push eax
mov eax, dword [ebp - 0x240]
add eax, 0x20
push eax
call fcn.0065a670
lea eax, [ebp - 0x19c]
push 0xd8
push eax
call fcn.004019e0
lea eax, [ebp - 0x84]
push 0x40
push eax
call fcn.004019e0
lea eax, [ebp - 0x44]
push 0x40
push eax
call fcn.004019e0
mov ecx, dword [ebp - 4]
add esp, 0x2c
xor ecx, ebp
mov eax, 1
pop edi
pop esi
pop ebx
call fcn.006d0856
mov esp, ebp
pop ebp
ret