Function at 0x419a49
Capabilities:
Accept command line arguments
Get file attributes
Set file attributes
Terminate process

Disassembly:
push 0x37c
mov eax, 0x4e7397
call fcn.00483d44
xor ecx, ecx
mov dword [ebp - 0x150], ecx
mov al, cl
mov dword [ebp - 0x58], ecx
mov bl, cl
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], cl
lea eax, [ebp - 0x160]
mov dword [ebp - 4], ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov edi, eax
xor eax, eax
inc eax
mov esi, eax
cmp dword [ebp - 0x160], eax
jle 0x41a4a9
and dword [ebp - 0x40], 0
lea ecx, [ebp - 0x40]
push dword [edi + esi*4]
and dword [ebp - 0x30], 0
xor eax, eax
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
call fcn.0040d923
xor eax, eax
lea ecx, [ebp - 0x40]
inc eax
mov byte [ebp - 4], al
cmp dword [ebp - 0x2c], 8
mov eax, dword [ebp - 0x30]
sbb dl, dl
cmp dword [ebp - 0x2c], 8
cmovae ecx, dword [ebp - 0x40]
add dl, 1
lea eax, [ecx + eax*2]
lea ecx, [ebp - 0x40]
cmovne ecx, dword [ebp - 0x40]
push ecx
push eax
push ecx
lea ecx, [ebp - 0xa0]
call fcn.0041e865
push str._login
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 2
call fcn.004072a3
push 1
test al, al
movzx ebx, bl
pop eax
push str._password
lea ecx, [ebp - 0xa0]
cmovne ebx, eax
call fcn.004072a3
mov ecx, dword [ebp - 0x150]
test al, al
push 1
movzx ecx, cl
pop eax
cmovne ecx, eax
mov dword [ebp - 0x150], ecx
lea ecx, [ebp - 0xa0]
push str._lang
call fcn.004072a3
test al, al
je 0x419bac
push dword [edi + esi*4 + 4]
lea ecx, [ebp - 0x40]
call fcn.0040d923
cmp dword [ebp - 0x2c], 8
lea ecx, [ebp - 0x40]
mov eax, dword [ebp - 0x30]
sbb dl, dl
cmp dword [ebp - 0x2c], 8
cmovae ecx, dword [ebp - 0x40]
add dl, 1
lea eax, [ecx + eax*2]
lea ecx, [ebp - 0x40]
cmovne ecx, dword [ebp - 0x40]
push ecx
push eax
push ecx
lea ecx, [ebp - 0xe8]
call fcn.0041e865
lea eax, [ebp - 0xe8]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x58]
call fcn.00405f85
lea ecx, [ebp - 0xe8]
call fcn.00403cab
lea ecx, [ebp - 0xa0]
call fcn.00403cab
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x2c]
cmp eax, 8
jb 0x419c0a
mov ecx, dword [ebp - 0x40]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x158], ecx
cmp eax, 0x1000
jb 0x419c01
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0x158]
push eax
call fcn.00403c47
mov eax, dword [ebp - 0x154]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x158]
push eax
push ecx
call fcn.00482b0d
pop ecx
pop ecx
inc esi
cmp esi, dword [ebp - 0x160]
jl 0x419aa4
test bl, bl
je 0x41a4a9
cmp byte [ebp - 0x150], 0
je 0x41a4a9
cmp dword [ebp - 0x48], 0
jne 0x419c41
push 7
push str.koreana
lea ecx, [ebp - 0x58]
call fcn.00408b44
push 0x34
call fcn.00482b1b
mov esi, eax
mov dword [ebp - 0x158], esi
push 4
pop ebx
mov ecx, esi
mov byte [ebp - 4], bl
call fcn.00421619
mov dword [esi], 0x634584
mov byte [ebp - 4], 0
call fcn.00467ff2
push esi
push eax
lea ecx, [ebp - 0x170]
call fcn.0041e902
push 0x34
mov byte [ebp - 4], 5
call fcn.00482b1b
mov esi, eax
mov dword [ebp - 0x158], esi
mov ecx, esi
mov byte [ebp - 4], 6
call fcn.00421619
mov dword [esi], 0x6345b0
mov byte [ebp - 4], 5
call fcn.00467ff2
push esi
push eax
lea ecx, [ebp - 0x168]
call fcn.0041e9c7
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 7
call fcn.00418618
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x88]
mov eax, dword [ebp - 0x78]
add eax, 0xfffffffc
push eax
push 0
lea eax, [ebp - 0xb8]
push eax
call fcn.00405ece
lea ecx, [ebp - 0x88]
cmp ecx, eax
je 0x419cfe
mov byte [ebp - 0x158], 0
push dword [ebp - 0x158]
push eax
call fcn.004068f5
lea ecx, [ebp - 0xb8]
call fcn.00403cab
push str.custom_resourcecso2_
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0xd0]
call fcn.0040dc60
pop ecx
push 0x10
pop esi
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x58]
cmp dword [ebp - 0x44], esi
push dword [ebp - 0x48]
cmovae ecx, dword [ebp - 0x58]
push ecx
mov ecx, eax
call fcn.0040382e
push eax
lea ecx, [ebp - 0xb8]
call fcn.004036f2
push ebx
mov edi, str..txt
mov byte [ebp - 4], 0xa
push edi
lea ecx, [ebp - 0xb8]
call fcn.0040382e
push eax
lea ecx, [ebp - 0xa0]
call fcn.004036f2
mov dword [ebp - 0x150], 0xc0
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0xa0]
cmp dword [ebp - 0x8c], esi
cmovae eax, dword [ebp - 0xa0]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00408bca
call fcn.004185a8
add esp, 0x18
lea edx, [ebp - 0x88]
test al, al
je 0x419e1f
push str.custom_resourcecso2_
lea ecx, [ebp - 0x118]
call fcn.0040dc60
pop ecx
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x58]
cmp dword [ebp - 0x44], esi
push dword [ebp - 0x48]
cmovae ecx, dword [ebp - 0x58]
push ecx
mov ecx, eax
mov dword [ebp - 0x150], 0xc1
call fcn.0040382e
push eax
lea ecx, [ebp - 0x148]
call fcn.004036f2
push ebx
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x148]
push edi
mov dword [ebp - 0x150], 0x1c3
call fcn.0040382e
push eax
lea ecx, [ebp - 0x130]
call fcn.004036f2
lea eax, [ebp - 0x130]
mov ebx, 0x3c7
jmp 0x419e8d
push str.Datacstrike_resourcecso2_
lea ecx, [ebp - 0x100]
call fcn.0040dc60
pop ecx
mov dword [ebp - 4], 0xf
lea ecx, [ebp - 0x58]
cmp dword [ebp - 0x44], esi
push dword [ebp - 0x48]
cmovae ecx, dword [ebp - 0x58]
push ecx
mov ecx, eax
mov dword [ebp - 0x150], 0xc8
call fcn.0040382e
push eax
lea ecx, [ebp - 0x40]
call fcn.004036f2
push ebx
mov dword [ebp - 4], esi
lea ecx, [ebp - 0x40]
push edi
mov dword [ebp - 0x150], 0x4d8
call fcn.0040382e
push eax
lea ecx, [ebp - 0xe8]
call fcn.004036f2
lea eax, [ebp - 0xe8]
mov ebx, 0xcf8
push eax
lea ecx, [ebp - 0x70]
call fcn.004036f2
mov dword [ebp - 4], 0x11
test bl, 0x20
je 0x419eb0
lea ecx, [ebp - 0xe8]
and ebx, 0xffffffdf
call fcn.00403cab
test bl, 0x10
je 0x419ec0
lea ecx, [ebp - 0x40]
and ebx, 0xffffffef
call fcn.00403cab
test bl, 8
je 0x419ed3
lea ecx, [ebp - 0x100]
and ebx, 0xfffffff7
call fcn.00403cab
test bl, 4
je 0x419ee6
lea ecx, [ebp - 0x130]
and ebx, 0xfffffffb
call fcn.00403cab
test bl, 2
je 0x419ef9
lea ecx, [ebp - 0x148]
and ebx, 0xfffffffd
call fcn.00403cab
test bl, 1
je 0x419f09
lea ecx, [ebp - 0x118]
call fcn.00403cab
lea ecx, [ebp - 0xa0]
call fcn.00403cab
lea ecx, [ebp - 0xb8]
call fcn.00403cab
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], 0x19
call fcn.00403cab
sub esp, 0xc
lea eax, [ebp - 0x70]
lea ecx, [ebp - 0x2d8]
push eax
call fcn.0041cfca
sub esp, 0x18
mov byte [ebp - 4], 0x1a
mov ecx, esp
lea eax, [ebp - 0x70]
xor ebx, ebx
push eax
mov dword [ecx], ebx
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], ebx
call fcn.00408c05
call fcn.004185a8
add esp, 0x18
test al, al
je 0x41a4d0
mov eax, dword [ebp - 0x2d8]
lea ecx, [ebp - 0x2d8]
mov eax, dword [eax + 4]
add ecx, eax
lea eax, [ebp - 0x168]
push eax
lea eax, [ebp - 0x15c]
push eax
call fcn.0041d023
lea ecx, [ebp - 0x15c]
call fcn.004084e7
push ecx
lea ecx, [ebp - 0x220]
call fcn.0041c5ab
xor eax, eax
mov dword [ebp - 0x28], ebx
mov esi, ebx
mov byte [ebp - 0x149], bl
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 0x1e
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x2d8]
mov dword [ebp - 0x150], ebx
mov edi, ebx
call fcn.0041ea1b
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
test byte [ecx + eax + 0xc], 6
jne 0x41a1ab
push 4
pop ebx
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x154], esi
push eax
push ecx
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0x28]
call fcn.0041d810
lea ecx, [ebp - 0x28]
cmp ecx, eax
je 0x41a024
mov byte [ebp - 0x158], 0
push dword [ebp - 0x158]
push eax
call fcn.0041847a
lea ecx, [ebp - 0xd0]
call fcn.0040ee82
push ecx
push str._GLOBAL_SERVER_LOGIN_
lea ecx, [ebp - 0x28]
call fcn.0041d83d
cmp eax, 0xffffffff
jne 0x41a0a1
push ecx
push str._GLOBAL_SERVER_PASSWORD_
lea ecx, [ebp - 0x28]
call fcn.0041d83d
cmp eax, 0xffffffff
jne 0x41a0a1
cmp dword [ebp - 0x14], 8
lea edx, [ebp - 0x28]
push dword [ebp - 0x18]
cmovae edx, dword [ebp - 0x28]
lea ecx, [ebp - 0x210]
call fcn.004205d8
pop ecx
mov edx, 0x630bf4
mov ecx, eax
call fcn.0041ea57
test esi, esi
jne 0x41a0b3
push str._Tokens_
lea ecx, [ebp - 0x28]
call fcn.004200f7
test al, al
je 0x41a187
mov edi, dword [ebp - 0x150]
xor eax, eax
lea esi, [eax + 1]
jmp 0x41a0cc
cmp esi, ebx
jne 0x41a07b
xor eax, eax
inc eax
mov byte [ebp - 0x149], al
jmp 0x41a187
mov esi, dword [ebp - 0x154]
mov edx, esi
mov al, byte [ebp - 0x149]
mov byte [ebp - 0x149], al
cmp esi, 1
jne 0x41a12d
lea eax, [edi + 1]
cmp dword [ebp - 0x150], eax
jne 0x41a187
push 0x630c14
lea ecx, [ebp - 0x28]
call fcn.004200f7
test al, al
je 0x41a187
push 2
pop esi
mov edx, str._GLOBAL_SERVER_LOGIN__t_t_DO_NOT_EDIT___REMOVE___TRANSLATE_THIS_SYSTEM_LOGIN_STRING._IT_IS_USED_AS_PLACEHOLDER_AND_SHOULD_ALWAYS_BE_THERE_
lea ecx, [ebp - 0x210]
call fcn.0041ea57
mov edx, 0x630bf4
mov ecx, eax
call fcn.0041ea57
mov edx, str._GLOBAL_SERVER_PASSWORD__t_t_DO_NOT_EDIT___REMOVE___TRANSLATE_THIS_SYSTEM_PASSWORD_STRING._IT_IS_USED_AS_PLACEHOLDER_AND_SHOULD_ALWAYS_BE_THERE_
lea ecx, [ebp - 0x210]
call fcn.0041ea57
mov edx, 0x630bf4
mov ecx, eax
call fcn.0041ea57
jmp 0x41a13c
mov byte [ebp - 0x149], al
mov esi, edx
mov ecx, esi
cmp edx, 2
jne 0x41a15d
lea eax, [edi + 2]
cmp dword [ebp - 0x150], eax
jne 0x41a187
push str._GLOBAL_SERVER_LOGIN__t_t_DO_NOT_EDIT___REMOVE___TRANSLATE_THIS_SYSTEM_LOGIN_STRING._IT_IS_USED_AS_PLACEHOLDER_AND_SHOULD_ALWAYS_BE_THERE_
lea ecx, [ebp - 0x28]
call fcn.004200f7
test al, al
je 0x41a187
push 3
pop esi
jmp 0x41a16a
mov byte [ebp - 0x149], al
mov esi, ecx
cmp ecx, 3
jne 0x41a187
lea eax, [edi + 3]
cmp dword [ebp - 0x150], eax
jne 0x41a187
push str._GLOBAL_SERVER_PASSWORD__t_t_DO_NOT_EDIT___REMOVE___TRANSLATE_THIS_SYSTEM_PASSWORD_STRING._IT_IS_USED_AS_PLACEHOLDER_AND_SHOULD_ALWAYS_BE_THERE_
lea ecx, [ebp - 0x28]
call fcn.004200f7
test al, al
cmovne esi, ebx
inc dword [ebp - 0x150]
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x2d8]
call fcn.0041ea1b
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
test byte [ecx + eax + 0xc], 6
je 0x419fef
lea ecx, [ebp - 0x2d8]
call fcn.0041cf57
push 4
pop ebx
cmp esi, ebx
jne 0x41a2df
cmp byte [ebp - 0x149], 0
jne 0x41a2df
mov eax, dword [ebp - 0x220]
lea ecx, [ebp - 0x220]
push 0
mov eax, dword [eax + 4]
add ecx, eax
xor eax, eax
cmp dword [ecx + 0x38], eax
cmovne ebx, eax
push ebx
call fcn.0040829c
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x41a23e
mov ecx, dword [ebp - 0x28]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x154], ecx
cmp eax, 0x1000
jb 0x41a235
lea eax, [ebp - 0x158]
push eax
lea eax, [ebp - 0x154]
push eax
call fcn.00403c47
mov eax, dword [ebp - 0x158]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x154]
push eax
push ecx
call fcn.00482b0d
pop ecx
pop ecx
and dword [ebp - 0x18], 0
lea ecx, [ebp - 0x220]
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
call fcn.0041a5a5
lea ecx, [ebp - 0x2d8]
call fcn.0041a554
lea ecx, [ebp - 0x70]
call fcn.00403cab
lea ecx, [ebp - 0x88]
call fcn.00403cab
lea ecx, [ebp - 0x168]
call fcn.004084e7
lea ecx, [ebp - 0x170]
call fcn.004084e7
mov eax, dword [ebp - 0x44]
cmp eax, 0x10
jb 0x41a2d7
mov ecx, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x154], ecx
cmp eax, 0x1000
jb 0x41a2ce
lea eax, [ebp - 0x158]
push eax
lea eax, [ebp - 0x154]
push eax
call fcn.00403c47
mov eax, dword [ebp - 0x158]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x154]
push eax
push ecx
call fcn.00482b0d
pop ecx
pop ecx
xor al, al
call fcn.00483cf3
ret
cmp dword [ebp - 0x5c], 0x10
lea eax, [ebp - 0x70]
cmovae eax, dword [ebp - 0x70]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
and eax, 0xfffffffe
lea ecx, [ebp - 0x70]
cmp dword [ebp - 0x5c], 0x10
push eax
cmovae ecx, dword [ebp - 0x70]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
sub esp, 0xc
lea eax, [ebp - 0x70]
lea ecx, [ebp - 0x388]
push eax
call fcn.0041c079
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x388]
mov eax, dword [ebp - 0x388]
mov eax, dword [eax + 4]
add ecx, eax
lea eax, [ebp - 0x170]
push eax
lea eax, [ebp - 0x15c]
push eax
call fcn.0041d023
lea ecx, [ebp - 0x15c]
call fcn.004084e7
lea eax, [ebp - 0xb8]
push eax
lea ecx, [ebp - 0x208]
call fcn.0041dd11
lea edx, [ebp - 0xb8]
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x388]
call fcn.0041ea42
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x1f
call fcn.0040ee82
lea ecx, [ebp - 0x388]
call fcn.0041c006
mov eax, dword [ebp - 0x220]
lea ecx, [ebp - 0x220]
push 0
mov eax, dword [eax + 4]
add ecx, eax
xor eax, eax
cmp dword [ecx + 0x38], eax
cmovne ebx, eax
push ebx
call fcn.0040829c
lea ecx, [ebp - 0x388]
call fcn.0041a5f6
mov eax, dword [ebp - 0x14]
cmp eax, 8
jb 0x41a408
mov ecx, dword [ebp - 0x28]
lea eax, [eax*2 + 2]
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x154], ecx
cmp eax, 0x1000
jb 0x41a3ff
lea eax, [ebp - 0x158]
push eax
lea eax, [ebp - 0x154]
push eax
call fcn.00403c47
mov eax, dword [ebp - 0x158]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x154]
push eax
push ecx
call fcn.00482b0d
pop ecx
pop ecx
and dword [ebp - 0x18], 0
lea ecx, [ebp - 0x220]
xor eax, eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
call fcn.0041a5a5
lea ecx, [ebp - 0x2d8]
call fcn.0041a554
lea ecx, [ebp - 0x70]
call fcn.00403cab
lea ecx, [ebp - 0x88]
call fcn.00403cab
lea ecx, [ebp - 0x168]
call fcn.004084e7
lea ecx, [ebp - 0x170]
call fcn.004084e7
mov eax, dword [ebp - 0x44]
cmp eax, 0x10
jb 0x41a4a1
mov ecx, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x154], ecx
cmp eax, 0x1000
jb 0x41a498
lea eax, [ebp - 0x158]
push eax
lea eax, [ebp - 0x154]
push eax
call fcn.00403c47
mov eax, dword [ebp - 0x158]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x154]
push eax
push ecx
call fcn.00482b0d
pop ecx
pop ecx
xor eax, eax
inc eax
jmp 0x41a2d9
push str.If_you_launch_the_game_manually_you_have_to_include__login_and__password_arguments.
lea ecx, [ebp - 0xd0]
call fcn.00408bca
push 0x10
push str.Missing_arguments
lea ecx, [ebp - 0xd0]
call fcn.00408754
push eax
push 0
jmp 0x41a546
push ecx
push str.Data_
lea ecx, [ebp - 0x70]
call fcn.00405efa
push eax
push ebx
lea ecx, [ebp - 0x70]
call fcn.00405f5e
push eax
lea ecx, [ebp - 0xd0]
call fcn.00408c6a
lea eax, [ebp - 0xd0]
mov byte [ebp - 4], 0x1b
push eax
mov edx, str.You_specified_the__lang_argument_but
lea ecx, [ebp - 0x118]
call fcn.0040dd7a
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x100]
mov edx, eax
mov dword [esp], str._cannot_be_found_
call fcn.0040dcb0
pop ecx
lea ecx, [ebp - 0x118]
call fcn.00403cd1
push esi
push str.Incorrect_language
lea ecx, [ebp - 0x100]
call fcn.00408754
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0xffffffffffffffff
call fcn.004aaa8c
int3