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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x50f0ff
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
call fcn.00405194
mov dword [ebp - 0x18], 0x374f
cmp byte [ebp - 5], 0
je 0x50f03b
mov eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x50efcc
mov eax, dword [ebp - 0x20]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
jle 0x50f0e4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
mov edx, dword [ebp - 0x18]
shr edx, 8
xor al, dl
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x28]
xor eax, eax
mov al, byte [ebp - 0x11]
mov edx, 2
call fcn.00409d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0xbc6
add eax, 0x7dec
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50efe1
jmp 0x50f0e4
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x50f052
mov eax, dword [ebp - 0x24]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sar eax, 1
jns 0x50f05c
adc eax, 0
test eax, eax
jle 0x50f0e4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x10]
dec eax
mov edx, eax
add edx, edx
inc edx
mov ecx, 2
mov eax, dword [ebp - 4]
call fcn.0040568c
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
mov edx, 0x50f114
call fcn.004054ac
mov eax, dword [ebp - 0x2c]
call fcn.00409d9c
mov byte [ebp - 0x11], al
lea eax, [ebp - 0x34]
mov dl, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x18]
shr ecx, 8
xor dl, cl
call fcn.0040537c
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0xbc6
add eax, 0x7dec
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f06e
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50f106
lea eax, [ebp - 0x34]
mov edx, 4
call fcn.004051b8
ret
Function at 0x50f118
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x50f2a7
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
call fcn.00405194
mov dword [ebp - 0x18], 0x6005
cmp byte [ebp - 5], 0
je 0x50f1e3
mov eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x50f174
mov eax, dword [ebp - 0x20]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
jle 0x50f28c
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
mov edx, dword [ebp - 0x18]
shr edx, 8
xor al, dl
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x28]
xor eax, eax
mov al, byte [ebp - 0x11]
mov edx, 2
call fcn.00409d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0xae6f
add eax, 0xc79c
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f189
jmp 0x50f28c
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x50f1fa
mov eax, dword [ebp - 0x24]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sar eax, 1
jns 0x50f204
adc eax, 0
test eax, eax
jle 0x50f28c
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x10]
dec eax
mov edx, eax
add edx, edx
inc edx
mov ecx, 2
mov eax, dword [ebp - 4]
call fcn.0040568c
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
mov edx, 0x50f2bc
call fcn.004054ac
mov eax, dword [ebp - 0x2c]
call fcn.00409d9c
mov byte [ebp - 0x11], al
lea eax, [ebp - 0x34]
mov dl, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x18]
shr ecx, 8
xor dl, cl
call fcn.0040537c
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0xae6f
add eax, 0xc79c
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f216
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50f2ae
lea eax, [ebp - 0x34]
mov edx, 4
call fcn.004051b8
ret
Function at 0x50f2c0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x50f44f
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
call fcn.00405194
mov dword [ebp - 0x18], 0xeffd
cmp byte [ebp - 5], 0
je 0x50f38b
mov eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x50f31c
mov eax, dword [ebp - 0x20]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
jle 0x50f434
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
mov edx, dword [ebp - 0x18]
shr edx, 8
xor al, dl
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x28]
xor eax, eax
mov al, byte [ebp - 0x11]
mov edx, 2
call fcn.00409d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x656f
add eax, 0x5304
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f331
jmp 0x50f434
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x50f3a2
mov eax, dword [ebp - 0x24]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sar eax, 1
jns 0x50f3ac
adc eax, 0
test eax, eax
jle 0x50f434
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x10]
dec eax
mov edx, eax
add edx, edx
inc edx
mov ecx, 2
mov eax, dword [ebp - 4]
call fcn.0040568c
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
mov edx, 0x50f464
call fcn.004054ac
mov eax, dword [ebp - 0x2c]
call fcn.00409d9c
mov byte [ebp - 0x11], al
lea eax, [ebp - 0x34]
mov dl, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x18]
shr ecx, 8
xor dl, cl
call fcn.0040537c
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x656f
add eax, 0x5304
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f3be
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50f456
lea eax, [ebp - 0x34]
mov edx, 4
call fcn.004051b8
ret
Function at 0x50f468
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x50f5f7
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
call fcn.00405194
mov dword [ebp - 0x18], 0xa4a7
cmp byte [ebp - 5], 0
je 0x50f533
mov eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x50f4c4
mov eax, dword [ebp - 0x20]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
jle 0x50f5dc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
mov edx, dword [ebp - 0x18]
shr edx, 8
xor al, dl
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x28]
xor eax, eax
mov al, byte [ebp - 0x11]
mov edx, 2
call fcn.00409d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x5d6f
add eax, 0xf350
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f4d9
jmp 0x50f5dc
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x50f54a
mov eax, dword [ebp - 0x24]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sar eax, 1
jns 0x50f554
adc eax, 0
test eax, eax
jle 0x50f5dc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x10]
dec eax
mov edx, eax
add edx, edx
inc edx
mov ecx, 2
mov eax, dword [ebp - 4]
call fcn.0040568c
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
mov edx, 0x50f60c
call fcn.004054ac
mov eax, dword [ebp - 0x2c]
call fcn.00409d9c
mov byte [ebp - 0x11], al
lea eax, [ebp - 0x34]
mov dl, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x18]
shr ecx, 8
xor dl, cl
call fcn.0040537c
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x5d6f
add eax, 0xf350
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f566
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50f5fe
lea eax, [ebp - 0x34]
mov edx, 4
call fcn.004051b8
ret
Function at 0x50f610
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x50f79f
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
call fcn.00405194
mov dword [ebp - 0x18], 0xe183
cmp byte [ebp - 5], 0
je 0x50f6db
mov eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x50f66c
mov eax, dword [ebp - 0x20]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
jle 0x50f784
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
mov edx, dword [ebp - 0x18]
shr edx, 8
xor al, dl
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x28]
xor eax, eax
mov al, byte [ebp - 0x11]
mov edx, 2
call fcn.00409d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0xc043
add eax, 0x56db
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f681
jmp 0x50f784
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x50f6f2
mov eax, dword [ebp - 0x24]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sar eax, 1
jns 0x50f6fc
adc eax, 0
test eax, eax
jle 0x50f784
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
Function at 0x50f7b8
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x50f947
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
call fcn.00405194
mov dword [ebp - 0x18], 0x95d2
cmp byte [ebp - 5], 0
je 0x50f883
mov eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x50f814
mov eax, dword [ebp - 0x20]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
jle 0x50f92c
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
mov edx, dword [ebp - 0x18]
shr edx, 8
xor al, dl
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x28]
xor eax, eax
mov al, byte [ebp - 0x11]
mov edx, 2
call fcn.00409d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x8361
add eax, 0x214d
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f829
jmp 0x50f92c
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x50f89a
mov eax, dword [ebp - 0x24]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sar eax, 1
jns 0x50f8a4
adc eax, 0
test eax, eax
jle 0x50f92c
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x10]
dec eax
mov edx, eax
add edx, edx
inc edx
mov ecx, 2
mov eax, dword [ebp - 4]
call fcn.0040568c
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
mov edx, 0x50f95c
call fcn.004054ac
mov eax, dword [ebp - 0x2c]
call fcn.00409d9c
mov byte [ebp - 0x11], al
lea eax, [ebp - 0x34]
mov dl, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x18]
shr ecx, 8
xor dl, cl
call fcn.0040537c
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x8361
add eax, 0x214d
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f8b6
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50f94e
lea eax, [ebp - 0x34]
mov edx, 4
call fcn.004051b8
ret
Function at 0x50f960
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x50faef
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
call fcn.00405194
mov dword [ebp - 0x18], 0x6801
cmp byte [ebp - 5], 0
je 0x50fa2b
mov eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x50f9bc
mov eax, dword [ebp - 0x20]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
jle 0x50fad4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
mov edx, dword [ebp - 0x18]
shr edx, 8
xor al, dl
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x28]
xor eax, eax
mov al, byte [ebp - 0x11]
mov edx, 2
call fcn.00409d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0xb517
add eax, 0xcf8c
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50f9d1
jmp 0x50fad4
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x50fa42
mov eax, dword [ebp - 0x24]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sar eax, 1
jns 0x50fa4c
adc eax, 0
test eax, eax
jle 0x50fad4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x10]
dec eax
mov edx, eax
add edx, edx
inc edx
mov ecx, 2
mov eax, dword [ebp - 4]
call fcn.0040568c
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
mov edx, 0x50fb04
call fcn.004054ac
mov eax, dword [ebp - 0x2c]
call fcn.00409d9c
mov byte [ebp - 0x11], al
lea eax, [ebp - 0x34]
mov dl, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x18]
shr ecx, 8
xor dl, cl
call fcn.0040537c
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0xb517
add eax, 0xcf8c
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50fa5e
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50faf6
lea eax, [ebp - 0x34]
mov edx, 4
call fcn.004051b8
ret
Function at 0x50fb08
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x50fc97
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
call fcn.00405194
mov dword [ebp - 0x18], 0xd0f1
cmp byte [ebp - 5], 0
je 0x50fbd3
mov eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x50fb64
mov eax, dword [ebp - 0x20]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
jle 0x50fc7c
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
mov edx, dword [ebp - 0x18]
shr edx, 8
xor al, dl
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x28]
xor eax, eax
mov al, byte [ebp - 0x11]
mov edx, 2
call fcn.00409d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x2917
add eax, 0x9d5b
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50fb79
jmp 0x50fc7c
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x50fbea
mov eax, dword [ebp - 0x24]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sar eax, 1
jns 0x50fbf4
adc eax, 0
test eax, eax
jle 0x50fc7c
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x10]
dec eax
mov edx, eax
add edx, edx
inc edx
mov ecx, 2
mov eax, dword [ebp - 4]
call fcn.0040568c
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
mov edx, 0x50fcac
call fcn.004054ac
mov eax, dword [ebp - 0x2c]
call fcn.00409d9c
mov byte [ebp - 0x11], al
lea eax, [ebp - 0x34]
mov dl, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x18]
shr ecx, 8
xor dl, cl
call fcn.0040537c
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x2917
add eax, 0x9d5b
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50fc06
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50fc9e
lea eax, [ebp - 0x34]
mov edx, 4
call fcn.004051b8
ret
Function at 0x50fcb0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x50fe3f
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
call fcn.00405194
mov dword [ebp - 0x18], 0x41d9
cmp byte [ebp - 5], 0
je 0x50fd7b
mov eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x50fd0c
mov eax, dword [ebp - 0x20]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
jle 0x50fe24
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
mov edx, dword [ebp - 0x18]
shr edx, 8
xor al, dl
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x28]
xor eax, eax
mov al, byte [ebp - 0x11]
mov edx, 2
call fcn.00409d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x7e69
add eax, 0x2585
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50fd21
jmp 0x50fe24
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x50fd92
mov eax, dword [ebp - 0x24]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sar eax, 1
jns 0x50fd9c
adc eax, 0
test eax, eax
jle 0x50fe24
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x10]
dec eax
mov edx, eax
add edx, edx
inc edx
mov ecx, 2
mov eax, dword [ebp - 4]
call fcn.0040568c
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
mov edx, 0x50fe54
call fcn.004054ac
mov eax, dword [ebp - 0x2c]
call fcn.00409d9c
mov byte [ebp - 0x11], al
lea eax, [ebp - 0x34]
mov dl, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x18]
shr ecx, 8
xor dl, cl
call fcn.0040537c
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x7e69
add eax, 0x2585
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50fdae
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50fe46
lea eax, [ebp - 0x34]
mov edx, 4
call fcn.004051b8
ret
Function at 0x50fe58
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ebx
xor ebx, ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0xc], ecx
mov byte [ebp - 5], dl
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x50ffe7
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
call fcn.00405194
mov dword [ebp - 0x18], 0x117f
cmp byte [ebp - 5], 0
je 0x50ff23
mov eax, dword [ebp - 4]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
je 0x50feb4
mov eax, dword [ebp - 0x20]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
test eax, eax
jle 0x50ffcc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov al, byte [eax + edx - 1]
mov edx, dword [ebp - 0x18]
shr edx, 8
xor al, dl
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x28]
xor eax, eax
mov al, byte [ebp - 0x11]
mov edx, 2
call fcn.00409d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x7cdb
add eax, 0x88e
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50fec9
jmp 0x50ffcc
mov eax, dword [ebp - 4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x50ff3a
mov eax, dword [ebp - 0x24]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
sar eax, 1
jns 0x50ff44
adc eax, 0
test eax, eax
jle 0x50ffcc
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], 1
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0x10]
dec eax
mov edx, eax
add edx, edx
inc edx
mov ecx, 2
mov eax, dword [ebp - 4]
call fcn.0040568c
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
mov edx, 0x50fffc
call fcn.004054ac
mov eax, dword [ebp - 0x2c]
call fcn.00409d9c
mov byte [ebp - 0x11], al
lea eax, [ebp - 0x34]
mov dl, byte [ebp - 0x11]
mov ecx, dword [ebp - 0x18]
shr ecx, 8
xor dl, cl
call fcn.0040537c
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xc]
call fcn.00405460
mov eax, dword [ebp - 0xc]
xor eax, eax
mov al, byte [ebp - 0x11]
add eax, 0x173
imul eax, eax, 0x7cdb
add eax, 0x88e
mov dword [ebp - 0x18], eax
inc dword [ebp - 0x10]
dec dword [ebp - 0x1c]
jne 0x50ff56
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x50ffee
lea eax, [ebp - 0x34]
mov edx, 4
call fcn.004051b8
ret