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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b363d
mov eax, dword fs:[0]
push eax
sub esp, 0x568
mov eax, dword [0x4e0138]
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 - 0x4b0], edi
mov dword [ebp - 0x518], edi
mov dword [ebp - 0x4b8], edi
lea eax, [edi + 8]
mov dword [ebp - 0x4ac], 0
xorps xmm0, xmm0
mov dword [edi], 0
mov dword [edi + 4], 0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov dword [ebp - 0x4cc], eax
mov byte [eax], 0
mov dword [ebp - 4], 0
lea eax, [edi + 0x24]
mov byte [edi + 0x20], 0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov dword [ebp - 0x378], eax
mov byte [eax], 0
movups xmmword [edi + 0x3c], xmm0
mov dword [edi + 0x4c], 0
mov dword [edi + 0x50], 0xf
mov byte [edi + 0x3c], 0
movups xmmword [edi + 0x54], xmm0
mov dword [edi + 0x64], 0
mov dword [edi + 0x68], 0xf
mov byte [edi + 0x54], 0
movups xmmword [edi + 0x6c], xmm0
mov dword [edi + 0x7c], 0
mov dword [edi + 0x80], 0xf
mov byte [edi + 0x6c], 0
push 0x200
lea eax, [edi + 0x84]
mov byte [ebp - 4], 4
push 0
push eax
call fcn.0048f850
push 0x200
lea eax, [edi + 0x284]
push 0
push eax
mov dword [ebp - 0x4bc], eax
call fcn.0048f850
add esp, 0x18
lea eax, [ebp - 0x114]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x40bd64
xorps xmm0, xmm0
mov dword [ebp - 0x3b4], 0
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x3b0], 0
movups xmmword [ebp - 0x3c4], xmm0
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40b2d0
sub ecx, edx
lea eax, [ebp - 0x114]
push ecx
push eax
lea ecx, [ebp - 0x3c4]
call fcn.004127b0
mov byte [ebp - 4], 5
lea eax, [ebp - 0x3c4]
mov esi, dword [ebp - 0x3b0]
lea edx, [ebp - 0x3c4]
mov edi, dword [ebp - 0x3c4]
cmp esi, 0x10
cmovae eax, edi
cmovae edx, edi
mov dword [ebp - 0x4c4], eax
mov eax, dword [ebp - 0x3b4]
test eax, eax
je 0x40b33f
or ecx, 0xffffffff
dec eax
cmp eax, ecx
cmovb ecx, eax
add ecx, edx
cmp byte [ecx], 0x5c
je 0x40b33b
cmp ecx, edx
je 0x40b33f
dec ecx
cmp byte [ecx], 0x5c
jne 0x40b331
sub ecx, edx
jmp 0x40b342
or ecx, 0xffffffff
mov eax, dword [ebp - 0x4c4]
xorps xmm0, xmm0
inc eax
mov dword [ebp - 0x4d4], 0
add ecx, eax
mov dword [ebp - 0x4d0], 0
cmp esi, 0x10
lea eax, [ebp - 0x3c4]
movups xmmword [ebp - 0x4e4], xmm0
cmovae eax, edi
cmp eax, ecx
jne 0x40b38c
mov dword [ebp - 0x4d0], 0xf
mov byte [ebp - 0x4e4], 0
jmp 0x40b39b
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x4e4]
call fcn.004127b0
mov ecx, dword [ebp - 0x378]
lea eax, [ebp - 0x4e4]
push eax
call fcn.004102c0
mov ecx, dword [ebp - 0x4d0]
cmp ecx, 0x10
jb 0x40b3e7
mov edx, dword [ebp - 0x4e4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40b3dd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d32e
push ecx
push edx
call fcn.004885c3
add esp, 8
movups xmm0, xmmword [ebp - 0x3c4]
mov ecx, dword [ebp - 0x4b0]
lea eax, [ebp - 0x430]
push eax
movups xmmword [ebp - 0x430], xmm0
mov byte [ebp - 0x3c4], 0
movq xmm0, qword [ebp - 0x3b4]
lea ecx, [ecx + 0x3c]
movq qword [ebp - 0x420], xmm0
mov dword [ebp - 0x3b4], 0
mov dword [ebp - 0x3b0], 0xf
call fcn.004102c0
mov ecx, dword [ebp - 0x41c]
cmp ecx, 0x10
jb 0x40b46f
mov edx, dword [ebp - 0x430]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40b465
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d32e
push ecx
push edx
call fcn.004885c3
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x534], 0
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x530], 0
movups xmmword [ebp - 0x544], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40b496
sub ecx, edx
lea eax, [ebp - 0x114]
push ecx
push eax
lea ecx, [ebp - 0x544]
call fcn.004127b0
mov byte [ebp - 4], 6
lea edx, [ebp - 0x544]
mov edi, dword [ebp - 0x530]
cmp edi, 0x10
mov esi, dword [ebp - 0x534]
cmovae edx, dword [ebp - 0x544]
test esi, esi
je 0x40b4f6
or ecx, 0xffffffff
lea eax, [esi - 1]
cmp eax, ecx
cmovb ecx, eax
add ecx, edx
cmp byte [ecx], 0x5c
je 0x40b4f2
cmp ecx, edx
je 0x40b4f6
dec ecx
cmp byte [ecx], 0x5c
jne 0x40b4e8
sub ecx, edx
jmp 0x40b4f9
or ecx, 0xffffffff
inc ecx
mov dword [ebp - 0x39c], 0
mov dword [ebp - 0x398], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x3ac], xmm0
cmp esi, ecx
jb 0x40d333
sub esi, ecx
lea eax, [ebp - 0x544]
cmp esi, 0xffffffff
mov edx, 0xffffffff
cmovb edx, esi
cmp edi, 0x10
push edx
cmovae eax, dword [ebp - 0x544]
add eax, ecx
lea ecx, [ebp - 0x3ac]
push eax
call fcn.004127b0
mov edi, dword [ebp - 0x4b0]
lea eax, [ebp - 0x3ac]
push eax
mov dword [ebp - 0x4ac], 0x60
lea ecx, [edi + 0x54]
call fcn.004102c0
mov ecx, dword [ebp - 0x398]
cmp ecx, 0x10
jb 0x40b5a5
mov edx, dword [ebp - 0x3ac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40b59b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d338
push ecx
push edx
call fcn.004885c3
add esp, 8
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x530]
cmp ecx, 0x10
jb 0x40b5e3
mov edx, dword [ebp - 0x544]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40b5d9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d338
push ecx
push edx
call fcn.004885c3
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x4b4], 0
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x39c], 0
movups xmmword [ebp - 0x4f4], xmm0
mov dword [ebp - 0x398], 0
lea edx, [ecx + 1]
movups xmmword [ebp - 0x3ac], xmm0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x40b620
sub ecx, edx
lea eax, [ebp - 0x114]
push ecx
push eax
lea ecx, [ebp - 0x3ac]
call fcn.004127b0
lea eax, [ebp - 0x4b4]
mov ecx, edi
push eax
lea eax, [ebp - 0x4f4]
push eax
lea eax, [ebp - 0x3ac]
push eax
call fcn.0040d950
mov ecx, dword [ebp - 0x398]
mov byte [ebp - 0x4bd], al
cmp ecx, 0x10
jb 0x40b69e
mov edx, dword [ebp - 0x3ac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40b68e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d33d
push ecx
push edx
call fcn.004885c3
mov al, byte [ebp - 0x4bd]
add esp, 8
test al, al
je 0x40b6aa
mov eax, dword [ebp - 0x4b4]
mov dword [edi], eax
mov ecx, edi
call fcn.0040dcc0
cmp byte [edi + 0x20], 0
je 0x40b6fa
mov ecx, dword [ebp - 0x3b0]
cmp ecx, 0x10
jb 0x40bd64
mov edx, dword [ebp - 0x3c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40b6eb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d32e
push ecx
push edx
call fcn.004885c3
add esp, 8
jmp 0x40bd64
cmp dword [0x4e7030], 0
xorps xmm0, xmm0
push 1
push 0x4c67e8
je 0x40b80c
lea ecx, [ebp - 0x430]
mov dword [ebp - 0x420], 0
movups xmmword [ebp - 0x430], xmm0
mov dword [ebp - 0x41c], 0
call fcn.004127b0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x514]
push 1
xorps xmm0, xmm0
mov dword [ebp - 0x4ac], 0x20061
push 0x4c67e8
movups xmmword [ebp - 0x514], xmm0
mov dword [ebp - 0x504], 0
mov dword [ebp - 0x500], 0
call fcn.004127b0
mov dword [ebp - 4], 8
lea ecx, [ebp - 0x514]
mov edi, 0x30063
push 0x4e7020
mov dword [ebp - 0x4ac], edi
call fcn.00410200
or edi, 0x8000
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x574], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x564], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x430]
mov dword [ebp - 4], 9
push eax
lea eax, [ebp - 0x574]
or edi, 4
push eax
push dword [ebp - 0x4b8]
lea ecx, [ebp - 0x3f4]
mov dword [ebp - 0x4ac], edi
call fcn.00413210
or edi, 0x4000
lea esi, [ebp - 0x3f4]
mov dword [ebp - 4], 0xa
or edi, 8
jmp 0x40b844
lea ecx, [ebp - 0x52c]
mov dword [ebp - 0x51c], 0
movups xmmword [ebp - 0x52c], xmm0
mov dword [ebp - 0x518], 0
call fcn.004127b0
lea esi, [ebp - 0x52c]
mov dword [ebp - 4], 0xb
mov edi, 0x2070
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x4ac], edi
push str.ftp:__
lea ecx, [ebp - 0x394]
mov dword [ebp - 0x384], 0
movups xmmword [ebp - 0x394], xmm0
mov dword [ebp - 0x380], 0
call fcn.004127b0
or edi, 0x80
mov dword [ebp - 0x4ac], edi
push 0x4e7008
lea ecx, [ebp - 0x394]
mov dword [ebp - 4], 0xc
call fcn.00410200
or edi, 0x100
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x55c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x54c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov dword [ebp - 0x4ac], edi
push esi
lea eax, [ebp - 0x55c]
mov byte [ebp - 4], 0xd
push eax
push dword [ebp - 0x4b8]
lea ecx, [ebp - 0x338]
call fcn.00413210
or edi, 0x200
mov dword [ebp - 0x4ac], edi
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x548]
cmp ecx, 0x10
jb 0x40b938
mov edx, dword [ebp - 0x55c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40b92e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d342
push ecx
push edx
call fcn.004885c3
add esp, 8
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x380]
cmp ecx, 0x10
jb 0x40b976
mov edx, dword [ebp - 0x394]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40b96c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d342
push ecx
push edx
call fcn.004885c3
add esp, 8
mov dword [ebp - 0x384], 0
mov dword [ebp - 0x380], 0xf
mov byte [ebp - 0x394], 0
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x4ac]
test al, 0x10
je 0x40b9e8
mov ecx, dword [ebp - 0x518]
and eax, 0xffffffef
mov dword [ebp - 0x4ac], eax
cmp ecx, 0x10
jb 0x40b9e8
mov edx, dword [ebp - 0x52c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40b9d8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d342
push ecx
push edx
call fcn.004885c3
mov eax, dword [ebp - 0x4ac]
add esp, 8
mov byte [ebp - 4], 0x12
test al, 8
je 0x40ba39
mov ecx, dword [ebp - 0x3e0]
and eax, 0xfffffff7
mov dword [ebp - 0x4ac], eax
cmp ecx, 0x10
jb 0x40ba39
mov edx, dword [ebp - 0x3f4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ba29
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d342
push ecx
push edx
call fcn.004885c3
mov eax, dword [ebp - 0x4ac]
add esp, 8
mov byte [ebp - 4], 0x13
test al, 4
je 0x40ba8a
mov ecx, dword [ebp - 0x560]
and eax, 0xfffffffb
mov dword [ebp - 0x4ac], eax
cmp ecx, 0x10
jb 0x40ba8a
mov edx, dword [ebp - 0x574]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ba7a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d342
push ecx
push edx
call fcn.004885c3
mov eax, dword [ebp - 0x4ac]
add esp, 8
mov byte [ebp - 4], 0x14
test al, 2
je 0x40baf6
mov ecx, dword [ebp - 0x500]
and eax, 0xfffffffd
mov dword [ebp - 0x4ac], eax
cmp ecx, 0x10
jb 0x40badb
mov edx, dword [ebp - 0x514]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40bacb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d342
push ecx
push edx
call fcn.004885c3
mov eax, dword [ebp - 0x4ac]
add esp, 8
mov dword [ebp - 0x504], 0
mov dword [ebp - 0x500], 0xf
mov byte [ebp - 0x514], 0
mov byte [ebp - 4], 0x15
test al, 1
je 0x40bb41
mov ecx, dword [ebp - 0x41c]
and eax, 0xfffffffe
mov dword [ebp - 0x4ac], eax
cmp ecx, 0x10
jb 0x40bb41
mov edx, dword [ebp - 0x430]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40bb37
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d342
push ecx
push edx
call fcn.004885c3
add esp, 8
cmp dword [ebp - 0x324], 0x10
lea eax, [ebp - 0x338]
mov esi, dword [ebp - 0x4bc]
cmovae eax, dword [ebp - 0x338]
push eax
push str.3Searching_for_updates_at_1_s_n
push 0x200
push esi
call fcn.00408d90
add esp, 0x10
mov edx, esi
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
call fcn.004600e0
add esp, 0xc
mov dword [ebp - 0x320], 0
mov dword [ebp - 0x31c], 0
push 0
push 0
push 0
push 1
push str.tinyrcon
mov byte [ebp - 4], 0x16
call dword [sym.imp.WININET.dll_InternetOpenA]
mov edi, dword [sym.imp.WININET.dll_InternetCloseHandle]
mov esi, eax
mov eax, dword [ebp - 0x320]
mov dword [ebp - 0x4b4], edi
test eax, eax
je 0x40bbca
push eax
call edi
mov dword [ebp - 0x320], esi
test esi, esi
je 0x40d269
lea eax, [ebp - 0x464]
mov dword [ebp - 0x464], 0
push eax
push 0
lea eax, [ebp - 0x320]
mov dword [ebp - 0x418], 0
push eax
push 0x40e540
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov esi, eax
test esi, esi
je 0x40bd87
mov edi, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0x3e8
push esi
call edi
cmp eax, 0x102
jne 0x40bd81
cmp dword [ebp - 0x324], 0x10
lea eax, [ebp - 0x338]
cmovae eax, dword [ebp - 0x338]
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 dword [ebp - 0x4bc]
call fcn.00408d90
mov edx, dword [ebp - 0x4bc]
add esp, 0x10
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
call fcn.004600e0
add esp, 0xc
push 0xffffffffffffffff
push esi
call edi
lea eax, [ebp - 0x418]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x418], 0
je 0x40bd81
mov eax, dword [ebp - 0x31c]
mov esi, dword [ebp - 0x4b4]
test eax, eax
je 0x40bcb8
push eax
call esi
mov dword [ebp - 0x31c], 0
mov eax, dword [ebp - 0x320]
test eax, eax
je 0x40bccf
push eax
call esi
mov dword [ebp - 0x320], 0
mov ecx, dword [ebp - 0x324]
cmp ecx, 0x10
jb 0x40bd09
mov edx, dword [ebp - 0x338]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40bcff
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d374
push ecx
push edx
call fcn.004885c3
add esp, 8
mov ecx, dword [ebp - 0x3b0]
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x324], 0xf
mov byte [ebp - 0x338], 0
cmp ecx, 0x10
jb 0x40bd5e
mov edx, dword [ebp - 0x3c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40bd54
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d374
push ecx
push edx
call fcn.004885c3
add esp, 8
mov edi, dword [ebp - 0x4b0]
mov eax, edi
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.0048824f
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x4b4]
cmp dword [ebp - 0x31c], 0
je 0x40d166
push 0x4e7020
lea ecx, [ebp - 0x374]
call fcn.004103d0
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x364]
mov edx, dword [ebp - 0x360]
test ecx, ecx
je 0x40be23
mov edi, dword [ebp - 0x374]
lea eax, [ebp - 0x374]
cmp edx, 0x10
cmovae eax, edi
cmp byte [eax], 0x2f
je 0x40be23
mov eax, edx
sub eax, ecx
cmp eax, 1
jb 0x40bdfe
inc ecx
lea esi, [ebp - 0x374]
cmp edx, 0x10
mov dword [ebp - 0x364], ecx
push ecx
cmovae esi, edi
push esi
lea eax, [esi + 1]
push eax
call fcn.0048f2d0
add esp, 0xc
mov byte [esi], 0x2f
jmp 0x40be17
push 0x2f
push 1
push 0
push dword [ebp - 0x4b8]
lea ecx, [ebp - 0x374]
push 1
call fcn.00412630
mov ecx, dword [ebp - 0x364]
mov edx, dword [ebp - 0x360]
mov edi, dword [ebp - 0x374]
lea eax, [ebp - 0x374]
cmp edx, 0x10
cmovae eax, edi
cmp byte [eax + ecx - 1], 0x2f
je 0x40be78
cmp ecx, edx
jae 0x40be5d
lea eax, [ecx + 1]
cmp edx, 0x10
mov dword [ebp - 0x364], eax
lea eax, [ebp - 0x374]
cmovae eax, edi
mov word [eax + ecx], 0x2f
jmp 0x40be72
push 0x2f
push dword [ebp - 0x4b8]
lea ecx, [ebp - 0x374]
push 1
call fcn.004124f0
mov edx, dword [ebp - 0x360]
mov edi, dword [ebp - 0x4b0]
lea eax, [ebp - 0x374]
cmp edx, 0x10
mov dword [ebp - 0x33c], 0
push str._U_TinyRcon.exe
cmovae eax, dword [ebp - 0x374]
xorps xmm0, xmm0
push eax
lea eax, [ebp - 0x31c]
movq qword [ebp - 0x344], xmm0
push eax
lea eax, [ebp - 0x344]
mov ecx, edi
push eax
call fcn.0040daf0
mov byte [ebp - 4], 0x18
xorps xmm0, xmm0
mov eax, dword [edi]
push ecx
push str._d.d.d.d_
lea ecx, [ebp - 0x490]
mov dword [ebp - 0x4c8], eax
movups xmmword [ebp - 0x490], xmm0
mov dword [ebp - 0x480], 0
call fcn.0040e840
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x340]
mov esi, dword [ebp - 0x344]
mov dword [ebp - 0x318], eax
cmp esi, eax
je 0x40c208
mov edi, dword [ebp - 0x4ac]
push 0x38
lea eax, [ebp - 0x414]
push 0
push eax
call fcn.0048f850
xorps xmm0, xmm0
mov dword [ebp - 0x414], 0
add esp, 0xc
mov byte [ebp - 0x410], 0
movups xmmword [ebp - 0x40c], xmm0
mov dword [ebp - 0x3fc], 0
mov byte [ebp - 0x3f8], 0
mov dword [ebp - 0x3f4], 0
mov dword [ebp - 0x3f0], 0
mov byte [ebp - 0x3ec], 0
mov dword [ebp - 0x3e8], 0
mov dword [ebp - 0x3e4], 0
mov byte [ebp - 0x3e0], 0
mov byte [ebp - 4], 0x1a
mov ecx, dword [esi + 0x14]
mov edx, dword [esi + 0x10]
mov dword [ebp - 0x4ac], esi
cmp ecx, 0x10
jb 0x40bfab
mov eax, dword [esi]
mov ecx, eax
mov dword [ebp - 0x4ac], eax
add edx, ecx
jmp 0x40bfb4
add edx, esi
mov eax, esi
cmp ecx, 0x10
jb 0x40bfb6
mov eax, dword [esi]
push dword [ebp - 0x4ac]
push ecx
push edx
push eax
lea edx, [ebp - 0x490]
lea ecx, [ebp - 0x414]
call fcn.00413710
add esp, 0x10
test al, al
je 0x40c1e4
mov ecx, dword [ebp - 0x408]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0x40c]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x40c004
lea ecx, [ebp - 0x3e8]
jmp 0x40c00d
mov ecx, dword [ebp - 0x40c]
add ecx, 0xc
cmp byte [ecx + 8], 0
je 0x40c022
mov eax, dword [ecx]
mov edx, eax
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x518], ecx
jmp 0x40c028
xor eax, eax
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x4ac], eax
xorps xmm0, xmm0
mov dword [ebp - 0x504], 0
mov dword [ebp - 0x500], 0
movups xmmword [ebp - 0x514], xmm0
cmp eax, ecx
jne 0x40c06d
mov dword [ebp - 0x504], 0
mov dword [ebp - 0x500], 0xf
mov byte [ebp - 0x514], 0
jmp 0x40c07c
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x514]
call fcn.004127b0
or edi, 0x400
lea ecx, [ebp - 0x514]
mov byte [ebp - 4], 0x1b
call fcn.0040a850
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x500]
mov dword [ebp - 0x4c4], eax
cmp ecx, 0x10
jb 0x40c0d5
mov edx, dword [ebp - 0x514]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40c0cb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d338
push ecx
push edx
call fcn.004885c3
add esp, 8
mov ecx, dword [ebp - 0x408]
mov eax, 0x2aaaaaab
sub ecx, dword [ebp - 0x40c]
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
ja 0x40c0fe
lea ecx, [ebp - 0x3e8]
jmp 0x40c107
mov ecx, dword [ebp - 0x40c]
add ecx, 0xc
cmp byte [ecx + 8], 0
je 0x40c11c
mov eax, dword [ecx]
mov edx, eax
mov ecx, dword [ecx + 4]
mov dword [ebp - 0x518], ecx
jmp 0x40c122
xor eax, eax
xor ecx, ecx
xor edx, edx
mov dword [ebp - 0x4ac], eax
xorps xmm0, xmm0
mov dword [ebp - 0x4d4], 0
mov dword [ebp - 0x4d0], 0
movups xmmword [ebp - 0x4e4], xmm0
cmp eax, ecx
jne 0x40c15d
mov dword [ebp - 0x4d0], 0xf
mov byte [ebp - 0x4e4], 0
jmp 0x40c16c
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x4e4]
call fcn.004127b0
mov ecx, dword [ebp - 0x4cc]
lea eax, [ebp - 0x4e4]
push eax
or edi, 0x1000
call fcn.004102c0
mov ecx, dword [ebp - 0x4d0]
cmp ecx, 0x10
jb 0x40c1be
mov edx, dword [ebp - 0x4e4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40c1b4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d338
push ecx
push edx
call fcn.004885c3
add esp, 8
mov eax, dword [ebp - 0x4c4]
cmp eax, dword [ebp - 0x4c8]
jbe 0x40c1e4
mov ecx, dword [ebp - 0x4b0]
push esi
mov dword [ebp - 0x4c8], eax
mov dword [ecx + 4], eax
lea ecx, [ecx + 0x6c]
call fcn.004102c0
lea ecx, [ebp - 0x40c]
mov byte [ebp - 4], 0x19
call fcn.0040e7a0
add esi, 0x18
cmp esi, dword [ebp - 0x318]
jne 0x40bf13
mov edi, dword [ebp - 0x4b0]
cmp dword [edi + 0x7c], 0
jne 0x40c251
cmp dword [ebp - 0x324], 0x10
lea eax, [ebp - 0x338]
lea esi, [edi + 0x284]
cmovae eax, dword [ebp - 0x338]
push eax
push str.2There_is_no_newer_version_of_5Tiny6Rcon_2at_5_s_n
push 0x200
push esi
call fcn.00408d90
add esp, 0x10
mov edx, esi
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
call fcn.004600e0
add esp, 0xc
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x14
mov dword [ebp - 0x4c8], eax
call eax
cmp dword [ebp - 0x360], 0x10
lea eax, [ebp - 0x374]
push str.geo_.7z
cmovae eax, dword [ebp - 0x374]
mov ecx, edi
push eax
lea eax, [ebp - 0x31c]
push eax
lea eax, [ebp - 0x520]
push eax
call fcn.0040daf0
mov esi, eax
lea eax, [ebp - 0x344]
cmp eax, esi
je 0x40c2d0
mov ecx, eax
call fcn.00410f00
mov eax, dword [esi]
mov dword [ebp - 0x344], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x340], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x33c], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
lea ecx, [ebp - 0x520]
call fcn.00410f00
mov eax, dword [ebp - 0x344]
cmp eax, dword [ebp - 0x340]
je 0x40d0e3
push eax
lea ecx, [ebp - 0x35c]
call fcn.004103d0
mov byte [ebp - 4], 0x1c
xorps xmm0, xmm0
mov eax, dword [ebp - 0x34c]
mov dword [ebp - 0x438], 0
mov dword [ebp - 0x434], 0
movups xmmword [ebp - 0x448], xmm0
lea ecx, [eax - 7]
cmp eax, 4
jb 0x40d347
add eax, 0xfffffffc
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0x348], 0x10
lea eax, [ebp - 0x35c]
cmovae eax, dword [ebp - 0x35c]
push ecx
add eax, 4
lea ecx, [ebp - 0x448]
push eax
call fcn.004127b0
lea eax, [ebp - 0x448]
mov byte [ebp - 4], 0x1d
mov dword [ebp - 0x318], eax
lea ecx, [ebp - 0x318]
lea eax, [ebp - 0x4a8]
push eax
call fcn.0040d3e0
mov byte [ebp - 4], 0x1e
lea ecx, [ebp - 0x448]
cmp dword [ebp - 0x434], 0x10
lea edx, [ebp - 0x4a8]
mov eax, dword [ebp - 0x494]
cmovae ecx, dword [ebp - 0x448]
cmp eax, 0x10
mov edi, dword [ebp - 0x4a8]
mov esi, dword [ebp - 0x498]
cmovae edx, edi
mov dword [ebp - 0x518], eax
mov dword [ebp - 0x4c4], edi
cmp esi, dword [ebp - 0x438]
jne 0x40c424
sub esi, 4
jb 0x40c3e1
nop word [eax + eax]
mov eax, dword [edx]
cmp eax, dword [ecx]
jne 0x40c3e6
add edx, 4
add ecx, 4
sub esi, 4
jae 0x40c3d0
cmp esi, 0xfffffffc
je 0x40c41a
mov al, byte [edx]
cmp al, byte [ecx]
jne 0x40c413
cmp esi, 0xfffffffd
je 0x40c41a
mov al, byte [edx + 1]
cmp al, byte [ecx + 1]
jne 0x40c413
cmp esi, 0xfffffffe
je 0x40c41a
mov al, byte [edx + 2]
cmp al, byte [ecx + 2]
jne 0x40c413
cmp esi, 0xffffffff
je 0x40c41a
mov al, byte [edx + 3]
cmp al, byte [ecx + 3]
je 0x40c41a
sbb eax, eax
or eax, 1
jmp 0x40c41c
xor eax, eax
test eax, eax
je 0x40d00e
lea eax, [ebp - 0x448]
push eax
lea ecx, [ebp - 0x3f4]
call fcn.004103d0
lea eax, [ebp - 0x3f4]
mov ecx, 0x4e7050
push eax
call fcn.004102c0
mov ecx, dword [ebp - 0x3e0]
cmp ecx, 0x10
jb 0x40c481
mov edx, dword [ebp - 0x3f4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40c477
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d34c
push ecx
push edx
call fcn.004885c3
add esp, 8
mov ecx, 0x4c7ba4
call fcn.0043c730
mov esi, dword [ebp - 0x378]
mov edi, closesocket
mov eax, edi
mov ecx, dword [esi + 0x10]
sub eax, ecx
cmp eax, 7
jb 0x40d36f
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x40c4b0
mov eax, dword [esi]
push 7
push 0x4c69e0
push ecx
push eax
push ecx
push dword [ebp - 0x4b8]
lea ecx, [ebp - 0x3ac]
call fcn.004133f0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x3ac]
cmp dword [ebp - 0x398], 0x10
cmovae ecx, dword [ebp - 0x3ac]
call fcn.0045ffd0
test al, al
mov eax, dword [sym.imp.WININET.dll_DeleteUrlCacheEntry]
mov dword [ebp - 0x4ac], eax
mov eax, dword [sym.imp.urlmon.dll_URLDownloadToFileA]
mov dword [ebp - 0x4cc], eax
jne 0x40c6c7
push 0x14
call dword [ebp - 0x4c8]
cmp dword [ebp - 0x360], 0x10
lea eax, [ebp - 0x374]
mov ecx, dword [ebp - 0x4b0]
cmovae eax, dword [ebp - 0x374]
push 0x4c69e0
push eax
lea eax, [ebp - 0x31c]
push eax
lea eax, [ebp - 0x4f0]
push eax
call fcn.0040daf0
mov esi, eax
lea eax, [ebp - 0x344]
cmp eax, esi
je 0x40c582
mov ecx, eax
call fcn.00410f00
mov eax, dword [esi]
mov dword [ebp - 0x344], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x340], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x33c], eax
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
lea ecx, [ebp - 0x4f0]
call fcn.00410f00
mov eax, dword [ebp - 0x344]
cmp eax, dword [ebp - 0x340]
je 0x40c6c1
cmp dword [0x4e7034], 0x10
mov ecx, 0x4e7020
mov eax, 0x4e7008
cmovae ecx, dword [0x4e7020]
cmp dword [0x4e701c], 0x10
push ecx
cmovae eax, dword [0x4e7008]
push eax
push str.ftp:___s__s_7za.dll
lea eax, [ebp - 0x314]
push 0x100
push eax
call fcn.00408d90
cmp dword [ebp - 0x324], 0x10
lea eax, [ebp - 0x338]
mov esi, dword [ebp - 0x4bc]
cmovae eax, dword [ebp - 0x338]
push eax
push str.2Downloading_missing_17za.dll_2for_extracting_updated_n_1geoIP_database_2file_from_5_s_n
push 0x200
push esi
call fcn.00408d90
add esp, 0x24
mov edx, esi
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
call fcn.004600e0
add esp, 0xc
mov dword [ebp - 0x318], 0x4c707c
cmp dword [ebp - 0x398], 0x10
lea eax, [ebp - 0x314]
lea esi, [ebp - 0x3ac]
cmovae esi, dword [ebp - 0x3ac]
push eax
call dword [ebp - 0x4ac]
lea eax, [ebp - 0x318]
push eax
push 0
push esi
lea eax, [ebp - 0x314]
push eax
push 0
call dword [ebp - 0x4cc]
mov esi, dword [ebp - 0x4bc]
test eax, eax
lea eax, [ebp - 0x338]
js 0x40c68a
cmp dword [ebp - 0x324], 0x10
cmovae eax, dword [ebp - 0x338]
push eax
push str.2Successfully_downloaded_57za.dll_2from_5_s_n
jmp 0x40c69e
cmp dword [ebp - 0x324], 0x10
cmovae eax, dword [ebp - 0x338]
push eax
push str.3Failed_to_download_57za.dll_2from_5_s_n
push 0x200
push esi
call fcn.00408d90
add esp, 0x10
mov edx, esi
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
call fcn.004600e0
add esp, 0xc
mov esi, dword [ebp - 0x378]
mov ecx, dword [esi + 0x10]
mov eax, edi
sub eax, ecx
cmp eax, 0xe
jb 0x40d36f
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x40c6e1
mov eax, dword [esi]
push 0xe
push 0x4c6ac0
push ecx
push eax
push ecx
push dword [ebp - 0x4b8]
lea ecx, [ebp - 0x460]
call fcn.004133f0
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x450]
sub edi, ecx
cmp edi, 7
jb 0x40d36f
cmp dword [ebp - 0x44c], 0x10
lea eax, [ebp - 0x460]
push 7
cmovae eax, dword [ebp - 0x460]
push str.geo.dat
push ecx
push eax
push ecx
push dword [ebp - 0x4b8]
lea ecx, [ebp - 0x47c]
call fcn.004133f0
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x4e4]
push 0xe
xorps xmm0, xmm0
mov dword [ebp - 0x4d4], 0
push 0x4c6ac0
movups xmmword [ebp - 0x4e4], xmm0
mov dword [ebp - 0x4d0], 0
call fcn.004127b0
mov byte [ebp - 4], 0x22
cmp dword [esi + 0x14], 0x10
mov eax, dword [esi + 0x10]
jb 0x40c783
mov esi, dword [esi]
push eax
push esi
push 0
lea ecx, [ebp - 0x4e4]
call fcn.00413580
xorps xmm0, xmm0
mov dword [ebp - 0x4ec], 0
movups xmmword [ebp - 0x4fc], xmm0
mov dword [ebp - 0x4e8], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x4fc], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x4ec], xmm0
mov dword [eax + 0x10], 0
lea ecx, [ebp - 0x35c]
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x23
cmp dword [ebp - 0x348], 0x10
mov esi, dword [ebp - 0x4e8]
mov eax, esi
cmovae ecx, dword [ebp - 0x35c]
mov edi, dword [ebp - 0x34c]
mov edx, dword [ebp - 0x4ec]
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x40c83d
lea eax, [edx + edi]
cmp esi, 0x10
mov dword [ebp - 0x4ec], eax
lea eax, [ebp - 0x4fc]
cmovae eax, dword [ebp - 0x4fc]
lea esi, [eax + edx]
push esi
call fcn.0048f2d0
add esp, 0xc
mov byte [esi + edi], 0
lea eax, [ebp - 0x4fc]
jmp 0x40c84f
push dword [ebp - 0x4b8]
lea ecx, [ebp - 0x4fc]
push edi
call fcn.00412ab0
xorps xmm0, xmm0
mov dword [ebp - 0x3cc], 0
movups xmmword [ebp - 0x3dc], xmm0
mov dword [ebp - 0x3c8], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x3dc], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3cc], xmm0
mov byte [ebp - 4], 0x25
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov ecx, dword [ebp - 0x4e8]
cmp ecx, 0x10
jb 0x40c8d3
mov edx, dword [ebp - 0x4fc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40c8c9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d351
push ecx
push edx
call fcn.004885c3
add esp, 8
mov dword [ebp - 0x4ec], 0
mov dword [ebp - 0x4e8], 0xf
mov byte [ebp - 0x4fc], 0
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x4d0]
cmp ecx, 0x10
jb 0x40c92c
mov edx, dword [ebp - 0x4e4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40c922
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d351
push ecx
push edx
call fcn.004885c3
add esp, 8
cmp dword [ebp - 0x44c], 0x10
lea ecx, [ebp - 0x460]
mov dword [ebp - 0x4d4], 0
cmovae ecx, dword [ebp - 0x460]
mov dword [ebp - 0x4d0], 0xf
mov byte [ebp - 0x4e4], 0
call fcn.0045ffd0
test al, al
jne 0x40c9f5
mov byte [ebp - 0x318], al
lea edx, [ebp - 0x460]
push dword [ebp - 0x318]
lea ecx, [ebp - 0x3f4]
mov dword [ebp - 0x37c], 0
mov dword [ebp - 0x378], 0x4e0bf0
call fcn.00413970
add esp, 4
lea edx, [ebp - 0x37c]
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x3f4]
call fcn.0040ad00
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x3e0]
cmp ecx, 8
jb 0x40c9f5
mov edx, dword [ebp - 0x3f4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c9eb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d356
push ecx
push edx
call fcn.004885c3
add esp, 8
push 0x14
call dword [ebp - 0x4c8]
cmp dword [ebp - 0x348], 0x10
lea edx, [ebp - 0x35c]
mov ecx, 0x4e7020
mov eax, 0x4e7008
cmovae edx, dword [ebp - 0x35c]
cmp dword [0x4e7034], 0x10
push edx
cmovae ecx, dword [0x4e7020]
cmp dword [0x4e701c], 0x10
push ecx
cmovae eax, dword [0x4e7008]
push eax
push str.ftp:___s__s__s
lea eax, [ebp - 0x214]
push 0x100
push eax
call fcn.00408d90
cmp dword [ebp - 0x324], 0x10
lea ecx, [ebp - 0x338]
mov edi, dword [ebp - 0x4b0]
lea eax, [ebp - 0x35c]
cmovae ecx, dword [ebp - 0x338]
cmp dword [ebp - 0x348], 0x10
push ecx
cmovae eax, dword [ebp - 0x35c]
add edi, 0x284
push eax
push str.2Downloading_updated_5_s_2geoIP_database_file_n_from_5_s..._n
push 0x200
push edi
call fcn.00408d90
add esp, 0x2c
mov edx, edi
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
call fcn.004600e0
add esp, 0xc
mov dword [ebp - 0x318], 0x4c707c
cmp dword [ebp - 0x3c8], 0x10
lea eax, [ebp - 0x214]
lea esi, [ebp - 0x3dc]
cmovae esi, dword [ebp - 0x3dc]
push eax
call dword [ebp - 0x4ac]
lea eax, [ebp - 0x318]
push eax
push 0
push esi
lea eax, [ebp - 0x214]
push eax
push 0
call dword [ebp - 0x4cc]
test eax, eax
lea ecx, [ebp - 0x338]
lea eax, [ebp - 0x35c]
js 0x40ce79
cmp dword [ebp - 0x324], 0x10
cmovae ecx, dword [ebp - 0x338]
cmp dword [ebp - 0x348], 0x10
push ecx
cmovae eax, dword [ebp - 0x35c]
push eax
push str.2Successfully_downloaded_updated_5_s_2geoIP_database_file_n_from_5_s._n
push 0x200
push edi
call fcn.00408d90
add esp, 0x14
mov edx, edi
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
call fcn.004600e0
cmp dword [ebp - 0x348], 0x10
lea eax, [ebp - 0x35c]
cmovae eax, dword [ebp - 0x35c]
push eax
push str.2Starting_to_extract_downloaded_5_s_2geoIP_database_file_n_to_5plugins_geoIP_geo.dat_..._n
push 0x200
push edi
call fcn.00408d90
add esp, 0x1c
mov edx, edi
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
call fcn.004600e0
add esp, 0xc
lea ecx, [ebp - 0x47c]
cmp dword [ebp - 0x468], 0x10
cmovae ecx, dword [ebp - 0x47c]
call fcn.0045ffd0
test al, al
je 0x40cbbe
cmp dword [ebp - 0x468], 0x10
lea eax, [ebp - 0x47c]
cmovae eax, dword [ebp - 0x47c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp dword [ebp - 0x3c8], 0x10
lea ecx, [ebp - 0x3dc]
mov eax, dword [ebp - 0x3cc]
cmovae ecx, dword [ebp - 0x3dc]
add eax, ecx
cmp dword [ebp - 0x3c8], 0x10
lea ecx, [ebp - 0x3dc]
cmovae ecx, dword [ebp - 0x3dc]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x430]
call fcn.00411d60
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0x4b0]
add eax, 0x24
cmp dword [eax + 0x14], 0x10
mov ecx, dword [eax + 0x10]
jb 0x40cc18
mov edx, dword [eax]
add ecx, edx
jmp 0x40cc1c
add ecx, eax
mov edx, eax
push ecx
push ecx
push edx
lea ecx, [ebp - 0x394]
call fcn.00411d60
mov byte [ebp - 4], 0x29
mov edx, dword [ebp - 0x380]
mov eax, edx
mov ecx, dword [ebp - 0x384]
sub eax, ecx
mov dword [ebp - 0x318], ecx
cmp eax, 0xe
jb 0x40cc84
cmp edx, 8
lea esi, [ebp - 0x394]
lea eax, [ecx + 0xe]
cmovae esi, dword [ebp - 0x394]
push 0x1c
mov dword [ebp - 0x384], eax
push str.pluginsgeoIP_
lea eax, [esi + ecx*2]
push eax
call fcn.0048f2d0
mov eax, dword [ebp - 0x318]
add esp, 0xc
xor ecx, ecx
mov word [esi + eax*2 + 0x1c], cx
jmp 0x40cc9e
push 0xe
push str.pluginsgeoIP_
push dword [ebp - 0x4b8]
lea ecx, [ebp - 0x394]
push 0xe
call fcn.00412250
cmp dword [ebp - 0x380], 8
lea eax, [ebp - 0x394]
lea edx, [ebp - 0x430]
cmovae eax, dword [ebp - 0x394]
lea ecx, [ebp - 0x3f8]
cmp dword [ebp - 0x41c], 8
push eax
cmovae edx, dword [ebp - 0x430]
call fcn.0046e410
add esp, 4
mov byte [ebp - 4], 0x2a
cmp byte [ebp - 0x3f8], 0
je 0x40cd27
cmp dword [ebp - 0x3c8], 0x10
lea eax, [ebp - 0x3dc]
cmovae eax, dword [ebp - 0x3dc]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
cmp dword [ebp - 0x348], 0x10
lea eax, [ebp - 0x35c]
cmovae eax, dword [ebp - 0x35c]
push eax
push str.2Finished_extracting_downloaded_5_s_2geoIP_database_file_n_to_5plugins_geoIP_geo.dat_n
push 0x200
push edi
call fcn.00408d90
add esp, 0x10
jmp 0x40cd64
cmp dword [ebp - 0x3e0], 0x10
lea ecx, [ebp - 0x3f4]
lea eax, [ebp - 0x35c]
cmovae ecx, dword [ebp - 0x3f4]
cmp dword [ebp - 0x348], 0x10
push ecx
cmovae eax, dword [ebp - 0x35c]
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 edi
call fcn.00408d90
add esp, 0x14
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
mov edx, edi
call fcn.004600e0
mov byte [ebp - 4], 0x29
add esp, 0xc
mov ecx, dword [ebp - 0x3e0]
cmp ecx, 0x10
jb 0x40cdb7
mov edx, dword [ebp - 0x3f4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40cdad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d35b
push ecx
push edx
call fcn.004885c3
add esp, 8
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x380]
mov dword [ebp - 0x3e4], 0
mov dword [ebp - 0x3e0], 0xf
mov byte [ebp - 0x3f4], 0
cmp ecx, 8
jb 0x40ce16
mov edx, dword [ebp - 0x394]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ce0c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d35b
push ecx
push edx
call fcn.004885c3
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x41c]
mov dword [ebp - 0x384], 0
mov dword [ebp - 0x380], 7
mov word [ebp - 0x394], ax
cmp ecx, 8
jb 0x40cebf
mov edx, dword [ebp - 0x430]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ce6d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d35b
push ecx
push edx
call fcn.004885c3
add esp, 8
jmp 0x40cebf
cmp dword [ebp - 0x324], 0x10
cmovae ecx, dword [ebp - 0x338]
cmp dword [ebp - 0x348], 0x10
push ecx
cmovae eax, dword [ebp - 0x35c]
push eax
push str.3Failed_to_download_updated_1_s_3geoIP_database_file_n_from_5_s_n
push 0x200
push edi
call fcn.00408d90
add esp, 0x14
mov edx, edi
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
call fcn.004600e0
add esp, 0xc
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x3c8]
cmp ecx, 0x10
jb 0x40cefd
mov edx, dword [ebp - 0x3dc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40cef3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d360
push ecx
push edx
call fcn.004885c3
add esp, 8
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x468]
mov dword [ebp - 0x3cc], 0
mov dword [ebp - 0x3c8], 0xf
mov byte [ebp - 0x3dc], 0
cmp ecx, 0x10
jb 0x40cf56
mov edx, dword [ebp - 0x47c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40cf4c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d360
push ecx
push edx
call fcn.004885c3
add esp, 8
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x44c]
mov dword [ebp - 0x46c], 0
mov dword [ebp - 0x468], 0xf
mov byte [ebp - 0x47c], 0
cmp ecx, 0x10
jb 0x40cfaf
mov edx, dword [ebp - 0x460]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40cfa5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d360
push ecx
push edx
call fcn.004885c3
add esp, 8
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x398]
mov dword [ebp - 0x450], 0
mov dword [ebp - 0x44c], 0xf
mov byte [ebp - 0x460], 0
cmp ecx, 0x10
jb 0x40d008
mov edx, dword [ebp - 0x3ac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40cffe
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d360
push ecx
push edx
call fcn.004885c3
add esp, 8
mov edi, dword [ebp - 0x4c4]
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x518]
cmp ecx, 0x10
jb 0x40d046
inc ecx
mov eax, edi
cmp ecx, 0x1000
jb 0x40d03c
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d365
push ecx
push edi
call fcn.004885c3
add esp, 8
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x434]
cmp ecx, 0x10
jb 0x40d084
mov edx, dword [ebp - 0x448]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40d07a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d365
push ecx
push edx
call fcn.004885c3
add esp, 8
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x348]
mov dword [ebp - 0x438], 0
mov dword [ebp - 0x434], 0xf
mov byte [ebp - 0x448], 0
cmp ecx, 0x10
jb 0x40d0dd
mov edx, dword [ebp - 0x35c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40d0d3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d365
push ecx
push edx
call fcn.004885c3
add esp, 8
mov edi, dword [ebp - 0x4b0]
lea ecx, [ebp - 0x490]
call fcn.004109f0
mov ecx, dword [ebp - 0x480]
test ecx, ecx
je 0x40d10b
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
mov ecx, eax
test ecx, ecx
je 0x40d10b
mov eax, dword [ecx]
push 1
call dword [eax]
lea ecx, [ebp - 0x344]
call fcn.00410f00
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x360]
cmp ecx, 0x10
jb 0x40d154
mov edx, dword [ebp - 0x374]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40d14a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d36a
push ecx
push edx
call fcn.004885c3
add esp, 8
mov ecx, edi
call fcn.0040e170
mov esi, dword [ebp - 0x320]
jmp 0x40d26f
cmp dword [ebp - 0x324], 0x10
lea eax, [ebp - 0x338]
mov esi, dword [ebp - 0x4bc]
cmovae eax, dword [ebp - 0x338]
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.00408d90
add esp, 0x10
mov edx, esi
push 1
push 1
push ecx
mov ecx, dword [0x4e3440]
call fcn.004600e0
mov eax, dword [ebp - 0x31c]
add esp, 0xc
test eax, eax
je 0x40d1c0
push eax
call edi
mov dword [ebp - 0x31c], 0
mov eax, dword [ebp - 0x320]
test eax, eax
je 0x40d1d7
push eax
call edi
mov dword [ebp - 0x320], 0
mov ecx, dword [ebp - 0x324]
cmp ecx, 0x10
jb 0x40d211
mov edx, dword [ebp - 0x338]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40d207
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d374
push ecx
push edx
call fcn.004885c3
add esp, 8
mov ecx, dword [ebp - 0x3b0]
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x324], 0xf
mov byte [ebp - 0x338], 0
cmp ecx, 0x10
jb 0x40bd5e
mov edx, dword [ebp - 0x3c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40bd54
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d374
jmp 0x40bd54
mov edi, dword [ebp - 0x4b0]
mov eax, dword [ebp - 0x31c]
test eax, eax
je 0x40d290
push eax
call dword [ebp - 0x4b4]
mov esi, dword [ebp - 0x320]
mov dword [ebp - 0x31c], 0
test esi, esi
je 0x40d2a5
push esi
call dword [ebp - 0x4b4]
mov dword [ebp - 0x320], 0
mov ecx, dword [ebp - 0x324]
cmp ecx, 0x10
jb 0x40d2db
mov edx, dword [ebp - 0x338]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40d2d1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d32e
push ecx
push edx
call fcn.004885c3
add esp, 8
mov ecx, dword [ebp - 0x3b0]
mov dword [ebp - 0x328], 0
mov dword [ebp - 0x324], 0xf
mov byte [ebp - 0x338], 0
cmp ecx, 0x10
jb 0x40bd64
mov edx, dword [ebp - 0x3c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40b6eb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40b6eb
call fcn.0049a67c
call fcn.004119b0
call fcn.0049a67c
call fcn.0049a67c
call fcn.0049a67c
call fcn.004119b0
call fcn.0049a67c
call fcn.0049a67c
call fcn.0049a67c
call fcn.0049a67c
call fcn.0049a67c
call fcn.0049a67c
call fcn.0049a67c
call fcn.00408fb0
call fcn.0049a67c
int3