joyce8/EMBER2024-capa huggingface dataset:
Function at 0x4a46c0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c6d6b
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x512000]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x10], esi
lea eax, [esi + 0xc]
mov dword [esi], vtable.CMemAllocator.0
mov dword [eax], vtable.CMemAllocator.1.0
push eax
mov dword [ebp - 4], 0
call fcn.004a5050
mov ecx, esi
call fcn.004a65a0
mov eax, dword [esi + 0x30]
mov dword [ebp - 4], 2
test eax, eax
je 0x4a4721
push eax
call dword [0x4c81bc]
mov ecx, dword [esi + 0x58]
test ecx, ecx
je 0x4a472e
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
lea eax, [esi + 0x10]
push eax
call dword [0x4c8204]
lea ecx, [esi + 4]
mov dword [ebp - 4], 0xffffffff
call fcn.004a7920
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x42c570
Capabilities:
Hash data using sha1

Disassembly:
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push eax
mov eax, dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x10]
push edx
mov edx, dword [esp + 0x10]
push eax
push ecx
push 0xca62c1d6
push 0x8f1bbcdc
push 0x6ed9eba1
push 0x5a827999
push edx
call fcn.0042c920
ret 0x18

Function at 0x42c800
Capabilities:
Hash data using sha1

Disassembly:
mov ecx, dword [esp + 4]
mov eax, ecx
and eax, 0xfffffff
imul eax, eax, 8
jo 0x42c820
test ecx, 0x10000000
je 0x42c81d
or eax, 0x80000000
ret 4
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop

Function at 0x42c830
Capabilities:
Hash data using sha1

Disassembly:
mov ecx, dword [esp + 4]
mov eax, ecx
and eax, 0x3fffffff
imul eax, eax, 2
jo 0x42c85a
test ecx, 0x40000000
je 0x42c84d
or eax, 0x80000000
test ecx, 0x80000000
je 0x42c857
or al, 1
ret 4
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]

Function at 0x42c860
Capabilities:
Hash data using sha1

Disassembly:
push esi
mov esi, dword [esp + 8]
mov ecx, esi
mov eax, esi
and ecx, 0x3ffffff
imul ecx, ecx, 0x20
jo 0x42c89e
and eax, 0xf8000000
cdq
and edx, 0x7ffffff
add eax, edx
sar eax, 0x1b
and eax, 0x1f
or ecx, eax
test esi, 0x4000000
pop esi
je 0x42c899
or ecx, 0x80000000
mov eax, ecx
ret 4
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop

Function at 0x42c8b0
Capabilities:
Hash data using sha1

Disassembly:
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, eax
xor edx, ecx
jge 0x42c8c5
add eax, ecx
jo 0x42c8d6
ret 8
xor eax, 0x80000000
add eax, ecx
jo 0x42c8d6
xor eax, 0x80000000
ret 8
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
nop
nop
nop
nop

Function at 0x42c8e0
Capabilities:
Hash data using sha1

Disassembly:
push ebx
mov ebx, dword [esp + 8]
mov ecx, ebx
mov eax, ebx
and ecx, 1
imul ecx, ecx, 0x40000000
jo 0x42c917
and al, 0xfc
cdq
and edx, 3
add eax, edx
sar eax, 2
and eax, 0x3fffffff
or ecx, eax
test bl, 2
pop ebx
je 0x42c912
or ecx, 0x80000000
mov eax, ecx
ret 4
call dword [sym.imp.MSVBVM60.DLL___vbaErrorOverflow]
nop
nop
nop
Function at 0x42e000
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
nop
nop
nop
nop
nop
mov eax, section..text
nop
nop
push 4
nop
nop
nop
pop edi
nop
nop
nop
nop
nop
cmp eax, 0
nop
nop
nop
nop
nop
je 0x42e072
nop
nop
mov ebx, 0x407ef8
mov ecx, ebx
nop
nop
nop
nop
sub ecx, eax
nop
nop
nop
nop
nop
nop
nop
xor edx, edx
nop
nop
nop
nop
nop
push eax
nop
mov eax, ecx
nop
nop
nop
nop
nop
div edi
nop
nop
nop
nop
nop
nop
nop
nop
xchg ecx, eax
nop
pop eax
nop
nop
nop
nop
nop
mov esi, 0x30db4653
nop
nop
xor dword [eax], esi
nop
nop
add eax, edi
nop
nop
nop
nop
nop
nop
nop
loop 0x42e060
nop
nop
mov eax, section..data
nop
cmp eax, 0
nop
nop
je 0x42e0d2
nop
nop
nop
nop
mov ebx, 0x42cd70
nop
nop
nop
mov ecx, ebx
nop
nop
nop
nop
nop
sub ecx, eax
nop
nop
nop
nop
nop
xor edx, edx
nop
nop
nop
push eax
nop
nop
nop
nop
mov eax, ecx
nop
nop
nop
nop
nop
nop
div edi
nop
nop
nop
xchg ecx, eax
nop
nop
nop
nop
pop eax
nop
nop
nop
mov esi, 0x122e075f
nop
nop
nop
xor dword [eax], esi
nop
nop
nop
nop
nop
add eax, edi
nop
nop
nop
nop
loop 0x42e0c0
nop
nop
nop
nop
nop
nop
popal
jmp 0x401219
Function at 0x10058cc0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
movzx eax, byte [esi]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [esi + 1]
xor ecx, eax
movzx eax, byte [esi + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [esi + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
lea eax, [ebp - 0xc]
imul edi, ecx, 0x1000193
push edi
push esi
push eax
call fcn.100604f0
mov eax, dword [ebp - 8]
test eax, eax
jne 0x10058dad
cmp dword [0x1033cb58], 0xfffffff
je 0x10058db9
push 0x10
call fcn.100c366d
mov dword [ebp + 8], eax
add esp, 4
lea ebx, [eax + 8]
mov eax, dword [esi]
mov dword [ebx], eax
mov dword [ebx + 4], 0
mov eax, dword [0x1033cb58]
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x102ddf50]
mov eax, dword [0x1033cb6c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x102ddf50]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [0x1033cb50]
seta al
test al, al
je 0x10058da0
call fcn.1005dd10
push edi
push ebx
lea eax, [ebp - 0xc]
push eax
call fcn.100604f0
mov ecx, dword [eax]
jmp 0x10058da3
mov ecx, dword [ebp - 0xc]
push dword [ebp + 8]
push ecx
push edi
call fcn.1005de10
pop edi
pop esi
add eax, 0xc
pop ebx
mov esp, ebp
pop ebp
ret 4
push str.unordered_map_set_too_long
call fcn.1009f8bd
int3
Function at 0x1005c180
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x34
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, ecx
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 [esp + 0x34], eax
lea eax, [esp + 0x38]
push ebx
push eax
call fcn.10060100
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x1005c1ef
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [edi + 8], 0xccccccc
je 0x1005c367
push 0x14
call fcn.100c366d
mov ecx, dword [ebx]
mov esi, eax
add esp, 4
mov dword [esp + 0x3c], esi
mov dword [esi + 8], ecx
mov ecx, dword [ebp + 0x10]
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
mov eax, dword [ecx + 4]
test eax, eax
je 0x1005c22d
lock inc dword [eax + 4]
mov eax, dword [ecx]
mov dword [esi + 0xc], eax
mov eax, dword [ecx + 4]
mov dword [esi + 0x10], eax
mov ecx, dword [edi + 8]
mov ebx, dword [edi + 0x1c]
inc ecx
mov eax, ecx
movss xmm2, dword [edi]
shr eax, 0x1f
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x102ddf50]
mov eax, ebx
shr eax, 0x1f
cvtpd2ps xmm1, xmm0
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x102ddf50]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, xmm2
seta al
test al, al
je 0x1005c302
movd xmm0, ecx
sub esp, 8
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x102ddf50]
cvtpd2ps xmm0, xmm0
divss xmm0, xmm2
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
call fcn.100f3690
add esp, 8
fstp dword [esp + 0x34]
movss xmm0, dword [esp + 0x34]
call fcn.100c4120
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp ebx, ecx
jae 0x1005c2e2
cmp ebx, 0x200
jae 0x1005c2e0
shl ebx, 3
cmp ebx, ecx
jae 0x1005c2e2
mov ebx, ecx
push ebx
mov ecx, edi
call fcn.1005eba0
push dword [esp + 0x30]
lea eax, [esi + 8]
mov ecx, edi
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10060100
mov edx, dword [eax]
jmp 0x1005c306
mov edx, dword [esp + 0x34]
mov ebx, dword [edx + 4]
inc dword [edi + 8]
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 [esp + 0x30]
mov ecx, dword [edi + 0xc]
mov esi, dword [ecx + eax*8]
cmp esi, dword [edi + 4]
mov esi, dword [esp + 0x3c]
jne 0x1005c331
mov dword [ecx + eax*8], esi
jmp 0x1005c351
cmp dword [ecx + eax*8], edx
jne 0x1005c34b
mov dword [ecx + eax*8], esi
mov eax, dword [ebp + 8]
mov dword [eax], esi
mov byte [eax + 4], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ecx + eax*8 + 4], ebx
jne 0x1005c355
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebp + 8]
pop edi
mov dword [eax], esi
pop esi
mov byte [eax + 4], 1
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.unordered_map_set_too_long
call fcn.1009f8bd
int3
Function at 0x1005ca80
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x34
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, ecx
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 [esp + 0x34], eax
lea eax, [esp + 0x38]
push ebx
push eax
call fcn.10060610
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x1005caef
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [edi + 8], 0xfffffff
je 0x1005cc47
push 0x10
call fcn.100c366d
mov ecx, dword [ebx]
mov esi, eax
add esp, 4
mov dword [esp + 0x3c], esi
mov dword [esi + 8], ecx
mov dword [esi + 0xc], 0
mov ecx, dword [edi + 8]
mov ebx, dword [edi + 0x1c]
inc ecx
mov eax, ecx
movss xmm2, dword [edi]
shr eax, 0x1f
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x102ddf50]
mov eax, ebx
shr eax, 0x1f
cvtpd2ps xmm1, xmm0
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [eax*8 + 0x102ddf50]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, xmm2
seta al
test al, al
je 0x1005cbe2
movd xmm0, ecx
sub esp, 8
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x102ddf50]
cvtpd2ps xmm0, xmm0
divss xmm0, xmm2
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
call fcn.100f3690
add esp, 8
fstp dword [esp + 0x34]
movss xmm0, dword [esp + 0x34]
call fcn.100c4120
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp ebx, ecx
jae 0x1005cbc2
cmp ebx, 0x200
jae 0x1005cbc0
shl ebx, 3
cmp ebx, ecx
jae 0x1005cbc2
mov ebx, ecx
push ebx
mov ecx, edi
call fcn.1005ee80
push dword [esp + 0x30]
lea eax, [esi + 8]
mov ecx, edi
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.10060610
mov edx, dword [eax]
jmp 0x1005cbe6
mov edx, dword [esp + 0x34]
mov ebx, dword [edx + 4]
inc dword [edi + 8]
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 [esp + 0x30]
mov ecx, dword [edi + 0xc]
mov esi, dword [ecx + eax*8]
cmp esi, dword [edi + 4]
mov esi, dword [esp + 0x3c]
jne 0x1005cc11
mov dword [ecx + eax*8], esi
jmp 0x1005cc31
cmp dword [ecx + eax*8], edx
jne 0x1005cc2b
mov dword [ecx + eax*8], esi
mov eax, dword [ebp + 8]
mov dword [eax], esi
mov byte [eax + 4], 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [ecx + eax*8 + 4], ebx
jne 0x1005cc35
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebp + 8]
pop edi
mov dword [eax], esi
pop esi
mov byte [eax + 4], 1
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.1009f8bd
int3
Function at 0x1005e910
Capabilities:
Hash data using fnv

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
mov eax, 0x1fffffff
sub esp, 0x10
bsr ecx, eax
push esi
push edi
mov edi, 1
mov eax, edi
shl eax, cl
mov ecx, dword [ebx + 8]
cmp ecx, eax
ja 0x1005eaab
lea eax, [ecx - 1]
mov esi, dword [0x1033cb54]
or eax, edi
mov dword [ebp - 4], esi
bsr ecx, eax
push esi
lea ecx, [ecx + 1]
shl edi, cl
mov ecx, 0x1033cb5c
lea eax, [edi + edi]
push eax
call fcn.1005aef0
lea eax, [edi - 1]
mov dword [0x1033cb6c], edi
mov dword [0x1033cb68], eax
mov eax, dword [0x1033cb54]
mov eax, dword [eax]
mov ecx, eax
cmp eax, esi
je 0x1005ea75
nop dword [eax + eax]
movzx edx, byte [eax + 8]
xor edx, 0x811c9dc5
mov ecx, dword [ecx]
imul edi, edx, 0x1000193
movzx edx, byte [eax + 9]
xor edi, edx
movzx edx, byte [eax + 0xa]
imul edi, edi, 0x1000193
xor edi, edx
movzx edx, byte [eax + 0xb]
imul edi, edi, 0x1000193
xor edi, edx
mov edx, dword [0x1033cb5c]
imul edi, edi, 0x1000193
and edi, dword [0x1033cb68]
lea edx, [edx + edi*8]
mov dword [ebp - 8], edx
cmp dword [edx], esi
jne 0x1005e9e6
mov dword [edx], eax
mov dword [edx + 4], eax
jmp 0x1005ea6b
mov edx, dword [edx + 4]
mov edi, dword [eax + 8]
cmp edi, dword [edx + 8]
jne 0x1005ea29
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
cmp edx, eax
je 0x1005ea21
mov edx, dword [eax + 4]
mov esi, dword [ebp - 0xc]
mov dword [ebp - 0x10], edx
mov dword [edx], ecx
mov edi, dword [ecx + 4]
mov edx, dword [ebp - 0xc]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov edi, dword [ebp - 0x10]
mov esi, dword [ebp - 4]
mov dword [ecx + 4], edi
mov dword [eax + 4], edx
mov edx, dword [ebp - 8]
mov dword [edx + 4], eax
jmp 0x1005ea6b
mov esi, dword [ebp - 8]
cmp dword [esi], edx
je 0x1005ea3f
mov edx, dword [edx + 4]
cmp edi, dword [edx + 8]
je 0x1005ea80
mov esi, dword [ebp - 8]
cmp dword [esi], edx
jne 0x1005ea30
mov esi, dword [eax + 4]
mov dword [ebp - 0xc], esi
mov dword [esi], ecx
mov edi, dword [ecx + 4]
mov dword [ebp - 0x10], edi
mov esi, dword [ebp - 0x10]
mov dword [edi], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov dword [edx + 4], esi
mov edx, dword [ebp - 0xc]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 8]
mov dword [eax + 4], edi
mov dword [edx], eax
mov esi, dword [ebp - 4]
mov eax, ecx
cmp ecx, esi
jne 0x1005e990
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
mov edx, dword [eax + 4]
mov esi, dword [ebp - 0xc]
mov dword [ebp - 0x10], edx
mov dword [edx], ecx
mov edi, dword [ecx + 4]
mov edx, dword [ebp - 0xc]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov edi, dword [ebp - 0x10]
mov dword [ecx + 4], edi
mov dword [eax + 4], edx
jmp 0x1005ea68
push 0x102db914
call fcn.1009f8bd
int3
Function at 0x1005eba0
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
push edi
mov edi, 1
mov dword [ebp - 4], ebx
mov eax, edi
shl eax, cl
cmp edx, eax
ja 0x1005ecfa
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.1005b0c0
lea eax, [edi - 1]
mov dword [ebx + 0x1c], edi
mov dword [ebx + 0x18], eax
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov ecx, eax
cmp eax, esi
je 0x1005eccd
movzx edx, byte [eax + 8]
xor edx, 0x811c9dc5
mov ecx, dword [ecx]
imul edi, edx, 0x1000193
movzx edx, byte [eax + 9]
xor edi, edx
movzx edx, byte [eax + 0xa]
imul edi, edi, 0x1000193
xor edi, edx
movzx edx, byte [eax + 0xb]
imul edi, edi, 0x1000193
xor edi, edx
imul edx, edi, 0x1000193
mov edi, dword [ebx + 0x18]
and edi, edx
mov edx, dword [ebx + 0xc]
lea edx, [edx + edi*8]
mov edi, dword [edx]
mov dword [ebp - 8], edx
cmp edi, esi
jne 0x1005ec53
mov dword [edx], eax
mov dword [edx + 4], eax
jmp 0x1005ecc3
mov edx, dword [edx + 4]
mov ebx, dword [eax + 8]
cmp ebx, dword [edx + 8]
jne 0x1005ec8d
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
cmp edx, eax
je 0x1005ec85
mov ebx, dword [eax + 4]
mov esi, dword [ebp - 0xc]
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
mov edx, dword [ebp - 8]
mov dword [edx + 4], eax
jmp 0x1005ecc0
cmp edi, edx
je 0x1005ec9d
mov edx, dword [edx + 4]
cmp ebx, dword [edx + 8]
je 0x1005ecd6
cmp edi, edx
jne 0x1005ec91
mov ebx, dword [eax + 4]
mov dword [ebp - 0xc], ebx
mov dword [ebx], ecx
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov dword [edx + 4], ebx
mov edx, dword [ebp - 0xc]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 8]
mov dword [eax + 4], edi
mov dword [edx], eax
mov ebx, dword [ebp - 4]
mov eax, ecx
cmp ecx, esi
jne 0x1005ec02
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [eax + 4]
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
mov esi, edx
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
jmp 0x1005ecc0
push 0x102db914
call fcn.1009f8bd
int3
Function at 0x1005ee80
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
push edi
mov edi, 1
mov dword [ebp - 4], ebx
mov eax, edi
shl eax, cl
cmp edx, eax
ja 0x1005efda
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.1005b2d0
lea eax, [edi - 1]
mov dword [ebx + 0x1c], edi
mov dword [ebx + 0x18], eax
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov ecx, eax
cmp eax, esi
je 0x1005efad
movzx edx, byte [eax + 8]
xor edx, 0x811c9dc5
mov ecx, dword [ecx]
imul edi, edx, 0x1000193
movzx edx, byte [eax + 9]
xor edi, edx
movzx edx, byte [eax + 0xa]
imul edi, edi, 0x1000193
xor edi, edx
movzx edx, byte [eax + 0xb]
imul edi, edi, 0x1000193
xor edi, edx
imul edx, edi, 0x1000193
mov edi, dword [ebx + 0x18]
and edi, edx
mov edx, dword [ebx + 0xc]
lea edx, [edx + edi*8]
mov edi, dword [edx]
mov dword [ebp - 8], edx
cmp edi, esi
jne 0x1005ef33
mov dword [edx], eax
mov dword [edx + 4], eax
jmp 0x1005efa3
mov edx, dword [edx + 4]
mov ebx, dword [eax + 8]
cmp ebx, dword [edx + 8]
jne 0x1005ef6d
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
cmp edx, eax
je 0x1005ef65
mov ebx, dword [eax + 4]
mov esi, dword [ebp - 0xc]
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
mov edx, dword [ebp - 8]
mov dword [edx + 4], eax
jmp 0x1005efa0
cmp edi, edx
je 0x1005ef7d
mov edx, dword [edx + 4]
cmp ebx, dword [edx + 8]
je 0x1005efb6
cmp edi, edx
jne 0x1005ef71
mov ebx, dword [eax + 4]
mov dword [ebp - 0xc], ebx
mov dword [ebx], ecx
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov dword [edx + 4], ebx
mov edx, dword [ebp - 0xc]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 8]
mov dword [eax + 4], edi
mov dword [edx], eax
mov ebx, dword [ebp - 4]
mov eax, ecx
cmp ecx, esi
jne 0x1005eee2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [eax + 4]
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
mov esi, edx
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
jmp 0x1005efa0
push 0x102db914
call fcn.1009f8bd
int3
Function at 0x1005f0e0
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
push edi
mov edi, 1
mov dword [ebp - 4], ebx
mov eax, edi
shl eax, cl
cmp edx, eax
ja 0x1005f23a
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.1005b650
lea eax, [edi - 1]
mov dword [ebx + 0x1c], edi
mov dword [ebx + 0x18], eax
mov eax, dword [ebx + 4]
mov eax, dword [eax]
mov ecx, eax
cmp eax, esi
je 0x1005f20d
movzx edx, byte [eax + 8]
xor edx, 0x811c9dc5
mov ecx, dword [ecx]
imul edi, edx, 0x1000193
movzx edx, byte [eax + 9]
xor edi, edx
movzx edx, byte [eax + 0xa]
imul edi, edi, 0x1000193
xor edi, edx
movzx edx, byte [eax + 0xb]
imul edi, edi, 0x1000193
xor edi, edx
imul edx, edi, 0x1000193
mov edi, dword [ebx + 0x18]
and edi, edx
mov edx, dword [ebx + 0xc]
lea edx, [edx + edi*8]
mov edi, dword [edx]
mov dword [ebp - 8], edx
cmp edi, esi
jne 0x1005f193
mov dword [edx], eax
mov dword [edx + 4], eax
jmp 0x1005f203
mov edx, dword [edx + 4]
mov ebx, dword [eax + 8]
cmp ebx, dword [edx + 8]
jne 0x1005f1cd
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
cmp edx, eax
je 0x1005f1c5
mov ebx, dword [eax + 4]
mov esi, dword [ebp - 0xc]
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
mov edx, dword [ebp - 8]
mov dword [edx + 4], eax
jmp 0x1005f200
cmp edi, edx
je 0x1005f1dd
mov edx, dword [edx + 4]
cmp ebx, dword [edx + 8]
je 0x1005f216
cmp edi, edx
jne 0x1005f1d1
mov ebx, dword [eax + 4]
mov dword [ebp - 0xc], ebx
mov dword [ebx], ecx
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov dword [edx + 4], ebx
mov edx, dword [ebp - 0xc]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 8]
mov dword [eax + 4], edi
mov dword [edx], eax
mov ebx, dword [ebp - 4]
mov eax, ecx
cmp ecx, esi
jne 0x1005f142
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [eax + 4]
mov edx, dword [edx]
mov dword [ebp - 0xc], edx
mov esi, edx
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
jmp 0x1005f200
push 0x102db914
call fcn.1009f8bd
int3

Function at 0x100621c0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push esi
mov esi, dword [ebp + 0x10]
xor ecx, ecx
push edi
mov edi, dword [ebp + 0xc]
test esi, esi
je 0x100621eb
mov edx, dword [ebp + 8]
movzx eax, byte [edi + ecx]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jb 0x100621d4
pop edi
mov eax, edx
pop esi
pop ebp
ret
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebp
ret