Function at 0x40f5c0
Capabilities:
Create http request
Create thread
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52041e
mov eax, dword fs:[0]
push eax
sub esp, 0x58c
mov eax, dword [0x58b18c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x51c], edi
push 0x104
lea eax, [ebp - 0x114]
xor esi, esi
push eax
push esi
mov dword [ebp - 0x4f8], esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x40f98d
xorps xmm0, xmm0
mov dword [ebp - 0x3d8], esi
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x3d4], esi
movups xmmword [ebp - 0x3e8], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40f637
sub ecx, edx
lea eax, [ebp - 0x114]
push ecx
push eax
lea ecx, [ebp - 0x3e8]
call fcn.004185e0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x3e8]
mov esi, dword [ebp - 0x3d4]
lea edx, [ebp - 0x3e8]
mov eax, dword [ebp - 0x3d8]
cmp esi, 0x10
cmovae ecx, dword [ebp - 0x3e8]
cmovae edx, dword [ebp - 0x3e8]
mov dword [ebp - 0x520], ecx
test eax, eax
je 0x40f6ae
or ecx, 0xffffffff
dec eax
cmp eax, ecx
cmovb ecx, eax
add ecx, edx
cmp byte [ecx], 0x5c
je 0x40f6aa
nop dword [eax]
cmp ecx, edx
je 0x40f6ae
dec ecx
cmp byte [ecx], 0x5c
jne 0x40f6a0
sub ecx, edx
jmp 0x40f6b1
or ecx, 0xffffffff
mov eax, dword [ebp - 0x520]
xorps xmm0, xmm0
inc eax
mov dword [ebp - 0x508], 0
add ecx, eax
mov dword [ebp - 0x504], 0
cmp esi, 0x10
lea eax, [ebp - 0x3e8]
movups xmmword [ebp - 0x518], xmm0
cmovae eax, dword [ebp - 0x3e8]
cmp eax, ecx
jne 0x40f6ff
mov dword [ebp - 0x504], 0xf
mov byte [ebp - 0x518], 0
jmp 0x40f70e
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x518]
call fcn.004185e0
lea eax, [ebp - 0x518]
push eax
lea ecx, [edi + 0x24]
call fcn.00414d90
mov ecx, dword [ebp - 0x504]
cmp ecx, 0x10
jb 0x40f757
mov edx, dword [ebp - 0x518]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f74d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411432
push ecx
push edx
call fcn.004f79ae
add esp, 8
movups xmm0, xmmword [ebp - 0x3e8]
lea eax, [ebp - 0x580]
mov byte [ebp - 0x3e8], 0
push eax
movups xmmword [ebp - 0x580], xmm0
lea ecx, [edi + 0x3c]
movq xmm0, qword [ebp - 0x3d8]
movq qword [ebp - 0x570], xmm0
mov dword [ebp - 0x3d8], 0
mov dword [ebp - 0x3d4], 0xf
call fcn.00414d90
mov ecx, dword [ebp - 0x56c]
cmp ecx, 0x10
jb 0x40f7d9
mov edx, dword [ebp - 0x580]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f7cf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411432
push ecx
push edx
call fcn.004f79ae
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x558], 0
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x554], 0
movups xmmword [ebp - 0x568], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40f800
sub ecx, edx
lea eax, [ebp - 0x114]
push ecx
push eax
lea ecx, [ebp - 0x568]
call fcn.004185e0
mov byte [ebp - 4], 1
lea edx, [ebp - 0x568]
cmp dword [ebp - 0x554], 0x10
mov esi, dword [ebp - 0x558]
cmovae edx, dword [ebp - 0x568]
test esi, esi
je 0x40f85e
or ecx, 0xffffffff
lea eax, [esi - 1]
cmp eax, ecx
cmovb ecx, eax
add ecx, edx
cmp byte [ecx], 0x5c
je 0x40f85a
cmp ecx, edx
je 0x40f85e
dec ecx
cmp byte [ecx], 0x5c
jne 0x40f850
sub ecx, edx
jmp 0x40f861
or ecx, 0xffffffff
lea edx, [ecx + 1]
mov dword [ebp - 0x3f4], 0
mov dword [ebp - 0x3f0], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x404], xmm0
cmp esi, edx
jb 0x411428
sub esi, edx
lea eax, [ebp - 0x568]
cmp esi, 0xffffffff
mov ecx, 0xffffffff
cmovb ecx, esi
cmp dword [ebp - 0x554], 0x10
push ecx
cmovae eax, dword [ebp - 0x568]
lea ecx, [ebp - 0x404]
add eax, edx
push eax
call fcn.004185e0
lea eax, [ebp - 0x404]
mov esi, 0x60
push eax
lea ecx, [edi + 0x54]
mov dword [ebp - 0x4f8], esi
call fcn.00414d90
mov ecx, dword [ebp - 0x3f0]
cmp ecx, 0x10
jb 0x40f90e
mov edx, dword [ebp - 0x404]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f904
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41142d
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x554]
cmp ecx, 0x10
jb 0x40f94c
mov edx, dword [ebp - 0x568]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f942
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41142d
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3d4]
cmp ecx, 0x10
jb 0x40f98d
mov edx, dword [ebp - 0x3e8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f983
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411432
push ecx
push edx
call fcn.004f79ae
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x4fc], 0
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x508], 0
movups xmmword [ebp - 0x330], xmm0
mov dword [ebp - 0x504], 0
lea edx, [ecx + 1]
movups xmmword [ebp - 0x518], xmm0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40f9c5
sub ecx, edx
lea eax, [ebp - 0x114]
push ecx
push eax
lea ecx, [ebp - 0x518]
call fcn.004185e0
lea eax, [ebp - 0x4fc]
mov dword [ebp - 4], 2
push eax
lea eax, [ebp - 0x330]
mov ecx, edi
push eax
lea eax, [ebp - 0x518]
push eax
call fcn.0040f020
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x504]
mov byte [ebp - 0x4ed], al
cmp ecx, 0x10
jb 0x40fa51
mov edx, dword [ebp - 0x518]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fa41
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411437
push ecx
push edx
call fcn.004f79ae
mov al, byte [ebp - 0x4ed]
add esp, 8
test al, al
je 0x40fa5d
mov eax, dword [ebp - 0x4fc]
mov dword [edi], eax
mov ecx, edi
call fcn.00411a70
cmp byte [edi + 0x20], 0
jne 0x41140d
cmp dword [0x5990a8], 0
xorps xmm0, xmm0
push 1
push 0x55ae0c
je 0x40fb8c
lea ecx, [ebp - 0x580]
mov dword [ebp - 0x570], 0
movups xmmword [ebp - 0x580], xmm0
mov dword [ebp - 0x56c], 0
call fcn.004185e0
or esi, 0x2000
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x518]
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x508], 0
or esi, 1
mov dword [ebp - 0x504], 0
push 0x55ae0c
mov dword [ebp - 0x4f8], esi
movups xmmword [ebp - 0x518], xmm0
call fcn.004185e0
or esi, 0x20000
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x518]
or esi, 2
push 0x599098
mov dword [ebp - 0x4f8], esi
call fcn.00414cd0
or esi, 0x10000
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x3b0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3a0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x580]
mov dword [ebp - 4], 5
push eax
lea eax, [ebp - 0x3b0]
or esi, 4
push eax
push dword [ebp - 0x4f4]
lea ecx, [ebp - 0x538]
mov dword [ebp - 0x4f8], esi
call fcn.004194e0
or esi, 0x8000
lea eax, [ebp - 0x538]
mov dword [ebp - 4], 6
or esi, 8
jmp 0x40fbc8
lea ecx, [ebp - 0x44c]
mov dword [ebp - 0x43c], 0
movups xmmword [ebp - 0x44c], xmm0
mov dword [ebp - 0x438], 0
call fcn.004185e0
or esi, 0x4000
lea eax, [ebp - 0x44c]
mov dword [ebp - 4], 7
or esi, 0x10
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x4f8], esi
push str.ftp:__
lea ecx, [ebp - 0x338]
mov dword [ebp - 0x4fc], eax
movups xmmword [ebp - 0x338], xmm0
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x324], 0
call fcn.004185e0
or esi, 0x80
mov dword [ebp - 0x4f8], esi
push 0x599080
lea ecx, [ebp - 0x338]
mov dword [ebp - 4], 8
call fcn.00414cd0
or esi, 0x100
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x598], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x588], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x4f8], esi
mov byte [ebp - 4], 9
lea eax, [ebp - 0x598]
push dword [ebp - 0x4fc]
lea ecx, [ebp - 0x350]
push eax
push dword [ebp - 0x4f4]
call fcn.004194e0
or esi, 0x200
mov dword [ebp - 0x4f8], esi
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x584]
cmp ecx, 0x10
jb 0x40fcc7
mov edx, dword [ebp - 0x598]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fcbd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41143c
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x324]
cmp ecx, 0x10
jb 0x40fd05
mov edx, dword [ebp - 0x338]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fcfb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41143c
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x324], 0xf
mov byte [ebp - 0x338], 0
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x4f8]
test al, 0x10
je 0x40fd77
mov ecx, dword [ebp - 0x438]
and eax, 0xffffffef
mov dword [ebp - 0x4f8], eax
cmp ecx, 0x10
jb 0x40fd77
mov edx, dword [ebp - 0x44c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fd67
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41143c
push ecx
push edx
call fcn.004f79ae
mov eax, dword [ebp - 0x4f8]
add esp, 8
mov byte [ebp - 4], 0xe
test al, 8
je 0x40fdc8
mov ecx, dword [ebp - 0x524]
and eax, 0xfffffff7
mov dword [ebp - 0x4f8], eax
cmp ecx, 0x10
jb 0x40fdc8
mov edx, dword [ebp - 0x538]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fdb8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41143c
push ecx
push edx
call fcn.004f79ae
mov eax, dword [ebp - 0x4f8]
add esp, 8
mov byte [ebp - 4], 0xf
test al, 4
je 0x40fe19
mov ecx, dword [ebp - 0x39c]
and eax, 0xfffffffb
mov dword [ebp - 0x4f8], eax
cmp ecx, 0x10
jb 0x40fe19
mov edx, dword [ebp - 0x3b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fe09
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41143c
push ecx
push edx
call fcn.004f79ae
mov eax, dword [ebp - 0x4f8]
add esp, 8
mov byte [ebp - 4], 0x10
test al, 2
je 0x40fe85
mov ecx, dword [ebp - 0x504]
and eax, 0xfffffffd
mov dword [ebp - 0x4f8], eax
cmp ecx, 0x10
jb 0x40fe6a
mov edx, dword [ebp - 0x518]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fe5a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41143c
push ecx
push edx
call fcn.004f79ae
mov eax, dword [ebp - 0x4f8]
add esp, 8
mov dword [ebp - 0x508], 0
mov dword [ebp - 0x504], 0xf
mov byte [ebp - 0x518], 0
mov byte [ebp - 4], 0x11
test al, 1
je 0x40fed0
mov ecx, dword [ebp - 0x56c]
and eax, 0xfffffffe
mov dword [ebp - 0x4f8], eax
cmp ecx, 0x10
jb 0x40fed0
mov edx, dword [ebp - 0x580]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fec6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41143c
push ecx
push edx
call fcn.004f79ae
add esp, 8
cmp dword [ebp - 0x33c], 0x10
lea eax, [ebp - 0x350]
lea esi, [edi + 0x284]
cmovae eax, dword [ebp - 0x350]
push eax
push str.3Searching_for_updates_at_1_s_n
push 0x200
push esi
call fcn.0040a250
add esp, 0x10
mov edx, esi
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
call fcn.004b4380
xorps xmm0, xmm0
mov dword [ebp - 0x484], 0
add esp, 0x14
mov dword [ebp - 0x480], 0
movups xmmword [ebp - 0x47c], xmm0
mov dword [ebp - 0x46c], 0
mov dword [ebp - 0x468], 0
push 0
push 0
push 0
push 1
push str.tinyrcon
mov byte [ebp - 4], 0x12
call dword [sym.imp.WININET.dll_InternetOpenA]
mov ecx, dword [ebp - 0x484]
mov edx, dword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [ebp - 0x324], eax
mov dword [ebp - 0x520], edx
test ecx, ecx
je 0x40ff84
push ecx
call edx
mov eax, dword [ebp - 0x324]
mov dword [ebp - 0x484], eax
test eax, eax
je 0x4113a3
lea eax, [ebp - 0x488]
mov dword [ebp - 0x488], 0
push eax
push 0
lea eax, [ebp - 0x484]
mov dword [ebp - 0x3ec], 0
push eax
push 0x412490
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x4fc], eax
test eax, eax
je 0x41006b
push 0x3e8
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x41006b
cmp dword [ebp - 0x33c], 0x10
lea eax, [ebp - 0x350]
mov byte [0x598d64], 0
cmovae eax, dword [ebp - 0x350]
push eax
push str.3Could_not_connect_to_5_s_3to_check_for_5Tiny6Rcon_3updates__n_5The_FTP_download_site_3might_be_offline_at_the_moment._2Please__try_again_later._n
push 0x200
push esi
call fcn.0040a250
add esp, 0x10
mov edx, esi
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
call fcn.004b4380
add esp, 0x14
push 0xffffffffffffffff
push dword [ebp - 0x4fc]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea eax, [ebp - 0x3ec]
push eax
push dword [ebp - 0x4fc]
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
push dword [ebp - 0x4fc]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x3ec], 0
jne 0x4113a3
cmp dword [ebp - 0x480], 0
je 0x41135c
push 0x599098
lea ecx, [ebp - 0x380]
call fcn.00414ed0
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x370]
mov edx, dword [ebp - 0x36c]
test ecx, ecx
je 0x410109
cmp edx, 0x10
lea eax, [ebp - 0x380]
cmovae eax, dword [ebp - 0x380]
cmp byte [eax], 0x2f
je 0x410109
mov eax, edx
sub eax, ecx
cmp eax, 1
jb 0x4100e4
inc ecx
lea esi, [ebp - 0x380]
cmp edx, 0x10
mov dword [ebp - 0x370], ecx
push ecx
cmovae esi, dword [ebp - 0x380]
push esi
lea eax, [esi + 1]
push eax
call fcn.005005e0
add esp, 0xc
mov byte [esi], 0x2f
jmp 0x4100fd
push 0x2f
push 1
push 0
push dword [ebp - 0x4f4]
lea ecx, [ebp - 0x380]
push 1
call fcn.00418440
mov ecx, dword [ebp - 0x370]
mov edx, dword [ebp - 0x36c]
mov esi, dword [ebp - 0x380]
lea eax, [ebp - 0x380]
cmp edx, 0x10
cmovae eax, esi
cmp byte [eax + ecx - 1], 0x2f
je 0x41015e
cmp ecx, edx
jae 0x410143
lea eax, [ecx + 1]
cmp edx, 0x10
mov dword [ebp - 0x370], eax
lea eax, [ebp - 0x380]
cmovae eax, esi
mov word [eax + ecx], 0x2f
jmp 0x410158
push 0x2f
push dword [ebp - 0x4f4]
lea ecx, [ebp - 0x380]
push 1
call fcn.00418300
mov edx, dword [ebp - 0x36c]
cmp edx, 0x10
mov dword [ebp - 0x318], 0
push str._U_TinyRcon.exe
lea eax, [ebp - 0x380]
xorps xmm0, xmm0
cmovae eax, dword [ebp - 0x380]
mov ecx, edi
push eax
lea eax, [ebp - 0x480]
movq qword [ebp - 0x320], xmm0
push eax
lea eax, [ebp - 0x320]
push eax
call fcn.0040f1c0
mov byte [ebp - 4], 0x14
xorps xmm0, xmm0
mov eax, dword [edi]
push ecx
push str._d.d.d.d_
lea ecx, [ebp - 0x49c]
mov dword [ebp - 0x324], eax
movups xmmword [ebp - 0x49c], xmm0
mov dword [ebp - 0x48c], 0
call fcn.00412ec0
mov byte [ebp - 4], 0x15
mov eax, dword [ebp - 0x31c]
mov edi, dword [ebp - 0x320]
mov dword [ebp - 0x4f4], eax
cmp edi, eax
je 0x4104e5
mov esi, dword [ebp - 0x4f8]
push 0x38
lea eax, [ebp - 0x3d0]
push 0
push eax
call fcn.00500b60
xorps xmm0, xmm0
mov dword [ebp - 0x3d0], 0
add esp, 0xc
mov byte [ebp - 0x3cc], 0
movups xmmword [ebp - 0x3c8], xmm0
mov dword [ebp - 0x3b8], 0
mov byte [ebp - 0x3b4], 0
mov dword [ebp - 0x3b0], 0
mov dword [ebp - 0x3ac], 0
mov byte [ebp - 0x3a8], 0
mov dword [ebp - 0x3a4], 0
mov dword [ebp - 0x3a0], 0
mov byte [ebp - 0x39c], 0
mov byte [ebp - 4], 0x16
mov ecx, dword [edi + 0x14]
mov edx, dword [edi + 0x10]
mov dword [ebp - 0x4fc], edi
cmp ecx, 0x10
jb 0x41028b
mov eax, dword [edi]
mov ecx, eax
mov dword [ebp - 0x4fc], eax
add edx, ecx
jmp 0x410294
add edx, edi
mov eax, edi
cmp ecx, 0x10
jb 0x410296
mov eax, dword [edi]
push dword [ebp - 0x4fc]
push ecx
push edx
push eax
lea edx, [ebp - 0x49c]
lea ecx, [ebp - 0x3d0]
call fcn.0041ac10
add esp, 0x10
test al, al
je 0x4104c7
mov ecx, dword [ebp - 0x3c4]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0x3c8]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x4102e4
lea ecx, [ebp - 0x3a4]
jmp 0x4102ed
mov ecx, dword [ebp - 0x3c8]
add ecx, 0xc
cmp byte [ecx + 8], 0
je 0x410302
mov eax, dword [ecx]
mov edx, eax
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x4fc], ecx
jmp 0x410308
xor eax, eax
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x4fc], eax
xorps xmm0, xmm0
mov dword [ebp - 0x508], 0
mov dword [ebp - 0x504], 0
movups xmmword [ebp - 0x518], xmm0
cmp eax, ecx
jne 0x41034d
mov dword [ebp - 0x508], 0
mov dword [ebp - 0x504], 0xf
mov byte [ebp - 0x518], 0
jmp 0x41035c
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x518]
call fcn.004185e0
or esi, 0x800
lea ecx, [ebp - 0x518]
mov byte [ebp - 4], 0x17
call fcn.0040e310
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x504]
mov dword [ebp - 0x4f8], eax
cmp ecx, 0x10
jb 0x4103b5
mov edx, dword [ebp - 0x518]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4103ab
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41142d
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov ecx, dword [ebp - 0x3c4]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0x3c8]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x4103de
lea ecx, [ebp - 0x3a4]
jmp 0x4103e7
mov ecx, dword [ebp - 0x3c8]
add ecx, 0xc
cmp byte [ecx + 8], 0
je 0x4103fc
mov eax, dword [ecx]
mov edx, eax
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x4fc], ecx
jmp 0x410402
xor eax, eax
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x4fc], eax
xorps xmm0, xmm0
mov dword [ebp - 0x508], 0
mov dword [ebp - 0x504], 0
movups xmmword [ebp - 0x518], xmm0
cmp eax, ecx
jne 0x41043d
mov dword [ebp - 0x504], 0xf
mov byte [ebp - 0x518], 0
jmp 0x41044c
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x518]
call fcn.004185e0
mov ecx, dword [ebp - 0x51c]
lea eax, [ebp - 0x518]
push eax
or esi, 0x1000
lea ecx, [ecx + 8]
call fcn.00414d90
mov ecx, dword [ebp - 0x504]
cmp ecx, 0x10
jb 0x4104a1
mov edx, dword [ebp - 0x518]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x410497
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41142d
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov eax, dword [ebp - 0x4f8]
cmp eax, dword [ebp - 0x324]
jbe 0x4104c7
mov ecx, dword [ebp - 0x51c]
push edi
mov dword [ebp - 0x324], eax
mov dword [ecx + 4], eax
add ecx, 0x6c
call fcn.00414d90
lea ecx, [ebp - 0x3c8]
mov byte [ebp - 4], 0x15
call fcn.00412e20
add edi, 0x18
cmp edi, dword [ebp - 0x4f4]
jne 0x4101f3
mov edi, dword [ebp - 0x51c]
cmp dword [edi + 0x7c], 0
jne 0x410537
cmp dword [ebp - 0x33c], 0x10
lea eax, [ebp - 0x350]
lea esi, [edi + 0x284]
cmovae eax, dword [ebp - 0x350]
push eax
push str.2There_is_no_newer_version_of_5Tiny6Rcon_2at_5_s_n
push 0x200
push esi
call fcn.0040a250
add esp, 0x10
mov edx, esi
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
call fcn.004b4380
add esp, 0x14
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x14
mov dword [ebp - 0x51c], eax
call eax
cmp dword [ebp - 0x36c], 0x10
lea eax, [ebp - 0x380]
push str.geo_.7z
cmovae eax, dword [ebp - 0x380]
mov ecx, edi
push eax
lea eax, [ebp - 0x480]
push eax
lea eax, [ebp - 0x32c]
push eax
call fcn.0040f1c0
mov esi, eax
lea eax, [ebp - 0x320]
cmp eax, esi
je 0x4105b6
mov ecx, eax
call fcn.00415b10
mov ecx, dword [esi]
mov dword [ebp - 0x320], ecx
mov eax, dword [esi + 4]
mov dword [ebp - 0x31c], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x318], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
lea ecx, [ebp - 0x32c]
call fcn.00415b10
mov eax, dword [ebp - 0x320]
cmp eax, dword [ebp - 0x31c]
je 0x4112e0
push eax
lea ecx, [ebp - 0x368]
call fcn.00414ed0
mov byte [ebp - 4], 0x18
xorps xmm0, xmm0
mov eax, dword [ebp - 0x358]
mov dword [ebp - 0x40c], 0
mov dword [ebp - 0x408], 0
movups xmmword [ebp - 0x41c], xmm0
lea ecx, [eax - 7]
cmp eax, 4
jb 0x411441
add eax, 0xfffffffc
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0x354], 0x10
lea eax, [ebp - 0x368]
cmovae eax, dword [ebp - 0x368]
push ecx
add eax, 4
lea ecx, [ebp - 0x41c]
push eax
call fcn.004185e0
lea eax, [ebp - 0x41c]
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x4f4], eax
lea ecx, [ebp - 0x4f4]
lea eax, [ebp - 0x4b4]
push eax
call fcn.004114d0
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x41c]
cmp dword [ebp - 0x408], 0x10
lea edx, [ebp - 0x4b4]
mov eax, dword [ebp - 0x4a0]
cmovae ecx, dword [ebp - 0x41c]
cmp eax, 0x10
mov esi, dword [ebp - 0x4a4]
mov dword [ebp - 0x4fc], eax
mov eax, dword [ebp - 0x4b4]
cmovae edx, eax
mov dword [ebp - 0x4f8], eax
cmp esi, dword [ebp - 0x40c]
jne 0x410704
sub esi, 4
jb 0x4106c1
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x4106c6
add edx, 4
add ecx, 4
sub esi, 4
jae 0x4106b0
cmp esi, 0xfffffffc
je 0x4106fa
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x4106f3
cmp esi, 0xfffffffd
je 0x4106fa
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x4106f3
cmp esi, 0xfffffffe
je 0x4106fa
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x4106f3
cmp esi, 0xffffffff
je 0x4106fa
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
je 0x4106fa
sbb eax, eax
or eax, 1
jmp 0x4106fc
xor eax, eax
test eax, eax
je 0x41120b
lea eax, [ebp - 0x41c]
push eax
lea ecx, [ebp - 0x538]
call fcn.00414ed0
lea eax, [ebp - 0x538]
mov ecx, 0x5990c8
push eax
call fcn.00414d90
mov ecx, dword [ebp - 0x524]
cmp ecx, 0x10
jb 0x410761
mov edx, dword [ebp - 0x538]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x410757
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411446
push ecx
push edx
call fcn.004f79ae
add esp, 8
cmp dword [0x598f8c], 0x10
mov ecx, 0x598f78
cmovae ecx, dword [0x598f78]
call fcn.0048a470
mov ecx, dword [edi + 0x34]
lea esi, [edi + 0x24]
mov eax, closesocket
sub eax, ecx
cmp eax, 7
jb 0x41144b
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x410799
mov eax, dword [esi]
push 7
push str.7za.dll
push ecx
push eax
push esi
push dword [ebp - 0x4f4]
lea ecx, [ebp - 0x404]
call fcn.004196c0
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x404]
cmp dword [ebp - 0x3f0], 0x10
mov byte [ebp - 0x4f4], 0
cmovae eax, dword [ebp - 0x404]
push dword [ebp - 0x4f4]
mov dword [ebp - 0x324], eax
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x538]
push eax
call fcn.004e6180
add esp, 0xc
lea eax, [ebp - 0x538]
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0x3d0]
call fcn.00485d00
lea ecx, [ebp - 0x538]
mov byte [ebp - 4], 0x1e
call fcn.00414900
lea ecx, [ebp - 0x3d0]
call fcn.00485dd0
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x4ed], al
mov byte [ebp - 4], 0x1b
call fcn.00414900
cmp byte [ebp - 0x4ed], 0
jne 0x4109f1
push 0x14
call dword [ebp - 0x51c]
cmp dword [ebp - 0x36c], 0x10
lea eax, [ebp - 0x380]
push str.7za.dll
cmovae eax, dword [ebp - 0x380]
mov ecx, edi
push eax
lea eax, [ebp - 0x480]
push eax
lea eax, [ebp - 0x32c]
push eax
call fcn.0040f1c0
lea ecx, [ebp - 0x320]
mov dword [ebp - 0x4f4], eax
cmp ecx, eax
je 0x4108c7
call fcn.00415b10
mov edx, dword [ebp - 0x4f4]
mov ecx, dword [edx]
mov dword [ebp - 0x320], ecx
mov eax, dword [edx + 4]
mov dword [ebp - 0x31c], eax
mov eax, dword [edx + 8]
mov dword [ebp - 0x318], eax
mov dword [edx], 0
mov dword [edx + 4], 0
mov dword [edx + 8], 0
lea ecx, [ebp - 0x32c]
call fcn.00415b10
mov eax, dword [ebp - 0x320]
cmp eax, dword [ebp - 0x31c]
je 0x4109f1
cmp dword [0x5990ac], 0x10
mov ecx, 0x599098
mov eax, 0x599080
cmovae ecx, dword [0x599098]
cmp dword [0x599094], 0x10
push ecx
cmovae eax, dword [0x599080]
push eax
push str.ftp:___s__s_7za.dll
lea eax, [ebp - 0x314]
push 0x100
push eax
call fcn.0040a250
cmp dword [ebp - 0x33c], 0x10
lea eax, [ebp - 0x350]
cmovae eax, dword [ebp - 0x350]
push eax
push str.2Downloading_missing_17za.dll_2for_extracting_updated_n_1geoIP_database_2file_from_5_s_n
lea eax, [edi + 0x284]
push 0x200
push eax
call fcn.0040a250
add esp, 0x24
lea edx, [edi + 0x284]
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
call fcn.004b4380
add esp, 0x14
lea eax, [ebp - 0x404]
cmp dword [ebp - 0x3f0], 0x10
cmovae eax, dword [ebp - 0x404]
push eax
lea eax, [ebp - 0x314]
push eax
call fcn.0040f390
test al, al
lea eax, [ebp - 0x350]
je 0x4109ad
cmp dword [ebp - 0x33c], 0x10
cmovae eax, dword [ebp - 0x350]
push eax
push str.2Successfully_downloaded_57za.dll_2from_5_s_n
jmp 0x4109c1
cmp dword [ebp - 0x33c], 0x10
cmovae eax, dword [ebp - 0x350]
push eax
push str.3Failed_to_download_57za.dll_2from_5_s_n
lea eax, [edi + 0x284]
push 0x200
push eax
call fcn.0040a250
add esp, 0x10
lea edx, [edi + 0x284]
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
call fcn.004b4380
add esp, 0x14
mov ecx, dword [esi + 0x10]
mov eax, closesocket
sub eax, ecx
cmp eax, 0xe
jb 0x41144b
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x410a0e
mov eax, dword [esi]
push 0xe
push 0x55b3b0
push ecx
push eax
push esi
push dword [ebp - 0x4f4]
lea ecx, [ebp - 0x434]
call fcn.004196c0
mov byte [ebp - 4], 0x1f
mov eax, closesocket
mov ecx, dword [ebp - 0x424]
sub eax, ecx
cmp eax, 7
jb 0x41144b
cmp dword [ebp - 0x420], 0x10
lea eax, [ebp - 0x434]
push 7
cmovae eax, dword [ebp - 0x434]
push str.geo.dat
push ecx
push eax
lea eax, [ebp - 0x434]
push eax
push dword [ebp - 0x4f4]
lea ecx, [ebp - 0x464]
call fcn.004196c0
mov byte [ebp - 4], 0x20
mov eax, closesocket
mov ecx, dword [esi + 0x10]
sub eax, ecx
cmp eax, 0xe
jb 0x41144b
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x410a99
mov eax, dword [esi]
push 0xe
push 0x55b3b0
push ecx
push eax
push esi
push dword [ebp - 0x4f4]
lea ecx, [ebp - 0x550]
call fcn.004196c0
mov byte [ebp - 4], 0x21
lea edx, [ebp - 0x368]
cmp dword [ebp - 0x354], 0x10
mov ecx, dword [ebp - 0x358]
cmovae edx, dword [ebp - 0x368]
mov esi, dword [ebp - 0x540]
mov eax, dword [ebp - 0x53c]
sub eax, esi
mov dword [ebp - 0x4f4], ecx
mov dword [ebp - 0x324], esi
push ecx
push edx
cmp ecx, eax
ja 0x410b3a
cmp dword [ebp - 0x53c], 0x10
lea eax, [ecx + esi]
mov dword [ebp - 0x540], eax
lea esi, [ebp - 0x550]
cmovae esi, dword [ebp - 0x550]
mov eax, dword [ebp - 0x324]
add eax, esi
push eax
call fcn.005005e0
mov eax, dword [ebp - 0x4f4]
add esp, 0xc
mov ecx, dword [ebp - 0x324]
add eax, esi
mov byte [eax + ecx], 0
lea eax, [ebp - 0x550]
jmp 0x410b4c
push dword [ebp - 0x4f4]
push ecx
lea ecx, [ebp - 0x550]
call fcn.00418a60
xorps xmm0, xmm0
mov dword [ebp - 0x388], 0
movups xmmword [ebp - 0x398], xmm0
mov dword [ebp - 0x384], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x398], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x388], xmm0
mov byte [ebp - 4], 0x23
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [ebp - 0x53c]
cmp ecx, 0x10
jb 0x410bd0
mov edx, dword [ebp - 0x550]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x410bc6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411450
push ecx
push edx
call fcn.004f79ae
add esp, 8
cmp dword [ebp - 0x420], 0x10
lea eax, [ebp - 0x434]
mov byte [ebp - 0x4f4], 0
cmovae eax, dword [ebp - 0x434]
push dword [ebp - 0x4f4]
mov dword [ebp - 0x324], eax
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x538]
mov dword [ebp - 0x540], 0
push eax
mov dword [ebp - 0x53c], 0xf
mov byte [ebp - 0x550], 0
call fcn.004e6180
add esp, 0xc
lea eax, [ebp - 0x538]
mov byte [ebp - 4], 0x24
push eax
lea ecx, [ebp - 0x3d0]
call fcn.00485d00
lea ecx, [ebp - 0x538]
mov byte [ebp - 4], 0x26
call fcn.00414900
lea ecx, [ebp - 0x3d0]
call fcn.00485dd0
lea ecx, [ebp - 0x3b0]
mov byte [ebp - 0x4ed], al
mov byte [ebp - 4], 0x23
call fcn.00414900
cmp byte [ebp - 0x4ed], 0
jne 0x410cd3
mov byte [ebp - 0x4f4], 0
lea eax, [ebp - 0x434]
push dword [ebp - 0x4f4]
mov dword [ebp - 0x328], 0
push eax
lea eax, [ebp - 0x538]
mov dword [ebp - 0x324], 0x58bc30
push eax
call fcn.0041adc0
lea eax, [ebp - 0x328]
mov byte [ebp - 4], 0x27
push eax
lea eax, [ebp - 0x538]
push eax
call fcn.0040e830
add esp, 0x14
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x538]
call fcn.00414900
push 0x14
call dword [ebp - 0x51c]
cmp dword [ebp - 0x354], 0x10
lea edx, [ebp - 0x368]
mov ecx, 0x599098
mov eax, 0x599080
cmovae edx, dword [ebp - 0x368]
cmp dword [0x5990ac], 0x10
push edx
cmovae ecx, dword [0x599098]
cmp dword [0x599094], 0x10
push ecx
cmovae eax, dword [0x599080]
push eax
push str.ftp:___s__s__s
lea eax, [ebp - 0x214]
push 0x100
push eax
call fcn.0040a250
cmp dword [ebp - 0x33c], 0x10
lea ecx, [ebp - 0x350]
lea eax, [ebp - 0x368]
cmovae ecx, dword [ebp - 0x350]
lea esi, [edi + 0x284]
cmp dword [ebp - 0x354], 0x10
push ecx
cmovae eax, dword [ebp - 0x368]
push eax
push str.2Downloading_updated_5_s_2geoIP_database_file_n_from_5_s..._n
push 0x200
push esi
call fcn.0040a250
add esp, 0x2c
mov edx, esi
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
call fcn.004b4380
add esp, 0x14
lea eax, [ebp - 0x398]
cmp dword [ebp - 0x384], 0x10
cmovae eax, dword [ebp - 0x398]
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.0040f390
test al, al
lea ecx, [ebp - 0x350]
lea eax, [ebp - 0x368]
je 0x411079
cmp dword [ebp - 0x33c], 0x10
cmovae ecx, dword [ebp - 0x350]
cmp dword [ebp - 0x354], 0x10
push ecx
cmovae eax, dword [ebp - 0x368]
push eax
push str.2Successfully_downloaded_updated_5_s_2geoIP_database_file_n_from_5_s._n
push 0x200
push esi
call fcn.0040a250
add esp, 0x14
mov edx, esi
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
call fcn.004b4380
cmp dword [ebp - 0x354], 0x10
lea eax, [ebp - 0x368]
cmovae eax, dword [ebp - 0x368]
push eax
push str.2Starting_to_extract_downloaded_5_s_2geoIP_database_file_n_to_5plugins_geoIP_geo.dat_..._n
push 0x200
push esi
call fcn.0040a250
add esp, 0x24
mov edx, esi
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
call fcn.004b4380
cmp dword [ebp - 0x450], 0x10
lea eax, [ebp - 0x464]
mov byte [ebp - 0x4f4], 0
cmovae eax, dword [ebp - 0x464]
push dword [ebp - 0x4f4]
mov dword [ebp - 0x324], eax
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x538]
push eax
call fcn.004e6180
add esp, 0x20
lea eax, [ebp - 0x538]
mov byte [ebp - 4], 0x28
push eax
lea ecx, [ebp - 0x4ec]
call fcn.00485d00
lea ecx, [ebp - 0x538]
mov byte [ebp - 4], 0x2a
call fcn.00414900
lea ecx, [ebp - 0x4ec]
call fcn.00485dd0
lea ecx, [ebp - 0x4cc]
mov byte [ebp - 0x4ed], al
mov byte [ebp - 4], 0x23
call fcn.00414900
cmp byte [ebp - 0x4ed], 0
je 0x410ee7
cmp dword [ebp - 0x450], 0x10
lea eax, [ebp - 0x464]
cmovae eax, dword [ebp - 0x464]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x10
push str.pluginsgeoIP_
mov edx, 0x598f60
lea ecx, [ebp - 0x44c]
call fcn.00417bf0
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x44c]
cmp dword [ebp - 0x438], 0x10
lea edx, [ebp - 0x398]
lea ecx, [ebp - 0x3b4]
cmovae eax, dword [ebp - 0x44c]
cmp dword [ebp - 0x384], 0x10
push eax
cmovae edx, dword [ebp - 0x398]
call fcn.004c91f0
add esp, 0xc
mov byte [ebp - 4], 0x2c
cmp byte [ebp - 0x3b4], 0
je 0x410f8b
cmp dword [ebp - 0x384], 0x10
lea eax, [ebp - 0x398]
cmovae eax, dword [ebp - 0x398]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp dword [ebp - 0x354], 0x10
lea eax, [ebp - 0x368]
cmovae eax, dword [ebp - 0x368]
push eax
push str.2Finished_extracting_downloaded_5_s_2geoIP_database_file_n_to_5plugins_geoIP_geo.dat_n
push 0x200
push esi
call fcn.0040a250
add esp, 0x10
jmp 0x410fc8
cmp dword [ebp - 0x39c], 0x10
lea ecx, [ebp - 0x3b0]
lea eax, [ebp - 0x368]
cmovae ecx, dword [ebp - 0x3b0]
cmp dword [ebp - 0x354], 0x10
push ecx
cmovae eax, dword [ebp - 0x368]
push eax
push str.3Failed_to_extract_downloaded_5_s_3geoIP_database_file_n_to_5plugins_geoIP_geo.dat__n1Error:_5_s_n
push 0x200
push esi
call fcn.0040a250
add esp, 0x14
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
mov edx, esi
call fcn.004b4380
mov byte [ebp - 4], 0x2b
add esp, 0x14
mov ecx, dword [ebp - 0x39c]
cmp ecx, 0x10
jb 0x41101e
mov edx, dword [ebp - 0x3b0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x411014
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411455
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x438]
mov dword [ebp - 0x3a0], 0
mov dword [ebp - 0x39c], 0xf
mov byte [ebp - 0x3b0], 0
cmp ecx, 0x10
jb 0x4110c2
mov edx, dword [ebp - 0x44c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41106d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411455
push ecx
push edx
call fcn.004f79ae
add esp, 8
jmp 0x4110c2
cmp dword [ebp - 0x33c], 0x10
cmovae ecx, dword [ebp - 0x350]
cmp dword [ebp - 0x354], 0x10
push ecx
cmovae eax, dword [ebp - 0x368]
push eax
push str.3Failed_to_download_updated_1_s_3geoIP_database_file_n_from_5_s_n
push 0x200
push esi
call fcn.0040a250
add esp, 0x14
mov edx, esi
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
call fcn.004b4380
add esp, 0x14
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x384]
cmp ecx, 0x10
jb 0x411100
mov edx, dword [ebp - 0x398]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4110f6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41145a
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x450]
mov dword [ebp - 0x388], 0
mov dword [ebp - 0x384], 0xf
mov byte [ebp - 0x398], 0
cmp ecx, 0x10
jb 0x411159
mov edx, dword [ebp - 0x464]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41114f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41145a
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x420]
mov dword [ebp - 0x454], 0
mov dword [ebp - 0x450], 0xf
mov byte [ebp - 0x464], 0
cmp ecx, 0x10
jb 0x4111b2
mov edx, dword [ebp - 0x434]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4111a8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41145a
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x3f0]
mov dword [ebp - 0x424], 0
mov dword [ebp - 0x420], 0xf
mov byte [ebp - 0x434], 0
cmp ecx, 0x10
jb 0x41120b
mov edx, dword [ebp - 0x404]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x411201
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41145a
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x4fc]
cmp ecx, 0x10
jb 0x411249
mov edx, dword [ebp - 0x4f8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41123f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41145f
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x408]
cmp ecx, 0x10
jb 0x411287
mov edx, dword [ebp - 0x41c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41127d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41145f
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x354]
mov dword [ebp - 0x40c], 0
mov dword [ebp - 0x408], 0xf
mov byte [ebp - 0x41c], 0
cmp ecx, 0x10
jb 0x4112e0
mov edx, dword [ebp - 0x368]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4112d6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41145f
push ecx
push edx
call fcn.004f79ae
add esp, 8
lea ecx, [ebp - 0x49c]
call fcn.004155a0
mov ecx, dword [ebp - 0x48c]
test ecx, ecx
je 0x41130a
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x41130a
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
lea ecx, [ebp - 0x320]
call fcn.00415b10
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x36c]
cmp ecx, 0x10
jb 0x411353
mov edx, dword [ebp - 0x380]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x411349
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411464
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov ecx, edi
call fcn.004120e0
jmp 0x4113a3
cmp dword [ebp - 0x33c], 0x10
lea eax, [ebp - 0x350]
cmovae eax, dword [ebp - 0x350]
push eax
push str.3Could_not_connect_to_5_s_3to_check_for_5Tiny6Rcon_3updates__n_5The_FTP_download_site_3might_be_offline_at_the_moment._2Please__try_again_later._n
push 0x200
push esi
call fcn.0040a250
add esp, 0x10
mov edx, esi
push 1
push ecx
push 1
push 1
push ecx
mov ecx, dword [0x598c18]
call fcn.004b4380
add esp, 0x14
mov byte [0x598d64], 0
mov eax, dword [ebp - 0x480]
mov esi, dword [ebp - 0x520]
test eax, eax
je 0x4113c0
push eax
call esi
mov dword [ebp - 0x480], 0
mov eax, dword [ebp - 0x484]
test eax, eax
je 0x4113d7
push eax
call esi
mov dword [ebp - 0x484], 0
mov ecx, dword [ebp - 0x33c]
cmp ecx, 0x10
jb 0x41140d
mov edx, dword [ebp - 0x350]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x411403
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x411469
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004f7466
mov esp, ebp
pop ebp
ret
call fcn.00416730
call fcn.005094c8
call fcn.005094c8
call fcn.005094c8
call fcn.005094c8
call fcn.00416730
call fcn.005094c8
call fcn.0040a4d0
call fcn.005094c8
call fcn.005094c8
call fcn.005094c8
call fcn.005094c8
call fcn.005094c8
call fcn.005094c8
int3