Function at 0x40b330
Capabilities:
Delete file
Read file on windows

Disassembly:
sub esp, 0x684
push ebx
mov ebx, dword [esp + 0x694]
push ebp
push esi
mov esi, dword [sym.imp.MSVCRT.dll__stricmp]
push edi
push str._ver
push ebx
mov dword [esp + 0x1c], 0
mov byte [esp + 0x1b], 1
call esi
mov ebp, dword [sym.imp.USER32.dll_GetDesktopWindow]
add esp, 8
or edi, 0xffffffff
test eax, eax
jne 0x40b3a7
mov eax, dword [0x412010]
lea ecx, [esp + 0x294]
push eax
push str.version:__d
push 0x400
push ecx
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x10
lea edx, [esp + 0x294]
push 0x40
push str.Lineage
push edx
call ebp
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40b3ba
push str._noupdate
push ebx
call esi
add esp, 8
test eax, eax
jne 0x40b3be
mov byte [esp + 0x13], al
mov dword [esp + 0x14], edi
mov eax, dword [esp + 0x698]
push eax
mov dword [0x44e8a0], eax
call fcn.00402dc0
push 0
call dword [sym.imp.MSVCRT.dll_time]
push eax
call dword [sym.imp.MSVCRT.dll_srand]
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetACP]
mov edx, eax
cmp edx, 0x3b5
mov dword [0x425834], edx
jne 0x40b456
mov edi, str.kmainupd.ncsoft.co.kr
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_rand]
and eax, reloc.WSOCK32.dll_closesocket
jns 0x40b42f
dec eax
or eax, 0xfffffffc
inc eax
mov edi, dword [eax*4 + 0x41ccd0]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
jmp 0x40b637
cmp edx, 0x4e4
jne 0x40b4b7
mov edi, str.Usmainupd1.lineageTheBloodpledge.com
or ecx, 0xffffffff
xor eax, eax
mov dword [0x44e9dc], 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.usmainupd2.lineageTheBloodPledge.com
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40b65e
cmp edx, 0x3b6
jne 0x40b518
mov edi, str.TWupdate.lineage.com.tw
or ecx, 0xffffffff
xor eax, eax
mov dword [0x44e9dc], 2
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.210.208.82.10
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40b65e
cmp edx, 0x3a8
jne 0x40b579
mov edi, str.mcmainupd.ncsoft.co.kr
or ecx, 0xffffffff
xor eax, eax
mov dword [0x44e9dc], 5
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.211.169.240.134
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40b65e
cmp edx, 0x3a4
jne 0x40b5de
mov edi, str.jpnupdate.ncsoft.co.kr
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_rand]
mov edi, dword [str.210.81.242.130]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [0x44e9dc], 4
jmp 0x40b646
mov edi, str.kmainupd.ncsoft.co.kr
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_rand]
and eax, reloc.WSOCK32.dll_closesocket
jns 0x40b615
dec eax
or eax, 0xfffffffc
inc eax
mov edi, dword [eax*4 + 0x41ccd0]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [0x44e9dc], 0
mov edx, dword [0x425834]
mov dword [0x425830], 1
cmp edx, 0x3b5
je 0x40b668
mov dword [0x425830], 0
mov al, byte [esp + 0x13]
test al, al
jne 0x40b69c
cmp edx, 0x3b5
mov eax, 0x41f3a8
je 0x40b682
mov eax, str.This_option_is_allowed_only_after_successful_auto_update._Otherwise__client_can_crash_due_to_lack_of_some_resource.
push 0x31
push str.Warning
push eax
call ebp
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 2
je 0x40d158
push 5
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [esp + 0x24]
push ebx
push ecx
call fcn.0040ab80
mov esi, dword [esp + 0x1c]
add esp, 8
add esi, eax
cmp esi, 1
mov dword [esp + 0x14], esi
jl 0x40b7d2
mov edx, dword [esp + 0x24]
mov edi, dword [sym.imp.MSVCRT.dll__stricmp]
push 0x41f330
push edx
call edi
add esp, 8
test eax, eax
jne 0x40b6f4
mov dword [0x44e9dc], 1
mov byte [0x44e9d2], 1
jmp 0x40b7d2
mov eax, dword [esp + 0x24]
push str._taiwan
push eax
call edi
add esp, 8
test eax, eax
jne 0x40b71d
mov dword [0x44e9dc], 2
mov byte [0x44e9d1], 1
jmp 0x40b7d2
mov ecx, dword [esp + 0x24]
push str._korean
push ecx
call edi
add esp, 8
test eax, eax
jne 0x40b741
mov dword [0x44e9dc], eax
mov byte [0x44e9cf], 1
jmp 0x40b7d2
mov edx, dword [esp + 0x24]
push str._test
push edx
call edi
add esp, 8
test eax, eax
jne 0x40b762
mov dword [0x44e9dc], eax
mov byte [0x44e9d0], 1
jmp 0x40b7d2
mov eax, dword [esp + 0x24]
push str._hongkong
push eax
call edi
add esp, 8
test eax, eax
jne 0x40b788
mov dword [0x44e9dc], 3
mov byte [0x44e9d3], 1
jmp 0x40b7d2
mov ecx, dword [esp + 0x24]
push str._japan
push ecx
call edi
add esp, 8
test eax, eax
jne 0x40b7ae
mov dword [0x44e9dc], 4
mov byte [0x44e9d4], 1
jmp 0x40b7d2
mov edx, dword [esp + 0x24]
push str._china
push edx
call edi
add esp, 8
test eax, eax
jne 0x40b7d2
mov dword [0x44e9dc], 5
mov byte [0x44e9d5], 1
mov eax, dword [0x425834]
mov ecx, dword [sym.imp.USER32.dll_DialogBoxParamA]
cmp eax, 0x3b5
jne 0x40b7f1
push 0
push 0x408ad0
push 0
push 0x6b
jmp 0x40b826
cmp eax, 0x3b6
je 0x40b81b
cmp eax, 0x3a8
je 0x40b81b
cmp eax, 0x3a4
jne 0x40b839
mov edx, dword [esp + 0x698]
push 0
push 0x408ad0
push 0
push 0x74
push edx
jmp 0x40b82e
push 0
push 0x408ad0
push 0
push 0x71
mov eax, dword [esp + 0x6a8]
push eax
call ecx
cmp eax, 1
jne 0x40d158
push str._____
call fcn.00402ad0
push 0x30
call fcn.0040acf0
add esp, 8
call fcn.0040af20
cmp esi, 1
mov byte [0x44e9cb], 0
mov byte [0x44e9c9], 0
mov dword [esp + 0x20], 0
jl 0x40c017
mov al, byte [0x44e9d2]
test al, al
jne 0x40c017
mov al, byte [0x44e9d1]
test al, al
jne 0x40c017
mov al, byte [0x44e9cf]
test al, al
jne 0x40c017
mov al, byte [0x44e9d0]
test al, al
jne 0x40c017
mov al, byte [0x44e9d3]
test al, al
jne 0x40c017
mov al, byte [0x44e9d5]
test al, al
jne 0x40c017
lea ecx, [esp + 0x24]
push ecx
push esi
call fcn.0040ac10
add esp, 8
cmp eax, 3
jg 0x40b908
test eax, eax
je 0x40b8fc
mov edx, dword [eax*4 + 0x41d738]
push 0x10
push str.Error
push edx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x684
ret 0x10
mov byte [0x44e9c9], 1
jmp 0x40c01c
mov eax, dword [esp + 0x24]
mov edi, dword [sym.imp.MSVCRT.dll__stricmp]
push str._unitel
push eax
call edi
add esp, 8
test eax, eax
jne 0x40b9a0
cmp esi, 2
jl 0x40b9a0
mov ecx, dword [esp + 0x28]
mov ebp, dword [sym.imp.MSVCRT.dll_strstr]
push str.IP:
push ecx
call ebp
add esp, 8
test eax, eax
je 0x40b991
lea edi, [eax + 4]
push 0x41f2dc
push edi
call dword [sym.imp.MSVCRT.dll_strcspn]
mov esi, eax
add esp, 8
test esi, esi
je 0x40b991
push esi
push edi
push 0x42e498
call dword [sym.imp.MSVCRT.dll_strncpy]
mov edx, dword [esp + 0x34]
push str.PO:
push edx
mov byte [esi + 0x42e498], 0
call ebp
add esp, 0x14
test eax, eax
je 0x40b991
add eax, 4
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov word [0x41cd28], ax
mov dword [0x44e9c4], str.unitel
jmp 0x40c01c
mov ebp, dword [sym.imp.MSVCRT.dll__strnicmp]
push 6
push str.unitel
push ebx
call ebp
add esp, 0xc
test eax, eax
jne 0x40ba32
mov ebp, dword [sym.imp.MSVCRT.dll_strstr]
push str.IP:
push ebx
call ebp
add esp, 8
test eax, eax
je 0x40c01c
lea edi, [eax + 4]
push 0x41f2dc
push edi
call dword [sym.imp.MSVCRT.dll_strcspn]
mov esi, eax
add esp, 8
test esi, esi
je 0x40c01c
push esi
push edi
push 0x42e498
call dword [sym.imp.MSVCRT.dll_strncpy]
push str.PO:
push ebx
mov byte [esi + 0x42e498], 0
call ebp
add esp, 0x14
test eax, eax
je 0x40c01c
add eax, 4
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov word [0x41cd28], ax
mov byte [0x44e9c8], 1
jmp 0x40c01c
mov eax, dword [esp + 0x24]
push str._shinbiro
push eax
call edi
add esp, 8
test eax, eax
jne 0x40ba8f
cmp esi, 4
jl 0x40ba8f
mov edi, dword [esp + 0x28]
or ecx, 0xffffffff
mov dword [0x44e9c4], 0x41f2b4
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x2c]
mov edx, ecx
mov esi, edi
mov edi, 0x42e498
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov word [0x41cd28], ax
jmp 0x40c01c
mov ecx, dword [esp + 0x24]
push 9
push str._EGPARAM:
push ecx
call ebp
add esp, 0xc
test eax, eax
jne 0x40bab3
mov dword [0x44e9c4], str.excite
jmp 0x40c01c
mov edx, dword [esp + 0x24]
push str._lgi
push edx
call edi
add esp, 8
test eax, eax
jne 0x40baf6
mov edi, str.210.122.63.89
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov dword [esp + 0x20], 1
mov eax, ecx
mov esi, edi
mov edi, 0x42e498
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40c01c
mov ecx, dword [esp + 0x24]
push 0x41f294
push ecx
call edi
add esp, 8
test eax, eax
jne 0x40bb7c
cmp esi, 2
jl 0x40bb7c
mov edx, dword [esp + 0x28]
push 0x41e700
push edx
mov byte [0x44e9ce], 1
call dword [sym.imp.MSVCRT.dll_fopen]
mov esi, eax
add esp, 8
test esi, esi
je 0x40bb70
push esi
push 0x100
push 0x425938
call dword [sym.imp.MSVCRT.dll_fgets]
add esp, 0xc
test eax, eax
jne 0x40bb5a
push esi
mov byte [0x425938], al
call dword [sym.imp.MSVCRT.dll_fclose]
add esp, 4
jmp 0x40c01c
push esi
mov byte [0x425a37], 0
call dword [sym.imp.MSVCRT.dll_fclose]
add esp, 4
jmp 0x40c01c
mov byte [0x425938], 0
jmp 0x40c01c
mov eax, dword [esp + 0x24]
push str._KWG
push eax
call edi
add esp, 8
test eax, eax
jne 0x40bbcf
cmp esi, 5
jl 0x40bbcf
mov edi, str.game.kornetworld.com
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov word [0x41cd28], 0x2328
mov edx, ecx
mov esi, edi
mov edi, 0x42e498
mov dword [0x44e9c4], 0x41f26c
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40c01c
mov eax, dword [esp + 0x24]
push str._DLX
push eax
call edi
add esp, 8
test eax, eax
jne 0x40bc22
cmp esi, 6
jl 0x40bc22
mov edi, str.gamegw.dreamx.net
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov word [0x41cd28], 0xbb8
mov edx, ecx
mov esi, edi
mov edi, 0x42e498
mov dword [0x44e9c4], 0x41f248
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40c01c
mov eax, dword [esp + 0x24]
push str._hitel
push eax
call edi
add esp, 8
test eax, eax
jne 0x40bcaf
cmp esi, 4
jl 0x40bcaf
mov ecx, dword [esp + 0x28]
push 6
push str._host:
push ecx
call ebp
add esp, 0xc
test eax, eax
jne 0x40bc74
mov edx, dword [esp + 0x28]
or ecx, 0xffffffff
lea edi, [edx + 6]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x42e498
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x2c]
push 8
push str._portno:
push ecx
call ebp
add esp, 0xc
test eax, eax
jne 0x40bca0
mov edx, dword [esp + 0x2c]
add edx, 8
push edx
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov word [0x41cd28], ax
mov dword [0x44e9c4], str.hitel
jmp 0x40c01c
mov eax, dword [esp + 0x24]
push str.mihosoft
push eax
call edi
add esp, 8
test eax, eax
jne 0x40bd0c
cmp esi, 3
jl 0x40bd0c
mov edi, dword [esp + 0x28]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x2c]
mov edx, ecx
mov esi, edi
mov edi, 0x42e498
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov word [0x41cd28], ax
mov dword [0x44e9c4], 0x41f210
jmp 0x40c01c
mov ecx, dword [esp + 0x24]
push str._pcbang
push ecx
call edi
add esp, 8
test eax, eax
jne 0x40bd69
cmp esi, 3
jl 0x40bd69
mov edi, dword [esp + 0x28]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x2c]
mov edx, ecx
mov esi, edi
mov edi, 0x42e498
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov word [0x41cd28], ax
mov dword [0x44e9c4], 0x41f200
jmp 0x40c01c
mov ecx, dword [esp + 0x24]
push str._tvnet
push ecx
call edi
add esp, 8
test eax, eax
jne 0x40bdc6
cmp esi, 3
jl 0x40bdc6
mov edi, dword [esp + 0x28]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x2c]
mov edx, ecx
mov esi, edi
mov edi, 0x42e498
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov word [0x41cd28], ax
mov dword [0x44e9c4], 0x41f1f0
jmp 0x40c01c
mov ecx, dword [esp + 0x24]
push str._gt0
push ecx
call edi
add esp, 8
test eax, eax
jne 0x40be23
cmp esi, 3
jl 0x40be23
mov edi, dword [esp + 0x28]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, dword [esp + 0x2c]
mov edx, ecx
mov esi, edi
mov edi, 0x42e498
push eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_atoi]
add esp, 4
mov word [0x41cd28], ax
mov dword [0x44e9c4], 0x41f1e4
jmp 0x40c01c
cmp esi, 5
jl 0x40be43
mov eax, dword [esp + 0x24]
cmp byte [eax], 0x2f
jne 0x40be43
cmp byte [eax + 1], 0x6f
jne 0x40be43
mov byte [0x44e9cd], 1
jmp 0x40c01c
xor bl, bl
mov byte [esp + 0x12], 0
test esi, esi
jle 0x40c01c
mov ebp, dword [sym.imp.MSVCRT.dll_atoi]
lea ecx, [esp + 0x24]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], esi
mov edx, dword [esp + 0x18]
mov edx, dword [edx]
mov al, byte [edx]
cmp al, 0x2f
je 0x40bf7a
cmp al, 0x2d
je 0x40bf7a
mov al, byte [esp + 0x12]
test al, al
jne 0x40bf2a
mov eax, dword [0x44e9c4]
test eax, eax
je 0x40bebd
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
mov byte [esp + 0x12], 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x42e498
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40bffb
mov al, byte [0x44e9ca]
mov edi, edx
test al, al
je 0x40bede
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x425e74
jmp 0x40bf14
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edx, ecx
mov edi, 0x42e498
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov byte [esp + 0x12], 1
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40bffb
test bl, bl
jne 0x40bffb
mov eax, dword [0x44e9c4]
test eax, eax
je 0x40bf4e
push edx
call ebp
add esp, 4
mov word [0x41cd28], ax
mov bl, 1
jmp 0x40bffb
mov al, byte [0x44e9ca]
push edx
test al, al
je 0x40bf69
call ebp
add esp, 4
mov dword [0x42e894], eax
mov bl, 1
jmp 0x40bffb
call ebp
add esp, 4
mov dword [0x44e9d8], eax
mov bl, 1
jmp 0x40bffb
mov esi, dword [sym.imp.MSVCRT.dll__stricmp]
lea edi, [edx + 1]
push str.chollian
push edi
call esi
add esp, 8
test eax, eax
je 0x40bfe8
push str.moya
push edi
call esi
add esp, 8
test eax, eax
je 0x40bfe8
mov esi, 0x41f1cc
mov eax, edi
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x40bfcc
test cl, cl
je 0x40bfc8
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x40bfcc
add eax, 2
add esi, 2
test cl, cl
jne 0x40bfa8
xor eax, eax
jmp 0x40bfd1
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x40bfe8
mov al, byte [edi]
cmp al, 0x6e
je 0x40bfdf
cmp al, 0x4e
jne 0x40bffb
mov byte [0x44e9ca], 1
jmp 0x40bffb
mov dword [0x44e9c4], 0x42582c
mov word [0x41cd28], 0x7d0
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
add ecx, 4
dec eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
jne 0x40be64
jmp 0x40c01c
call fcn.0040b0d0
mov al, byte [0x44e9cf]
test al, al
je 0x40c08d
mov edi, str.kmainupd.ncsoft.co.kr
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_rand]
and eax, reloc.WSOCK32.dll_closesocket
jns 0x40c05c
dec eax
or eax, 0xfffffffc
inc eax
mov edi, dword [eax*4 + 0x41ccd0]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [0x44e9dc], eax
jmp 0x40c356
mov al, byte [0x44e9d2]
test al, al
je 0x40c0ef
mov edi, str.Usmainupd1.lineageTheBloodpledge.com
or ecx, 0xffffffff
xor eax, eax
mov dword [0x44e9dc], 1
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.usmainupd2.lineageTheBloodPledge.com
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40c356
mov al, byte [0x44e9d1]
test al, al
je 0x40c151
mov edi, str.TWupdate.lineage.com.tw
or ecx, 0xffffffff
xor eax, eax
mov dword [0x44e9dc], 2
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.210.208.82.10
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40c356
mov al, byte [0x44e9d0]
test al, al
je 0x40c1f7
cmp dword [esp + 0x14], 1
jle 0x40c18a
mov edi, dword [esp + 0x28]
test edi, edi
je 0x40c18a
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
jmp 0x40c1aa
mov edi, str.ktestupd.ncsoft.co.kr
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_rand]
and eax, reloc.WSOCK32.dll_closesocket
jns 0x40c1c1
dec eax
or eax, 0xfffffffc
inc eax
mov edi, dword [eax*4 + 0x41cce0]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [0x44e9dc], 0
jmp 0x40c356
mov al, byte [0x44e9d3]
test al, al
je 0x40c26d
mov edi, str.HKupdate.lineage.com.hk
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_rand]
and eax, 0x80000001
jns 0x40c237
dec eax
or eax, 0xfffffffe
inc eax
mov edi, dword [eax*4 + 0x41ccf0]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [0x44e9dc], 3
jmp 0x40c356
mov al, byte [0x44e9d4]
test al, al
je 0x40c2d6
mov edi, str.jpnupdate.ncsoft.co.kr
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.MSVCRT.dll_rand]
mov edi, dword [str.210.81.242.130]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [0x44e9dc], 4
jmp 0x40c356
mov al, byte [0x44e9d5]
test al, al
je 0x40c356
mov edi, str.61.33.239.145
or ecx, 0xffffffff
xor eax, eax
mov dword [0x44e9dc], 5
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x42e498
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.mcmainupd.ncsoft.co.kr
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str.211.169.240.134
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x425f74
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
cmp dword [esp + 0x14], 2
jne 0x40c3c0
mov eax, dword [0x44e9d8]
cmp eax, 0x7d0
je 0x40c370
cmp eax, 0x7d5
jne 0x40c3c0
push str.203.240.193.27
push 0x42e498
call dword [sym.imp.MSVCRT.dll__stricmp]
add esp, 8
test eax, eax
jne 0x40c3c0
mov edi, dword [str.211.169.240.131]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x44e8b8
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov cx, word [0x44e9d8]
mov byte [0x44e9cc], 1
mov word [0x41cd28], cx
call fcn.0040b1b0
test al, al
je 0x40d158
call fcn.00406b10
mov eax, dword [0x41cd04]
test eax, eax
jne 0x40c40c
mov edx, dword [0x425830]
push 0x10
push str.Error
mov eax, dword [edx*4 + 0x41cd2c]
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
call sub.WSOCK32.dll_WSACleanup
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x684
ret 0x10
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
mov ecx, dword [str.UpdError.txt]
lea edx, [esp + 0x190]
push ecx
push edx
mov byte [0x42e898], 0
call fcn.00402e10
lea eax, [esp + 0x198]
push eax
call dword [sym.imp.MSVCRT.dll_remove]
add esp, 0xc
lea ecx, [esp + 0x190]
push 0
push 0x80000080
push 4
push 0
push 0
push 0x40000000
push ecx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, 0xffffffff
mov dword [0x42e890], eax
je 0x40c47d
mov edx, dword [0x412010]
push edx
push str.build_number___d_n
push eax
call fcn.00406840
add esp, 0xc
mov al, byte [esp + 0x13]
test al, al
je 0x40c4e3
mov eax, dword [0x425834]
push 0
cmp eax, 0x3b5
push 0x408900
push 0
jne 0x40c4a6
mov eax, dword [esp + 0x6a4]
push 0x68
push eax
jmp 0x40c4b0
mov ecx, dword [esp + 0x6a4]
push 0x67
push ecx
call dword [sym.imp.USER32.dll_DialogBoxParamA]
mov al, byte [0x44e9cb]
test al, al
jne 0x40c4c4
call fcn.00406b30
mov eax, dword [0x42e680]
test eax, eax
je 0x40c4e3
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x1f4
call esi
mov eax, dword [0x42e680]
test eax, eax
jne 0x40c4d3
call sub.WSOCK32.dll_WSACleanup
mov eax, dword [0x42e890]
cmp eax, 0xffffffff
je 0x40c52f
push str.arguments_n
push eax
call fcn.00406840
mov eax, dword [esp + 0x1c]
add esp, 8
test eax, eax
jle 0x40c52a
lea esi, [esp + 0x24]
mov edi, eax
mov edx, dword [esi]
mov eax, dword [0x42e890]
push edx
push 0x41f168
push eax
call fcn.00406840
add esp, 0xc
add esi, 4
dec edi
jne 0x40c50e
mov eax, dword [0x42e890]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [str.UpdError.txt]
push ecx
call fcn.0040b220
mov eax, dword [0x44e9dc]
add esp, 4
cmp eax, 2
jne 0x40c594
mov eax, dword [0x425834]
cmp eax, 0x3b6
jne 0x40c562
push str.list_c_c.txt
jmp 0x40c575
cmp eax, 0x3b5
jne 0x40c570
push str.list_c_k.txt
jmp 0x40c575
push str.list_c_e.txt
call fcn.00408bf0
mov al, byte [0x44e9e4]
add esp, 4
test al, al
jne 0x40c6ab
push str.list_c.txt
jmp 0x40c6a3
cmp eax, 1
jne 0x40c5a3
push str.list_e_e.txt
jmp 0x40c6a3
test eax, eax
jne 0x40c5ec
mov al, byte [0x44e9d0]
test al, al
je 0x40c5ba
push str.list_t_k.txt
jmp 0x40c6a3
cmp dword [0x425834], 0x3b5
jne 0x40c5cd
push str.list_k_k.txt
jmp 0x40c5d2
push str.list_k_e.txt
call fcn.00408bf0
mov al, byte [0x44e9e4]
add esp, 4
test al, al
jne 0x40c6ab
jmp 0x40c69e
cmp eax, 3
jne 0x40c611
cmp dword [0x425834], 0x3b6
jne 0x40c607
push str.list_h_c.txt
jmp 0x40c6a3
push str.list_h_e.txt
jmp 0x40c6a3
cmp eax, 4
jne 0x40c646
cmp dword [0x425834], 0x3a4
jne 0x40c629
push str.list_j_j.txt
jmp 0x40c6a3
push 0
push str.WARNING
push str.You_cant_connect_Japanese_server_not_using_Japanese_OS
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov byte [0x42e898], 1
jmp 0x40c6ab
cmp eax, 5
jne 0x40c665
cmp dword [0x425834], 0x3a8
jne 0x40c65e
push str.list_mc_mc.txt
jmp 0x40c6a3
push str.list_mc_e.txt
jmp 0x40c6a3
mov al, byte [0x44e9d0]
test al, al
je 0x40c675
push str.list_t_k.txt
jmp 0x40c6a3
cmp dword [0x425834], 0x3b5
jne 0x40c688
push str.list_k_k.txt
jmp 0x40c68d
push str.list_k_e.txt
call fcn.00408bf0
mov al, byte [0x44e9e4]
add esp, 4
test al, al
jne 0x40c6ab
push str.list_k.txt
call fcn.00408bf0
add esp, 4
cmp dword [0x44e9dc], 1
je 0x40c8cc
lea edx, [esp + 0x6c]
push str.FindHack.exe
push edx
xor esi, esi
mov byte [esp + 0x1a], 0
mov dword [esp + 0x20], 1
call fcn.00402e10
mov al, byte [0x42e898]
add esp, 8
test al, al
jne 0x40ca7f
push str.npchk.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
mov dword [esp + 0x68], eax
jne 0x40c710
push eax
push str.Error
push str.Cant_Load_Dll
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40c7fd
push str.CheckCRC
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [esp + 0x64], eax
jne 0x40c73b
push eax
push str.Error
push str.Cant_Process_Function_in_Dll
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
mov byte [esp + 0x12], 1
lea eax, [esp + 0x6c]
push 0x41e260
push eax
call dword [sym.imp.MSVCRT.dll_fopen]
mov edi, eax
add esp, 8
test edi, edi
je 0x40c793
mov ebp, dword [sym.imp.MSVCRT.dll_fseek]
push 2
push 0
push edi
call ebp
push edi
call dword [sym.imp.MSVCRT.dll_ftell]
push 1
push 0xfffffffffffffffc
push edi
mov ebx, eax
call ebp
push edi
push 1
lea ecx, [esp + 0x40]
push 4
push ecx
call dword [sym.imp.MSVCRT.dll_fread]
push edi
call dword [sym.imp.MSVCRT.dll_fclose]
mov eax, dword [esp + 0x4c]
add esp, 0x30
cmp ebx, eax
je 0x40c79b
mov dword [esp + 0x18], 0
mov al, byte [esp + 0x12]
test al, al
jne 0x40c7fd
lea edx, [esp + 0x6c]
push edx
call dword [esp + 0x68]
add esp, 4
test al, al
jne 0x40c7fb
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x40c7fb
mov eax, dword [0x425834]
mov edi, 0x3b5
cmp eax, edi
push 1
jne 0x40c7e3
mov ebp, dword [sym.imp.USER32.dll_MessageBoxA]
push 0x41eff0
push 0x41efb0
push 0
call ebp
mov esi, eax
jmp 0x40c808
mov ebp, dword [sym.imp.USER32.dll_MessageBoxA]
push str.WARNING
push str._Hacking_tool_detecting_program_invalid._Continue_
push 0
call ebp
mov esi, eax
jmp 0x40c808
xor esi, esi
mov ebp, dword [sym.imp.USER32.dll_MessageBoxA]
mov edi, 0x3b5
mov eax, dword [esp + 0x68]
test eax, eax
je 0x40c817
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp esi, 2
je 0x40ca27
test esi, esi
jne 0x40ca1e
mov al, byte [0x42e898]
test al, al
jne 0x40ca7f
lea eax, [esp + 0x6c]
push esi
lea ecx, [esp + 0x70]
push eax
push ecx
push esi
call dword [sym.imp.MSVCRT.dll__spawnl]
add esp, 0x10
cmp eax, 0x401
jg 0x40c97d
je 0x40c954
cmp eax, 3
jg 0x40c8c1
je 0x40c898
sub eax, esi
je 0x40c8cc
sub eax, 2
jne 0x40c98e
mov eax, dword [0x425834]
push 1
cmp eax, edi
jne 0x40c889
push 0x41eff0
push 0x41ef50
jmp 0x40ca18
push str.WARNING
push str._Fail_in_Removing._Continue_
jmp 0x40ca18
mov eax, dword [0x425834]
push 1
cmp eax, edi
jne 0x40c8b2
push 0x41eff0
push str._nProtect
jmp 0x40ca18
push str.WARNING
push str._Cant_connetc_nProtect_Server._Continue_
jmp 0x40ca18
cmp eax, 0x400
jne 0x40c98e
mov al, byte [0x42e898]
test al, al
jne 0x40ca7f
mov al, byte [0x44e9cf]
mov ebx, dword [esp + 0x14]
test al, al
jne 0x40c8ee
test ebx, ebx
jne 0x40ca90
mov eax, dword [0x44e9dc]
test eax, eax
jne 0x40ca90
mov edx, dword [esp + 0x698]
mov esi, dword [sym.imp.USER32.dll_DialogBoxParamA]
push 0
push 0x40a410
push 0
push 0x70
push edx
call esi
mov al, byte [0x42e898]
test al, al
jne 0x40ca90
mov eax, dword [0x42e678]
sub eax, 0
je 0x40ca3b
dec eax
jne 0x40ca90
mov eax, dword [0x425834]
mov edi, 0x3b5
cmp eax, edi
jne 0x40ca34
push str.list_kkn.txt
jmp 0x40ca55
mov eax, dword [0x425834]
push 0
cmp eax, edi
jne 0x40c96e
push 0x41eff0
push 0x41ee88
jmp 0x40ca18
push str.WARNING
push str._A_hacking_tool_has_been_detected_and_cured_on_your_system.
jmp 0x40ca18
sub eax, 0x402
je 0x40c9f7
sub eax, 2
je 0x40c9d4
sub eax, 2
je 0x40c9b1
mov eax, dword [0x425834]
push 1
cmp eax, edi
jne 0x40c9a5
push 0x41eff0
push 0x41edfc
jmp 0x40ca18
push str.WARNING
push str._Unkown_error_has_occurred_in_the__FindHack_._Do_you_want_to_continue_
jmp 0x40ca18
mov eax, dword [0x425834]
push 1
cmp eax, edi
jne 0x40c9c8
push 0x41eff0
push 0x41ed70
jmp 0x40ca18
push str.WARNING
push str._The__FindHack__was_forced_to_be_terminated._Do_you_want_to_continue_
jmp 0x40ca18
mov eax, dword [0x425834]
push 1
cmp eax, edi
jne 0x40c9eb
push 0x41eff0
push 0x41ece4
jmp 0x40ca18
push str.WARNING
push str._No_files_exist_for_detecting_hacking_tools._Do_you_want_to_continue_
jmp 0x40ca18
mov eax, dword [0x425834]
push 1
cmp eax, edi
jne 0x40ca0e
push 0x41eff0
push 0x41ec24
jmp 0x40ca18
push str.WARNING
push str._Although_a_hacking_tool_has_been_detected_on_the_system__its_not_chosen_to_be_cured_or_cannot_be_cured._Do_you_want_to_continue_
push 0
call ebp
mov esi, eax
cmp esi, 2
jne 0x40c8cc
mov ebx, dword [esp + 0x14]
mov byte [0x42e898], 1
jmp 0x40ca9b
push str.list_ken.txt
jmp 0x40ca55
mov eax, dword [0x425834]
mov edi, 0x3b5
cmp eax, edi
jne 0x40ca50
push str.list_kkp.txt
jmp 0x40ca55
push str.list_kep.txt
call fcn.00408bf0
mov al, byte [0x44e9e4]
add esp, 4
test al, al
jne 0x40cb1c
push str.list_k.txt
call fcn.00408bf0
mov ebp, dword [sym.imp.USER32.dll_MessageBoxA]
add esp, 4
jmp 0x40ca9b
mov ebp, dword [sym.imp.USER32.dll_MessageBoxA]
mov ebx, dword [esp + 0x14]
mov edi, 0x3b5
jmp 0x40ca9b
mov ebp, dword [sym.imp.USER32.dll_MessageBoxA]
mov edi, 0x3b5
mov al, byte [0x44e9e4]
test al, al
je 0x40cb2e
mov esi, dword [sym.imp.USER32.dll_DialogBoxParamA]
mov al, byte [0x42e898]
test al, al
jne 0x40d127
mov al, byte [0x44e9cf]
test al, al
jne 0x40cafe
mov al, byte [0x44e9d1]
test al, al
jne 0x40cafe
mov al, byte [0x44e9d3]
test al, al
jne 0x40cafe
mov al, byte [0x44e9d2]
test al, al
jne 0x40cafe
mov al, byte [0x44e9d4]
test al, al
jne 0x40cafe
mov al, byte [0x44e9d0]
test al, al
jne 0x40cafe
mov al, byte [0x44e9d5]
test al, al
jne 0x40cafe
test ebx, ebx
jne 0x40cb3b
mov eax, dword [0x425834]
push 0
push 0x409d70
cmp eax, edi
push 0
push 0x70
jne 0x40cb24
mov eax, dword [esp + 0x6a8]
push eax
jmp 0x40cb2c
mov ebp, dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40caae
mov ecx, dword [esp + 0x6a8]
push ecx
call esi
mov al, byte [0x42e898]
test al, al
jne 0x40d127
mov al, byte [0x42e788]
mov dl, byte [0x44e9ce]
test al, al
je 0x40cb71
mov edi, 0x42e788
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, 0x42e498
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
jmp 0x40cb84
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x40cb7d
test dl, dl
je 0x40cb84
mov byte [0x42e498], 0
mov edi, dword [0x44e9c4]
test edi, edi
je 0x40cdd0
cmp byte [edi], 0
jne 0x40cbbc
mov ecx, dword [0x41cd28]
lea edx, [esp + 0x6c]
and ecx, 0xffff
push ecx
push str._s__d
push edx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0xc
jmp 0x40d037
mov esi, str.kornet
mov eax, edi
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x40cbeb
test cl, cl
je 0x40cbe7
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x40cbeb
add eax, 2
add esi, 2
test cl, cl
jne 0x40cbc3
xor eax, eax
jmp 0x40cbf0
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40cc2e
mov eax, dword [0x41cd28]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x30]
and eax, 0xffff
push eax
mov eax, dword [esp + 0x30]
push ecx
mov ecx, dword [esp + 0x30]
push edx
push eax
push ecx
lea edx, [esp + 0x80]
push str._kornet__s__s__s__s__d
push edx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x1c
jmp 0x40d037
mov esi, str.dreamx
mov eax, edi
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x40cc5d
test cl, cl
je 0x40cc59
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x40cc5d
add eax, 2
add esi, 2
test cl, cl
jne 0x40cc35
xor eax, eax
jmp 0x40cc62
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40cca5
mov eax, dword [0x41cd28]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
and eax, 0xffff
push eax
mov eax, dword [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x34]
push edx
mov edx, dword [esp + 0x34]
push eax
push ecx
push edx
lea eax, [esp + 0x84]
push str._dreamx__s__s__s__s__s__d
push eax
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x20
jmp 0x40d037
mov esi, str.hitel
mov eax, edi
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x40ccd4
test cl, cl
je 0x40ccd0
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x40ccd4
add eax, 2
add esi, 2
test cl, cl
jne 0x40ccac
xor eax, eax
jmp 0x40ccd9
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40ccf7
mov eax, dword [0x41cd28]
mov ecx, dword [esp + 0x30]
and eax, 0xffff
push eax
push ecx
push str._hitel__s__d
jmp 0x40cd9e
mov esi, str.excite
mov eax, edi
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x40cd26
test cl, cl
je 0x40cd22
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x40cd26
add eax, 2
add esi, 2
test cl, cl
jne 0x40ccfe
xor eax, eax
jmp 0x40cd2b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x40cd51
mov byte [0x42e498], al
mov eax, dword [esp + 0x24]
push eax
push str._excite__s
lea ecx, [esp + 0x74]
push ecx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0xc
jmp 0x40d037
mov esi, str.shinbiro
mov eax, edi
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x40cd80
test cl, cl
je 0x40cd7c
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x40cd80
add eax, 2
add esi, 2
test cl, cl
jne 0x40cd58
xor eax, eax
jmp 0x40cd85
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
mov eax, dword [0x41cd28]
jne 0x40cdb1
mov ecx, dword [esp + 0x30]
and eax, 0xffff
push eax
push ecx
push str._shinbiro__s__d
lea edx, [esp + 0x78]
push edx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x10
jmp 0x40d037
and eax, 0xffff
lea ecx, [esp + 0x6c]
push eax
push edi
push str.__s__d
push ecx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0x10
jmp 0x40d037
mov al, byte [0x44e9c8]
test al, al
je 0x40cdfe
mov edx, dword [0x41cd28]
lea eax, [esp + 0x6c]
and edx, 0xffff
push edx
push str._u__d
push eax
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0xc
jmp 0x40d037
mov eax, dword [esp + 0x20]
test eax, eax
je 0x40ce1e
lea ecx, [esp + 0x6c]
push 0x41eaf4
push ecx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 8
jmp 0x40d037
mov al, byte [0x44e9c9]
test al, al
je 0x40cee8
mov edi, dword [esp + 0x2c]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x42e498
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea edx, [esp + 0x6c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x41eaf0
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
test ebx, ebx
rep movsb byte es:[edi], byte [esi]
jle 0x40d037
lea edx, [esp + 0x24]
mov edi, 0x41eaec
or ecx, 0xffffffff
xor eax, eax
lea ebp, [esp + 0x6c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
add edx, 4
mov esi, edi
mov edi, ebp
mov ebp, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebp
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
lea ebp, [esp + 0x6c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [edx - 4]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, ebp
mov ebp, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebp
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
and ecx, 3
dec ebx
rep movsb byte es:[edi], byte [esi]
jne 0x40ce7f
mov ebp, dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40d037
mov al, byte [0x44e9ca]
test al, al
je 0x40cf10
mov ecx, dword [0x42e894]
lea edx, [esp + 0x6c]
push ecx
push str._s__d
push edx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0xc
jmp 0x40d037
mov al, byte [0x44e9cc]
test al, al
je 0x40cf29
mov eax, dword [0x44e9d8]
push eax
push str._s__d
jmp 0x40cd3e
mov al, byte [0x44e9cd]
test al, al
je 0x40cff4
mov edi, dword [esp + 0x28]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov edx, ecx
mov esi, edi
mov edi, 0x42e498
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea edx, [esp + 0x6c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x41eae8
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
cmp ebx, 2
rep movsb byte es:[edi], byte [esi]
jle 0x40d037
lea edx, [esp + 0x2c]
add ebx, 0xfffffffe
mov edi, 0x41eaec
or ecx, 0xffffffff
xor eax, eax
lea ebp, [esp + 0x6c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
add edx, 4
mov esi, edi
mov edi, ebp
mov ebp, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebp
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
lea ebp, [esp + 0x6c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [edx - 4]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, ebp
mov ebp, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebp
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
and ecx, 3
dec ebx
rep movsb byte es:[edi], byte [esi]
jne 0x40cf8e
mov ebp, dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40d037
test dl, dl
je 0x40d003
lea edx, [esp + 0x6c]
mov edi, 0x425938
jmp 0x40d01a
mov al, byte [0x44e9e4]
mov byte [esp + 0x6c], 0
test al, al
je 0x40d037
lea edx, [esp + 0x6c]
mov edi, 0x41eae4
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov al, byte [0x44e9d5]
test al, al
je 0x40d06f
mov al, byte [0x44e9e4]
test al, al
jne 0x40d06f
mov edi, str._china
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x6c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [str.UpdError.txt]
push ecx
call dword [sym.imp.MSVCRT.dll_remove]
mov al, byte [0x44e9cb]
add esp, 4
test al, al
je 0x40d0a9
mov eax, dword [str.lin.bin]
lea edx, [esp + 0x6c]
push 0
push edx
push 0x42e498
push 0x41eae0
push eax
call fcn.00402f10
add esp, 0x14
jmp 0x40d108
mov al, byte [0x44e9ca]
test al, al
je 0x40d0cf
mov edx, dword [str.lin.bin]
lea ecx, [esp + 0x6c]
push 0
push ecx
push 0x425e74
push edx
call fcn.00402f10
add esp, 0x10
jmp 0x40d108
mov al, byte [0x42e498]
push 0
test al, al
je 0x40d0f5
mov ecx, dword [str.lin.bin]
lea eax, [esp + 0x70]
push eax
push 0x42e498
push ecx
call fcn.00402f10
add esp, 0x10
jmp 0x40d108
mov eax, dword [str.lin.bin]
lea edx, [esp + 0x70]
push edx
push eax
call fcn.00402f10
add esp, 0xc
push 0
push str.Error
push str.Cant_execute_lin.bin
push 0
call ebp
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x684
ret 0x10
lea ecx, [esp + 0x16c]
push ecx
push str.lineage.new
call fcn.00402ee0
add esp, 8
test eax, eax
jne 0x40d158
push eax
push str.lineage.exe
push str.lineage.new
push str.swap.bin
call fcn.00402f10
add esp, 0x10
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x684
ret 0x10