Function at 0x46e6fb
Capabilities:
Check if file exists

Disassembly:
push 0x268
mov eax, 0x493f21
call fcn.00486a2b
mov eax, dword [ebp + 8]
mov dword [ebp - 0x230], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x22c], ecx
mov ecx, dword [ebp + 0x10]
xor ebx, ebx
mov dword [ebp - 0x234], eax
mov dword [ebp - 0x23c], ecx
mov dword [eax], ebx
call fcn.00412fea
cmp eax, 6
je 0x46eb5f
cmp eax, 0xa
je 0x46eb5f
call fcn.0046b62a
cmp eax, 0x539
je 0x46e75f
call fcn.0046b524
test eax, eax
je 0x46eb5f
call fcn.0046e599
test eax, eax
je 0x46eb5f
mov eax, dword [0x4c4f6c]
mov esi, 0x4c4f6c
mov ecx, esi
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x224], eax
mov dword [ebp - 4], ebx
mov eax, dword [0x4c4f6c]
mov ecx, esi
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x228], eax
mov byte [ebp - 4], 1
mov eax, dword [0x4c4f6c]
mov ecx, esi
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x220], eax
push 0x206
lea eax, [ebp - 0x216]
push ebx
mov byte [ebp - 4], 2
push eax
mov word [ebp - 0x218], bx
call fcn.0048635c
add esp, 0xc
lea edi, [ebp - 0x220]
call fcn.0046c221
push 0x104
lea eax, [ebp - 0x218]
push eax
call dword [0x496360]
mov dword [ebp - 0x238], ebx
call fcn.00412ffe
mov dword [ebp - 0x240], eax
cmp eax, 2
mov ecx, edi
lea eax, [ebp - 0x21c]
jne 0x46e8b1
push str.kwifinat64.sys
push eax
call fcn.00411d12
pop ecx
pop ecx
lea edi, [ebp - 0x224]
mov byte [ebp - 4], 3
call fcn.00401ce5
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x21c]
add eax, 0xfffffff0
call fcn.00401a1d
lea eax, [ebp - 0x21c]
push str.installdrv64.exe
push eax
lea ecx, [ebp - 0x220]
call fcn.00411d12
pop ecx
pop ecx
lea edi, [ebp - 0x228]
mov byte [ebp - 4], 4
call fcn.00401ce5
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x21c]
add eax, 0xfffffff0
call fcn.00401a1d
push str.driverskpackflt64.sys
lea eax, [ebp - 0x218]
push eax
call dword [0x496740]
push str.Kernel32.dll
call dword [0x49629c]
cmp eax, ebx
je 0x46e92b
push str.Wow64EnableWow64FsRedirection
push eax
call dword [0x496298]
mov dword [ebp - 0x238], eax
jmp 0x46e92b
push str.kwifinat.sys
push eax
call fcn.00411d12
pop ecx
pop ecx
lea edi, [ebp - 0x224]
mov byte [ebp - 4], 5
call fcn.00401ce5
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x21c]
add eax, 0xfffffff0
call fcn.00401a1d
lea eax, [ebp - 0x21c]
push str.installdrv.exe
push eax
lea ecx, [ebp - 0x220]
call fcn.00411d12
pop ecx
pop ecx
lea edi, [ebp - 0x228]
mov byte [ebp - 4], 6
call fcn.00401ce5
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x21c]
add eax, 0xfffffff0
call fcn.00401a1d
push str.driverskpackflt.sys
lea eax, [ebp - 0x218]
push eax
call dword [0x496740]
xor ecx, ecx
mov esi, str.kwifi_first_nat
push esi
inc ecx
call fcn.0047bd29
cmp eax, ebx
pop ecx
mov ecx, dword [ebp - 0x234]
mov dword [ecx], eax
je 0x46e94f
push ebx
push esi
call fcn.0047bbaf
pop ecx
pop ecx
call fcn.0046c316
call fcn.0046c4a8
push str.KWifiDlg::RemoveOldDrivers
mov esi, 0x4f73fc
call fcn.0043eb4e
mov edi, dword [ebp - 0x238]
cmp edi, ebx
pop ecx
je 0x46e976
push ebx
call edi
push ebx
lea eax, [ebp - 0x218]
push eax
push dword [ebp - 0x224]
call dword [0x4961bc]
cmp edi, ebx
mov dword [ebp - 0x21c], eax
je 0x46e998
push 1
call edi
push dword [ebp - 0x21c]
lea eax, [ebp - 0x218]
push eax
push dword [ebp - 0x224]
push str.KWifiDlg::CopyFile_Source:_s__Dest:_s__Result:_d
call fcn.0043eb4e
add esp, 0x10
call fcn.0046c2aa
test eax, eax
je 0x46ea00
push str.KWifiDlg::_CheckNatIsOK_Drv_Have_Loaded
call fcn.0043eb4e
xor ebx, ebx
inc ebx
mov eax, dword [ebp - 0x220]
pop ecx
add eax, 0xfffffff0
call fcn.00401a1d
mov eax, dword [ebp - 0x228]
add eax, 0xfffffff0
call fcn.00401a1d
mov eax, dword [ebp - 0x224]
add eax, 0xfffffff0
call fcn.00401a1d
mov eax, ebx
jmp 0x46eb71
push dword [ebp - 0x224]
call dword [0x49674c]
test eax, eax
jne 0x46ea1c
push str.KWifiDlg::_CheckNatIsOK_Driver_Not_Found
call fcn.0043eb4e
jmp 0x46e9ce
mov edi, dword [0x496274]
call edi
mov dword [ebp - 0x21c], eax
lea eax, [ebp - 0x274]
push eax
call fcn.0046b6b6
cmp dword [ebp - 0x240], 2
mov byte [ebp - 4], 7
push dword [ebp - 0x220]
push dword [ebp - 0x22c]
jne 0x46ea56
push str._v__l_kpackflt64.inf__c_s__i_kpackflt
jmp 0x46ea5b
push str._v__l_kpackflt.inf__c_s__i_kpackflt
push dword [ebp - 0x228]
call fcn.00412e7a
add esp, 0x10
lea eax, [ebp - 0x274]
push eax
mov byte [ebp - 4], 2
call fcn.0046b84d
call edi
sub eax, dword [ebp - 0x21c]
mov edi, dword [ebp - 0x23c]
mov dword [edi], eax
call fcn.0046c2aa
test eax, eax
je 0x46eaa7
push 0x7d0
call dword [0x4961f0]
push str.KWifiDlg::_CheckNatIsOK__Success
jmp 0x46e9c6
call fcn.0046c2d6
push ebx
test eax, eax
mov eax, dword [ebp - 0x22c]
push ebx
push dword [eax]
mov eax, dword [ebp - 0x230]
push 0x496d9c
je 0x46eae8
add eax, 0x534
push eax
call fcn.0043b191
pop ecx
pop ecx
push eax
mov eax, dword [ebp - 0x230]
movzx eax, byte [eax + 0x599]
push eax
push 0xe0010031
jmp 0x46eb09
add eax, 0x534
push eax
call fcn.0043b191
pop ecx
pop ecx
push eax
mov eax, dword [ebp - 0x230]
movzx eax, byte [eax + 0x599]
push eax
push 0xe0010030
push dword [edi]
mov eax, dword [ebp - 0x234]
push dword [eax]
call fcn.00480bbd
push str.KWifiDlg::_CheckNatIsOK__Load_Driver_Failed
call fcn.0043eb4e
mov edi, dword [ebp - 0x220]
mov esi, dword [ebp - 0x228]
pop ecx
push edi
push ebx
push str._u_kpackflt
push esi
call fcn.00412e7a
add esp, 0x10
lea eax, [edi - 0x10]
call fcn.00401a1d
lea eax, [esi - 0x10]
call fcn.00401a1d
mov eax, dword [ebp - 0x224]
add eax, 0xfffffff0
call fcn.00401a1d
jmp 0x46eb6f
push str.KWifiDlg::_CheckNatIsOK__Not_Selected
mov esi, 0x4f73fc
call fcn.0043eb4e
pop ecx
xor eax, eax
call fcn.00486aae
ret 0xc