Function at 0x401840
Capabilities:
Contain obfuscated stackstrings
Get common file path
Get disk information

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x8f4
push ebx
push esi
push edi
mov dword [esp + 0x90], 0x6e427847
mov dword [esp + 0x70], 0x6218e870
mov dword [esp + 0x54], 0x149af8ec
mov dword [esp + 0x24], 0x4afb91b5
mov dword [esp + 0x40], 0x3ecfaa1c
mov dword [esp + 0x88], 0x3ad9a33b
mov dword [esp + 0x38], 0x2e60142a
mov dword [esp + 0xd0], 0x3edc6e22
mov dword [esp + 0x30], 0x3a935e7b
mov dword [esp + 0xc4], 0x27d83400
mov dword [esp + 0x2c], 0x5b7be8d0
mov dword [esp + 0xfc], 0x2afc6279
mov dword [esp + 0xc0], 0x4c661f02
mov dword [esp + 0xcc], 0x3556350f
mov dword [esp + 0x84], 0x5cee71a
mov dword [esp + 0xf8], 0x672f0349
mov dword [esp + 0x74], 0x7e62244f
mov dword [esp + 0x64], 0x3fee9fb7
mov dword [esp + 0x28], 0x50a06304
mov dword [esp + 0xec], 0x3e8eeca6
mov dword [esp + 0xf0], 0x9e677d3
mov dword [esp + 0xf4], 0x632ffe21
mov dword [esp + 0x68], 0x6299a78b
mov dword [esp + 0x4c], 0x43c33179
mov dword [esp + 0xb8], 0x7e982bf0
mov dword [esp + 0xe4], 0x2df45af3
mov dword [esp + 0x3c], 0x4904801f
mov dword [esp + 0x7c], 0x4901fcd6
mov dword [esp + 0xb0], 0x7162fd6f
mov dword [esp + 0xe8], 0x17323901
mov dword [esp + 0xa4], 0x787356f
mov dword [esp + 0xdc], 0x1213f947
mov dword [esp + 0xe0], 0x1c2e9a2e
mov dword [esp + 0x5c], 0x2ceda973
mov dword [esp + 0xa8], 0x36c00af5
mov dword [esp + 0x60], 0x7913332c
mov dword [esp + 0x58], 0x4ab4efc1
mov dword [esp + 0x50], 0x782c3a22
mov dword [esp + 0x9c], 0x1c76d52b
mov dword [esp + 0x8c], 0x2b24eb15
mov dword [esp + 0x80], 0x3cae5753
mov dword [esp + 0xb4], 0x3e001fea
mov dword [esp + 0xd8], 0x38abd74
mov dword [esp + 0xd4], 0x57792d0b
mov dword [esp + 0x94], 0x2b490df9
mov dword [esp + 0x6c], 0x656ca4b
mov dword [esp + 0x48], 0x3b09b99f
mov dword [esp + 0xa0], 0x615b0425
mov dword [esp + 0xac], 0x6467bfb2
mov dword [esp + 0x44], 0x12072f38
mov dword [esp + 0x78], 0x658f5424
mov dword [esp + 0x98], 0x27e6ba7c
mov dword [esp + 0xc8], 0x358a8c9f
mov dword [esp + 0xbc], 0x50f4b1a1
mov dword [esp + 0x34], 0x4f4bb70f
mov eax, 0x198b9c75
mul dword [esp + 0x70]
mov eax, dword [esp + 0x70]
add dword [esp + 0x70], 0x5503c8f4
sub dword [esp + 0x70], 0x1f5d5686
add dword [esp + 0x90], 0x6bff1bef
sub dword [esp + 0x90], 0x375c990
sub dword [esp + 0x54], 0x627284c7
add dword [esp + 0x24], 0x4914996f
sub dword [esp + 0x40], 0x4b2f736c
mov eax, 0x1c9bc56f
mul dword [esp + 0x40]
mov eax, dword [esp + 0x40]
mov eax, 0x3a60e44b
mul dword [esp + 0x40]
mov eax, dword [esp + 0x40]
sub dword [esp + 0x70], 0x133e6843
mov eax, 0x5fc530bd
mul dword [esp + 0x40]
mov eax, dword [esp + 0x40]
add dword [esp + 0x90], 0x3347c34c
add dword [esp + 0x54], 0x77273ce8
add dword [esp + 0x88], 0x2ce22b02
mov eax, 0x8c6154d
mul dword [esp + 0x30]
mov eax, dword [esp + 0x30]
sub dword [esp + 0xd0], 0x1cf9030d
add dword [esp + 0x88], 0x182091a8
mov eax, 0x29c9a4f1
mul dword [esp + 0x40]
mov eax, dword [esp + 0x40]
sub dword [esp + 0x70], 0x13cea8cb
mov eax, 0x51792614
mul dword [esp + 0x30]
mov eax, dword [esp + 0x30]
add dword [esp + 0x38], 0x4995433b
sub dword [esp + 0x30], 0x7e0a1a8e
sub dword [esp + 0xc4], 0x798f120e
add dword [esp + 0xfc], 0x1a1dacc1
sub dword [esp + 0xc4], 0x4577851a
mov eax, 0x2b8539d1
mul dword [esp + 0x2c]
mov eax, dword [esp + 0x2c]
mov eax, 0x5dfbd85a
mul dword [esp + 0x24]
mov eax, dword [esp + 0x24]
sub dword [esp + 0x30], 0x12c8211b
add dword [esp + 0x74], 0x86df1ca
mov eax, 0x46aeaaf5
mul dword [esp + 0xf8]
mov eax, dword [esp + 0xf8]
mov eax, 0x69bed8d8
mul dword [esp + 0xd0]
mov eax, dword [esp + 0xd0]
mov eax, 0x3a511aff
mul dword [esp + 0x28]
mov eax, dword [esp + 0x28]
sub dword [esp + 0x28], 0x17c0ded2
add dword [esp + 0x40], 0x7b20e5f0
mov eax, 0x4b765c06
mul dword [esp + 0x28]
mov eax, dword [esp + 0x28]
mov eax, 0x78fbc048
mul dword [esp + 0x40]
mov eax, dword [esp + 0x40]
mov eax, 0x20b1bed2
mul dword [esp + 0x64]
mov eax, dword [esp + 0x64]
sub dword [esp + 0x74], 0x7b34857
sub dword [esp + 0x24], 0x5d8dd343
mov eax, 0x59c77b4d
mul dword [esp + 0x70]
mov eax, dword [esp + 0x70]
add dword [esp + 0xf4], 0x9930fab
add dword [esp + 0x2c], 0x76d4f808
sub dword [esp + 0xc4], 0x161a9a59
add dword [esp + 0xf8], 0x75cbb1c
sub dword [esp + 0x90], 0x71b58cd7
sub dword [esp + 0x90], 0xa0287b3
add dword [esp + 0x40], 0x42b591e9
mov eax, 0x2632a3be
mul dword [esp + 0x68]
mov eax, dword [esp + 0x68]
add dword [esp + 0x70], 0x79b2870c
sub dword [esp + 0xf8], 0x3b84e07b
add dword [esp + 0x30], 0x5e5a9b3a
add dword [esp + 0x88], 0x705392de
add dword [esp + 0x68], 0x7c3f92fe
mov eax, 0x14f742ca
mul dword [esp + 0xb8]
mov eax, dword [esp + 0xb8]
sub dword [esp + 0xc4], 0x630de9be
mov eax, 0x1d161556
mul dword [esp + 0xa4]
mov eax, dword [esp + 0xa4]
sub dword [esp + 0x70], 0x661b8d00
mov eax, 0x50742919
mul dword [esp + 0x4c]
mov eax, dword [esp + 0x4c]
mov eax, 0x6d9df3c4
mul dword [esp + 0x40]
mov eax, dword [esp + 0x40]
add dword [esp + 0xf0], 0x47c6162a
sub dword [esp + 0x5c], 0x2bca3c94
mov eax, 0x2553dfa3
mul dword [esp + 0x74]
mov eax, dword [esp + 0x74]
mov eax, 0x258eafc4
mul dword [esp + 0xec]
mov eax, dword [esp + 0xec]
add dword [esp + 0x54], 0x696697c7
sub dword [esp + 0xcc], 0x3e4d1639
add dword [esp + 0xc0], 0x43408aaa
sub dword [esp + 0x70], 0x35833bf9
sub dword [esp + 0x38], 0x660ffca4
sub dword [esp + 0x30], 0x60737d4a
mov eax, 0x20ceaae7
mul dword [esp + 0x2c]
mov eax, dword [esp + 0x2c]
sub dword [esp + 0xec], 0x4a11c8b8
sub dword [esp + 0x5c], 0x19f80ac7
mov eax, 0x762417f3
mul dword [esp + 0x38]
mov eax, dword [esp + 0x38]
sub dword [esp + 0xd4], 0x19a046ea
mov eax, 0x387b846c
mul dword [esp + 0x68]
mov eax, dword [esp + 0x68]
add dword [esp + 0x54], 0x3d542d37
sub dword [esp + 0x7c], 0x1a76e8b6
sub dword [esp + 0x40], 0x2f92a64c
add dword [esp + 0x60], 0xa60d8c4
sub dword [esp + 0xec], 0x66c3202c
mov eax, 0x4be9f53e
mul dword [esp + 0xfc]
mov eax, dword [esp + 0xfc]
sub dword [esp + 0xac], 0x66a7afe0
sub dword [esp + 0xa4], 0x646f82b2
add dword [esp + 0xac], 0x3dfaf525
add dword [esp + 0xa4], 0x1da48aff
sub dword [esp + 0xb4], 0x49865354
add dword [esp + 0x70], 0xb3a6428
mov eax, 0x7eb96641
mul dword [esp + 0x9c]
mov eax, dword [esp + 0x9c]
sub dword [esp + 0x7c], 0x30201257
add dword [esp + 0x38], 0x2f31ff8b
sub dword [esp + 0xa0], 0x63e200a6
add dword [esp + 0xc0], 0x771dfe42
mov eax, 0x232bc270
mul dword [esp + 0x48]
mov eax, dword [esp + 0x48]
sub dword [esp + 0x70], 0x357f8d9a
cmp dword [0x481aac], 0x400
jne 0x401ee9
xor esi, esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll__lcreat]
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll__hread]
push esi
push esi
push esi
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetCalendarInfoA]
push esi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push esi
lea eax, [esp + 0x104]
push eax
push str.wopeducuzecogexojinuliwutocekay_fehotusafobozaheyezesorunizemozo_laxuvofududogateducokuxavoxabe_ganinebudez
call dword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
push esi
call fcn.004031cd
add esp, 4
push esi
push esi
call fcn.0040354f
mov eax, esp
mov dword [eax], esi
mov dword [eax + 4], esi
call fcn.004033a0
fstp st(0)
mov eax, esp
mov dword [eax], esi
mov dword [eax + 4], esi
call fcn.004030b0
fstp st(0)
add esp, 8
mov edi, dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
xor esi, esi
mov ecx, dword [esp + 0x24]
push 0
push 0
push ecx
push 0
call edi
call ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp esi, 0x12e8a06
jg 0x401f1d
inc esi
cmp esi, 0x30375
jl 0x401ef7
mov edi, dword [sym.imp.GDI32.dll_GetCharWidthI]
xor esi, esi
cmp esi, 0xa16
jge 0x401f39
push 0
push 0
push 0
push 0
push 0
call edi
cmp esi, 0x166c480
jg 0x401f4a
inc esi
cmp esi, 0x37e3fd1
jl 0x401f25
mov edx, dword [0x475b4c]
mov dword [0x481aac], edx
call fcn.00401490
mov esi, dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
mov edi, 0x2ec37
mov ebx, 0x51f
jmp 0x401f70
cmp dword [0x481aac], ebx
jne 0x401f84
lea eax, [esp + 0x100]
push eax
push 0
call esi
dec edi
jne 0x401f70
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0x10