Function at 0x4052a0
Capabilities:
Check mutex on windows
Set current directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5470e7
mov eax, dword fs:[0]
push eax
sub esp, 0x14c
mov eax, dword [0x59bad0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 0x138], 8
mov dword [ebp - 0x134], 0xff
lea eax, [ebp - 0x138]
push eax
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
mov ecx, esi
call fcn.00428f3b
xor edi, edi
push edi
call fcn.00429263
test eax, eax
jne 0x405316
push 0xffffffffffffffff
push edi
push 0x66
call fcn.00429645
jmp 0x40557b
lea ecx, [ebp - 0x140]
call fcn.0041ce9a
mov dword [ebp - 4], edi
mov byte [ebp - 4], 1
push 0x54
call fcn.0041c286
add esp, 4
mov dword [ebp - 0x11c], eax
mov ebx, 2
mov byte [ebp - 4], bl
cmp eax, edi
je 0x40534c
push eax
call fcn.00412060
jmp 0x40534e
xor eax, eax
mov byte [ebp - 4], 1
mov dword [0x5a3b08], eax
cmp byte [eax + 0x2a], 1
jne 0x4053a1
mov dword [ebp - 0x150], str.BrotherWirelessSetupService
mov dword [ebp - 0x14c], 0x403010
mov dword [ebp - 0x148], edi
mov dword [ebp - 0x144], edi
lea ecx, [ebp - 0x150]
push ecx
call dword [sym.imp.ADVAPI32.dll_StartServiceCtrlDispatcherA]
test eax, eax
jne 0x40556f
mov edi, str.StartServiceCtrlDispatcher_failed.
call fcn.00403240
jmp 0x40556f
cmp byte [eax + 0x28], 1
jne 0x4053b1
call fcn.004032f0
jmp 0x40556f
cmp byte [eax + 0x29], 1
jne 0x4053c1
call fcn.00403430
jmp 0x40556f
push 8
call fcn.0041c286
add esp, 4
mov dword [ebp - 0x11c], eax
mov byte [ebp - 4], 3
cmp eax, edi
je 0x4053e2
mov esi, eax
call fcn.00402e50
jmp 0x4053e4
xor eax, eax
mov byte [ebp - 4], 1
mov dword [0x5a3b14], eax
cmp eax, edi
je 0x405460
mov esi, 0x5730b4
mov edx, eax
call fcn.00402f20
test eax, eax
jne 0x40541b
mov ecx, dword [0x5a3b14]
cmp ecx, edi
je 0x405413
mov edx, dword [ecx]
push 1
mov eax, dword [edx]
call eax
mov dword [0x5a3b14], edi
jmp 0x405460
mov eax, dword [0x5a3b14]
cmp eax, edi
je 0x405460
push str.WAW:
push str._s______________Log_Start______________n
push 0x40000
call fcn.00402f40
add esp, 0xc
mov eax, dword [0x5a3b14]
cmp eax, edi
je 0x405460
push str.1.01.0004
push str.WAW:
push str._s_Wizard_Version:__s_n
push 0x40000
call fcn.00402f40
add esp, 0x10
cmp dword [0x5a2bbc], ebx
jl 0x4054ec
lea ecx, [ebp - 0x120]
call fcn.00404380
mov byte [ebp - 4], 4
mov esi, 1
mov dword [ebp - 0x12c], esi
cmp esi, dword [0x5a2bbc]
jge 0x4054b6
mov ecx, dword [0x5a2bc0]
mov edx, dword [ecx + esi*4]
push edx
lea ecx, [ebp - 0x120]
call fcn.00406080
push 0x5730e4
lea ecx, [ebp - 0x120]
call fcn.00406080
inc esi
jmp 0x405480
mov eax, dword [0x5a3b14]
cmp eax, edi
je 0x4054dd
mov ecx, dword [ebp - 0x120]
push ecx
push str.WAW:
push str._s_Option:__s_n
push 0x40000
call fcn.00402f40
add esp, 0x10
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x120]
call fcn.004043f0
push str.wawizrd
push 1
push edi
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [0x5a3ae4], eax
cmp eax, edi
je 0x405a26
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x405a26
call fcn.004155a0
test eax, eax
jne 0x405599
mov edx, dword [0x5a3b08]
cmp byte [edx + 0x20], al
je 0x40554f
call fcn.004079e0
cmp eax, edi
jne 0x405539
xor eax, eax
jmp 0x40553c
mov eax, dword [eax + 0x20]
push 0x30
push str.WLAN_Assistant_Wizard
push str.Windows_version_is_not_supported
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, dword [0x5a3b14]
cmp eax, edi
je 0x40556f
push str.WAW:
push str._s_Windows_version:_Not_supported._n
push 0x20000
call fcn.00402f40
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
call fcn.0041ceb2
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0051c462
mov esp, ebp
pop ebp
ret
push 0x104
lea eax, [ebp - 0x118]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
jne 0x4055f8
mov eax, dword [0x5a3b14]
cmp eax, edi
je 0x4055d0
push str.WAW:
push str._s_Cant_get_File_Name_n
push 0x20000
call fcn.00402f40
add esp, 0xc
call fcn.004079e0
cmp eax, edi
jne 0x4055dd
xor eax, eax
jmp 0x4055e0
mov eax, dword [eax + 0x20]
push 0x30
push str.WLAN_Assistant_Wizard
push str.Cant_get_File_Name
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40556f
lea eax, [ebp - 0x118]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x405601
sub eax, edx
mov dword [ebp - 0x130], eax
cmp eax, edi
jle 0x405623
lea ecx, [ebp + eax - 0x119]
cmp byte [ecx], 0x5c
jne 0x405661
mov byte [ecx], 0
lea ecx, [ebp - 0x118]
push ecx
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
test eax, eax
jne 0x40567f
mov eax, dword [0x5a3b14]
cmp eax, edi
je 0x405654
push str.WAW:
push str._s_Cant_change_Current_Directory_n
push 0x20000
call fcn.00402f40
add esp, 0xc
call fcn.004079e0
cmp eax, edi
jne 0x405664
xor eax, eax
jmp 0x405667
dec eax
jmp 0x40560a
mov eax, dword [eax + 0x20]
push 0x30
push str.WLAN_Assistant_Wizard
push str.Cant_change_Current_Directory
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40556f
push 0x74
call fcn.0041c286
add esp, 4
mov dword [ebp - 0x11c], eax
mov byte [ebp - 4], 5
cmp eax, edi
je 0x4056a1
push eax
call fcn.0040f9d0
mov esi, eax
jmp 0x4056a3
xor esi, esi
mov byte [ebp - 4], 1
mov dword [0x5a3b18], esi
call fcn.00411ed0
test al, al
je 0x4056bf
mov edx, dword [esi + 0x54]
call edx
test eax, eax
jne 0x4056e7
call fcn.004079e0
cmp eax, edi
jne 0x4056cc
xor eax, eax
jmp 0x4056cf
mov eax, dword [eax + 0x20]
push 0x30
push str.WLAN_Assistant_Wizard
push str.Cant_Load_SNMP_dll
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40556f
push 0xa0
call fcn.0041c286
add esp, 4
mov dword [ebp - 0x11c], eax
mov byte [ebp - 4], 6
cmp eax, edi
je 0x40570a
push eax
call fcn.0040db10
jmp 0x40570c
xor eax, eax
mov byte [ebp - 4], 1
mov dword [0x5a3b00], eax
push str..WAW.INI
lea ecx, [ebp - 0x124]
call fcn.00407920
mov byte [ebp - 4], 7
push 0x572c7a
mov eax, dword [0x5a3b08]
add eax, 8
push eax
call fcn.00406330
add esp, 8
test al, al
je 0x4057a5
mov ecx, dword [0x5a3b08]
add ecx, 8
push ecx
push 0x57320c
lea edx, [ebp - 0x11c]
push edx
call fcn.00406260
mov byte [ebp - 4], 8
push str.WAW.INI
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.00406180
add esp, 0x18
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0x124]
call fcn.004047a0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x120]
call fcn.004043f0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x11c]
call fcn.004043f0
mov dword [ebp - 0x128], edi
push 0x573210
mov ecx, dword [ebp - 0x124]
push ecx
lea edx, [ebp - 0x128]
push edx
call fcn.0051d2b0
add esp, 0xc
mov eax, dword [ebp - 0x128]
cmp eax, edi
jne 0x40581c
mov eax, dword [0x5a3b14]
cmp eax, edi
je 0x4057f0
push str.WAW:
push str._s_INI_File_ERROR_n
push 0x20000
call fcn.00402f40
add esp, 0xc
push 0x30
push str.WLAN_Assistant_Wizard
push str.INI_File_ERROR
call fcn.004079e0
mov ecx, eax
call fcn.004233c5
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x124]
call fcn.004043f0
jmp 0x40556f
push eax
call fcn.0051d364
push 0x54
call fcn.0041c286
add esp, 8
mov dword [ebp - 0x11c], eax
mov ebx, 0xa
mov byte [ebp - 4], bl
cmp eax, edi
je 0x405847
mov ecx, eax
call fcn.004129d0
jmp 0x405849
xor eax, eax
mov byte [ebp - 4], 7
mov dword [0x5a3af8], eax
push 0x1c
call fcn.0041c286
add esp, 4
mov dword [ebp - 0x11c], eax
mov cl, 0xb
mov byte [ebp - 4], cl
cmp eax, edi
je 0x405890
mov dword [eax], vtable.CMap_class_ATL::CStringT_char__class_StrTraitMFC_char__class_ATL::ChTraitsCRT_char_____char_const___class_ATL::CStringT_char__class_StrTraitMFC_char__class_ATL::ChTraitsCRT_char_____char_const__.0
mov dword [eax + 4], edi
mov dword [eax + 8], 0x11
mov dword [eax + 0xc], edi
mov dword [eax + 0x10], edi
mov dword [eax + 0x14], edi
mov dword [eax + 0x18], ebx
mov byte [ebp - 4], 0xc
mov byte [ebp - 4], cl
jmp 0x405892
xor eax, eax
mov byte [ebp - 4], 7
mov dword [0x5a3afc], eax
mov eax, dword [0x5a3af8]
add eax, 0xc
push eax
mov ecx, dword [0x5a3b08]
add ecx, 8
push ecx
lea edx, [ebp - 0x11c]
push edx
call fcn.004060c0
mov bl, 0xd
mov byte [ebp - 4], bl
add esp, 8
mov ecx, esp
mov dword [ebp - 0x120], esp
push str..txt
push eax
push ecx
call fcn.00406180
add esp, 0xc
mov byte [ebp - 4], 0xe
mov byte [ebp - 4], bl
call fcn.0040e9f0
cmp eax, edi
sete bl
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x11c]
call fcn.004043f0
test bl, bl
jne 0x405808
push 0x1c
call fcn.0041c286
add esp, 4
mov dword [ebp - 0x11c], eax
mov byte [ebp - 4], 0xf
cmp eax, edi
je 0x405921
push eax
call fcn.0040f4f0
jmp 0x405923
xor eax, eax
mov byte [ebp - 4], 7
mov dword [0x5a3b1c], eax
push 1
call fcn.0041c286
mov dword [ebp - 0x11c], eax
mov byte [ebp - 4], 0x10
mov byte [ebp - 4], 7
mov dword [0x5a3b0c], eax
push 4
call fcn.0041c286
add esp, 8
mov dword [ebp - 0x11c], eax
mov byte [ebp - 4], 0x11
cmp eax, edi
je 0x405962
mov dword [eax], edi
jmp 0x405964
xor eax, eax
mov byte [ebp - 4], 7
mov dword [0x5a3b04], eax
push 0x3c
call fcn.0041c286
add esp, 4
mov dword [ebp - 0x11c], eax
mov byte [ebp - 4], 0x12
cmp eax, edi
je 0x40598e
mov ecx, eax
call fcn.00407580
jmp 0x405990
xor eax, eax
mov byte [ebp - 4], 7
mov dword [0x5a3b10], eax
push 0xec
call fcn.0041c286
add esp, 4
mov dword [ebp - 0x11c], eax
mov byte [ebp - 4], 0x13
cmp eax, edi
je 0x4059bc
push eax
call fcn.0040c7b0
jmp 0x4059be
xor eax, eax
mov byte [ebp - 4], 7
mov dword [0x5a3b20], eax
mov edx, dword [0x5a3b08]
cmp byte [edx + 0x20], 0
jne 0x405a0d
lea esi, [ebp - 0x11c]
call fcn.00417580
mov byte [ebp - 4], 0x14
mov edi, dword [eax]
call fcn.00415040
mov byte [ebp - 4], 7
mov ecx, esi
call fcn.004043f0
call fcn.0040e190
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x124]
call fcn.004043f0
jmp 0x40556f
call fcn.0040e6d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x124]
call fcn.004043f0
jmp 0x40556f
mov eax, dword [0x5a3b14]
cmp eax, edi
je 0x40556f
push str.WAW:
push str._s_Already_exists_n
jmp 0x405562