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

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, ecx
push esi
push ebx
sub esp, 0x2c
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 4]
lea ecx, [ecx + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.005e8790
sub esp, 0xc
test al, al
mov dword [ebp - 0x1c], edx
jne 0x6031f6
mov eax, dword [ebp + 8]
mov ecx, dword [edi]
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov edx, dword [eax]
test edx, edx
je 0x6032cf
mov esi, dword [ebp + 0x10]
mov edx, dword [edx]
mov dword [esi], edx
mov eax, dword [eax]
mov dword [eax], esi
mov eax, esi
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
cmp dword [ebp - 0x1c], 0x3fffffff
ja 0x60330d
mov eax, dword [ebp - 0x1c]
lea ebx, [eax*4]
mov dword [esp], ebx
call fcn.006540e0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [ebp - 0x28], eax
call sub.msvcrt.dll_memset
mov ebx, dword [edi + 8]
lea eax, [edi + 8]
mov dword [edi + 8], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x2c], eax
test ebx, ebx
je 0x60329a
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x28]
jmp 0x60325e
mov eax, dword [eax]
mov dword [ebx], eax
mov eax, dword [ecx]
mov dword [eax], ebx
test esi, esi
je 0x603297
mov ebx, esi
mov eax, dword [ebx + 4]
xor edx, edx
mov esi, dword [ebx]
div dword [ebp - 0x1c]
lea ecx, [edi + edx*4]
mov eax, dword [ecx]
test eax, eax
jne 0x603250
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
mov dword [ebx], eax
mov eax, dword [ebp - 0x20]
mov dword [eax + 8], ebx
mov eax, dword [ebp - 0x2c]
mov dword [ecx], eax
mov eax, dword [ebx]
test eax, eax
je 0x603305
mov eax, dword [ebp - 0x24]
test esi, esi
mov dword [ebp - 0x24], edx
mov dword [edi + eax*4], ebx
jne 0x60325c
mov edi, dword [ebp - 0x20]
mov eax, dword [edi]
mov dword [esp], eax
call fcn.00654030
mov esi, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x28]
mov dword [edi + 4], esi
div esi
mov dword [edi], ecx
mov eax, edx
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov dword [ebp + 8], edx
mov edx, dword [eax]
test edx, edx
jne 0x6031db
mov edx, dword [edi + 8]
mov esi, dword [ebp + 0x10]
mov dword [esi], edx
mov dword [edi + 8], esi
mov edx, dword [esi]
test edx, edx
je 0x6032ef
mov eax, dword [edx + 4]
xor edx, edx
div dword [edi + 4]
mov dword [ecx + edx*4], esi
mov eax, dword [edi]
add eax, ebx
lea edx, [edi + 8]
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov dword [ebp - 0x24], edx
jmp 0x603258
call fcn.0064b240
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
Function at 0x603320
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, ecx
push esi
push ebx
sub esp, 0x2c
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 4]
lea ecx, [ecx + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.005e8790
sub esp, 0xc
test al, al
mov dword [ebp - 0x1c], edx
jne 0x603386
mov eax, dword [ebp + 8]
mov ecx, dword [edi]
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov edx, dword [eax]
test edx, edx
je 0x60345f
mov esi, dword [ebp + 0x10]
mov edx, dword [edx]
mov dword [esi], edx
mov eax, dword [eax]
mov dword [eax], esi
mov eax, esi
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
cmp dword [ebp - 0x1c], 0x3fffffff
ja 0x60349d
mov eax, dword [ebp - 0x1c]
lea ebx, [eax*4]
mov dword [esp], ebx
call fcn.006540e0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [ebp - 0x28], eax
call sub.msvcrt.dll_memset
mov ebx, dword [edi + 8]
lea eax, [edi + 8]
mov dword [edi + 8], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x2c], eax
test ebx, ebx
je 0x60342a
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x28]
jmp 0x6033ee
mov eax, dword [eax]
mov dword [ebx], eax
mov eax, dword [ecx]
mov dword [eax], ebx
test esi, esi
je 0x603427
mov ebx, esi
mov eax, dword [ebx + 4]
xor edx, edx
mov esi, dword [ebx]
div dword [ebp - 0x1c]
lea ecx, [edi + edx*4]
mov eax, dword [ecx]
test eax, eax
jne 0x6033e0
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
mov dword [ebx], eax
mov eax, dword [ebp - 0x20]
mov dword [eax + 8], ebx
mov eax, dword [ebp - 0x2c]
mov dword [ecx], eax
mov eax, dword [ebx]
test eax, eax
je 0x603495
mov eax, dword [ebp - 0x24]
test esi, esi
mov dword [ebp - 0x24], edx
mov dword [edi + eax*4], ebx
jne 0x6033ec
mov edi, dword [ebp - 0x20]
mov eax, dword [edi]
mov dword [esp], eax
call fcn.00654030
mov esi, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x28]
mov dword [edi + 4], esi
div esi
mov dword [edi], ecx
mov eax, edx
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov dword [ebp + 8], edx
mov edx, dword [eax]
test edx, edx
jne 0x60336b
mov edx, dword [edi + 8]
mov esi, dword [ebp + 0x10]
mov dword [esi], edx
mov dword [edi + 8], esi
mov edx, dword [esi]
test edx, edx
je 0x60347f
mov eax, dword [edx + 4]
xor edx, edx
div dword [edi + 4]
mov dword [ecx + edx*4], esi
mov eax, dword [edi]
add eax, ebx
lea edx, [edi + 8]
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov dword [ebp - 0x24], edx
jmp 0x6033e8
call fcn.0064b240
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
Function at 0x6034b0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, ecx
push esi
push ebx
sub esp, 0x2c
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 4]
lea ecx, [ecx + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.005e8790
sub esp, 0xc
test al, al
mov dword [ebp - 0x1c], edx
jne 0x603516
mov eax, dword [ebp + 8]
mov ecx, dword [edi]
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov edx, dword [eax]
test edx, edx
je 0x6035ef
mov esi, dword [ebp + 0x10]
mov edx, dword [edx]
mov dword [esi], edx
mov eax, dword [eax]
mov dword [eax], esi
mov eax, esi
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
cmp dword [ebp - 0x1c], 0x3fffffff
ja 0x60362d
mov eax, dword [ebp - 0x1c]
lea ebx, [eax*4]
mov dword [esp], ebx
call fcn.006540e0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [ebp - 0x28], eax
call sub.msvcrt.dll_memset
mov ebx, dword [edi + 8]
lea eax, [edi + 8]
mov dword [edi + 8], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x2c], eax
test ebx, ebx
je 0x6035ba
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x28]
jmp 0x60357e
mov eax, dword [eax]
mov dword [ebx], eax
mov eax, dword [ecx]
mov dword [eax], ebx
test esi, esi
je 0x6035b7
mov ebx, esi
mov eax, dword [ebx + 4]
xor edx, edx
mov esi, dword [ebx]
div dword [ebp - 0x1c]
lea ecx, [edi + edx*4]
mov eax, dword [ecx]
test eax, eax
jne 0x603570
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
mov dword [ebx], eax
mov eax, dword [ebp - 0x20]
mov dword [eax + 8], ebx
mov eax, dword [ebp - 0x2c]
mov dword [ecx], eax
mov eax, dword [ebx]
test eax, eax
je 0x603625
mov eax, dword [ebp - 0x24]
test esi, esi
mov dword [ebp - 0x24], edx
mov dword [edi + eax*4], ebx
jne 0x60357c
mov edi, dword [ebp - 0x20]
mov eax, dword [edi]
mov dword [esp], eax
call fcn.00654030
mov esi, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x28]
mov dword [edi + 4], esi
div esi
mov dword [edi], ecx
mov eax, edx
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov dword [ebp + 8], edx
mov edx, dword [eax]
test edx, edx
jne 0x6034fb
mov edx, dword [edi + 8]
mov esi, dword [ebp + 0x10]
mov dword [esi], edx
mov dword [edi + 8], esi
mov edx, dword [esi]
test edx, edx
je 0x60360f
mov eax, dword [edx + 4]
xor edx, edx
div dword [edi + 4]
mov dword [ecx + edx*4], esi
mov eax, dword [edi]
add eax, ebx
lea edx, [edi + 8]
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov dword [ebp - 0x24], edx
jmp 0x603578
call fcn.0064b240
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
Function at 0x603640
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, ecx
push esi
push ebx
sub esp, 0x2c
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 4]
lea ecx, [ecx + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.005e8790
sub esp, 0xc
test al, al
mov dword [ebp - 0x1c], edx
jne 0x6036a6
mov eax, dword [ebp + 8]
mov ecx, dword [edi]
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov edx, dword [eax]
test edx, edx
je 0x60377f
mov esi, dword [ebp + 0x10]
mov edx, dword [edx]
mov dword [esi], edx
mov eax, dword [eax]
mov dword [eax], esi
mov eax, esi
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
cmp dword [ebp - 0x1c], 0x3fffffff
ja 0x6037bd
mov eax, dword [ebp - 0x1c]
lea ebx, [eax*4]
mov dword [esp], ebx
call fcn.006540e0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [ebp - 0x28], eax
call sub.msvcrt.dll_memset
mov ebx, dword [edi + 8]
lea eax, [edi + 8]
mov dword [edi + 8], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x2c], eax
test ebx, ebx
je 0x60374a
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x28]
jmp 0x60370e
mov eax, dword [eax]
mov dword [ebx], eax
mov eax, dword [ecx]
mov dword [eax], ebx
test esi, esi
je 0x603747
mov ebx, esi
mov eax, dword [ebx + 4]
xor edx, edx
mov esi, dword [ebx]
div dword [ebp - 0x1c]
lea ecx, [edi + edx*4]
mov eax, dword [ecx]
test eax, eax
jne 0x603700
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
mov dword [ebx], eax
mov eax, dword [ebp - 0x20]
mov dword [eax + 8], ebx
mov eax, dword [ebp - 0x2c]
mov dword [ecx], eax
mov eax, dword [ebx]
test eax, eax
je 0x6037b5
mov eax, dword [ebp - 0x24]
test esi, esi
mov dword [ebp - 0x24], edx
mov dword [edi + eax*4], ebx
jne 0x60370c
mov edi, dword [ebp - 0x20]
mov eax, dword [edi]
mov dword [esp], eax
call fcn.00654030
mov esi, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x28]
mov dword [edi + 4], esi
div esi
mov dword [edi], ecx
mov eax, edx
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov dword [ebp + 8], edx
mov edx, dword [eax]
test edx, edx
jne 0x60368b
mov edx, dword [edi + 8]
mov esi, dword [ebp + 0x10]
mov dword [esi], edx
mov dword [edi + 8], esi
mov edx, dword [esi]
test edx, edx
je 0x60379f
mov eax, dword [edx + 4]
xor edx, edx
div dword [edi + 4]
mov dword [ecx + edx*4], esi
mov eax, dword [edi]
add eax, ebx
lea edx, [edi + 8]
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov dword [ebp - 0x24], edx
jmp 0x603708
call fcn.0064b240
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
Function at 0x6037d0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, ecx
push esi
push ebx
sub esp, 0x2c
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 4]
lea ecx, [ecx + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.005e8790
sub esp, 0xc
test al, al
mov dword [ebp - 0x1c], edx
jne 0x603836
mov eax, dword [ebp + 8]
mov ecx, dword [edi]
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov edx, dword [eax]
test edx, edx
je 0x60390f
mov esi, dword [ebp + 0x10]
mov edx, dword [edx]
mov dword [esi], edx
mov eax, dword [eax]
mov dword [eax], esi
mov eax, esi
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
cmp dword [ebp - 0x1c], 0x3fffffff
ja 0x60394d
mov eax, dword [ebp - 0x1c]
lea ebx, [eax*4]
mov dword [esp], ebx
call fcn.006540e0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [ebp - 0x28], eax
call sub.msvcrt.dll_memset
mov ebx, dword [edi + 8]
lea eax, [edi + 8]
mov dword [edi + 8], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x2c], eax
test ebx, ebx
je 0x6038da
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x28]
jmp 0x60389e
mov eax, dword [eax]
mov dword [ebx], eax
mov eax, dword [ecx]
mov dword [eax], ebx
test esi, esi
je 0x6038d7
mov ebx, esi
mov eax, dword [ebx + 4]
xor edx, edx
mov esi, dword [ebx]
div dword [ebp - 0x1c]
lea ecx, [edi + edx*4]
mov eax, dword [ecx]
test eax, eax
jne 0x603890
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
mov dword [ebx], eax
mov eax, dword [ebp - 0x20]
mov dword [eax + 8], ebx
mov eax, dword [ebp - 0x2c]
mov dword [ecx], eax
mov eax, dword [ebx]
test eax, eax
je 0x603945
mov eax, dword [ebp - 0x24]
test esi, esi
mov dword [ebp - 0x24], edx
mov dword [edi + eax*4], ebx
jne 0x60389c
mov edi, dword [ebp - 0x20]
mov eax, dword [edi]
mov dword [esp], eax
call fcn.00654030
mov esi, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x28]
mov dword [edi + 4], esi
div esi
mov dword [edi], ecx
mov eax, edx
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov dword [ebp + 8], edx
mov edx, dword [eax]
test edx, edx
jne 0x60381b
mov edx, dword [edi + 8]
mov esi, dword [ebp + 0x10]
mov dword [esi], edx
mov dword [edi + 8], esi
mov edx, dword [esi]
test edx, edx
je 0x60392f
mov eax, dword [edx + 4]
xor edx, edx
div dword [edi + 4]
mov dword [ecx + edx*4], esi
mov eax, dword [edi]
add eax, ebx
lea edx, [edi + 8]
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov dword [ebp - 0x24], edx
jmp 0x603898
call fcn.0064b240
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
Function at 0x603960
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, ecx
push esi
push ebx
sub esp, 0x2c
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 4]
lea ecx, [ecx + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.005e8790
sub esp, 0xc
test al, al
mov dword [ebp - 0x1c], edx
jne 0x6039c6
mov eax, dword [ebp + 8]
mov ecx, dword [edi]
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov edx, dword [eax]
test edx, edx
je 0x603a9f
mov esi, dword [ebp + 0x10]
mov edx, dword [edx]
mov dword [esi], edx
mov eax, dword [eax]
mov dword [eax], esi
mov eax, esi
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
cmp dword [ebp - 0x1c], 0x3fffffff
ja 0x603add
mov eax, dword [ebp - 0x1c]
lea ebx, [eax*4]
mov dword [esp], ebx
call fcn.006540e0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [ebp - 0x28], eax
call sub.msvcrt.dll_memset
mov ebx, dword [edi + 8]
lea eax, [edi + 8]
mov dword [edi + 8], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x2c], eax
test ebx, ebx
je 0x603a6a
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x28]
jmp 0x603a2e
mov eax, dword [eax]
mov dword [ebx], eax
mov eax, dword [ecx]
mov dword [eax], ebx
test esi, esi
je 0x603a67
mov ebx, esi
mov eax, dword [ebx + 4]
xor edx, edx
mov esi, dword [ebx]
div dword [ebp - 0x1c]
lea ecx, [edi + edx*4]
mov eax, dword [ecx]
test eax, eax
jne 0x603a20
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
mov dword [ebx], eax
mov eax, dword [ebp - 0x20]
mov dword [eax + 8], ebx
mov eax, dword [ebp - 0x2c]
mov dword [ecx], eax
mov eax, dword [ebx]
test eax, eax
je 0x603ad5
mov eax, dword [ebp - 0x24]
test esi, esi
mov dword [ebp - 0x24], edx
mov dword [edi + eax*4], ebx
jne 0x603a2c
mov edi, dword [ebp - 0x20]
mov eax, dword [edi]
mov dword [esp], eax
call fcn.00654030
mov esi, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x28]
mov dword [edi + 4], esi
div esi
mov dword [edi], ecx
mov eax, edx
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov dword [ebp + 8], edx
mov edx, dword [eax]
test edx, edx
jne 0x6039ab
mov edx, dword [edi + 8]
mov esi, dword [ebp + 0x10]
mov dword [esi], edx
mov dword [edi + 8], esi
mov edx, dword [esi]
test edx, edx
je 0x603abf
mov eax, dword [edx + 4]
xor edx, edx
div dword [edi + 4]
mov dword [ecx + edx*4], esi
mov eax, dword [edi]
add eax, ebx
lea edx, [edi + 8]
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov dword [ebp - 0x24], edx
jmp 0x603a28
call fcn.0064b240
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
Function at 0x603af0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, ecx
push esi
push ebx
sub esp, 0x2c
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 4]
lea ecx, [ecx + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.005e8790
sub esp, 0xc
test al, al
mov dword [ebp - 0x1c], edx
jne 0x603b56
mov eax, dword [ebp + 8]
mov ecx, dword [edi]
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov edx, dword [eax]
test edx, edx
je 0x603c2f
mov esi, dword [ebp + 0x10]
mov edx, dword [edx]
mov dword [esi], edx
mov eax, dword [eax]
mov dword [eax], esi
mov eax, esi
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
cmp dword [ebp - 0x1c], 0x3fffffff
ja 0x603c6d
mov eax, dword [ebp - 0x1c]
lea ebx, [eax*4]
mov dword [esp], ebx
call fcn.006540e0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [ebp - 0x28], eax
call sub.msvcrt.dll_memset
mov ebx, dword [edi + 8]
lea eax, [edi + 8]
mov dword [edi + 8], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x2c], eax
test ebx, ebx
je 0x603bfa
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x28]
jmp 0x603bbe
mov eax, dword [eax]
mov dword [ebx], eax
mov eax, dword [ecx]
mov dword [eax], ebx
test esi, esi
je 0x603bf7
mov ebx, esi
mov eax, dword [ebx + 4]
xor edx, edx
mov esi, dword [ebx]
div dword [ebp - 0x1c]
lea ecx, [edi + edx*4]
mov eax, dword [ecx]
test eax, eax
jne 0x603bb0
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
mov dword [ebx], eax
mov eax, dword [ebp - 0x20]
mov dword [eax + 8], ebx
mov eax, dword [ebp - 0x2c]
mov dword [ecx], eax
mov eax, dword [ebx]
test eax, eax
je 0x603c65
mov eax, dword [ebp - 0x24]
test esi, esi
mov dword [ebp - 0x24], edx
mov dword [edi + eax*4], ebx
jne 0x603bbc
mov edi, dword [ebp - 0x20]
mov eax, dword [edi]
mov dword [esp], eax
call fcn.00654030
mov esi, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x28]
mov dword [edi + 4], esi
div esi
mov dword [edi], ecx
mov eax, edx
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov dword [ebp + 8], edx
mov edx, dword [eax]
test edx, edx
jne 0x603b3b
mov edx, dword [edi + 8]
mov esi, dword [ebp + 0x10]
mov dword [esi], edx
mov dword [edi + 8], esi
mov edx, dword [esi]
test edx, edx
je 0x603c4f
mov eax, dword [edx + 4]
xor edx, edx
div dword [edi + 4]
mov dword [ecx + edx*4], esi
mov eax, dword [edi]
add eax, ebx
lea edx, [edi + 8]
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov dword [ebp - 0x24], edx
jmp 0x603bb8
call fcn.0064b240
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
Function at 0x603c80
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, ecx
push esi
push ebx
sub esp, 0x2c
mov edx, dword [ecx + 0xc]
mov eax, dword [ecx + 4]
lea ecx, [ecx + 0x10]
mov dword [esp + 8], 1
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.005e8790
sub esp, 0xc
test al, al
mov dword [ebp - 0x1c], edx
jne 0x603cf0
mov ecx, dword [edi]
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
mov dword [eax + 0xc], esi
mov eax, dword [ebp + 8]
lea ebx, [eax*4]
lea eax, [ecx + ebx]
mov edx, dword [eax]
test edx, edx
je 0x603dc0
mov esi, dword [ebp + 0x10]
mov edx, dword [edx]
mov dword [esi], edx
mov eax, dword [eax]
mov dword [eax], esi
mov eax, esi
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
cmp dword [ebp - 0x1c], 0x3fffffff
ja 0x603dfe
mov eax, dword [ebp - 0x1c]
lea ebx, [eax*4]
mov dword [esp], ebx
call fcn.006540e0
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [ebp - 0x28], eax
call sub.msvcrt.dll_memset
mov ebx, dword [edi + 8]
lea eax, [edi + 8]
mov dword [edi + 8], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x2c], eax
test ebx, ebx
je 0x603d9a
mov dword [ebp - 0x20], edi
mov edi, dword [ebp - 0x28]
jmp 0x603d5e
mov eax, dword [eax]
mov dword [ebx], eax
mov eax, dword [ecx]
mov dword [eax], ebx
test esi, esi
je 0x603d97
mov ebx, esi
mov eax, dword [ebx + 0xc]
xor edx, edx
mov esi, dword [ebx]
div dword [ebp - 0x1c]
lea ecx, [edi + edx*4]
mov eax, dword [ecx]
test eax, eax
jne 0x603d50
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
mov dword [ebx], eax
mov eax, dword [ebp - 0x20]
mov dword [eax + 8], ebx
mov eax, dword [ebp - 0x2c]
mov dword [ecx], eax
mov eax, dword [ebx]
test eax, eax
je 0x603df6
mov eax, dword [ebp - 0x24]
test esi, esi
mov dword [ebp - 0x24], edx
mov dword [edi + eax*4], ebx
jne 0x603d5c
mov edi, dword [ebp - 0x20]
mov eax, dword [edi]
mov dword [esp], eax
call fcn.00654030
mov esi, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x28]
mov dword [edi + 4], esi
div esi
mov dword [edi], ecx
mov dword [ebp + 8], edx
jmp 0x603cb4
mov edx, dword [edi + 8]
mov esi, dword [ebp + 0x10]
mov dword [esi], edx
mov dword [edi + 8], esi
mov edx, dword [esi]
test edx, edx
je 0x603de0
mov eax, dword [edx + 0xc]
xor edx, edx
div dword [edi + 4]
mov dword [ecx + edx*4], esi
mov eax, dword [edi]
add eax, ebx
lea edx, [edi + 8]
mov dword [eax], edx
mov eax, dword [ebp + 0x10]
add dword [edi + 0xc], 1
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov dword [ebp - 0x24], edx
jmp 0x603d58
call fcn.0064b240
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
Function at 0x603e10
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x2c
mov eax, dword [ebp + 8]
mov dword [ebp - 0x2c], ecx
mov eax, dword [eax + 4]
mov edi, dword [eax - 0xc]
mov dword [ebp - 0x28], eax
test edi, edi
mov ecx, edi
mov dword [ebp - 0x20], edi
je 0x603f26
add ecx, eax
mov esi, 0x811c9dc5
lea esi, [esi]
movsx edx, byte [eax]
add eax, 1
xor edx, esi
imul esi, edx, 0x1000193
cmp eax, ecx
jne 0x603e40
mov ebx, dword [ebp - 0x2c]
xor edx, edx
mov eax, esi
mov edi, dword [ebx + 4]
div edi
mov eax, dword [ebx]
mov eax, dword [eax + edx*4]
mov dword [ebp - 0x1c], edx
test eax, eax
je 0x603e88
mov ebx, dword [eax]
mov ecx, dword [ebx + 0xc]
nop
cmp ecx, esi
je 0x603ee0
mov ebx, dword [ebx]
test ebx, ebx
je 0x603e88
mov ecx, dword [ebx + 0xc]
xor edx, edx
mov eax, ecx
div edi
cmp dword [ebp - 0x1c], edx
je 0x603e70
mov dword [esp], 0x10
call fcn.006540e0
test eax, eax
mov ebx, eax
je 0x603eb8
mov dword [eax], 0
lea ecx, [eax + 4]
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.005f4c40
mov dword [ebx + 0xc], 0
sub esp, 4
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2c]
mov dword [esp + 8], ebx
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.00603c80
mov edx, 1
sub esp, 0xc
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret 8
mov eax, dword [ebx + 8]
mov ecx, dword [ebp - 0x20]
mov edx, dword [eax - 0xc]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x28]
cmp edx, ecx
cmovbe ecx, edx
mov dword [esp + 8], ecx
mov dword [esp], eax
mov dword [ebp - 0x24], edx
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x603e74
mov edx, dword [ebp - 0x24]
cmp dword [ebp - 0x20], edx
jne 0x603e74
lea esp, [ebp - 0xc]
mov eax, ebx
xor edx, edx
pop ebx
pop esi
pop edi
pop ebp
ret 8
mov esi, 0x811c9dc5
jmp 0x603e52