joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1006b5b0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
mov eax, dword [0x102cdf00]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x102b3708], 0
mov eax, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ebx
je 0x1006b632
cmp byte [0x102b3709], 0
jne 0x1006b676
mov byte [0x102b3709], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x102b3724]
xor ebx, dword [0x102b3720]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x102b370a], al
inc esi
cmp esi, 0x10
jb 0x1006b5f1
jmp 0x1006b673
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x102b3724]
xor ebx, dword [0x102b3720]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x102b370a], al
inc esi
cmp esi, 0x10
jb 0x1006b634
mov ebx, dword [ebp - 0x24]
lea eax, [ebp - 0x1d]
push eax
push 0x102b3719
push 0x102b370a
lea ecx, [ebp - 0x1c]
call fcn.1004f130
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
cmova eax, dword [ebp - 0x1c]
push eax
push dword [ebp - 0x28]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, dword [ebp - 8]
mov esi, eax
cmp ecx, 0xf
jbe 0x1006b6d9
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1006b6cf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1006b6cf
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1010f4da
add esp, 8
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
test esi, esi
jne 0x1006b6f3
mov dword [edi], esi
jmp 0x1006b705
cmp dword [ebx + 0x14], 0xf
jbe 0x1006b6fb
mov ebx, dword [ebx]
push 0
push ebx
call esi
add esp, 8
mov dword [edi], eax
mov ecx, dword [ebp - 4]
mov eax, edi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.1010f802
mov esp, ebp
pop ebp
ret 0xc

Function at 0x10071ec0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov edx, dword [ebp + 8]
movzx eax, byte [edx]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edx + 1]
xor ecx, eax
movzx eax, byte [edx + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 4]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 5]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 6]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edx + 7]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
pop ebp
ret 4
Function at 0x10072570
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 8
call fcn.1010f4aa
add esp, 4
test eax, eax
je 0x10072592
mov ecx, dword [ebp + 0x14]
mov ecx, dword [ecx]
mov dword [eax], ecx
mov ecx, dword [ebp + 0x10]
mov ecx, dword [ecx]
mov dword [eax + 4], ecx
jmp 0x10072594
xor eax, eax
push esi
mov esi, dword [ebp + 0xc]
push edi
lea edi, [esi + 4]
push edi
push 0
push eax
push 0x100722b0
push 0
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
add esp, 0x18
mov dword [esi], eax
test eax, eax
je 0x100725bc
pop edi
pop esi
pop ebp
ret
push 6
mov dword [edi], 0
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3

Function at 0x10076230
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
cmp byte [0x102b7248], 0
push ebx
push esi
je 0x100762a1
cmp byte [0x102b7249], 0
jne 0x100762e2
mov byte [0x102b7249], 1
xor esi, esi
nop word [eax + eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x102b727c]
xor ebx, dword [0x102b7278]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x102b724a], al
inc esi
cmp esi, 0x28
jb 0x10076260
jmp 0x100762e2
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x102b727c]
xor ebx, dword [0x102b7278]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x102b724a], al
inc esi
cmp esi, 0x28
jb 0x100762a3
mov ecx, dword [ebp + 8]
lea eax, [ebp - 1]
push eax
push 0x102b7271
push 0x102b724a
call fcn.1004f130
mov eax, dword [ebp + 8]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4

Function at 0x10076330
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
cmp byte [0x102b72f8], 0
push ebx
push esi
je 0x100763a4
cmp byte [0x102b72f9], 0
jne 0x100763e8
mov byte [0x102b72f9], 1
xor esi, esi
nop word [eax + eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x102b73ac]
xor ebx, dword [0x102b73a8]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x102b72fa], al
inc esi
cmp esi, 0xaa
jb 0x10076360
jmp 0x100763e8
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x102b73ac]
xor ebx, dword [0x102b73a8]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x102b72fa], al
inc esi
cmp esi, 0xaa
jb 0x100763a6
mov ecx, dword [ebp + 8]
lea eax, [ebp - 1]
push eax
push 0x102b73a3
push 0x102b72fa
call fcn.1004f130
mov eax, dword [ebp + 8]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x10079770
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
cmp dword [ebp + 0xc], 1
push ebx
push esi
push edi
jne 0x100797dc
mov eax, dword [ebp + 8]
push 0x10077af0
push 1
mov dword [0x102cfe40], eax
call dword [sym.imp.KERNEL32.dll_AddVectoredExceptionHandler]
jmp 0x1007979a
mov eax, dword [0x102b0c50]
sub eax, dword [0x102b0c58]
xor eax, dword [0x102b0c54]
mov ecx, dword [ebp + 8]
push 0
push 0
push dword [ebp + 0x10]
mov dword [eax + 0x50], ecx
push 0x10077ab0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
jmp 0x100797d0
mov eax, 1
pop edi
pop esi
pop ebx
pop ebp
ret 0xc
pop edi
pop esi
xor eax, eax
pop ebx
pop ebp
ret 0xc
Function at 0x10082910
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
mov esi, ecx
push edi
cmp byte [esi], 0
lea edi, [esi + 2]
je 0x10082974
cmp byte [esi + 1], 0
jne 0x100829bf
xor ecx, ecx
mov byte [esi + 1], 1
mov dword [ebp - 8], ecx
mov ebx, ecx
xor edx, edx
xor edx, dword [esi + 0x44]
xor ebx, dword [esi + 0x40]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
mov ecx, dword [ebp - 8]
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [edi + ecx], al
inc ecx
mov dword [ebp - 8], ecx
cmp ecx, 0x37
jb 0x10082936
jmp 0x100829bf
xor ecx, ecx
mov dword [ebp - 8], ecx
nop dword [eax]
mov ebx, ecx
xor edx, edx
xor edx, dword [esi + 0x44]
xor ebx, dword [esi + 0x40]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
mov ecx, dword [ebp - 8]
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, byte [edi + ecx]
xor al, bl
mov byte [edi + ecx], al
inc ecx
mov dword [ebp - 8], ecx
cmp ecx, 0x37
jb 0x10082980
mov ecx, dword [ebp + 8]
lea eax, [ebp - 1]
push eax
lea eax, [esi + 0x38]
push eax
push edi
call fcn.1004f130
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4

Function at 0x10082bb0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28
mov eax, dword [0x102cdf00]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, ecx
cmp dword [esi + 0x38], 0
je 0x10082c6c
cmp byte [esi + 0x3d], 0
je 0x10082c6c
mov eax, dword [esi]
push edi
push 0xffffffffffffffff
call dword [eax + 0xc]
cmp eax, 0xffffffff
je 0x10082c5a
mov ecx, dword [esi + 0x38]
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x24]
push eax
lea eax, [esi + 0x40]
push eax
call dword [sym.imp.MSVCP140.dll_public:_int___thiscall_std::codecvt_char__char__struct__Mbstatet_::unshift_struct__Mbstatet___char___char___char___const]
sub eax, 0
je 0x10082c21
sub eax, 1
je 0x10082c25
sub eax, 2
jne 0x10082c5a
mov byte [esi + 0x3d], al
mov al, 1
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1010f802
mov esp, ebp
pop ebp
ret
mov byte [esi + 0x3d], 0
mov edi, dword [ebp - 0x28]
lea eax, [ebp - 0x24]
sub edi, eax
je 0x10082c43
push dword [esi + 0x4c]
push edi
push 1
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
add esp, 0x10
cmp edi, eax
jne 0x10082c5a
cmp byte [esi + 0x3d], 0
pop edi
sete al
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1010f802
mov esp, ebp
pop ebp
ret
pop edi
xor al, al
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1010f802
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov al, 1
xor ecx, ebp
pop esi
call fcn.1010f802
mov esp, ebp
pop ebp
ret
Function at 0x1008bab0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov eax, dword [0x102cdf00]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push eax
lea eax, [ebp - 0x1c]
push 0x102d2f60
push eax
call fcn.10081ed0
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
cmova eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_remove]
mov ecx, dword [ebp - 8]
add esp, 0x10
cmp ecx, 0xf
jbe 0x1008bb1d
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008bb13
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1008bb13
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1010f4da
add esp, 8
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1010f802
mov esp, ebp
pop ebp
ret
Function at 0x1009c3a0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
cmp byte [0x102c3c00], 0
push ebx
push esi
je 0x1009c411
cmp byte [0x102c3c01], 0
jne 0x1009c452
mov byte [0x102c3c01], 1
xor esi, esi
nop word [eax + eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x102c3c1c]
xor ebx, dword [0x102c3c18]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x102c3c02], al
inc esi
cmp esi, 0x12
jb 0x1009c3d0
jmp 0x1009c452
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x102c3c1c]
xor ebx, dword [0x102c3c18]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x102c3c02], al
inc esi
cmp esi, 0x12
jb 0x1009c413
mov ecx, dword [ebp + 8]
lea eax, [ebp - 1]
push eax
push 0x102c3c13
push 0x102c3c02
call fcn.1004f130
mov eax, dword [ebp + 8]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x100a30e0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, ecx
movzx eax, byte [esi]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
movzx eax, byte [esi + 1]
xor edx, eax
movzx eax, byte [esi + 2]
imul edx, edx, 0x1000193
xor edx, eax
movzx eax, byte [esi + 3]
imul ecx, edx, 0x1000193
lea edx, [ebx + 4]
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, dword [ebx + 0x18]
and ecx, eax
mov eax, dword [ebx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
lea ecx, [eax + ecx*8]
cmp esi, dword [edx]
jne 0x100a3136
xor esi, esi
jmp 0x100a3157
mov eax, dword [ebp + 8]
push edi
mov edi, dword [ecx]
mov eax, dword [eax]
cmp eax, dword [esi + 8]
je 0x100a3156
cmp esi, edi
je 0x100a3151
mov esi, dword [esi + 4]
cmp eax, dword [esi + 8]
jne 0x100a3143
jmp 0x100a3153
xor esi, esi
lea edx, [ebx + 4]
pop edi
test esi, esi
je 0x100a328b
mov eax, dword [ecx]
cmp dword [ecx + 4], esi
jne 0x100a317b
cmp eax, esi
jne 0x100a3173
mov eax, dword [edx]
mov dword [ecx], eax
mov dword [ecx + 4], eax
jmp 0x100a3183
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
jmp 0x100a3183
cmp eax, esi
jne 0x100a3183
mov eax, dword [esi]
mov dword [ecx], eax
mov ecx, dword [esi]
dec dword [ebx + 8]
mov eax, dword [esi + 4]
mov dword [eax], ecx
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov ecx, dword [esi + 0x88]
cmp ecx, 0xf
jbe 0x100a31ca
mov eax, dword [esi + 0x74]
inc ecx
cmp ecx, 0x1000
jb 0x100a31c0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a3285
mov eax, edx
push ecx
push eax
call fcn.1010f4da
add esp, 8
mov dword [esi + 0x84], 0
mov dword [esi + 0x88], 0xf
mov byte [esi + 0x74], 0
mov ecx, dword [esi + 0x70]
cmp ecx, 0xf
jbe 0x100a3212
mov eax, dword [esi + 0x5c]
inc ecx
cmp ecx, 0x1000
jb 0x100a3208
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a3285
mov eax, edx
push ecx
push eax
call fcn.1010f4da
add esp, 8
mov dword [esi + 0x6c], 0
mov dword [esi + 0x70], 0xf
mov byte [esi + 0x5c], 0
mov eax, dword [esi + 0x50]
test eax, eax
je 0x100a326c
mov ecx, dword [esi + 0x58]
sub ecx, eax
and ecx, 0xfffffff0
cmp ecx, 0x1000
jb 0x100a324d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a3285
mov eax, edx
push ecx
push eax
call fcn.1010f4da
mov dword [esi + 0x50], 0
add esp, 8
mov dword [esi + 0x54], 0
mov dword [esi + 0x58], 0
push 0x98
push esi
call fcn.1010f4da
add esp, 8
mov eax, 1
pop esi
pop ebx
pop ebp
ret 4
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
pop esi
xor eax, eax
pop ebx
pop ebp
ret 4
Function at 0x100a3a70
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push dword [ebp + 0x10]
lea eax, [ebp - 8]
mov dword [ebp - 8], 0x43800000
push 0
push 0
push eax
push dword [ebp + 8]
mov dword [ebp - 4], 0x42000000
call fcn.100a3b10
test al, al
je 0x100a3aed
test byte [ebp + 0x10], 1
jne 0x100a3aed
push 4
call fcn.1010f4aa
add esp, 4
test eax, eax
je 0x100a3ab6
mov ecx, dword [ebp + 0xc]
mov dword [eax], ecx
jmp 0x100a3ab8
xor eax, eax
lea ecx, [ebp - 4]
push ecx
push 0
push eax
push 0x100a3a40
push 0
push 0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
add esp, 0x18
mov dword [ebp - 8], eax
test eax, eax
je 0x100a3afa
mov ecx, dword [ebp - 4]
test ecx, ecx
je 0x100a3af3
push ecx
push eax
call sub.MSVCP140.dll__Thrd_detach
add esp, 8
test eax, eax
jne 0x100a3af3
mov esp, ebp
pop ebp
ret 0xc
push 1
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
push 6
mov dword [ebp - 4], 0
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3
Function at 0x100c9150
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
mov edx, 0xcbf29ce4
xor esi, esi
mov dword [ebp + 8], edx
mov ecx, 0x84222325
cmp byte [edi], 0
je 0x100c9177
nop dword [eax]
inc esi
cmp byte [edi + esi], 0
jne 0x100c9170
xor ebx, ebx
test esi, esi
je 0x100c91a5
nop dword [eax]
movsx eax, byte [edi + ebx]
push 0x100
cdq
xor edx, dword [ebp + 8]
xor eax, ecx
push 0x1b3
push edx
push eax
call fcn.1010fc90
inc ebx
mov dword [ebp + 8], edx
mov ecx, eax
cmp ebx, esi
jb 0x100c9180
pop edi
pop esi
mov eax, ecx
pop ebx
pop ebp
ret
Function at 0x100d06a0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
cmp byte [0x1019e005], 0
mov dword [ebp - 4], ecx
je 0x100d082b
mov ecx, dword [ebp + 8]
push ebx
push esi
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov ebx, eax
xor esi, esi
mov ecx, 0x84222325
mov edi, 0xcbf29ce4
cmp byte [ebx], 0
je 0x100d06db
inc esi
cmp byte [ebx + esi], 0
jne 0x100d06d4
xor eax, eax
mov dword [ebp - 8], eax
test esi, esi
je 0x100d0828
nop dword [eax + eax]
movsx eax, byte [ebx + eax]
push 0x100
cdq
push 0x1b3
xor edx, edi
xor eax, ecx
push edx
push eax
call fcn.1010fc90
mov ecx, eax
mov edi, edx
mov eax, dword [ebp - 8]
inc eax
mov dword [ebp - 8], eax
cmp eax, esi
jb 0x100d06f0
cmp edi, 0x3943e50e
ja 0x100d080d
jb 0x100d0733
cmp ecx, 0x2bb2e9fe
ja 0x100d080d
cmp ecx, 0x2bb2e9fe
jne 0x100d07c5
cmp edi, 0x3943e50e
jne 0x100d07c5
mov ecx, dword [0x1019e080]
test ecx, ecx
je 0x100d0828
mov eax, dword [0x102cf04c]
test al, 1
jne 0x100d0772
or eax, 1
mov dword [0x102cf04c], eax
mov eax, dword [0x102cf044]
mov dword [0x102cf048], eax
jmp 0x100d0777
mov eax, dword [0x102cf048]
cmp dword [eax + ecx], 0
jne 0x100d0828
mov eax, dword [0x102cf054]
test al, 1
jne 0x100d079e
or eax, 1
mov dword [0x102cf054], eax
mov eax, dword [0x102cf040]
mov dword [0x102cf050], eax
jmp 0x100d07a3
mov eax, dword [0x102cf050]
cmp dword [eax + ecx], 0
jle 0x100d0828
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
cmp ecx, dword [eax + 0xc]
je 0x100d0828
cmp byte [ecx], 0
jne 0x100d0828
pop edi
pop esi
mov byte [ecx], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp ecx, 0x5de24d68
jne 0x100d07e9
cmp edi, 0x4251ee7
jne 0x100d07e9
push dword [ebp + 8]
mov ecx, dword [ebp - 4]
call fcn.100d0170
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp ecx, 0xedb6640
jne 0x100d0828
cmp edi, 0x1baa64fb
jne 0x100d0828
push dword [ebp + 8]
mov ecx, dword [ebp - 4]
call fcn.100d1380
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
cmp ecx, 0xb118f470
jne 0x100d0828
cmp edi, 0xd089c265
jne 0x100d0828
push dword [ebp + 8]
mov ecx, dword [ebp - 4]
call fcn.100d0c20
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x100d1380
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov eax, dword [0x102cdf00]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
push edi
mov dword [ebp - 0x24], ebx
lea edi, [ebx + 0x13fc]
lea eax, [edi + 0x104]
cmp eax, edi
sbb ecx, ecx
and ecx, 0xffffffbf
add ecx, 0x41
cmp edi, eax
ja 0x100d13b5
xor eax, eax
rep stosd dword es:[edi], eax
lea ecx, [ebx + 0xb0]
lea edx, [ecx + 0x134c]
cmp ecx, edx
je 0x100d1467
add ecx, 0x44
nop dword [eax]
mov eax, dword [ecx - 0x40]
cmp eax, dword [ecx - 0x3c]
je 0x100d13db
mov dword [ecx - 0x3c], eax
cmp byte [ecx - 0x34], 0
je 0x100d144c
mov dword [ecx - 0x34], 0
mov word [ecx - 0x30], 0
mov byte [ecx - 0x2e], 0
mov dword [ecx - 0x2c], 0xffffffff
mov dword [ecx - 0x28], 0
mov dword [ecx - 0x24], 0
mov dword [ecx - 0x18], 0
mov dword [ecx - 0x20], 0
mov dword [ecx - 0x1c], 0
mov dword [ecx - 0x14], 0
mov dword [ecx - 0x10], 0
mov dword [ecx - 0xc], 0
mov dword [ecx - 8], 0
mov dword [ecx + 4], 0
mov dword [ecx], 0
mov dword [ecx - 4], 0
cmp dword [ecx - 0x44], 0
je 0x100d1459
mov dword [ecx - 0x44], 0
add ecx, 0x4c
lea eax, [ecx - 0x44]
cmp eax, edx
jne 0x100d13d0
cmp byte [0x1019e012], 0
jne 0x100d1477
mov byte [0x1019e012], 1
test byte [0x102c0d4c], 4
push esi
je 0x100d1590
cmp byte [0x102c95b0], 0
mov edi, dword [0x102d317c]
je 0x100d14f1
cmp byte [0x102c95b1], 0
jne 0x100d1535
mov byte [0x102c95b1], 1
xor esi, esi
nop word [eax + eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x102c95ec]
xor ebx, dword [0x102c95e8]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x102c95b2], al
inc esi
cmp esi, 0x30
jb 0x100d14b0
jmp 0x100d1532
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x102c95ec]
xor ebx, dword [0x102c95e8]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x102c95b2], al
inc esi
cmp esi, 0x30
jb 0x100d14f3
mov ebx, dword [ebp - 0x24]
lea eax, [ebp - 0x1d]
push eax
push 0x102c95e1
push 0x102c95b2
lea ecx, [ebp - 0x1c]
call fcn.1004f130
push 1
push 0xffffffffffffffff
lea eax, [ebp - 0x1c]
mov ecx, edi
push eax
call fcn.100fdf40
mov ecx, dword [ebp - 8]
cmp ecx, 0xf
jbe 0x100d1590
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100d1586
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100d1586
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1010f4da
add esp, 8
mov eax, dword [ebx + 8]
lea esi, [ebx + 8]
mov ecx, dword [esi + 4]
cmp eax, ecx
je 0x100d15ad
push esi
push ecx
push eax
call fcn.100ce8b0
mov eax, dword [esi]
add esp, 0xc
mov dword [esi + 4], eax
mov ecx, dword [ebp - 4]
pop esi
pop edi
xor ecx, ebp
pop ebx
call fcn.1010f802
mov esp, ebp
pop ebp
ret 4
Function at 0x100e7360
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov edx, dword [ebp + 0xc]
mov eax, ecx
push ebx
push esi
push edi
cmp dword [edx + 0x14], 0xf
mov edi, edx
mov ebx, dword [edx + 0x10]
mov dword [ebp - 4], eax
jbe 0x100e737e
mov edi, dword [edx]
xor ecx, ecx
mov esi, 0x811c9dc5
test ebx, ebx
je 0x100e73a4
nop dword [eax]
movzx eax, byte [edi + ecx]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, ebx
jb 0x100e7390
mov eax, dword [ebp - 4]
push esi
push edx
lea ecx, [ebp - 0xc]
push ecx
mov ecx, eax
call fcn.100e5c70
pop edi
pop esi
pop ebx
mov ecx, dword [eax + 4]
mov eax, dword [ebp + 8]
test ecx, ecx
jne 0x100e73c4
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 4]
mov dword [eax], ecx
mov esp, ebp
pop ebp
ret 8

Function at 0x100e74e0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
mov esi, ecx
push edi
cmp byte [esi], 0
lea edi, [esi + 2]
je 0x100e7544
cmp byte [esi + 1], 0
jne 0x100e758f
xor ecx, ecx
mov byte [esi + 1], 1
mov dword [ebp - 8], ecx
mov ebx, ecx
xor edx, edx
xor edx, dword [esi + 0x44]
xor ebx, dword [esi + 0x40]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
mov ecx, dword [ebp - 8]
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [edi + ecx], al
inc ecx
mov dword [ebp - 8], ecx
cmp ecx, 0x3a
jb 0x100e7506
jmp 0x100e758f
xor ecx, ecx
mov dword [ebp - 8], ecx
nop dword [eax]
mov ebx, ecx
xor edx, edx
xor edx, dword [esi + 0x44]
xor ebx, dword [esi + 0x40]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
mov ecx, dword [ebp - 8]
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, byte [edi + ecx]
xor al, bl
mov byte [edi + ecx], al
inc ecx
mov dword [ebp - 8], ecx
cmp ecx, 0x3a
jb 0x100e7550
mov ecx, dword [ebp + 8]
lea eax, [ebp - 1]
push eax
lea eax, [esi + 0x3b]
push eax
push edi
call fcn.1004f130
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4