Function at 0x403db0
Capabilities:
Create process on windows
Hide graphical window

Disassembly:
sub esp, 0xc88
mov al, byte [0x4135b4]
push ebx
push ebp
push esi
push edi
mov byte [esp + 0xb94], al
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0xb95]
xor ebp, ebp
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebp
call fcn.00406020
mov edi, dword [0x4135d0]
mov dl, byte [0x4135b4]
xor ebx, ebx
xor ecx, ecx
cmp edi, ebp
mov esi, eax
sete cl
mov dword [esp + 0x28], ecx
mov ecx, 0x31
xor eax, eax
lea edi, [esp + 0x1c1]
mov byte [esp + 0x1c0], dl
mov byte [esp + 0xf8], dl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x31
xor eax, eax
lea edi, [esp + 0xf9]
mov byte [esp + 0x78c], dl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x78d]
push str.StartLEXMSetup__
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov dword [esp + 0x28], esi
mov dword [esp + 0x18], ebx
stosb byte es:[edi], al
call fcn.00406080
add esp, 4
cmp esi, ebp
je 0x403f00
push str.hub.inf
push str.lxda
lea edx, [esp + 0x794]
push str._s_s
push edx
call fcn.00406f8b
lea eax, [esp + 0x79c]
lea ecx, [esp + 0x39c]
push eax
push str.Checking_for__s
push ecx
call fcn.00406f8b
lea edx, [esp + 0x3a8]
push edx
call fcn.00406080
lea eax, [esp + 0x7ac]
lea ecx, [esp + 0x7ac]
push eax
push ecx
call fcn.00404ee0
add esp, 0x28
test eax, eax
je 0x403f00
lea edx, [esp + 0x78c]
lea eax, [esp + 0x38c]
push edx
push str.Found__s__need_to_install_device
push eax
call fcn.00406f8b
lea ecx, [esp + 0x398]
push ecx
call fcn.00406080
mov ebx, 1
add esp, 0x10
mov dword [esp + 0x14], ebx
cmp dword [0x4135c0], ebp
je 0x403f1a
push 0x413a00
push str.lxdaLCNA.INF
call fcn.00404ee0
add esp, 8
cmp dword [0x4135cc], ebp
je 0x403f39
cmp dword [0x4135d0], ebp
jne 0x403f39
push 1
push 0x413a00
call fcn.00402ef0
add esp, 8
cmp dword [0x4135b8], ebp
jne 0x403f45
cmp ebx, ebp
je 0x403f5f
push 0x4135b4
lea edx, [esp + 0xfc]
push 0x40f3d8
push edx
call fcn.00406f8b
add esp, 0xc
cmp dword [0x4135d8], ebp
je 0x403fb1
push str.Printer_is_installed
call fcn.00406080
mov eax, dword [0x4135b8]
add esp, 4
cmp eax, ebp
je 0x404002
push ebp
call fcn.00405ae0
add esp, 4
cmp eax, ebp
mov dword [0x4135c4], eax
jne 0x403fa9
push str.User_cancels__doesnt_want_the_update...
call fcn.00406080
mov ebx, dword [esp + 0x14]
add esp, 4
jmp 0x4049fd
cmp dword [0x4135d8], ebp
jne 0x404002
cmp dword [0x4135b8], ebp
je 0x403fd8
call fcn.004056f0
test eax, eax
je 0x404002
push 1
push ebp
call fcn.00404a30
add esp, 8
test eax, eax
je 0x404002
push str.Found_Scanner_and_USB_Printer__but_no_driver._Launch_Install
jmp 0x403fec
push 1
push ebp
call fcn.00404a30
add esp, 8
test eax, eax
je 0x404002
push str.Found_USB_Printer__but_no_driver._Launch_Install
call fcn.00406080
mov ebx, dword [esp + 0x14]
add esp, 4
mov ebp, 0x40b
jmp 0x4047aa
mov esi, dword [esp + 0xc9c]
mov edi, dword [sym.imp.USER32.dll_LoadStringA]
mov ebx, dword [esp + 0x10]
push str.SearchAgain
call fcn.00406080
push esi
xor ebp, ebp
call fcn.00402a50
movsx eax, ax
add esp, 8
mov dword [esp + 0x18], eax
test eax, eax
jg 0x404045
mov eax, dword [0x4135cc]
test eax, eax
je 0x404045
call fcn.00403040
mov dword [esp + 0x1c], eax
call fcn.00402bc0
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x404148
mov eax, dword [0x4135b8]
test eax, eax
jne 0x40406f
mov eax, dword [esp + 0x14]
test eax, eax
je 0x404148
lea eax, [esp + 0x1c0]
lea ecx, [esp + 0xf8]
push eax
push ecx
push 0x40fc34
call fcn.004051d0
add esp, 0xc
test eax, eax
jne 0x4040bf
lea edx, [esp + 0xf8]
lea eax, [esp + 0x38c]
push edx
push str.Didnt_Find__s_under_USB
push eax
call fcn.00406f8b
lea ecx, [esp + 0x398]
push ecx
call fcn.00406080
add esp, 0x10
jmp 0x404371
lea edx, [esp + 0x1c0]
push edx
call fcn.00405550
add esp, 4
test eax, eax
jne 0x40410c
lea eax, [esp + 0x1c0]
lea ecx, [esp + 0x38c]
push eax
push str.GetDevNodeStatus__s__indicates_success
push ecx
call fcn.00406f8b
lea edx, [esp + 0x398]
push edx
call fcn.00406080
push esi
call fcn.00402a50
movsx eax, ax
add esp, 0x14
mov dword [esp + 0x18], eax
jmp 0x404148
lea ecx, [esp + 0x1c0]
lea edx, [esp + 0x38c]
push ecx
push 0x4135b4
push str.Found__s_under_USB__but__s_is_not_configured
push edx
call fcn.00406f8b
lea eax, [esp + 0x39c]
push eax
call fcn.00406080
add esp, 0x14
jmp 0x404371
call fcn.00406080
add esp, 0x10
mov eax, dword [esp + 0x18]
test eax, eax
jg 0x404371
mov eax, dword [esp + 0x1c]
cmp eax, 1
jl 0x40419a
mov edx, dword [esp + 0x18]
mov ecx, eax
push ecx
push edx
lea eax, [esp + 0x394]
push str.Found_Local:__u__Found_Network:__u
push eax
call fcn.00406f8b
lea ecx, [esp + 0x39c]
push ecx
call fcn.00406080
push 0
push 0
call fcn.00406900
add esp, 0x1c
mov ebp, 0x3ed
jmp 0x4047aa
test eax, eax
jne 0x404371
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x38c]
push edx
push str.iDeviceConnected___i
push eax
call fcn.00406f8b
lea ecx, [esp + 0x398]
push ecx
call fcn.00406080
mov edx, dword [0x413e24]
add esp, 0x10
push 0
push 0x4024a0
push esi
push 0x82
push edx
call dword [sym.imp.USER32.dll_DialogBoxParamA]
mov ebp, eax
cmp ebp, 0x3ed
jg 0x404365
je 0x404315
dec eax
je 0x404303
dec eax
jne 0x404371
push str.User_wants_to_quit
call fcn.00406080
mov ecx, dword [0x413e24]
add esp, 4
lea eax, [esp + 0x30]
push 0xc8
push eax
push 0x22c
push ecx
call edi
mov eax, dword [0x413e24]
lea edx, [esp + 0x38c]
push 0xc8
push edx
push 0x22d
push eax
call edi
mov edx, dword [0x413e24]
lea ecx, [esp + 0x994]
push 0xc8
push ecx
push 0x22b
push edx
call edi
lea eax, [esp + 0x994]
push str.Hebrew
push eax
call fcn.004071b0
add esp, 8
test eax, eax
je 0x4042a4
lea ecx, [esp + 0x994]
push str.Arabic
push ecx
call fcn.004071b0
add esp, 8
test eax, eax
je 0x4042a4
push 0
lea edx, [esp + 0x34]
push 0x14
lea eax, [esp + 0x394]
push edx
push eax
jmp 0x4042b8
push 0
lea ecx, [esp + 0x34]
push 0x180014
lea edx, [esp + 0x394]
push ecx
push edx
push esi
call dword [sym.imp.USER32.dll_MessageBoxExA]
cmp eax, 7
je 0x404148
mov eax, dword [0x4135c0]
test eax, eax
je 0x4049fd
mov eax, dword [0x4135d0]
test eax, eax
jne 0x4049fd
mov eax, dword [0x4135d8]
test eax, eax
jne 0x4049fd
push 0
push 0x413a00
call fcn.00402ef0
add esp, 8
jmp 0x4049fd
push str.User_wants_to_try_again
call fcn.00406080
add esp, 4
jmp 0x404013
push str.User_Selects_Net_Parameters
call fcn.00406080
mov eax, dword [0x4135c0]
add esp, 4
test eax, eax
je 0x404371
push str.LCNA_Install
call fcn.00406080
mov eax, dword [esp + 0x2c]
push eax
call fcn.00403220
add esp, 8
test eax, eax
je 0x404148
push str.LCNA_Install_Complete__Launch_Setup
call fcn.00406080
push 0
push 0
call fcn.00406900
add esp, 0xc
jmp 0x4047aa
cmp ebp, 0x40b
je 0x4047aa
push str.StartLEXMsetup
call fcn.00406080
mov eax, dword [0x4135b8]
add esp, 4
test eax, eax
jne 0x4044f7
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x4044f7
mov eax, dword [0x4135d8]
test eax, eax
je 0x4043c7
push 1
push 0
call fcn.00404a30
add esp, 8
test eax, eax
je 0x4043c7
push str.Found_USB_Printer__but_no_driver._Launch_Install
call fcn.00406080
add esp, 4
mov ebp, 0x40b
jmp 0x4047aa
cmp dword [esp + 0x18], 1
jl 0x4047aa
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x4044dd
lea ecx, [esp + 0xb94]
push ecx
push str.lxdausb.ini
call fcn.00404ee0
add esp, 8
test eax, eax
je 0x4044cb
push 0
push 0
call fcn.00406900
add esp, 8
test eax, eax
jne 0x4044dd
push 0x72
push ebx
call fcn.00405f70
push str.PreInstallFiles_failed___exiting_app
call fcn.00406080
add esp, 0xc
call fcn.00405c70
mov eax, dword [0x413e24]
lea edx, [esp + 0x30]
push 0xc8
push edx
push 0x78
push eax
call edi
mov edx, dword [0x413e24]
lea ecx, [esp + 0x38c]
push 0xc8
push ecx
push 0x79
push edx
call edi
mov ecx, dword [0x413e24]
lea eax, [esp + 0x994]
push 0xc8
push eax
push 0x22b
push ecx
call edi
lea edx, [esp + 0x994]
push str.Hebrew
push edx
call fcn.004071b0
add esp, 8
test eax, eax
je 0x4044bf
lea eax, [esp + 0x994]
push str.Arabic
push eax
call fcn.004071b0
add esp, 8
test eax, eax
je 0x4044bf
push 0
lea ecx, [esp + 0x34]
push 0x10
lea edx, [esp + 0x394]
push ecx
push edx
push esi
call dword [sym.imp.USER32.dll_MessageBoxExA]
jmp 0x4049fd
push 0
push 0x180010
jmp 0x404612
push str.Failed_to_locate_USBPrint_Inf
call fcn.00406080
add esp, 4
jmp 0x4049fd
cmp ebp, 0x40b
je 0x4047aa
call fcn.004035d0
push 1
push 0
jmp 0x4047a2
push str.AIOINSTALL___CreateDialog
call fcn.00406080
mov eax, dword [esp + 0x24]
add esp, 4
test eax, eax
jne 0x40467c
call fcn.00404d20
cmp ebp, 0x40b
je 0x404565
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x404565
mov edx, dword [0x413e24]
push 0
push 0x402740
push esi
push 0x85
push edx
call dword [sym.imp.USER32.dll_CreateDialogParamA]
mov ebx, eax
push 1
push ebx
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x404
push ebx
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0x71
push ebx
mov dword [esp + 0x18], eax
call fcn.00405f70
add esp, 8
mov eax, dword [esp + 0x10]
push eax
push ebx
call fcn.00406900
add esp, 8
test eax, eax
jne 0x40464b
push 0x72
push ebx
call fcn.00405f70
push str.PreInstallFiles_failed___exiting_app
call fcn.00406080
add esp, 0xc
call fcn.00405c70
mov edx, dword [0x413e24]
lea ecx, [esp + 0x30]
push 0xc8
push ecx
push 0x78
push edx
call edi
mov ecx, dword [0x413e24]
lea eax, [esp + 0x38c]
push 0xc8
push eax
push 0x79
push ecx
call edi
mov eax, dword [0x413e24]
lea edx, [esp + 0x994]
push 0xc8
push edx
push 0x22b
push eax
call edi
lea ecx, [esp + 0x994]
push str.Hebrew
push ecx
call fcn.004071b0
add esp, 8
test eax, eax
je 0x40462b
lea edx, [esp + 0x994]
push str.Arabic
push edx
call fcn.004071b0
add esp, 8
test eax, eax
je 0x40462b
push 0
push 0x10
lea eax, [esp + 0x38]
lea ecx, [esp + 0x394]
push eax
push ecx
push esi
call dword [sym.imp.USER32.dll_MessageBoxExA]
jmp 0x4049fd
push 0
lea edx, [esp + 0x34]
push 0x180010
lea eax, [esp + 0x394]
push edx
push eax
push esi
call dword [sym.imp.USER32.dll_MessageBoxExA]
jmp 0x4049fd
mov eax, dword [0x4135c0]
test eax, eax
je 0x40466c
mov eax, dword [0x4135d0]
test eax, eax
jne 0x40466c
push 1
push 0x413a00
call fcn.00402ef0
add esp, 8
mov eax, dword [esp + 0x24]
test eax, eax
je 0x40467c
mov dword [esp + 0x20], 1
push 0x73
push ebx
call fcn.00405f70
add esp, 8
cmp ebp, 0x40b
jne 0x4046c7
push str.User_wants_to_launch_install
call fcn.00406080
mov esi, dword [esp + 0x14]
add esp, 4
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4047aa
push 0
push 0x12c
push 0x402
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x4047aa
mov eax, dword [0x4135c4]
test eax, eax
jne 0x4047aa
call fcn.004035d0
push 0x1388
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [esp + 0x24]
test eax, eax
je 0x40478b
mov eax, dword [esp + 0x20]
test eax, eax
je 0x40478b
push str.In_PostPnP_install_HACK
call fcn.00406080
mov eax, dword [0x4135b8]
add esp, 4
test eax, eax
jne 0x40471e
mov eax, dword [esp + 0x14]
test eax, eax
je 0x40479f
lea ecx, [esp + 0x1c0]
lea edx, [esp + 0xf8]
push ecx
push edx
push 0x40fc34
call fcn.004051d0
add esp, 0xc
test eax, eax
jne 0x404766
lea eax, [esp + 0xf8]
lea ecx, [esp + 0x38c]
push eax
push str.Didnt_Find__s_under_USB___device_isnt_connected
push ecx
call fcn.00406f8b
lea edx, [esp + 0x398]
push edx
jmp 0x404140
lea eax, [esp + 0x1c0]
push eax
call fcn.00405550
add esp, 4
test eax, eax
jne 0x404841
push str.Appears_to_be_installed
call fcn.00406080
add esp, 4
mov eax, dword [0x4135b8]
test eax, eax
je 0x40479f
push 3
push ebx
call fcn.00404b30
add esp, 8
push 1
push ebx
call fcn.00404a30
add esp, 8
mov edi, dword [esp + 0xca0]
lea ecx, [esp + 0x38c]
push edi
push str.CmdLine___s_
push ecx
call fcn.00406f8b
lea edx, [esp + 0x398]
push edx
call fcn.00406080
add esp, 0x10
lea eax, [esp + 0x890]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea ecx, [esp + 0x890]
lea edx, [esp + 0x38c]
push ecx
push str.EXE_file_name____s
push edx
call fcn.00406f8b
lea eax, [esp + 0x398]
push eax
call fcn.00406080
add esp, 0x10
lea ecx, [esp + 0x890]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
dec esi
test esi, esi
jle 0x4049d7
mov al, 0x5c
cmp byte [esp + esi + 0x890], al
je 0x404868
dec esi
test esi, esi
jg 0x40482e
jmp 0x4049d7
lea ecx, [esp + 0xf8]
lea edx, [esp + 0x38c]
push ecx
push str._s_is_present__but_not_installed
push edx
call fcn.00406f8b
lea eax, [esp + 0x398]
push eax
jmp 0x404140
test esi, esi
jle 0x4049d7
mov edx, dword [esp + 0x10]
push edx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x404896
mov eax, dword [esp + 0x10]
push 0
push 0x12c
push 0x402
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
add esi, 2
lea ecx, [esp + 0x890]
push esi
lea edx, [esp + 0x28c]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [esp + 0x288]
push str.setup.exe
push eax
call esi
lea ecx, [esp + 0x288]
push 0x40fe68
push ecx
call esi
mov eax, dword [0x4135c4]
test eax, eax
je 0x4048ec
lea edx, [esp + 0x288]
push 0x40fe64
push edx
jmp 0x404920
lea eax, [esp + 0x288]
push edi
push eax
lea ecx, [esp + 0x394]
push str.Setup_Name:__s__s
push ecx
call fcn.00406f8b
lea edx, [esp + 0x39c]
push edx
call fcn.00406080
add esp, 0x14
lea eax, [esp + 0x288]
push edi
push eax
call esi
mov eax, dword [0x4135c4]
test eax, eax
jne 0x404989
cmp ebp, 0x40b
je 0x404989
cmp ebp, 0x3ed
je 0x404989
lea ecx, [esp + 0x288]
push ecx
push str.InstallPath
call fcn.00404e30
add esp, 8
test eax, eax
jne 0x4049e4
lea edx, [esp + 0x288]
lea eax, [esp + 0x38c]
push edx
push str.InstallPath
push str.Error_writing_to_registry:__s___s
push eax
call fcn.00406f8b
lea ecx, [esp + 0x39c]
push ecx
call fcn.00406080
add esp, 0x14
jmp 0x4049e4
push ebx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x40499b
push ebx
call dword [sym.imp.USER32.dll_DestroyWindow]
lea edx, [esp + 0x288]
lea eax, [esp + 0x38c]
push edx
push str.Launching:__s
push eax
call fcn.00406f8b
lea ecx, [esp + 0x398]
push ecx
call fcn.00406080
add esp, 0x10
lea edx, [esp + 0x288]
push 5
push edx
call dword [sym.imp.KERNEL32.dll_WinExec]
jmp 0x4049e4
push str.Can_not_find_LEXM_setup_path.
call fcn.00406080
add esp, 4
mov eax, dword [0x4135c0]
test eax, eax
jne 0x4049fd
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00405c70
push ebx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x404a0f
push ebx
call dword [sym.imp.USER32.dll_DestroyWindow]
call fcn.00405160
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xc88
ret