joyce8/EMBER2024-capa huggingface dataset:
Function at 0x46bee4
Capabilities:
Set registry value

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff4
push ebx
push esi
push edi
mov dword [ebp - 4], ecx
mov edi, edx
mov ebx, eax
mov al, byte [ebp + 8]
call fcn.0046ba70
mov esi, eax
mov eax, dword [ebp + 0xc]
push eax
mov eax, dword [ebp - 4]
push eax
push esi
push 0
mov eax, edi
call fcn.004047c0
push eax
mov eax, dword [ebx + 4]
push eax
call sub.advapi32.dll_RegSetValueExA
test eax, eax
je 0x46bf42
mov dword [ebp - 0xc], edi
mov byte [ebp - 8], 0xb
lea eax, [ebp - 0xc]
push eax
push 0
mov ecx, dword [0x477a7c]
mov dl, 1
mov eax, dword [0x46b968]
call fcn.0040bd70
call fcn.00403c90
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8

Function at 0x46bf4c
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff4
push ebx
push esi
push edi
mov edi, ecx
mov esi, edx
mov ebx, eax
xor eax, eax
mov dword [ebp - 4], eax
lea eax, [ebp + 0xc]
push eax
push edi
lea eax, [ebp - 4]
push eax
push 0
mov eax, esi
call fcn.004047c0
push eax
mov eax, dword [ebx + 4]
push eax
call sub.advapi32.dll_RegQueryValueExA_1
test eax, eax
je 0x46bfa4
mov dword [ebp - 0xc], esi
mov byte [ebp - 8], 0xb
lea eax, [ebp - 0xc]
push eax
push 0
mov ecx, dword [0x477c88]
mov dl, 1
mov eax, dword [0x46b968]
call fcn.0040bd70
call fcn.00403c90
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebp - 4]
call fcn.0046baa0
mov edx, dword [ebp + 8]
mov byte [edx], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8

Function at 0x46ed00
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
push edi
mov dword [ebp - 4], ecx
mov edi, edx
mov ebx, eax
mov esi, dword [ebp + 8]
cmp dword [esi], 0
jne 0x46ed27
push 0
push 0
mov dx, 4
mov eax, ebx
call fcn.0046e398
cmp dword [ebx + 0x38], 0xffffffff
jne 0x46ed3c
push 0xffffffffffffffff
push 0xffffffffffffffe8
mov dx, 0x18
mov eax, ebx
call fcn.0046e398
mov eax, dword [esi]
push eax
mov edx, edi
mov ecx, dword [ebp - 4]
xor eax, eax
call fcn.0046ecbc
mov eax, dword [esi]
push eax
lea eax, [ebp - 8]
push eax
mov eax, dword [ebp - 4]
push eax
push edi
mov eax, dword [ebx + 0x38]
push eax
call sub.kernel32.dll_WriteFile_1
test eax, eax
jne 0x46ed74
call sub.kernel32.dll_GetLastError
cmp eax, 0x3e5
je 0x46ed74
xor eax, eax
jmp 0x46ed76
mov al, 1
test al, al
jne 0x46ed8e
call sub.kernel32.dll_GetLastError
xor edx, edx
push edx
push eax
mov dx, 2
mov eax, ebx
call fcn.0046e398
mov cl, 1
mov dl, 6
mov eax, ebx
call fcn.00471960
mov eax, dword [ebp - 8]
pop edi
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret 4
Function at 0x46eebc
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
push edi
mov dword [ebp - 4], ecx
mov edi, edx
mov ebx, eax
mov esi, dword [ebp + 8]
cmp dword [esi], 0
jne 0x46eee3
push 0
push 0
mov dx, 4
mov eax, ebx
call fcn.0046e398
mov eax, dword [esi]
mov byte [eax + 0x14], 1
cmp dword [ebx + 0x38], 0xffffffff
jne 0x46eefe
push 0xffffffffffffffff
push 0xffffffffffffffe8
mov dx, 0x18
mov eax, ebx
call fcn.0046e398
mov eax, dword [esi]
push eax
lea eax, [ebp - 8]
push eax
mov eax, dword [ebp - 4]
push eax
push edi
mov eax, dword [ebx + 0x38]
push eax
call sub.kernel32.dll_ReadFile
test eax, eax
jne 0x46ef27
call sub.kernel32.dll_GetLastError
cmp eax, 0x3e5
je 0x46ef27
xor eax, eax
jmp 0x46ef29
mov al, 1
test al, al
jne 0x46ef41
call sub.kernel32.dll_GetLastError
xor edx, edx
push edx
push eax
mov dx, 3
mov eax, ebx
call fcn.0046e398
mov eax, dword [ebp - 8]
pop edi
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret 4
Function at 0x430000
Capabilities:
Encode data using xor
Packed with generic packer

Disassembly:
pushal
nop
nop
nop
nop
nop
mov eax, section..text
nop
nop
mov ebx, 0x408ecc
nop
mov ecx, 0x15e45587
nop
test eax, eax
nop
nop
nop
je 0x43004e
nop
nop
nop
nop
nop
nop
xor dword [eax], ecx
nop
nop
nop
nop
nop
nop
inc eax
nop
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
inc eax
nop
nop
nop
nop
nop
nop
cmp eax, ebx
jne 0x430024
nop
nop
nop
nop
nop
mov eax, section..data
nop
mov ebx, 0x42e1d0
mov ecx, 0x6f23676d
nop
nop
test eax, eax
nop
nop
nop
nop
nop
je 0x430084
nop
nop
xor dword [eax], ecx
nop
nop
nop
nop
nop
nop
add eax, 4
nop
nop
nop
cmp eax, ebx
nop
nop
nop
nop
nop
nop
jne 0x43006c
popal
nop
nop
nop
nop
nop
jmp 0x401219
Function at 0x10001000
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
push esi
mov esi, ecx
mov dword [ebp - 8], 0x10
mov ecx, dword [ebp + 8]
mov eax, edx
push edi
mov dword [ebp - 0x10], eax
mov edi, esi
mov ecx, dword [ecx]
mov eax, dword [eax]
mov dword [ebp - 4], ecx
xor eax, dword [edi]
lea edi, [edi + 4]
mov edx, eax
mov dword [ebp - 0xc], eax
mov ebx, eax
shr edx, 8
mov ecx, edx
shr ecx, 8
mov eax, ecx
movzx ecx, cl
shr eax, 8
mov eax, dword [esi + eax*4 + 0x48]
add eax, dword [esi + ecx*4 + 0x448]
movzx ecx, dl
mov edx, ebx
xor eax, dword [esi + ecx*4 + 0x848]
movzx ecx, bl
add eax, dword [esi + ecx*4 + 0xc48]
xor eax, dword [ebp - 4]
sub dword [ebp - 8], 1
mov dword [ebp - 4], edx
jne 0x10001023
mov ecx, dword [esi + 0x44]
xor ecx, edx
mov edx, dword [ebp - 0x10]
pop edi
mov dword [edx], ecx
mov ecx, dword [esi + 0x40]
xor ecx, eax
mov eax, dword [ebp + 8]
pop esi
pop ebx
mov dword [eax], ecx
mov esp, ebp
pop ebp
ret

Function at 0x10001090
Capabilities:
Encode data using xor
Encrypt data using blowfish
Encrypt data using rc4 prga

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
mov ebx, ecx
mov dword [ebp - 8], edx
push esi
push edi
mov eax, 0x1001d898
mov dword [ebp - 0x14], ebx
lea edi, [ebx + 0x48]
mov dword [ebp - 4], ebx
sub eax, ebx
mov dword [ebp - 0xc], 0x12
mov ecx, 0x400
mov dword [ebp - 0x10], eax
mov esi, 0x1001d8e0
xor ebx, ebx
rep movsd dword es:[edi], dword [esi]
lea eax, [ebx + 1]
xor edi, edi
cmp eax, 0x10
cmovl edi, eax
xor ecx, ecx
lea eax, [edi + 1]
cmp eax, 0x10
cmovl ecx, eax
xor edx, edx
lea eax, [ecx + 1]
cmp eax, 0x10
cmovl edx, eax
mov eax, dword [ebp - 8]
movzx esi, byte [ebx + eax]
mov ebx, eax
shl esi, 8
movzx eax, byte [edi + ebx]
or esi, eax
movzx eax, byte [ecx + ebx]
mov ecx, dword [ebp - 4]
shl esi, 8
or esi, eax
movzx eax, byte [edx + ebx]
shl esi, 8
xor ebx, ebx
or esi, eax
lea eax, [edx + 1]
cmp eax, 0x10
cmovl ebx, eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + ecx]
xor eax, esi
mov dword [ecx], eax
add ecx, 4
sub dword [ebp - 0xc], 1
mov dword [ebp - 4], ecx
jne 0x100010c6
mov ebx, dword [ebp - 0x14]
xor esi, esi
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
lea eax, [ebp - 8]
mov ecx, ebx
push eax
lea edx, [ebp - 4]
call fcn.10001000
mov eax, dword [ebp - 4]
add esp, 4
mov dword [ebx + esi*4], eax
mov eax, dword [ebp - 8]
mov dword [ebx + esi*4 + 4], eax
add esi, 2
cmp esi, 0x12
jl 0x10001142
lea esi, [ebx + 0x4c]
mov dword [ebp - 0xc], 4
mov edi, 0x80
lea eax, [ebp - 8]
mov ecx, ebx
push eax
lea edx, [ebp - 4]
call fcn.10001000
mov eax, dword [ebp - 4]
add esp, 4
mov dword [esi - 4], eax
mov eax, dword [ebp - 8]
mov dword [esi], eax
add esi, 8
sub edi, 1
jne 0x10001177
sub dword [ebp - 0xc], 1
jne 0x10001172
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x10001220
Capabilities:
Hash data using crc32b

Disassembly:
push ebp
mov ebp, esp
push ecx
push 0x400
push 0
push 0x10022478
call fcn.10004d20
add esp, 0xc
xor ecx, ecx
mov dword [ebp - 4], ecx
push ebx
nop
xor eax, eax
test cl, 1
je 0x1000124b
bts eax, 7
shr ecx, 1
test cl, 1
je 0x10001256
bts eax, 6
shr ecx, 1
test cl, 1
je 0x10001261
bts eax, 5
shr ecx, 1
test cl, 1
je 0x1000126c
bts eax, 4
shr ecx, 1
test cl, 1
je 0x10001277
bts eax, 3
shr ecx, 1
test cl, 1
je 0x10001282
bts eax, 2
shr ecx, 1
test cl, 1
je 0x1000128d
bts eax, 1
test cl, 2
je 0x10001296
bts eax, 0
shl eax, 0x18
mov ecx, eax
add eax, eax
sar ecx, 0x1f
and ecx, 0x4c11db7
xor ecx, eax
mov edx, ecx
sar edx, 0x1f
and edx, 0x4c11db7
lea eax, [ecx + ecx]
xor edx, eax
mov ecx, edx
sar ecx, 0x1f
and ecx, 0x4c11db7
lea eax, [edx + edx]
xor ecx, eax
mov edx, ecx
sar edx, 0x1f
and edx, 0x4c11db7
lea eax, [ecx + ecx]
xor edx, eax
mov ecx, edx
sar ecx, 0x1f
and ecx, 0x4c11db7
lea eax, [edx + edx]
xor ecx, eax
mov edx, ecx
sar edx, 0x1f
and edx, 0x4c11db7
lea eax, [ecx + ecx]
xor edx, eax
mov ecx, edx
sar ecx, 0x1f
and ecx, 0x4c11db7
lea eax, [edx + edx]
xor ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, 0x4c11db7
lea eax, [ecx + ecx]
xor ebx, eax
xor edx, edx
lea ecx, [edx + 1]
nop dword [eax]
test bl, 1
je 0x1000132f
mov eax, 0x20
sub eax, ecx
bts edx, eax
inc ecx
shr ebx, 1
cmp ecx, 0x21
jl 0x10001320
mov ecx, dword [ebp - 4]
mov dword [ecx*4 + 0x10022478], edx
inc ecx
mov dword [ebp - 4], ecx
cmp ecx, 0xff
jle 0x10001240
pop ebx
mov esp, ebp
pop ebp
ret

Function at 0x10001360
Capabilities:
Encode data using xor
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x408
mov eax, dword [0x10021008]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push 0x1001ea94
push eax
lea eax, [ebp - 0x408]
mov dword [ebp - 0x408], 0
push eax
or ebx, 0xffffffff
call fcn.100091ed
add esp, 0xc
test eax, eax
jne 0x100013b1
or eax, 0xffffffff
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100032f0
mov esp, ebp
pop ebp
ret 4
push esi
push edi
push dword [ebp - 0x408]
lea eax, [ebp - 0x404]
push 0x400
push 1
push eax
call fcn.1000941c
mov edi, eax
lea esi, [ebp - 0x404]
add esp, 0x10
mov edx, edi
test edi, edi
je 0x100013fa
nop dword [eax]
movzx eax, byte [esi]
lea esi, [esi + 1]
movzx ecx, bl
xor ecx, eax
shr ebx, 8
xor ebx, dword [ecx*4 + 0x10022478]
sub edx, 1
jne 0x100013e0
cmp edi, 0x400
je 0x100013b3
push dword [ebp - 0x408]
call fcn.10007381
mov ecx, dword [ebp - 4]
add esp, 4
not ebx
xor ecx, ebp
mov eax, ebx
pop edi
pop esi
pop ebx
call fcn.100032f0
mov esp, ebp
pop ebp
ret 4
Function at 0x10001430
Capabilities:
Create process on windows
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
call fcn.10001220
cmp dword [0x10022438], 1
jne 0x100014ea
push str.interface.u
call fcn.10001360
cmp eax, dword [0x1002246c]
je 0x100014ea
push 0x1001e8e0
lea eax, [ebp - 4]
push str.Protection.log
push eax
call fcn.100091ed
mov eax, dword [ebp - 4]
add esp, 0xc
test eax, eax
je 0x10001495
push str.Interface_files_are_changed______Interface.u
push 0x1001e8f4
push eax
call fcn.100011c0
push dword [ebp - 4]
call fcn.10007381
add esp, 0x10
mov esi, dword [sym.imp.KERNEL32.dll_WinExec]
push 0
push str.taskkill__IM_L2Tower.exe__F
call esi
push 0
push str.taskkill__IM_l2.exe__F
call esi
push 0
push str.taskkill__IM_l2.bin__F
call esi
push 0
push str.taskkill__IM_L2.exe__F
call esi
push 0
push str.taskkill__IM_L2.bin__F
call esi
push 0
push str.taskkill__IM_L2.bin__F
call esi
push 0x10
push 0
push str._L2J_Guard_Protection____http:__www.l2jguard.org___n_n___We_find_programs_using_the_same_function_Hackers_Bots._n___Believed_to_be_an_error_._We_inform_or_will_fix._n___Send_folder_L2JGuard__your_system_to_the_Administrator___n_n___Sorry_for_the_inconvenience__we_need_maximum_security_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
cmp dword [0x1002243c], 1
jne 0x10001530
push str.interface.xdat
call fcn.10001360
cmp eax, dword [0x10022470]
je 0x10001530
push 0x1001e8e0
lea eax, [ebp - 4]
push str.Protection.log
push eax
call fcn.100091ed
mov eax, dword [ebp - 4]
add esp, 0xc
test eax, eax
je 0x10001495
push str.Interface_files_are_changed______Interface.xdat
jmp 0x1000147f
cmp dword [0x10022440], 1
jne 0x10001576
push str.WarGuard_Protect.bmp
call fcn.10001360
cmp eax, dword [0x10022474]
je 0x10001576
push 0x1001e8e0
lea eax, [ebp - 4]
push str.Protection.log
push eax
call fcn.100091ed
mov eax, dword [ebp - 4]
add esp, 0xc
test eax, eax
je 0x10001495
push str.Interface_files_are_changed______Image_Protect_BMP
jmp 0x1000147f
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x10001580
Capabilities:
Enumerate processes
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x234
mov eax, dword [0x10021008]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push edi
push 0
push 0xf
mov ebx, ecx
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov edi, eax
test edi, edi
je 0x10001636
lea eax, [ebp - 0x230]
mov dword [ebp - 0x230], 0x22c
push eax
push edi
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
je 0x1000162f
push esi
nop dword [eax + eax]
mov eax, ebx
lea ecx, [ebp - 0x20c]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x100015fe
test dx, dx
je 0x100015fa
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x100015fe
add ecx, 4
add eax, 4
test dx, dx
jne 0x100015d8
xor eax, eax
jmp 0x10001603
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1000161c
push dword [ebp - 0x228]
push eax
push 1
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov esi, eax
test esi, esi
jne 0x10001646
lea eax, [ebp - 0x230]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x100015d0
pop esi
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop ebx
call fcn.100032f0
mov esp, ebp
pop ebp
ret
push 9
push esi
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x1001e8e0
lea eax, [ebp - 0x234]
push str.WarGuard_Log.txt
push eax
call fcn.100091ed
push ebx
push str._ls___WP__n
push dword [ebp - 0x234]
call fcn.100011c0
push dword [ebp - 0x234]
call fcn.10007381
mov esi, dword [sym.imp.KERNEL32.dll_WinExec]
add esp, 0x1c
push 0
push str.taskkill__IM_l2.exe__F
call esi
push 0
push str.taskkill__IM_l2.bin__F
call esi
push 0
push str.taskkill__IM_L2.exe__F
call esi
push 0
push str.taskkill__IM_L2.bin__F
call esi
push 0
push str.taskkill__IM_L2.bin__F
call esi
push 0x200010
push str.WarGuard_Protection
push str.___We_find_an_illegal_program_running._n_n___If_you_need_support__contact_the_server_administrator_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]

Function at 0x100016e0
Capabilities:
Create process on windows
Enumerate processes
Terminate process

Disassembly:
mov ecx, str.L2Tower.exe
call fcn.10001580
mov ecx, str.L2NET.exe
call fcn.10001580
mov ecx, str.HxD.exe
call fcn.10001580
mov ecx, str.boot.exe
call fcn.10001580
mov ecx, str.alquimista.exe
call fcn.10001580
mov ecx, str.L2Divine.exe
call fcn.10001580
mov ecx, str.SandMan.exe
call fcn.10001580
mov ecx, str.SbieSvc.exe
call fcn.10001580
mov ecx, str.SbieSvc32.exe
call fcn.10001580
mov ecx, str.SbieSvc32.exe
call fcn.10001580
mov ecx, str.SbieCtrl.exe
call fcn.10001580
mov ecx, str.Start.exe
jmp fcn.10001580
Function at 0x10001800
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
mov esi, ecx
push esi
push 0
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
je 0x1000189f
push 0x1001e8e0
lea eax, [ebp - 4]
push str.WarGuard_Log.txt
push eax
call fcn.100091ed
push esi
push str._s___TW__n
push dword [ebp - 4]
call fcn.100011c0
push dword [ebp - 4]
call fcn.10007381
mov esi, dword [sym.imp.KERNEL32.dll_WinExec]
add esp, 0x1c
push 0
push str.taskkill__IM_L2Tower.exe__F
call esi
push 0
push str.taskkill__IM_l2.exe__F
call esi
push 0
push str.taskkill__IM_l2.bin__F
call esi
push 0
push str.taskkill__IM_L2.exe__F
call esi
push 0
push str.taskkill__IM_L2.bin__F
call esi
push 0
push str.taskkill__IM_L2.bin__F
call esi
push 0x200010
push str.WarGuard_Protection
push str.___We_find_an_illegal_program_running._n_n___If_you_need_support__contact_the_server_administrator_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
pop esi
mov esp, ebp
pop ebp
ret

Function at 0x100018b0
Capabilities:
Create process on windows
Terminate process

Disassembly:
mov ecx, str.Process_Explorer_11.33
call fcn.10001800
mov ecx, str.Process_Explorer
call fcn.10001800
mov ecx, str.ArtMoney_PRO_v7.27
call fcn.10001800
mov ecx, str.ArtMoney_SE_v7.31
call fcn.10001800
mov ecx, str.ArtMoney_SE_v7.32
call fcn.10001800
mov ecx, str.Cheat_Engine_5.0
call fcn.10001800
mov ecx, str.Cheat_Engine_5.1
call fcn.10001800
mov ecx, str.Cheat_Engine_5.1.1
call fcn.10001800
mov ecx, str.Cheat_Engine_5.2
call fcn.10001800
mov ecx, str.Cheat_Engine_5.3
call fcn.10001800
mov ecx, str.Cheat_Engine_5.4
call fcn.10001800
mov ecx, str.Cheat_Engine_5.5
call fcn.10001800
mov ecx, str.Cheat_Engine_5.6
call fcn.10001800
mov ecx, str.Cheat_Engine_5.6.1
call fcn.10001800
mov ecx, str.Cheat_Engine_6.0
call fcn.10001800
mov ecx, str.Cheat_Engine_6.1
call fcn.10001800
mov ecx, str.Cheat_Engine_6.4
call fcn.10001800
mov ecx, str.Cheat_Engine
call fcn.10001800
mov ecx, str.Created_processes
call fcn.10001800
mov ecx, str.SandBoxie_Plus_v0.9.3
call fcn.10001800
mov ecx, str.Sandboxie_Control___sandboxie_plus.com
jmp fcn.10001800
Function at 0x100019b0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
push 0
mov esi, ecx
push esi
push 0
push 0
call dword [sym.imp.USER32.dll_FindWindowExA]
test eax, eax
je 0x10001a53
push 0x1001e8e0
lea eax, [ebp - 4]
push str.WarGuard_Log.txt
push eax
call fcn.100091ed
push esi
push str._s___CW__n
push dword [ebp - 4]
call fcn.100011c0
push dword [ebp - 4]
call fcn.10007381
mov esi, dword [sym.imp.KERNEL32.dll_WinExec]
add esp, 0x1c
push 0
push str.taskkill__IM_L2Tower.exe__F
call esi
push 0
push str.taskkill__IM_l2.exe__F
call esi
push 0
push str.taskkill__IM_l2.bin__F
call esi
push 0
push str.taskkill__IM_L2.exe__F
call esi
push 0
push str.taskkill__IM_L2.bin__F
call esi
push 0
push str.taskkill__IM_L2.bin__F
call esi
push 0x200010
push str.WarGuard_Protection
push str.___We_find_an_illegal_program_running._n_n___If_you_need_support__contact_the_server_administrator_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
pop esi
mov esp, ebp
pop ebp
ret

Function at 0x10001a60
Capabilities:
Create process on windows
Set registry value
Terminate process

Disassembly:
mov ecx, str.PROCEXPL
call fcn.100019b0
mov ecx, str.TreeListWindowClass
call fcn.100019b0
mov ecx, str.ProcessHacker
call fcn.100019b0
mov ecx, str.RegEdit_RegEdit
call fcn.100019b0
mov ecx, str.ProcessThreadsView
call fcn.100019b0
mov ecx, str.TreeListWindowClass
call fcn.100019b0
mov ecx, str.PhTreeNew
call fcn.100019b0
mov ecx, 0x1001ef3c
call fcn.100019b0
mov ecx, str.TformSettings
call fcn.100019b0
mov ecx, str.TWildProxyMain
call fcn.100019b0
mov ecx, str.TUserdefinedform
call fcn.100019b0
mov ecx, str.TformAddressChange
call fcn.100019b0
mov ecx, str.TMemoryBrowser
call fcn.100019b0
mov ecx, str.TFoundCodeDialog
call fcn.100019b0
mov ecx, str.TL2PacketHackMain
call fcn.100019b0
mov ecx, str.vxwindowclassnr
call fcn.100019b0
mov ecx, str.l2packet
call fcn.100019b0
mov ecx, str.hlapex
call fcn.100019b0
mov ecx, str.wp_v5
call fcn.100019b0
mov ecx, 0x1001efec
call fcn.100019b0
mov ecx, str.TfProcessRawLog
call fcn.100019b0
mov ecx, str.TfScriptEditor
call fcn.100019b0
mov ecx, str.TfScript
call fcn.100019b0
mov ecx, str.TTabSheet
call fcn.100019b0
mov ecx, str.TJvSpinEdit
call fcn.100019b0
mov ecx, str.PhTreeNew
call fcn.100019b0
mov ecx, str.TPaintPanel
call fcn.100019b0
mov ecx, str.ThtmlLiteEx
call fcn.100019b0
mov ecx, str.TfmMain
call fcn.100019b0
mov ecx, str.TvkProgressBar
call fcn.100019b0
mov ecx, str.TTabSheet
call fcn.100019b0
mov ecx, str.SandboxieControlWnsClass
call fcn.100019b0
mov ecx, str.0x150114__1376532_
call fcn.100019b0
mov ecx, str.0x507B6__329654_
jmp fcn.100019b0
Function at 0x10001e30
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
mov ebx, ecx
mov dword [ebp - 0x10], edx
mov dword [ebp - 0xc], ebx
cmp byte [ebx], 0xe9
jne 0x10001e54
lea ecx, [ebx + 5]
add ecx, dword [ebx + 1]
call fcn.10001e30
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10021d10]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x1002689c]
cmp eax, dword [ecx + 4]
jle 0x10001eac
push 0x1002689c
call fcn.1000349a
add esp, 4
cmp dword [0x1002689c], 0xffffffff
jne 0x10001eac
push 0x40
push 0x1000
push 0x1000
push 0
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
push 0x1002689c
mov dword [0x10026898], eax
call fcn.10003450
add esp, 4
push esi
mov esi, dword [0x10026898]
push edi
lea edx, [esi + 0x1000]
cmp esi, edx
je 0x10001ed3
nop
lea ecx, [esi + 0x1c]
call fcn.10001e20
test eax, eax
je 0x10001ed5
add esi, 0x20
cmp esi, edx
jne 0x10001ec0
xor esi, esi
xor edi, edi
lea ecx, [edi + ebx]
call fcn.10001be0
add edi, eax
cmp edi, 5
jl 0x10001ed7
test edi, edi
jle 0x10001f01
mov ecx, esi
sub ebx, esi
mov edx, edi
mov al, byte [ebx + ecx]
lea ecx, [ecx + 1]
mov byte [ecx - 1], al
sub edx, 1
jne 0x10001ef0
mov ebx, dword [ebp - 0xc]
lea ecx, [edi + esi]
sub edi, ecx
mov byte [ecx], 0xe9
lea eax, [edi - 5]
mov edi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
add eax, ebx
mov dword [ecx + 1], eax
lea eax, [ebp - 4]
push eax
push 0x40
push 5
push ebx
call edi
mov eax, dword [ebp - 0x10]
sub eax, ebx
mov byte [ebx], 0xe9
sub eax, 5
mov dword [ebx + 1], eax
lea eax, [ebp - 4]
push eax
push dword [ebp - 4]
push 5
push ebx
call edi
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret

Function at 0x10001f80
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
push 0x1001e8e0
lea eax, [ebp - 4]
mov esi, ecx
push str.Protection.log
push eax
call fcn.100091ed
mov eax, dword [ebp - 4]
add esp, 0xc
test eax, eax
je 0x10001fbb
push esi
push 0x1001e8f4
push eax
call fcn.100011c0
push dword [ebp - 4]
call fcn.10007381
add esp, 0x10
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
Function at 0x10001fe0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x108c
call fcn.100179b0
mov eax, dword [0x10021008]
xor eax, esp
mov dword [esp + 0x1088], eax
mov eax, ecx
mov dword [esp + 0x1060], 0xf17256f
push ebx
push esi
push edi
movups xmm0, xmmword [eax]
push ecx
lea edx, [esp + 0x1070]
mov dword [esp + 0x20], eax
lea ecx, [esp + 0x24]
mov dword [esp + 0x1074], 0x171811fb
mov dword [esp + 0x1078], 0x15012d12
mov dword [esp + 0x107c], 0xcfb107a
movups xmmword [esp + 0x1080], xmm0
call fcn.10001090
lea esi, [esp + 0x1080]
mov dword [esp + 0x18], 3
add esp, 4
mov dword [esp + 0x10], esi
mov ecx, dword [esi + 4]
lea edi, [esp + 0x64]
mov eax, dword [esi]
mov esi, 0x10
mov dword [esp + 0xc], ecx
xor eax, dword [edi]
lea edi, [edi - 4]
mov edx, eax
mov dword [esp + 0x18], eax
mov ebx, eax
shr edx, 8
mov ecx, edx
shr ecx, 8
mov eax, ecx
movzx ecx, cl
shr eax, 8
mov eax, dword [esp + eax*4 + 0x68]
add eax, dword [esp + ecx*4 + 0x468]
movzx ecx, dl
mov edx, ebx
xor eax, dword [esp + ecx*4 + 0x868]
movzx ecx, bl
add eax, dword [esp + ecx*4 + 0xc68]
xor eax, dword [esp + 0xc]
mov dword [esp + 0xc], edx
sub esi, 1
jne 0x10002077
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
xor ecx, edx
mov dword [esi], ecx
mov ecx, dword [esp + 0x24]
xor ecx, eax
mov dword [esi + 4], ecx
add esi, 8
sub dword [esp + 0x14], 1
mov dword [esp + 0x10], esi
jne 0x10002065
mov eax, dword [esp + 0x1c]
movups xmm0, xmmword [esp + 0x107c]
mov ecx, dword [esp + 0x1094]
pop edi
pop esi
pop ebx
xor ecx, esp
movups xmmword [eax], xmm0
call fcn.100032f0
mov esp, ebp
pop ebp
ret