Function at 0x401900
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x28c
mov eax, dword [0x5ea940]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov ecx, 0x5ed00d
call fcn.004031e8
push 0x104
push 0
lea eax, [ebp - 0x108]
push eax
call fcn.00403d90
add esp, 0xc
push 0x104
push 0
lea eax, [ebp - 0x20c]
push eax
call fcn.00403d90
add esp, 0xc
call fcn.00401040
test eax, eax
je 0x401972
push str.C:Program_Files__x86_
push 0x419280
mov eax, dword [ebp + 8]
add eax, 0x214
push eax
call fcn.00401490
add esp, 0xc
jmp 0x40198d
push str.C:Program_Files
push 0x419280
mov eax, dword [ebp + 8]
add eax, 0x214
push eax
call fcn.00401490
add esp, 0xc
mov eax, dword [ebp + 8]
add eax, 0x214
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x318
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push str.ZTOPMICRO
mov eax, dword [ebp + 8]
add eax, 0x318
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [ebp + 8]
add eax, 0x318
push eax
mov ecx, dword [ebp + 8]
add ecx, 0xc
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push str.install_log.txt
mov eax, dword [ebp + 8]
add eax, 0xc
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [ebp + 8]
add eax, 0x318
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x110
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push str.Temp
mov eax, dword [ebp + 8]
add eax, 0x110
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push str.TASKKILL__F__IM_Auto_eject.exe__T
call fcn.004013a0
add esp, 4
push str.sc_stop_Auto_eject__nul
call fcn.004013a0
add esp, 4
push str.sc_delete_Auto_eject__nul
call fcn.004013a0
add esp, 4
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [ebp + 8]
add eax, 0x318
push eax
call fcn.00401660
add esp, 4
mov eax, dword [ebp + 8]
add eax, 0x214
push eax
call section..text
add esp, 4
test eax, eax
jne 0x401a8e
push 0
mov eax, dword [ebp + 8]
add eax, 0x214
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x401a8e
push 0x4193b8
call fcn.00401440
add esp, 4
or eax, 0xffffffff
jmp 0x401b5d
mov eax, dword [ebp + 8]
add eax, 0x318
push eax
call section..text
add esp, 4
test eax, eax
jne 0x401acd
push 0
mov eax, dword [ebp + 8]
add eax, 0x318
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x401acd
push 0x4193b8
call fcn.00401440
add esp, 4
or eax, 0xffffffff
jmp 0x401b5d
mov eax, dword [ebp + 8]
add eax, 0x110
push eax
call section..text
add esp, 4
test eax, eax
jne 0x401b09
push 0
mov eax, dword [ebp + 8]
add eax, 0x110
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
test eax, eax
jne 0x401b09
push 0x4193b8
call fcn.00401440
add esp, 4
or eax, 0xffffffff
jmp 0x401b5d
mov eax, dword [ebp + 8]
add eax, 0x318
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x521
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push str.KMDF_v1.9_Win2k_WinXP_Win2k3.exe__passive__norestart__nobackup
mov eax, dword [ebp + 8]
add eax, 0x521
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push str.USBVID_2310PID_9086
mov eax, dword [ebp + 8]
add eax, 0x729
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [ebp + 8]
push eax
call fcn.00402890
add esp, 4
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040321a
mov esp, ebp
pop ebp
ret