joyce8/EMBER2024-capa huggingface dataset:
Function at 0x562a30
Capabilities:
Set console window title

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20c
mov eax, dword [0x6e8da0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov esi, ecx
call fcn.00567d90
call fcn.005b7200
call fcn.005b6840
call fcn.005b7200
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [esi + 0x20d84], 3
jne 0x562a77
mov dword [esi + 0x20d84], 5
cmp dword [esi + 0x20d88], 0
jne 0x562b21
mov edi, dword [esi + 0x21590]
mov eax, edi
mov ebx, dword [esi + 0x21594]
or eax, ebx
jne 0x562a9b
xorps xmm1, xmm1
jmp 0x562ae1
mov edx, dword [esi + 0x2159c]
mov ecx, dword [esi + 0x21598]
call fcn.005e3d6d
cvtsd2ss xmm0, xmm0
mov edx, ebx
mov ecx, edi
movss dword [ebp - 0x20c], xmm0
call fcn.005e3d6d
movss xmm1, dword [ebp - 0x20c]
cvtsd2ss xmm0, xmm0
divss xmm1, xmm0
movss xmm0, dword [0x6b1d44]
comiss xmm1, xmm0
jbe 0x562ae1
movaps xmm1, xmm0
mulss xmm1, dword [0x6b1d60]
lea eax, [esi + 0x20d8d]
sub esp, 8
cvtps2pd xmm0, xmm1
movsd qword [esp], xmm0
push eax
lea eax, [ebp - 0x208]
push str._s:__.1f__
push eax
call fcn.00562430
add esp, 0x14
lea eax, [ebp - 0x208]
push eax
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
jmp 0x562a52
mov ecx, esi
call fcn.00567e50
mov eax, dword [esi + 0x20d88]
dec eax
je 0x562b65
dec eax
je 0x562b4f
dec eax
je 0x562b72
push 0
push 0x37
push str.Main_CmdLine.cpp
push 0x6a70e4
call fcn.005b72c0
add esp, 0x10
jmp 0x562b72
lea eax, [esi + 0x2118d]
push eax
push str.Update_error_n_s_n_nPlease_retry_later
call fcn.005b6df0
add esp, 8
jmp 0x562b72
push str.Update_ok_n
call fcn.005b6df0
add esp, 4
push str._nPress_enter_to_exit...
call fcn.005b6df0
add esp, 4
call fcn.005ddb53
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.005dbda3
mov esp, ebp
pop ebp
ret
Function at 0x563240
Capabilities:
Copy file
Create process on windows
Delete file
Move file
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60c
mov eax, dword [0x6e8da0]
xor eax, ebp
mov dword [ebp - 4], eax
push 0x104
lea eax, [ebp - 0x108]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x108]
push str..new.exe
push eax
call fcn.005dcb20
add esp, 8
test eax, eax
jne 0x5632b7
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x20c]
push str._s.new.exe
push eax
call fcn.0055d610
add esp, 0xc
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
xor al, al
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005dbda3
mov esp, ebp
pop ebp
ret
push edi
push str..exe_updated__moving_back_n
mov byte [0x8a90f2], 1
call fcn.005b6df0
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
add esp, 4
push 0x1f4
call edi
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x20c]
push 0x104
push eax
call fcn.005dc63d
lea ecx, [ebp - 0x108]
add esp, 0xc
lea edx, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x563300
sub ecx, edx
cmp ecx, 8
ja 0x563324
push 0
push 0x33
push str.SelfUpdateEXE.cpp
push str.strlen_exeMain____8
call fcn.005b72c0
add esp, 0x10
lea ecx, [ebp - 0x108]
lea edx, [ecx + 1]
lea ecx, [ecx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x563330
sub ecx, edx
add ecx, 0xfffffff8
cmp ecx, 0x104
jae 0x563441
push ebx
mov byte [ebp + ecx - 0x108], al
lea eax, [ebp - 0x108]
push esi
push eax
push str.exeMain:__s_n
call fcn.005b6df0
mov ebx, dword [sym.imp.KERNEL32.dll_CopyFileA]
add esp, 8
xor esi, esi
lea ecx, [ecx]
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileA]
test eax, eax
jne 0x56342e
push eax
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x20c]
push eax
call ebx
test eax, eax
jne 0x56342e
push 0x64
call edi
inc esi
cmp esi, 0xa
jl 0x563370
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x60c]
push str.Failed_to_replace_updater_file_n_nPlease_manually_rename__s_to__s
push eax
call fcn.0055d630
add esp, 0x10
lea eax, [ebp - 0x60c]
push 0x30
push str.Updater
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 5
push 0
push 0
push 0x6a711c
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
pop esi
pop ebx
xor al, al
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.005dbda3
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov al, 1
pop esi
pop ebx
xor ecx, ebp
pop edi
call fcn.005dbda3
mov esp, ebp
pop ebp
ret
call fcn.005dd147
int3
Function at 0x563450
Capabilities:
Create process on windows
Terminate process
Write and execute a file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20c
mov eax, dword [0x6e8da0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x104
lea eax, [ebp - 0x20c]
mov edi, edx
push eax
push 0
mov ebx, ecx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push str.Trying_to_update_n
call fcn.005b6df0
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x108]
push str._s.new.exe
push eax
call fcn.0055d610
lea eax, [ebp - 0x108]
push 0x6a6d8c
push eax
call fcn.005dcabb
mov esi, eax
add esp, 0x18
test esi, esi
jne 0x5634ce
lea eax, [ebp - 0x108]
push eax
push str.cant_open__s_for_writing_n
call fcn.005b6a10
add esp, 8
push esi
push 1
push edi
push ebx
call fcn.005ddcd3
push esi
call fcn.005dc495
add esp, 0x14
push dword [0x8a918c]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [ebp - 0x108]
push eax
push str.executing__s_n
call fcn.005b6df0
add esp, 8
lea eax, [ebp - 0x108]
push 5
push 0
push 0x804f00
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
pop edi
pop esi
pop ebx
cmp eax, 0x20
jge 0x56353b
push eax
lea eax, [ebp - 0x108]
push eax
push str.failed_to_launch__s___d
call fcn.005b6a10
add esp, 0xc
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov ecx, dword [ebp - 4]
mov al, 1
xor ecx, ebp
call fcn.005dbda3
mov esp, ebp
pop ebp
ret
Function at 0x563890
Capabilities:
Extract resource via kernel32 functions
Set file attributes
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5fda48
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
push esi
push edi
mov eax, dword [0x6e8da0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea ecx, [ebp - 0x28]
call fcn.00401000
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0
call fcn.00401190
push 0x6afe68
push 0xc8
push 0
call dword [sym.imp.KERNEL32.dll_FindResourceA]
mov esi, eax
test esi, esi
je 0x5639b4
push esi
push 0
call dword [sym.imp.KERNEL32.dll_LoadResource]
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov edi, eax
test edi, edi
je 0x5639b4
push esi
push 0
call dword [sym.imp.KERNEL32.dll_SizeofResource]
push eax
push edi
lea ecx, [ebp - 0x28]
call fcn.00401350
lea eax, [ebp - 0x14]
mov dword [ebp - 0x10], 0
push eax
lea eax, [ebp - 0x10]
mov dword [ebp - 0x14], 0
push eax
push 0x6afcf0
call fcn.005b7f20
add esp, 0xc
lea ecx, [ebp - 0x28]
call fcn.004011c0
push eax
lea ecx, [ebp - 0x28]
call fcn.004011f0
push eax
call fcn.005b7ef0
add esp, 8
cmp dword [ebp - 0x10], eax
je 0x5639c8
push 0x80
push 0x6afcf0
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push 0x6a6d8c
push 0x6afcf0
call fcn.005dcabb
mov esi, eax
add esp, 8
test esi, esi
jne 0x56398f
push 0x10
push str.Warning
push str.Can_not_update_steam_api.dll
jmp 0x5639c0
push esi
lea ecx, [ebp - 0x28]
call fcn.004011c0
push eax
push 1
lea ecx, [ebp - 0x28]
call fcn.004011f0
push eax
call fcn.005ddcd3
push esi
call fcn.005dc495
add esp, 0x14
jmp 0x5639c8
push 0x10
push str.Warning
push str.No_steam_api.dll_resource
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0xffffffff
call fcn.004010b0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret

Function at 0x563dc0
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
lea eax, [ebp - 4]
push esi
push eax
mov esi, ecx
push 0xf003f
push 0
push str.SoftwareArktos_Entertainment_GroupWarZ
mov byte [esi], 0
mov byte [esi + 0x80], 0
mov dword [esi + 0x134], 0
mov dword [esi + 0x138], 0
mov dword [esi + 0x13c], 0
push bind
mov dword [esi + 0x140], 0
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x563e41
lea eax, [ebp - 8]
mov dword [ebp - 8], 0x80
push eax
push esi
push 0
push 0
push str.username
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret
Function at 0x565610
Capabilities:
Delete file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x41c
mov eax, dword [0x6e8da0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 0xc]
lea eax, [ebp - 0x41c]
push edi
mov edi, dword [ebp + 8]
mov ebx, ecx
push eax
lea eax, [ebp - 0x418]
push eax
push edi
call fcn.005b7f20
add esp, 0xc
test al, al
je 0x56565b
mov eax, dword [ebp - 0x418]
cmp eax, dword [edi + 0x112]
je 0x56573d
push edi
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push edi
call dword [sym.imp.dbghelp.dll_MakeSureDirectoryPathExists]
push 0x6a6d8c
push edi
call fcn.005dcabb
add esp, 8
mov dword [ebp - 0x410], eax
test eax, eax
je 0x565750
lea eax, [ebp - 0x414]
mov ecx, esi
push eax
lea eax, [ebp - 0x40c]
push eax
call fcn.004011c0
push eax
mov ecx, esi
call fcn.004011f0
push eax
push edi
lea ecx, [ebx + 0x4c0]
call fcn.005c7b50
mov eax, dword [edi + 0x10a]
cmp eax, dword [ebp - 0x414]
je 0x5656d6
push 0
push 0x19b
push str.Updater.cpp
push str.fe__size__out_size
call fcn.005b72c0
add esp, 0x10
lea esi, [ebx + 0x20d6c]
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push dword [ebp - 0x410]
push 1
push dword [ebp - 0x414]
push dword [ebp - 0x40c]
call fcn.005ddcd3
push dword [ebp - 0x410]
call fcn.005dc495
add esp, 0x14
push esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push str.infestation.exe
push edi
call fcn.005dfd7b
add esp, 8
test eax, eax
jne 0x56572f
mov byte [ebx + 0x215ec], 1
call fcn.005659f0
push dword [ebp - 0x40c]
call fcn.005b9080
add esp, 4
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.005dbda3
mov esp, ebp
pop ebp
ret 8
push edi
lea eax, [ebp - 0x408]
push str.Cant_replace_file__s_nPlease_delete_this_file_manually
push eax
call fcn.0055d630
add esp, 0xc
lea eax, [ebp - 0x408]
push eax
push ebx
call fcn.005649e0
int3
Function at 0x565850
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5fddd8
mov eax, dword fs:[0]
push eax
sub esp, 0x18
push ebx
push esi
push edi
mov eax, dword [0x6e8da0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
push 0x400
lea ecx, [ebp - 0x24]
mov dword [ebp - 4], 0
call fcn.005680d0
mov eax, dword [esi + 0x5cc]
xor edi, edi
sub eax, dword [esi + 0x5c8]
mov ebx, dword [ebp - 0x20]
sar eax, 2
mov dword [ebp - 0x10], edi
test eax, eax
je 0x56596c
lea esp, [esp]
mov eax, dword [esi + 0x5c8]
mov esi, dword [eax + edi*4]
test dword [esi + 0x116], 0x100000
jne 0x56594e
cmp esi, ebx
jae 0x565921
mov eax, dword [ebp - 0x24]
cmp eax, esi
ja 0x565921
sub esi, eax
mov eax, 0xdd67c8a7
imul esi
add edx, esi
sar edx, 8
mov esi, edx
shr esi, 0x1f
add esi, edx
cmp ebx, dword [ebp - 0x1c]
jne 0x565916
push ecx
lea ecx, [ebp - 0x24]
call fcn.00568170
mov ebx, dword [ebp - 0x20]
imul esi, esi, 0x128
add esi, dword [ebp - 0x24]
jmp 0x565932
cmp ebx, dword [ebp - 0x1c]
jne 0x565932
push ecx
lea ecx, [ebp - 0x24]
call fcn.00568170
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x565942
mov ecx, 0x4a
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x10]
add ebx, 0x128
inc dword [ebp - 0x14]
mov dword [ebp - 0x20], ebx
mov esi, dword [ebp - 0x18]
inc edi
mov dword [ebp - 0x10], edi
mov eax, dword [esi + 0x5cc]
sub eax, dword [esi + 0x5c8]
sar eax, 2
cmp edi, eax
jb 0x5658d0
mov edi, dword [ebp - 0x24]
mov eax, 0xdd67c8a7
sub ebx, edi
imul ebx
add edx, ebx
sar edx, 8
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
je 0x5659b8
add esi, 0x5c4
mov dword [ebp - 0x18], esi
mov esi, edi
mov edi, dword [ebp - 0x18]
push esi
mov ecx, edi
call fcn.005c7770
test byte [esi + 0x116], 1
je 0x5659ac
push esi
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
add esi, 0x128
dec ebx
jne 0x565994
mov edi, dword [ebp - 0x24]
push dword [ebp - 0x14]
push str.removed__d_files_n
call fcn.005b6df0
add esp, 8
test edi, edi
je 0x5659d5
push edi
call fcn.005b9080
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret

Function at 0x5659f0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x618
mov eax, dword [0x6e8da0]
xor eax, ebp
mov dword [ebp - 4], eax
lea eax, [ebp - 0x218]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
push str.infestation.exe
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x110]
push 0x6b068c
push eax
call fcn.0055d610
push str.Infestation:_Survivor_Stories
lea eax, [ebp - 0x618]
push str.Allow_network_traffic_for__s
push eax
call fcn.0055d630
add esp, 0x1c
lea eax, [ebp - 0x618]
lea ecx, [ebp - 0x110]
push eax
call fcn.0055d2c0
mov ecx, dword [ebp - 4]
add esp, 4
xor ecx, ebp
call fcn.005dbda3
mov esp, ebp
pop ebp
ret
Function at 0x565ee0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40c
mov eax, dword [0x6e8da0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push edi
push str.Making_sure_extracted_files_exists_n
mov edi, ecx
call fcn.005b6df0
add esp, 4
lea ecx, [edi + 0x4c0]
push 1
push 1
call fcn.005c6f90
mov eax, dword [edi + 0x5cc]
xor ebx, ebx
sub eax, dword [edi + 0x5c8]
sar eax, 2
test eax, eax
je 0x565fc3
push esi
lea ecx, [ecx]
mov eax, dword [edi + 0x5c8]
mov esi, dword [eax + ebx*4]
test byte [esi + 0x116], 1
je 0x565faa
lea eax, [ebp - 0x408]
push eax
lea eax, [ebp - 0x40c]
push eax
push esi
call fcn.005b7f20
add esp, 0xc
test al, al
je 0x565f79
mov eax, dword [ebp - 0x40c]
cmp eax, dword [esi + 0x112]
jne 0x565f79
mov eax, dword [ebp - 0x408]
cmp eax, dword [esi + 0x10a]
je 0x565faa
push esi
push str.restoring__s_n
call fcn.005b6df0
add esp, 8
push esi
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push esi
call dword [sym.imp.dbghelp.dll_MakeSureDirectoryPathExists]
push 0x6b082c
push esi
lea ecx, [edi + 0x4c0]
call fcn.005c6570
test al, al
je 0x565feb
mov eax, dword [edi + 0x5cc]
inc ebx
sub eax, dword [edi + 0x5c8]
sar eax, 2
cmp ebx, eax
jb 0x565f30
pop esi
lea ecx, [edi + 0x4c0]
call fcn.005c6260
push str.Making_sure_extracted_files_exists___finished_n
call fcn.005b6df0
mov ecx, dword [ebp - 4]
add esp, 4
xor ecx, ebp
pop edi
pop ebx
call fcn.005dbda3
mov esp, ebp
pop ebp
ret
push esi
lea eax, [ebp - 0x404]
push str.Cant_extract_file__s_nPlease_delete_this_file_manually
push eax
call fcn.0055d630
add esp, 0xc
lea eax, [ebp - 0x404]
push eax
push edi
call fcn.005649e0
int3
Function at 0x5665a0
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5fdeb0
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x6e8da0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 0x14], esi
mov dword [ebp - 4], 0
cmp dword [esi + 0x20d84], 0
je 0x5665f9
push 0
push 0x34b
push str.Updater.cpp
push str.status___STATUS_Checking
call fcn.005b72c0
add esp, 0x10
mov ecx, esi
call fcn.00564a40
mov ecx, esi
call fcn.00564c60
test al, al
je 0x566624
mov ecx, esi
call fcn.00564cd0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp byte [0x8a90f3], 0
mov byte [esi + 0x84], 1
jne 0x56663b
mov eax, 3
jmp 0x566693
mov eax, dword [0x8aad50]
or eax, dword [0x8aad54]
jne 0x56664f
mov eax, 3
jmp 0x566693
lea eax, [esi + 0x20d8d]
push str.Checking_for_linked_steam_account
push eax
call fcn.0055d630
add esp, 8
lea ecx, [esi + 0x215f8]
call fcn.00569110
test al, al
jne 0x566679
mov eax, 3
jmp 0x566693
mov ecx, esi
call fcn.00567340
xor eax, eax
cmp dword [esi + 0x20d84], 5
sete al
lea eax, [eax*2 + 3]
mov dword [esi + 0x20d84], eax
lea eax, [esi + 0x20d8d]
push 0x6afa40
push eax
call fcn.0055d630
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
add esp, 8
cmp dword [esi + 0x20d84], 5
jne 0x566762
mov eax, dword [esi + 0x2172c]
mov dword [0x8a9b20], eax
mov eax, dword [esi + 0x21730]
mov dword [0x8a9b24], eax
mov eax, dword [0x8a9b30]
or eax, dword [0x8a9b34]
je 0x56670b
call fcn.0055e030
test al, al
je 0x56670b
push 0
push 0
push 0x8a9b20
push 0x55dca0
push 0
push 0
call fcn.005dc72e
add esp, 0x18
mov dword [0x8a9ce8], eax
mov ecx, esi
call fcn.00564fe0
mov ecx, esi
call fcn.00565190
push dword [esi + 0x18]
push dword [esi + 0x5c4]
push str.current_build_version_d__updater_data_version_d_n
call fcn.005b6df0
mov eax, dword [esi + 0x5c4]
add esp, 0xc
mov ecx, esi
cmp eax, dword [esi + 0x18]
jne 0x566741
call fcn.005664d0
call fcn.005653f0
mov ecx, esi
call fcn.00565ba0
mov ecx, esi
call fcn.00566430
mov ecx, esi
call fcn.005663d0
mov ecx, esi
call fcn.005664d0
push 0x32
call edi
jmp 0x5666b3
Function at 0x5675a0
Capabilities:
Create thread

Disassembly:
push esi
mov esi, ecx
lea ecx, [esi + 0x215f8]
call fcn.00563e50
push 0
push 0
push esi
push 0x567240
push 0
push 0
call fcn.005dc72e
add esp, 0x18
mov dword [esi + 0x215f0], eax
pop esi
ret

Function at 0x567720
Capabilities:
Create thread

Disassembly:
push esi
push edi
mov edi, ecx
lea edx, [edi + 0x21944]
mov esi, edx
lea ecx, [esi + 1]
nop
mov al, byte [esi]
inc esi
test al, al
jne 0x567730
sub esi, ecx
cmp esi, 0x13
je 0x567766
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x567741
sub edx, ecx
cmp edx, 0x1d
je 0x567766
push 0
push str.Create_Account
push str.Please_enter_Serial_Key_in_following_format:_nXXXX_XXXX_XXXX_XXXX_or_XXXXX_XXXXX_XXXXX_XXXXX_XXXXX
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
ret
push 0
push 0
push edi
push 0x5675d0
push 0
push 0
call fcn.005dc72e
add esp, 0x18
mov dword [edi + 0x215f0], eax
pop edi
pop esi
ret

Function at 0x567af0
Capabilities:
Create thread

Disassembly:
push esi
mov esi, ecx
push edi
lea ecx, [esi + 0x21740]
mov edx, ecx
lea edi, [edx + 1]
nop
mov al, byte [edx]
inc edx
test al, al
jne 0x567b00
sub edx, edi
cmp edx, 4
jae 0x567b2f
push 0
push str.Create_Account
push str.email_address_is_too_short
push 0
mov dword [esi + 0x2173c], 0
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
ret
call fcn.005677b0
test eax, eax
jne 0x567b53
push eax
push str.Create_Account
push str.email_address_is_not_valid
push eax
mov dword [esi + 0x2173c], eax
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
ret
lea ecx, [esi + 0x21840]
lea eax, [esi + 0x217c0]
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x567b80
test dl, dl
je 0x567b7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x567b80
add eax, 2
add ecx, 2
test dl, dl
jne 0x567b60
xor eax, eax
jmp 0x567b85
sbb eax, eax
or eax, 1
push 0
test eax, eax
je 0x567baa
push str.Create_Account
push str.Passwords_do_not_match
push 0
mov dword [esi + 0x2173c], 0
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
ret
push 0
push esi
push 0x567790
push 0
push 0
call fcn.005dc72e
add esp, 0x18
mov dword [esi + 0x215f0], eax
pop edi
pop esi
ret

Function at 0x567d90
Capabilities:
Create thread

Disassembly:
push ebx
push esi
push edi
mov edi, ecx
cmp dword [edi + 0x215d0], 0
je 0x567db7
push 0
push 0x5cb
push str.Updater.cpp
push str.mainThread___NULL
call fcn.005b72c0
add esp, 0x10
cmp dword [edi + 0x215f0], 0
je 0x567dd9
push 0
push 0x5cc
push str.Updater.cpp
push str.loginThread___NULL
call fcn.005b72c0
add esp, 0x10
push 0
push 0
push edi
push 0x566830
push 0
push 0
call fcn.005dc72e
push 0
push 0
push edi
push 0x567200
push 0
push 0
mov dword [edi + 0x215d0], eax
call fcn.005dc72e
add esp, 0x30
mov dword [edi + 0x21c3c], eax
lea esi, [edi + 0x215e0]
mov ebx, 3
lea esp, [esp]
push 0
push 0
push edi
push 0x567220
push 0
push 0
call fcn.005dc72e
add esp, 0x18
mov dword [esi], eax
lea esi, [esi + 4]
dec ebx
jne 0x567e20
pop edi
pop esi
pop ebx
ret
Function at 0x568b90
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5fe1ef
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
push ebx
push esi
push edi
mov eax, dword [0x6e8da0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
cmp dword [esi], 0
je 0x568bd8
push 0
push 0x21
push str.WOCreateAccHelper.cpp
push str.createAccCode__CA_Unactive
call fcn.005b72c0
add esp, 0x10
cmp byte [esi + 4], 0
lea edi, [esi + 4]
jne 0x568bf7
push 0
push 0x22
push str.WOCreateAccHelper.cpp
push 0x6affd8
call fcn.005b72c0
add esp, 0x10
cmp byte [esi + 0x84], 0
lea ebx, [esi + 0x84]
jne 0x568c1c
push 0
push 0x23
push str.WOCreateAccHelper.cpp
push str.passwd1
call fcn.005b72c0
add esp, 0x10
cmp byte [esi + 0x104], 0
jne 0x568c3b
push 0
push 0x24
push str.WOCreateAccHelper.cpp
push str.passwd2
call fcn.005b72c0
add esp, 0x10
lea eax, [ebp - 0x10]
push eax
push 0xf003f
push 0
push str.SoftwareHouse_of_Warrior_InteractiveWarZ
push bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0x32
push eax
push 0x8a91dc
push 0
push 0
push str.hardwareid
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp - 0xd0]
call fcn.00401d80
lea ecx, [ebp - 0x8c]
mov dword [ebp - 4], 0
call fcn.00401430
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 1
call fcn.00401000
push str.api_AccRegister.aspx
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 2
call fcn.005685a0
push edi
push str.username
lea ecx, [ebp - 0x8c]
mov dword [ebp - 4], 3
call fcn.004017d0
push ebx
push str.password
lea ecx, [ebp - 0x8c]
call fcn.004017d0
lea eax, [esi + 0x184]
push eax
push 0x6b1344
lea ecx, [ebp - 0x8c]
call fcn.004017d0
push str.not_used.anymore
push str.email
lea ecx, [ebp - 0x8c]
call fcn.004017d0
push 0x8a91dc
push str.hardwareid
lea ecx, [ebp - 0x8c]
call fcn.004017d0
cmp dword [0x8aad54], 0
jl 0x568d80
jg 0x568d3c
cmp dword [0x8aad50], 0
jbe 0x568d80
lea ecx, [ebp - 0x28]
call fcn.00402af0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 4
push eax
push 0x6b16e8
mov ecx, 0x8aae58
call fcn.00401210
lea ecx, [ebp - 0x28]
call fcn.00402d30
push eax
push str.ticket
lea ecx, [ebp - 0x8c]
call fcn.004017d0
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00402c00
mov dword [esi], 1
lea ecx, [ebp - 0xd4]
call fcn.00568970
mov dword [esi], 0
mov esi, dword [ebp - 0x48]
mov dword [ebp - 4], 7
mov ecx, dword [ebp - 0x4c]
test ecx, ecx
je 0x568db5
mov eax, dword [ecx]
push 1
call dword [eax]
mov dword [ebp - 0x4c], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 6
call fcn.004010b0
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 5
call fcn.00401510
lea ecx, [ebp - 0xd0]
mov dword [ebp - 4], 0xffffffff
call fcn.00401e40
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret