joyce8/EMBER2024-capa huggingface dataset:
Function at 0x493840
Capabilities:
Resolve dns

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x2c
call fcn.005dfa60
mov eax, dword [0x6a704c]
xor eax, esp
mov dword [esp + 0x28], eax
mov eax, dword [ebp + 0x14]
push ebx
push esi
mov esi, dword [ebp + 0xc]
mov ebx, ecx
mov dword [esp + 8], eax
mov eax, esi
mov dword [esp + 0xc], edx
push edi
sub eax, 0
je 0x4938b2
sub eax, 2
je 0x4938b2
sub eax, 0x15
je 0x4938b2
mov edx, 0x8f
push 0x297
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_addr.c
push 0x83
lea ecx, [edx - 0x6f]
call fcn.00489de0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.005df097
mov esp, ebp
pop ebp
ret
call fcn.00493a00
cmp eax, 1
jne 0x49389e
xor eax, eax
mov dword [esp + 0x18], esi
xorps xmm0, xmm0
mov dword [esp + 0x14], eax
xor edi, edi
movlpd qword [esp + 0x24], xmm0
movlpd qword [esp + 0x2c], xmm0
mov dword [esp + 0x1c], 1
mov dword [esp + 0x20], eax
test ebx, ebx
je 0x4938f4
test esi, esi
jne 0x4938f4
or eax, 0x400
mov dword [esp + 0x14], eax
push dword [esp + 0xc]
lea eax, [esp + 0x18]
push eax
push dword [esp + 0x18]
push ebx
call dword [sym.imp.WS2_32.dll_getaddrinfo]
mov esi, eax
test esi, esi
je 0x49394c
nop
cmp esi, 8
je 0x4939c6
mov eax, dword [esp + 0x14]
test eax, 0x400
je 0x493963
push dword [esp + 0xc]
and eax, 0xfffffbff
mov edi, esi
or eax, 4
mov dword [esp + 0x18], eax
lea eax, [esp + 0x18]
push eax
push dword [esp + 0x18]
push ebx
call dword [sym.imp.WS2_32.dll_getaddrinfo]
mov esi, eax
test esi, esi
jne 0x493910
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov edx, 0x8f
push 0x2da
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_addr.c
push 2
lea ecx, [edx - 0x6f]
call fcn.00489de0
add esp, 0xc
test edi, edi
cmovne esi, edi
push 0
push 0x400
push 0x6af640
push 0x400
push esi
push 0
push 0x12ff
call dword [sym.imp.KERNEL32.dll_FormatMessageW]
push 0x6af640
push 1
call fcn.0048a850
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x28]
xor ecx, esp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov edx, 0x8f
push 0x2cb
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_addr.c
push 0x41
lea ecx, [edx - 0x6f]
call fcn.00489de0
mov ecx, dword [esp + 0x40]
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.005df097
mov esp, ebp
pop ebp
ret
Function at 0x493a00
Capabilities:
Initialize winsock library

Disassembly:
cmp dword [0x6aee40], 0
jne 0x493a79
push 0x190
push 0
push 0x6aee48
mov dword [0x6aee40], 1
call fcn.005e1a80
add esp, 0xc
push 0x6aee48
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x493a79
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, 9
push 0x87
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_sock.c
push eax
lea ecx, [edx - 7]
call fcn.00489de0
mov edx, 0x70
push 0x88
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_sock.c
push 0x7a
lea ecx, [edx - 0x50]
call fcn.00489de0
add esp, 0x18
or eax, 0xffffffff
ret
mov eax, 1
ret

Function at 0x495ab0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x10
call fcn.005dfa60
push ebx
push esi
mov esi, edx
mov ebx, ecx
push edi
mov dword [ebp - 0x10], ebx
mov eax, dword [esi + 4]
cmp eax, 0x1e
ja 0x495bee
test dword [eax*4 + 0x645710], 0x2956
je 0x495bee
lea eax, [ebx + 8]
mov dword [ebx + 4], 0xc
push esi
push eax
mov dword [ebp - 0xc], eax
call fcn.00480370
mov edi, eax
add esp, 8
mov dword [ebx], edi
cmp edi, 0xffffffff
je 0x495c02
mov ebx, dword [ebx + 8]
mov ecx, ebx
test edi, edi
jle 0x495b4f
movzx eax, byte [ecx]
cmp eax, 0x80
jae 0x495b2b
test byte [eax*2 + 0x645178], 8
je 0x495b2b
dec edi
inc ecx
test edi, edi
jg 0x495b11
test edi, edi
jle 0x495b4f
lea eax, [ecx - 1]
add eax, edi
movzx edx, byte [eax]
cmp edx, 0x80
jae 0x495b4f
test byte [edx*2 + 0x645178], 8
je 0x495b4f
dec edi
dec eax
test edi, edi
jg 0x495b34
xor esi, esi
mov eax, ebx
test edi, edi
jle 0x495bdb
nop dword [eax + eax]
mov dl, byte [ecx]
movzx eax, dl
mov byte [ebp - 1], dl
test eax, 0xffffff80
jne 0x495bcd
cmp eax, 0x80
jae 0x495bb4
test byte [eax*2 + 0x645178], 8
je 0x495b9c
mov byte [ebx], 0x20
movzx eax, byte [ecx + 1]
inc ecx
inc esi
cmp eax, 0x80
jae 0x495bd1
test byte [eax*2 + 0x645178], 8
jne 0x495b83
jmp 0x495bd1
cmp eax, 0x80
jae 0x495bb4
test byte [eax*2 + 0x645178], 2
mov dword [ebp - 8], 1
jne 0x495bbb
mov dword [ebp - 8], 0
mov al, dl
xor al, 0x20
cmp dword [ebp - 8], 0
movzx edx, al
movzx eax, byte [ebp - 1]
cmove edx, eax
inc ecx
mov byte [ebx], dl
inc esi
inc ebx
cmp esi, edi
jl 0x495b60
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
sub ebx, eax
mov eax, dword [ebp - 0x10]
pop edi
pop esi
mov dword [eax], ebx
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [ebx + 4], eax
push dword [esi]
mov edx, dword [esi + 8]
call fcn.0047ed20
add esp, 4
test eax, eax
jne 0x495c0b
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
and dword [ebx + 0xc], 0x80
mov eax, dword [esi + 0xc]
pop edi
and eax, 0xffffff7f
or dword [ebx + 0xc], eax
mov eax, 1
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x49c620
Capabilities:
Hash data using sha224

Disassembly:
mov dword [ecx], 0xc1059ed8
mov eax, 1
mov dword [ecx + 4], 0xcbbb9d5d
mov dword [ecx + 8], 0x367cd507
mov dword [ecx + 0xc], 0x629a292a
mov dword [ecx + 0x10], 0x3070dd17
mov dword [ecx + 0x14], 0x9159015a
mov dword [ecx + 0x18], 0xf70e5939
mov dword [ecx + 0x1c], 0x152fecd8
mov dword [ecx + 0x20], 0xffc00b31
mov dword [ecx + 0x24], 0x67332667
mov dword [ecx + 0x28], 0x68581511
mov dword [ecx + 0x2c], 0x8eb44a87
mov dword [ecx + 0x30], 0x64f98fa7
mov dword [ecx + 0x34], 0xdb0c2e0d
mov dword [ecx + 0x38], 0xbefa4fa4
mov dword [ecx + 0x3c], 0x47b5481d
mov dword [ecx + 0x40], 0
mov dword [ecx + 0x44], 0
mov dword [ecx + 0x48], 0
mov dword [ecx + 0x4c], 0
mov dword [ecx + 0xd0], 0
mov dword [ecx + 0xd4], 0x30
ret

Function at 0x49c6d0
Capabilities:
Hash data using sha256

Disassembly:
mov dword [ecx], 0xf3bcc908
mov eax, 1
mov dword [ecx + 4], 0x6a09e667
mov dword [ecx + 8], 0x84caa73b
mov dword [ecx + 0xc], 0xbb67ae85
mov dword [ecx + 0x10], 0xfe94f82b
mov dword [ecx + 0x14], 0x3c6ef372
mov dword [ecx + 0x18], 0x5f1d36f1
mov dword [ecx + 0x1c], 0xa54ff53a
mov dword [ecx + 0x20], 0xade682d1
mov dword [ecx + 0x24], 0x510e527f
mov dword [ecx + 0x28], 0x2b3e6c1f
mov dword [ecx + 0x2c], 0x9b05688c
mov dword [ecx + 0x30], 0xfb41bd6b
mov dword [ecx + 0x34], 0x1f83d9ab
mov dword [ecx + 0x38], 0x137e2179
mov dword [ecx + 0x3c], 0x5be0cd19
mov dword [ecx + 0x40], 0
mov dword [ecx + 0x44], 0
mov dword [ecx + 0x48], 0
mov dword [ecx + 0x4c], 0
mov dword [ecx + 0xd0], 0
mov dword [ecx + 0xd4], 0x40
ret

Function at 0x4b3a20
Capabilities:
Encode data using add xor sub operations
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
mov ebx, ecx
mov cl, byte [ebp + 0xc]
push esi
mov esi, dword [ebp + 8]
add ebx, esi
movzx eax, cl
and eax, 1
push edi
lea edi, [esi + edx]
test esi, esi
je 0x4b3a5e
nop dword [eax]
movzx edx, byte [edi - 1]
lea edi, [edi - 1]
movzx ecx, cl
lea ebx, [ebx - 1]
xor edx, ecx
mov cl, byte [ebp + 0xc]
add eax, edx
mov byte [ebx], al
shr eax, 8
sub esi, 1
jne 0x4b3a40
pop edi
pop esi
pop ebx
pop ebp
ret
Function at 0x4b7f40
Capabilities:
Generate random numbers via winapi

Disassembly:
push ebx
push esi
push edi
mov esi, ecx
call fcn.00487d70
mov edi, eax
test edi, edi
je 0x4b800a
mov edx, dword [esi + 0x14]
sub edx, dword [esi + 4]
cmp edi, edx
jbe 0x4b7f7f
push 0x30d
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_rand_rand_lib.c
push 0x7d
mov edx, 0x71
lea ecx, [edx - 0x4d]
call fcn.00489de0
add esp, 0xc
jmp 0x4b800a
cmp dword [esi], 0
jne 0x4b7f92
push 0x312
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_rand_rand_lib.c
push 0x44
jmp 0x4b7f6a
mov edx, edi
mov ecx, esi
call fcn.00487c20
test eax, eax
je 0x4b800a
mov eax, dword [esi + 4]
add eax, dword [esi]
je 0x4b800a
push 2
push edi
push eax
xor ebx, ebx
push ebx
call dword [sym.imp.bcrypt.dll_BCryptGenRandom]
mov ecx, dword [esi + 4]
test eax, eax
mov eax, dword [esi + 0x18]
cmove ebx, edi
sub eax, ecx
cmp ebx, eax
jbe 0x4b7fe2
mov edx, 0x72
push 0x331
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_rand_rand_lib.c
push 0x7d
lea ecx, [edx - 0x4e]
call fcn.00489de0
add esp, 0xc
jmp 0x4b7ff6
test ebx, ebx
je 0x4b7ff6
lea eax, [ecx + ebx]
mov dword [esi + 4], eax
lea eax, [ebx*8]
add dword [esi + 0x1c], eax
mov eax, dword [esi + 0x1c]
cmp eax, dword [esi + 0x20]
jb 0x4b801a
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 0x10]
jb 0x4b801a
test eax, eax
jne 0x4b801e
mov ecx, dword [esi + 0x1c]
cmp ecx, dword [esi + 0x20]
jb 0x4b801a
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x10]
jae 0x4b801c
xor ecx, ecx
mov eax, ecx
pop edi
pop esi
pop ebx
ret

Function at 0x4bb6f0
Capabilities:
Encode data using add xor sub operations
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 4
call fcn.005dfa60
push edi
mov edi, dword [ebp + 8]
xor eax, eax
mov dword [ebp - 4], eax
test edi, edi
je 0x4bb770
mov cl, byte [edi]
test cl, cl
je 0x4bb770
push ebx
push esi
mov ebx, 0x100
nop word [eax + eax]
movd xmm1, dword [ebp - 4]
lea edi, [edi + 1]
movsx esi, cl
mov edx, 0x20
or esi, ebx
add ebx, 0x100
mov ecx, esi
shr ecx, 2
xor ecx, esi
imul esi, esi
and ecx, 0xf
sub edx, ecx
shl eax, cl
mov cl, byte [edi]
movd xmm0, edx
psrlq xmm1, xmm0
movd edx, xmm1
or eax, edx
xor eax, esi
mov dword [ebp - 4], eax
test cl, cl
jne 0x4bb720
mov ecx, eax
pop esi
shr ecx, 0x10
pop ebx
xor eax, ecx
pop edi
mov esp, ebp
pop ebp
ret
xor eax, eax
pop edi
mov esp, ebp
pop ebp
ret
Function at 0x4c3690
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push ecx
push esi
push edi
push 0
push 0x100
xor ecx, ecx
call fcn.004929a0
add esp, 8
test eax, eax
je 0x4c3823
push 0
push 0
xor ecx, ecx
call fcn.004929a0
add esp, 8
test eax, eax
je 0x4c3823
call dword [sym.imp.KERNEL32.dll_GetLastError]
push dword [0x6a82c0]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
push esi
mov edi, eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
test edi, edi
jne 0x4c372b
push 0xc
mov dword [0x6a7ea4], edi
call fcn.005ee808
mov edi, eax
add esp, 4
test edi, edi
je 0x4c3823
xorps xmm0, xmm0
movq qword [edi], xmm0
push edi
mov dword [edi + 8], 0
push dword [0x6a82c0]
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
jne 0x4c372b
push edi
call fcn.005e4cbe
add esp, 4
xor eax, eax
pop edi
pop esi
pop ecx
ret
push 0xc
mov dword [edi], 1
mov dword [0x6a7ea4], 0
call fcn.005ee808
mov esi, eax
add esp, 4
test esi, esi
je 0x4c3807
xorps xmm0, xmm0
xor edx, edx
movq qword [esi], xmm0
xor ecx, ecx
mov dword [esi + 8], 0
call fcn.00479ad0
mov dword [esi], eax
test eax, eax
jne 0x4c3795
push 0x154
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_async_async.c
push 0x41
lea edx, [eax + 0x65]
lea ecx, [eax + 0x33]
call fcn.00489de0
add esp, 0xc
push esi
call fcn.005e4cbe
add esp, 4
xor eax, eax
pop edi
pop esi
pop ecx
ret
push esi
mov dword [esi + 8], 0
mov dword [esi + 4], 0
push dword [0x6af0ec]
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
jne 0x4c37fe
push 0x16d
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_async_async.c
push 0x65
lea edx, [eax + 0x65]
lea ecx, [eax + 0x33]
call fcn.00489de0
add esp, 0xc
mov ecx, esi
call fcn.004c3640
mov edi, dword [esi]
test edi, edi
je 0x4c37ef
push dword [edi + 4]
call fcn.005e4cbe
add esp, 4
push edi
call fcn.005e4cbe
add esp, 4
push esi
call fcn.005e4cbe
add esp, 4
xor eax, eax
pop edi
pop esi
pop ecx
ret
mov eax, 1
pop edi
pop esi
pop ecx
ret
mov edx, 0x65
push 0x14e
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_async_async.c
push 0x41
lea ecx, [edx - 0x32]
call fcn.00489de0
add esp, 0xc
pop edi
xor eax, eax
pop esi
pop ecx
ret
Function at 0x4c3830
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
push esi
push edi
call ebx
push dword [0x6af0ec]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
push esi
mov edi, eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
test edi, edi
je 0x4c388b
mov ecx, edi
call fcn.004c3640
mov esi, dword [edi]
test esi, esi
je 0x4c3874
push dword [esi + 4]
call fcn.005e4cbe
push esi
call fcn.005e4cbe
add esp, 8
push edi
call fcn.005e4cbe
add esp, 4
push 0
push dword [0x6af0ec]
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
call ebx
push dword [0x6af0e8]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
push esi
mov edi, eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
test edi, edi
je 0x4c38bf
cmp dword [edi], 0
je 0x4c38bf
cmp dword [edi + 4], 0
je 0x4c38bf
call dword [sym.imp.KERNEL32.dll_ConvertFiberToThread]
mov dword [edi], 0
call ebx
push dword [0x6af0e8]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
push esi
mov edi, eax
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 0
push dword [0x6af0e8]
call dword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
je 0x4c38f3
push edi
call fcn.005e4cbe
add esp, 4
pop edi
pop esi
pop ebx
ret
Function at 0x4c9ba0
Capabilities:
Connect socket
Set socket configuration

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x10
call fcn.005dfa60
mov eax, dword [0x6a704c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, ecx
mov dword [ebp - 0x10], edx
mov dword [ebp - 8], 1
cmp esi, 0xffffffff
jne 0x4c9bf6
push 0x52
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_sock2.c
push 0x87
mov edx, 0x8a
lea ecx, [esi + 0x21]
call fcn.00489de0
add esp, 0xc
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
push ebx
mov ebx, dword [ebp + 8]
mov eax, ebx
shr eax, 3
and eax, 1
push edi
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0xc]
push eax
push 0x8004667e
push esi
call dword [sym.imp.WS2_32.dll_ioctlsocket]
test eax, eax
jns 0x4c9c4e
push 0xc3
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_sock.c
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, 5
push eax
lea ecx, [edx - 3]
call fcn.00489de0
add esp, 0xc
pop edi
pop ebx
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
jne case.0x4c9d25.4
mov edi, dword [sym.imp.WS2_32.dll_setsockopt]
test bl, 4
je 0x4c9c9b
push 4
lea eax, [ebp - 8]
push eax
push 8
push 0xffff
push esi
call edi
test eax, eax
je 0x4c9c9b
push 0x5c
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_sock2.c
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, 0xe
push eax
lea ecx, [edx - 0xc]
call fcn.00489de0
push 0x5d
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_sock2.c
push 0x89
jmp 0x4c9d6a
test bl, 0x10
je 0x4c9cdd
push 4
lea eax, [ebp - 8]
push eax
push 1
push 6
push esi
call edi
test eax, eax
je 0x4c9cdd
push 0x65
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_sock2.c
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, 0xe
push eax
lea ecx, [edx - 0xc]
call fcn.00489de0
push 0x66
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_sock2.c
push 0x8a
jmp 0x4c9d6a
mov edx, dword [ebp - 0x10]
mov edi, 0x10
mov eax, 0x1c
cmp word [edx], 2
cmove eax, edi
push eax
push edx
push esi
call dword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x4c9d8d
mov esi, dword [sym.imp.WS2_32.dll_WSAGetLastError]
call esi
cmp eax, 0x7e
jg 0x4c9d2c
je case.0x4c9d25.4
sub eax, 4
cmp eax, 0x6c
ja case.0x4c9d25.5
movzx eax, byte [eax + 0x4c9dac]
jmp dword [eax*4 + 0x4c9da4]
sub eax, 0x86
je case.0x4c9d25.4
sub eax, 6
je case.0x4c9d25.4
sub eax, 0x26a7
je case.0x4c9d25.4
push 0x6e
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_sock2.c
call esi
mov edx, 2
push eax
mov ecx, edx
call fcn.00489de0
push 0x6f
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcrypto_bio_b_sock2.c
push 0x67
mov edx, 0x8a
lea ecx, [edx - 0x6a]
call fcn.00489de0
add esp, 0x18
xor eax, eax
pop edi
pop ebx
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
pop ebx
xor ecx, ebp
pop esi
call fcn.005df097
mov esp, ebp
pop ebp
ret
Function at 0x4d07f0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 8
call fcn.005dfa60
cmp dword [ecx], 0x72
push ebx
push esi
mov dword [ebp - 8], edx
jne 0x4d09a2
mov esi, dword [ebp + 0x18]
mov ecx, 0x647708
mov eax, dword [ebp + 8]
mov ebx, eax
push esi
push dword [ebp + 0x14]
and eax, 1
shr ebx, 1
push dword [ebp + 0x10]
add eax, ebx
push dword [ebp + 0xc]
mov dword [ebp - 4], eax
push eax
call fcn.004d0550
add esp, 0x14
test eax, eax
je 0x4d09bd
push edi
test esi, esi
je 0x4d097d
push esi
mov dword [0x6a7ea4], 0
call fcn.005ee808
mov edi, eax
add esp, 4
test edi, edi
je 0x4d097d
mov edx, dword [ebp - 8]
mov ecx, 0x6375f4
push esi
push edi
push dword [ebp + 0x10]
lea edx, [ebx + edx]
push dword [ebp + 0xc]
push dword [ebp - 4]
call fcn.004d0550
add esp, 0x14
test eax, eax
jne 0x4d089e
push esi
push edi
call fcn.00401320
push edi
call fcn.005e4cbe
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor ebx, ebx
test esi, esi
je 0x4d0961
mov edx, dword [ebp + 0x14]
cmp esi, 0x40
jb 0x4d093a
lea eax, [esi - 1]
lea ecx, [edx - 1]
add eax, edi
add ecx, esi
cmp edx, eax
ja 0x4d08c6
cmp ecx, edi
jae 0x4d093a
mov eax, esi
lea ecx, [edi + 0x30]
and eax, 0xffffffc0
mov esi, edi
sub esi, edx
mov dword [ebp - 4], eax
mov dword [ebp - 8], esi
lea eax, [edx + 0x10]
mov esi, dword [ebp + 0x18]
mov edx, dword [ebp - 8]
movups xmm0, xmmword [eax - 0x10]
add ebx, 0x40
lea ecx, [ecx + 0x40]
lea eax, [eax + 0x40]
movups xmm1, xmmword [ecx - 0x70]
pxor xmm1, xmm0
movups xmmword [eax - 0x50], xmm1
movups xmm0, xmmword [eax - 0x40]
movups xmm1, xmmword [edx + eax - 0x40]
pxor xmm1, xmm0
movups xmmword [eax - 0x40], xmm1
movups xmm0, xmmword [eax - 0x30]
movups xmm1, xmmword [ecx - 0x50]
pxor xmm1, xmm0
movups xmm0, xmmword [ecx - 0x40]
movups xmmword [eax - 0x30], xmm1
movups xmm1, xmmword [eax - 0x20]
pxor xmm1, xmm0
movups xmmword [eax - 0x20], xmm1
cmp ebx, dword [ebp - 4]
jb 0x4d08e1
mov edx, dword [ebp + 0x14]
mov dword [ebp - 8], ebx
cmp ebx, esi
jae 0x4d0961
mov eax, edi
lea ecx, [ebx + edx]
sub eax, edx
mov edx, esi
mov dword [ebp - 8], eax
sub edx, ebx
mov esi, eax
nop word [eax + eax]
mov al, byte [ecx + esi]
lea ecx, [ecx + 1]
xor byte [ecx - 1], al
sub edx, 1
jne 0x4d0950
mov esi, dword [ebp + 0x18]
push esi
push edi
call fcn.00401320
push edi
call fcn.005e4cbe
add esp, 0xc
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x6f
push 0x105
push str.C:mediagetdependencies_installeropenssl1_1_win_build_1.1.1qcryptokdf_tls1_prf.c
push 0x41
lea ecx, [edx - 0x3b]
call fcn.00489de0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004d0550
add esp, 0x14
test eax, eax
jne 0x4d09c5
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x4ee080
Capabilities:
Encode data using base64

Disassembly:
push ebp
mov ebp, esp
mov eax, 4
call fcn.005dfa60
mov eax, ecx
xor ecx, ecx
mov dword [ebp - 4], ecx
push ebx
push esi
test eax, eax
je 0x4ee0a5
test byte [eax + 0x5c], 2
mov ebx, str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz._
jne 0x4ee0aa
mov ebx, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
mov esi, dword [ebp + 0xc]
test esi, esi
jle 0x4ee17b
push edi
mov edi, dword [ebp + 8]
inc edi
nop word [eax + eax]
movzx eax, byte [edi - 1]
cmp esi, 3
jb 0x4ee10d
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
add edx, 2
and ecx, 0x3f
and eax, 0x3f
movzx ecx, byte [ecx + ebx]
mov byte [edx], cl
mov cl, byte [eax + ebx]
jmp 0x4ee150
shl eax, 0x10
cmp esi, 2
jne 0x4ee11d
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
and ecx, 0x3f
movzx ecx, byte [ecx + ebx]
mov byte [edx + 1], cl
add edx, 2
cmp esi, 1
jne 0x4ee143
mov al, 0x3d
jmp 0x4ee14c
shr eax, 6
and eax, 0x3f
mov al, byte [eax + ebx]
mov byte [edx], al
mov cl, 0x3d
lea eax, [edx + 1]
sub esi, 3
mov byte [eax], cl
lea edx, [eax + 1]
mov ecx, dword [ebp - 4]
add edi, 3
add ecx, 4
mov dword [ebp - 4], ecx
test esi, esi
jg 0x4ee0c0
pop edi
pop esi
mov byte [edx], 0
mov eax, ecx
pop ebx
mov esp, ebp
pop ebp
ret
pop esi
mov byte [edx], cl
mov eax, ecx
pop ebx
mov esp, ebp
pop ebp
ret

Function at 0x4eea50
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 4
call fcn.005dfa60
mov dword [ebp - 4], edx
push ebx
mov ebx, ecx
test edx, edx
je 0x4eeac2
push esi
mov esi, dword [ebp + 8]
test esi, esi
je 0x4eeac1
mov eax, dword [ebx + 0x14]
cmp esi, eax
push edi
mov edi, eax
cmovb edi, esi
test edi, edi
je 0x4eea96
lea ecx, [ebx + 0x18]
mov al, byte [edx]
lea edx, [edx + 1]
xor byte [ecx], al
lea ecx, [ecx + 1]
sub edi, 1
jne 0x4eea81
mov eax, dword [ebx + 0x14]
mov edx, dword [ebp - 4]
pop edi
cmp esi, eax
jbe 0x4eeac1
sub esi, eax
cmp esi, 0x10
jbe 0x4eeaa9
mov esi, 0x10
jmp 0x4eeaad
test esi, esi
je 0x4eeac1
xor ecx, ecx
nop
mov eax, dword [ebx + 0x14]
add eax, ecx
mov al, byte [eax + edx]
xor byte [ebx + ecx + 0x38], al
inc ecx
cmp ecx, esi
jb 0x4eeab0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x4eead0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x10
call fcn.005dfa60
push ebx
push esi
mov esi, dword [ebp + 0xc]
mov ebx, edx
mov dword [ebp - 0x10], ecx
xor ecx, ecx
mov dword [ebp - 4], 0x10
test esi, esi
jle 0x4eeb7f
push edi
mov edi, dword [ebp + 8]
cmp esi, 0x40
jb 0x4eeb67
mov eax, esi
lea edx, [edi + 0x30]
and eax, 0xffffffc0
sub edi, ebx
mov dword [ebp - 0xc], eax
lea eax, [ebx + 0x10]
movups xmm0, xmmword [eax - 0x10]
add ecx, 0x40
lea edx, [edx + 0x40]
lea eax, [eax + 0x40]
movups xmm1, xmmword [edx - 0x70]
pxor xmm1, xmm0
movups xmmword [eax - 0x50], xmm1
movups xmm0, xmmword [eax - 0x40]
movups xmm1, xmmword [edi + eax - 0x40]
pxor xmm1, xmm0
movups xmmword [eax - 0x40], xmm1
movups xmm0, xmmword [eax - 0x30]
movups xmm1, xmmword [edx - 0x50]
pxor xmm1, xmm0
movups xmm0, xmmword [edx - 0x40]
movups xmmword [eax - 0x30], xmm1
movups xmm1, xmmword [eax - 0x20]
pxor xmm1, xmm0
movups xmmword [eax - 0x20], xmm1
cmp ecx, dword [ebp - 0xc]
jl 0x4eeb11
mov edi, dword [ebp + 8]
cmp ecx, esi
jge 0x4eeb7e
mov edx, esi
lea eax, [ecx + ebx]
sub edi, ebx
sub edx, ecx
mov cl, byte [eax + edi]
lea eax, [eax + 1]
xor byte [eax - 1], cl
sub edx, 1
jne 0x4eeb70
pop edi
mov ecx, dword [ebp - 0x10]
lea eax, [ebp - 4]
push esi
push ebx
mov edx, ebx
mov ecx, dword [ecx + 8]
push eax
cmp dword [ecx + 8], 0
je 0x4eeb9a
call fcn.004bc1c0
jmp 0x4eeb9f
call fcn.004bc590
add esp, 0xc
test eax, eax
je 0x4eebb6
cmp dword [ebp - 4], esi
jne 0x4eebb6
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret