joyce8/EMBER2024-capa huggingface dataset:
Function at 0xc9f860
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ecx + 8]
mov edx, dword [ebp + 8]
push esi
mov dword [ebp - 4], edx
mov esi, dword [eax + 0x58]
imul eax, ecx, 0x100011b
imul edx, edx, 0x1000193
mov dword [ebp - 8], ecx
lea ecx, [esi + 0x70]
xor edx, eax
lea eax, [ebp - 8]
push edx
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00b58580
mov eax, dword [eax + 4]
test eax, eax
je 0xc9f8ae
cmp eax, dword [esi + 0x74]
je 0xc9f8ae
mov eax, dword [eax + 0x10]
test eax, eax
je 0xc9f8ae
cmp byte [eax + 0x27], 0
je 0xc9f8b0
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 4

Function at 0xc9f8c0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
push esi
lea esi, [ecx + 0x70]
mov dword [ebp - 4], eax
imul ecx, eax, 0x1000193
imul eax, edx, 0x100011b
mov dword [ebp - 8], edx
xor ecx, eax
lea eax, [ebp - 8]
push ecx
push eax
lea eax, [ebp - 0x10]
mov ecx, esi
push eax
call fcn.00b58580
mov eax, dword [eax + 4]
test eax, eax
je 0xc9f90a
cmp eax, dword [esi + 4]
je 0xc9f90a
mov eax, dword [eax + 0x10]
pop esi
mov esp, ebp
pop ebp
ret 8
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 8

Function at 0xc9fb40
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov edx, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, dword [ebp + 0x14]
push edi
mov dword [ebp - 0xc], esi
mov edi, ecx
add esi, edx
mov dword [ebp - 0x14], ebx
xor ecx, ecx
mov dword [ebp - 0x10], edx
cmp edx, esi
jae 0xc9fb72
movsx eax, byte [edx]
lea ecx, [ecx + ecx*4]
inc edx
add ecx, eax
cmp edx, esi
jb 0xc9fb65
imul eax, ebx, 0x1000193
xor eax, ecx
mov ecx, edi
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 8]
push eax
call fcn.00c88a10
mov edx, dword [eax + 4]
test edx, edx
je 0xc9fb96
mov esi, dword [edi + 4]
jmp 0xc9fb9b
mov edx, dword [edi + 4]
mov esi, edx
mov edi, dword [0xf36fd0]
lea eax, [edx + 0x14]
xor ecx, ecx
cmp edx, esi
mov esi, dword [0xf36fd4]
cmovne ecx, eax
test ecx, ecx
jne 0xc9fbbb
mov edx, edi
mov ecx, esi
jmp 0xc9fbc0
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov eax, dword [ebp + 8]
cmp edx, dword [ebp + 0x18]
je 0xc9fbd6
mov dword [eax], edi
pop edi
mov dword [eax + 4], esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
pop edi
pop esi
mov dword [eax], edx
mov dword [eax + 4], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0x14

Function at 0xca0050
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ecx + 8]
mov edx, dword [ebp + 8]
push esi
mov dword [ebp - 4], edx
mov esi, dword [eax + 0x58]
imul eax, ecx, 0x100011b
imul edx, edx, 0x1000193
mov dword [ebp - 8], ecx
lea ecx, [esi + 0x90]
xor edx, eax
lea eax, [ebp - 8]
push edx
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00b58580
mov eax, dword [eax + 4]
test eax, eax
je 0xca00a1
cmp eax, dword [esi + 0x94]
je 0xca00a1
mov eax, dword [eax + 0x10]
pop esi
mov esp, ebp
pop ebp
ret 4
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 4
Function at 0xcab100
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov edx, dword [ebp + 8]
mov eax, 0x1fffffff
push ebx
mov ebx, ecx
bsr ecx, eax
push esi
push edi
mov edi, 1
mov dword [ebp - 0xc], ebx
mov eax, edi
shl eax, cl
cmp edx, eax
ja 0xcab251
mov esi, dword [ebx + 4]
lea eax, [edx - 1]
or eax, edi
mov dword [ebp + 8], esi
bsr ecx, eax
push esi
lea ecx, [ecx + 1]
shl edi, cl
lea ecx, [ebx + 0xc]
lea eax, [edi + edi]
push eax
call fcn.00b5d960
mov ecx, dword [ebx + 4]
lea eax, [edi - 1]
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], edi
mov ecx, dword [ecx]
mov edx, ecx
cmp ecx, esi
je 0xcab227
imul eax, dword [ecx + 8], 0x100011b
mov ebx, dword [ecx + 0xc]
mov edx, dword [edx]
imul edi, ebx, 0x1000193
xor edi, eax
mov eax, dword [ebp - 0xc]
and edi, dword [eax + 0x18]
mov eax, dword [eax + 0xc]
lea eax, [eax + edi*8]
mov edi, dword [eax]
mov dword [ebp - 8], eax
cmp edi, esi
jne 0xcab195
mov dword [eax], ecx
mov dword [eax + 4], ecx
jmp 0xcab21d
mov eax, dword [eax + 4]
mov esi, dword [ecx + 8]
cmp esi, dword [eax + 8]
mov esi, dword [ebp + 8]
jne 0xcab1d7
cmp ebx, dword [eax + 0xc]
jne 0xcab1d7
mov eax, dword [eax]
mov dword [ebp - 4], eax
cmp eax, ecx
je 0xcab1cf
mov ebx, dword [ecx + 4]
mov esi, dword [ebp - 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov eax, dword [eax + 4]
mov dword [eax], ecx
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [edx + 4], ebx
mov dword [ecx + 4], eax
mov eax, dword [ebp - 8]
mov dword [eax + 4], ecx
jmp 0xcab21d
mov dword [ebp - 4], eax
cmp edi, eax
je 0xcab1f7
nop
mov eax, dword [eax + 4]
mov esi, dword [ecx + 8]
mov dword [ebp - 4], eax
cmp esi, dword [eax + 8]
jne 0xcab1f3
cmp ebx, dword [eax + 0xc]
je 0xcab230
cmp edi, eax
jne 0xcab1e0
mov ebx, dword [ecx + 4]
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov eax, dword [eax + 4]
mov dword [eax], ecx
mov dword [esi + 4], edi
mov dword [edx + 4], ebx
mov dword [ecx + 4], eax
mov eax, dword [ebp - 8]
mov dword [eax], ecx
mov esi, dword [ebp + 8]
mov ecx, edx
cmp edx, esi
jne 0xcab162
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [ecx + 4]
mov eax, dword [eax]
mov dword [ebp - 8], eax
mov esi, eax
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov eax, dword [eax + 4]
mov dword [eax], ecx
mov dword [esi + 4], edi
mov dword [edx + 4], ebx
mov dword [ecx + 4], eax
jmp 0xcab21a
push str.invalid_hash_bucket_count
call fcn.00c298f3
int3
Function at 0xcab260
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov edx, dword [ebp + 8]
mov eax, 0x1fffffff
push ebx
mov ebx, ecx
bsr ecx, eax
push esi
mov esi, 1
mov dword [ebp - 0x10], ebx
mov eax, esi
shl eax, cl
push edi
cmp edx, eax
ja 0xcab3f8
lea eax, [edx - 1]
or eax, esi
bsr ecx, eax
mov eax, dword [ebx + 4]
push eax
mov dword [ebp - 4], eax
lea ecx, [ecx + 1]
shl esi, cl
lea ecx, [ebx + 0xc]
lea eax, [esi + esi]
push eax
call fcn.00b5d960
mov edi, dword [ebx + 4]
lea eax, [esi - 1]
mov ecx, dword [ebp - 4]
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], esi
mov edi, dword [edi]
mov eax, edi
cmp edi, ecx
je 0xcab3d0
mov ebx, dword [edi + 0xc]
xor edx, edx
mov esi, dword [edi + 0x10]
mov eax, dword [eax]
add esi, ebx
mov dword [ebp + 8], eax
mov dword [ebp - 0xc], esi
cmp ebx, esi
jae 0xcab2f0
mov ecx, esi
nop dword [eax]
movsx esi, byte [ebx]
lea edx, [edx + edx*4]
inc ebx
add edx, esi
cmp ebx, ecx
jb 0xcab2e0
mov ecx, dword [ebp - 4]
imul esi, dword [edi + 8], 0x1000193
xor esi, edx
mov edx, dword [ebp - 0x10]
and esi, dword [edx + 0x18]
mov edx, dword [edx + 0xc]
mov ebx, dword [edx + esi*8]
lea edx, [edx + esi*8]
mov dword [ebp - 0xc], edx
mov dword [ebp - 8], ebx
cmp ebx, ecx
jne 0xcab31c
mov dword [edx], edi
mov dword [edx + 4], edi
jmp 0xcab3c4
mov esi, dword [edx + 4]
mov ecx, dword [edi + 8]
cmp ecx, dword [esi + 8]
jne 0xcab36b
push dword [esi + 0x10]
push dword [esi + 0xc]
push dword [edi + 0x10]
push dword [edi + 0xc]
call fcn.00c8d020
add esp, 0x10
test al, al
mov eax, dword [ebp + 8]
je 0xcab368
mov ebx, dword [esi]
cmp ebx, edi
je 0xcab360
mov esi, dword [edi + 4]
mov dword [esi], eax
mov edx, dword [eax + 4]
mov dword [edx], ebx
mov ecx, dword [ebx + 4]
mov dword [ecx], edi
mov dword [ebx + 4], edx
mov dword [eax + 4], esi
mov dword [edi + 4], ecx
mov ecx, dword [ebp - 0xc]
mov dword [ecx + 4], edi
jmp 0xcab3c1
mov ecx, dword [edi + 8]
mov ebx, esi
cmp dword [ebp - 8], esi
je 0xcab3a4
mov eax, dword [ebp - 8]
mov esi, dword [esi + 4]
mov ebx, esi
cmp ecx, dword [esi + 8]
jne 0xcab39d
push dword [esi + 0x10]
push dword [esi + 0xc]
push dword [edi + 0x10]
push dword [edi + 0xc]
call fcn.00c8d020
add esp, 0x10
test al, al
jne 0xcab3d9
mov eax, dword [ebp - 8]
mov ecx, dword [edi + 8]
cmp eax, esi
jne 0xcab375
mov eax, dword [ebp + 8]
mov esi, dword [edi + 4]
mov dword [esi], eax
mov edx, dword [eax + 4]
mov dword [edx], ebx
mov ecx, dword [ebx + 4]
mov dword [ecx], edi
mov dword [ebx + 4], edx
mov dword [eax + 4], esi
mov dword [edi + 4], ecx
mov ecx, dword [ebp - 0xc]
mov dword [ecx], edi
mov ecx, dword [ebp - 4]
mov edi, eax
cmp eax, ecx
jne 0xcab2c5
nop
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [esi]
mov esi, dword [edi + 4]
mov eax, dword [ebp + 8]
mov dword [esi], eax
mov edx, dword [eax + 4]
mov dword [edx], ebx
mov ecx, dword [ebx + 4]
mov dword [ecx], edi
mov dword [ebx + 4], edx
mov dword [eax + 4], esi
mov dword [edi + 4], ecx
jmp 0xcab3c1
push str.invalid_hash_bucket_count
call fcn.00c298f3
int3
Function at 0xcab780
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov edx, dword [ebp + 8]
mov eax, 0x1fffffff
push ebx
push esi
push edi
mov edi, ecx
mov esi, 1
bsr ecx, eax
mov eax, esi
mov dword [ebp - 4], edi
shl eax, cl
cmp edx, eax
ja 0xcab8d5
mov ebx, dword [edi + 4]
lea eax, [edx - 1]
or eax, esi
mov dword [ebp - 8], ebx
bsr ecx, eax
push ebx
lea ecx, [ecx + 1]
shl esi, cl
lea ecx, [edi + 0xc]
lea eax, [esi + esi]
push eax
call fcn.00b5d960
mov edx, dword [edi + 4]
lea eax, [esi - 1]
mov dword [edi + 0x18], eax
mov dword [edi + 0x1c], esi
mov edx, dword [edx]
cmp edx, ebx
je 0xcab8b0
mov ecx, edx
movzx eax, byte [ecx + 8]
xor eax, 0x811c9dc5
mov edx, dword [edx]
imul esi, eax, 0x1000193
movzx eax, byte [ecx + 9]
xor esi, eax
movzx eax, byte [ecx + 0xa]
imul esi, esi, 0x1000193
xor esi, eax
movzx eax, byte [ecx + 0xb]
imul esi, esi, 0x1000193
xor esi, eax
imul eax, esi, 0x1000193
mov esi, dword [edi + 0x18]
and esi, eax
mov eax, dword [edi + 0xc]
lea ebx, [eax + esi*8]
mov eax, dword [ebp - 8]
mov dword [ebp + 8], ebx
cmp dword [ebx], eax
jne 0xcab833
mov dword [ebx], ecx
mov dword [ebx + 4], ecx
jmp 0xcab8a0
mov eax, dword [ebx + 4]
mov edi, dword [ecx + 8]
cmp edi, dword [eax + 8]
jne 0xcab86a
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
cmp eax, ecx
je 0xcab865
mov edi, dword [ecx + 4]
mov ebx, dword [ebp - 0xc]
mov dword [edi], edx
mov esi, dword [edx + 4]
mov dword [esi], eax
mov eax, dword [eax + 4]
mov dword [eax], ecx
mov dword [ebx + 4], esi
mov ebx, dword [ebp + 8]
mov dword [edx + 4], edi
mov dword [ecx + 4], eax
mov dword [ebx + 4], ecx
jmp 0xcab89d
mov ebx, dword [ebx]
mov esi, eax
cmp ebx, eax
je 0xcab880
mov eax, dword [eax + 4]
mov esi, eax
cmp edi, dword [eax + 8]
je 0xcab8b9
cmp ebx, eax
jne 0xcab872
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], esi
mov eax, dword [esi + 4]
mov dword [eax], ecx
mov dword [esi + 4], edi
mov dword [edx + 4], ebx
mov dword [ecx + 4], eax
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov edi, dword [ebp - 4]
mov ecx, edx
cmp edx, dword [ebp - 8]
jne 0xcab7e2
nop dword [eax + eax]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov edi, dword [ecx + 4]
mov ebx, dword [eax]
mov dword [edi], edx
mov esi, dword [edx + 4]
mov dword [esi], ebx
mov eax, dword [ebx + 4]
mov dword [eax], ecx
mov dword [ebx + 4], esi
mov dword [edx + 4], edi
mov dword [ecx + 4], eax
jmp 0xcab89d
push str.invalid_hash_bucket_count
call fcn.00c298f3
int3
Function at 0xcac6c0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xdbba55
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push esi
push edi
mov eax, dword [0xeab124]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edx, ecx
mov dword [ebp - 0x10], edx
mov edi, dword [ebp + 0xc]
mov dword [ebp + 0xc], edi
cmp dword [edi + 0x14], 0x10
jb 0xcac6fd
mov eax, dword [edi]
mov dword [ebp + 0xc], eax
xor ecx, ecx
mov esi, 0x811c9dc5
cmp dword [edi + 0x10], ecx
jbe 0xcac725
mov edx, dword [ebp + 0xc]
nop dword [eax]
movzx eax, byte [ecx + edx]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, dword [edi + 0x10]
jb 0xcac710
mov edx, dword [ebp - 0x10]
push esi
push edi
lea eax, [ebp - 0x20]
mov ecx, edx
push eax
call fcn.00c88aa0
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
je 0xcac745
mov eax, dword [ebp + 8]
mov dword [eax], ecx
xor cl, cl
jmp 0xcac82e
mov eax, dword [ebp - 0x10]
cmp dword [eax + 8], 0x7ffffff
je 0xcac844
add eax, 4
mov dword [ebp - 0x18], eax
push 0x20
mov dword [ebp - 4], 0
mov dword [ebp - 0x14], 0
call fcn.00c2a42d
add esp, 4
mov dword [ebp - 0x14], eax
mov dword [eax + 8], 0
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
movups xmm0, xmmword [edi]
movups xmmword [eax + 8], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [eax + 0x18], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
mov edi, dword [ebp - 0x10]
mov dword [ebp - 4], 1
mov eax, dword [edi + 8]
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0xdc7d90]
mov eax, dword [edi + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0xdc7d90]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [edi]
jbe 0xcac815
mov ecx, edi
call fcn.00cabb10
mov eax, dword [ebp - 0x14]
mov ecx, edi
push esi
add eax, 8
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.00c88aa0
mov ecx, dword [eax]
jmp 0xcac818
mov ecx, dword [ebp - 0x20]
push dword [ebp - 0x14]
push ecx
push esi
mov ecx, edi
call fcn.00cabab0
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
mov cl, 1
mov eax, dword [ebp + 8]
mov byte [eax + 4], cl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.00c298f3
int3
Function at 0xcac850
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xdbba95
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0xeab124]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov edi, dword [ebp + 0xc]
mov edx, edi
cmp dword [edi + 0x14], 0x10
jb 0xcac887
mov edx, dword [edi]
xor ecx, ecx
mov esi, 0x811c9dc5
cmp dword [edi + 0x10], ecx
jbe 0xcac8a5
movzx eax, byte [ecx + edx]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, dword [edi + 0x10]
jb 0xcac893
push esi
push edi
lea eax, [ebp - 0x14]
mov ecx, ebx
push eax
call fcn.00c88aa0
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0xcac8c5
mov eax, dword [ebp + 8]
mov dword [eax], ecx
xor cl, cl
jmp 0xcac97b
cmp dword [ebx + 8], 0x7ffffff
je 0xcac992
lea eax, [ebx + 4]
mov dword [ebp - 0x1c], eax
push 0x20
mov dword [ebp - 4], 0
mov dword [ebp - 0x18], 0
call fcn.00c2a42d
add esp, 4
mov dword [ebp - 0x18], eax
add eax, 8
mov ecx, eax
mov dword [ebp + 0xc], eax
push edi
call fcn.00b4d400
mov eax, dword [ebx + 8]
inc eax
mov dword [ebp - 4], 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0xdc7d90]
mov eax, dword [ebx + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0xdc7d90]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [ebx]
jbe 0xcac962
mov ecx, ebx
call fcn.00cabb10
push esi
push dword [ebp + 0xc]
lea eax, [ebp - 0x14]
mov ecx, ebx
push eax
call fcn.00c88aa0
mov ecx, dword [eax]
jmp 0xcac965
mov ecx, dword [ebp - 0x14]
push dword [ebp - 0x18]
push ecx
push esi
mov ecx, ebx
call fcn.00cabab0
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
mov cl, 1
mov eax, dword [ebp + 8]
mov byte [eax + 4], cl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.00c298f3
int3
Function at 0xcc60c0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xdb7075
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0xeab124]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov ebx, dword [ebp + 0xc]
movzx eax, byte [ebx]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
movzx eax, byte [ebx + 1]
xor edx, eax
movzx eax, byte [ebx + 2]
imul edx, edx, 0x1000193
xor edx, eax
movzx eax, byte [ebx + 3]
imul ecx, edx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
mov dword [ebp + 0xc], eax
lea eax, [ebp - 0x1c]
push ebx
push eax
call fcn.00c59340
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0xcc6153
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [edi + 8], 0xfffffff
je 0xcc62b0
lea eax, [edi + 4]
mov dword [ebp - 0x14], eax
push 0x10
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 0
call fcn.00c2a42d
mov ecx, dword [ebx]
mov esi, eax
add esp, 4
mov dword [ebp - 0x10], esi
mov dword [esi + 8], ecx
mov dword [esi + 0xc], 0
mov ecx, dword [edi + 8]
mov ebx, dword [edi + 0x1c]
movss xmm3, dword [edi]
mov dword [ebp - 4], 1
lea eax, [ecx + 1]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0xdc7d90]
mov eax, ebx
shr eax, 0x1f
cvtpd2ps xmm2, xmm0
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
movaps xmm1, xmm2
addsd xmm0, qword [eax*8 + 0xdc7d90]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, xmm3
jbe 0xcc624f
divss xmm2, xmm3
sub esp, 8
cvtps2pd xmm0, xmm2
movsd qword [ebp - 0x1c], xmm0
fld qword [ebp - 0x1c]
fstp qword [esp]
call fcn.00c43d10
fstp qword [ebp - 0x1c]
movsd xmm0, qword [ebp - 0x1c]
add esp, 8
cvtpd2ps xmm0, xmm0
call fcn.00c2af20
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp ebx, ecx
jae 0xcc622e
cmp ebx, 0x200
jae 0xcc622c
shl ebx, 3
cmp ebx, ecx
jae 0xcc622e
mov ebx, ecx
push ebx
mov ecx, edi
call fcn.00c5b770
push dword [ebp + 0xc]
lea eax, [esi + 8]
mov ecx, edi
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00c59340
mov ecx, dword [edi + 8]
mov edx, dword [eax]
jmp 0xcc6252
mov edx, dword [ebp - 0x1c]
mov ebx, dword [edx + 4]
lea eax, [ecx + 1]
mov dword [edi + 8], eax
mov dword [esi], edx
mov dword [esi + 4], ebx
mov dword [ebx], esi
mov dword [edx + 4], esi
mov eax, dword [edi + 0x18]
and eax, dword [ebp + 0xc]
mov ecx, dword [edi + 0xc]
mov esi, dword [ebp - 0x14]
mov edi, dword [ecx + eax*8]
cmp edi, dword [esi]
mov esi, dword [ebp - 0x10]
jne 0xcc6280
mov dword [ecx + eax*8], esi
jmp 0xcc628f
cmp edi, edx
jne 0xcc6289
mov dword [ecx + eax*8], esi
jmp 0xcc6293
cmp dword [ecx + eax*8 + 4], ebx
jne 0xcc6293
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebp + 8]
mov dword [eax], esi
mov byte [eax + 4], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.00c298f3
int3
Function at 0xcc6370
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xdbd78d
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0xeab124]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x10], esi
lea ecx, [esi + 0xc]
mov dword [ebp - 4], 0
mov dword [esi], vtable.google::protobuf::DynamicMessageFactory.0
mov dword [esi + 4], 0
mov byte [esi + 8], 0
call fcn.00cc62c0
push 0x30
lea eax, [esi + 0x30]
mov dword [esi + 0x2c], 0
push 0
push eax
call fcn.00c2caf0
add esp, 0xc
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
Function at 0xd60de0
Capabilities:
Encode data using xor

Disassembly:
cmp dword [esp + 0x18], 0
je 0xd60df4
mov dword [esp + 0x18], fcn.00d5f5c0
jmp fcn.00ced400
mov dword [esp + 0x18], fcn.00d5e860
jmp fcn.00ced100

Function at 0x401ff5
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push esi
call fcn.00401f2f
push 0x13
pop eax
xor esi, esi
mov dword [ebp - 0x2c], 2
push esi
push esi
push esi
mov dword [ebp - 0x28], 1
mov dword [ebp - 0x24], 0x23
mov dword [ebp - 0x20], 3
mov dword [ebp - 0x1c], 0xd
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 0x14
mov dword [ebp - 0x10], 0xa
mov dword [ebp - 0xc], 0xb
mov dword [ebp - 8], eax
mov dword [ebp - 4], 0xf
call dword [0x40e008]
call dword [0x40e01c]
cmp eax, 0x57
je 0x402066
push esi
call dword [0x40e024]
mov ecx, esi
mov edx, esi
mov al, byte [ebp + ecx*4 - 0x2c]
xor byte [edx + 0x414250], al
inc ecx
xor eax, eax
cmp ecx, 0xb
cmove ecx, eax
inc edx
cmp edx, 0x13000
jb 0x40206a
call fcn.00401e43
push esi
test eax, eax
jne 0x402060
call dword [0x40e018]
int3

Function at 0x6f1788
Capabilities:
Decompress data using aplib

Disassembly:
push ebp
mov ebp, esp
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
cld
mov dl, 0x80
movsb byte es:[edi], byte [esi]
call fcn.006f1807
jae 0x6f1794
xor ecx, ecx
call fcn.006f1807
jae 0x6f17be
xor eax, eax
call fcn.006f1807
jae 0x6f17cf
mov al, 0x10
call fcn.006f1807
adc al, al
jae 0x6f17b0
jne 0x6f17fc
stosb byte es:[edi], al
jmp 0x6f1795
call fcn.006f1813
dec ecx
loop 0x6f17db
mov eax, ebp
call fcn.006f1811
jmp 0x6f17fd
lodsb al, byte [esi]
shr eax, 1
je 0x6f1823
adc ecx, 2
mov ebp, eax
jmp 0x6f17fd
xchg ecx, eax
dec eax
shl eax, 8
lodsb al, byte [esi]
mov ebp, eax
call fcn.006f1811
cmp eax, 0x7d00
jae 0x6f17fb
cmp eax, 0x500
jae 0x6f17fc
cmp eax, 0x7f
ja 0x6f17fd
inc ecx
inc ecx
push esi
mov esi, edi
sub esi, eax
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x6f1795
pop ebp
ret 8
Function at 0x43c5c0
Capabilities:
Enumerate files on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x254
push edi
xor edi, edi
push edi
call dword [sym.imp.ole32.dll_CoInitialize]
mov dword [ebp - 4], edi
call fcn.0043efc7
test eax, eax
jle 0x43c6e9
push ebx
push esi
push dword [ebp - 4]
call fcn.00445e5d
push eax
call fcn.004452f6
pop ecx
pop ecx
mov esi, eax
push edi
push esi
call fcn.00445199
push eax
call fcn.00444c01
pop ecx
pop ecx
push eax
call fcn.004442f1
pop ecx
pop ecx
push edi
push esi
call fcn.004451e5
push eax
call fcn.00444c01
pop ecx
pop ecx
push eax
call fcn.004442f1
pop ecx
pop ecx
push edi
push esi
mov ebx, eax
call fcn.00444c01
pop ecx
push eax
call fcn.004442f1
pop ecx
pop ecx
lea ecx, [ebp - 0x254]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov esi, eax
cmp esi, 0xffffffff
je 0x43c6d6
push edi
lea eax, [ebp - 0x228]
push eax
push ebx
push 0x5c
call fcn.00444fc0
add esp, 0x10
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
cmp eax, edi
je 0x43c6a7
push 0x439530
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, edi
je 0x43c699
call eax
test eax, eax
lea eax, [ebp - 0x228]
push eax
jge 0x43c692
push 0x439514
jmp 0x43c6b3
push 0x4394f8
jmp 0x43c6b3
lea eax, [ebp - 0x228]
push eax
push 0x4394cc
jmp 0x43c6b3
lea eax, [ebp - 0x228]
push eax
push 0x4394b4
push 0x408b20
call fcn.004475f0
add esp, 0xc
lea eax, [ebp - 0x254]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
jne 0x43c650
inc dword [ebp - 4]
call fcn.0043efc7
cmp dword [ebp - 4], eax
jl 0x43c5e5
pop esi
pop ebx
pop edi
leave
ret