Function at 0x447020
Capabilities:
Get common file path
Move file

Disassembly:
push ebp
mov ebp, esp
push eax
mov eax, 9
add esp, 0xfffff004
push eax
dec eax
jne 0x447029
mov eax, dword [ebp - 4]
add esp, 0xffffffa4
push ebx
push esi
push edi
mov dword [ebp - 0x734], eax
mov esi, 0x4ae7ec
mov edi, 0x4ba564
mov eax, 0x49dc3c
call fcn.0048dbf8
mov word [ebp - 0x720], 8
lea eax, [ebp - 0x51c]
call fcn.00464d88
add dword [ebp - 0x714], 6
inc dword [ebp - 0x714]
lea edx, [ebp - 0x51c]
mov word [ebp - 0x720], 0x14
mov byte [ebp - 4], 0
cmp dword [0x4bc1a8], 0
mov dword [ebp - 0x738], edx
je 0x447164
lea ecx, [ebp - 0x13ac]
lea edx, [ebp - 0xbac]
mov eax, edi
call fcn.0045d0fc
push 0xc30
push 0
lea ecx, [ebp - 0x1fdc]
push ecx
call fcn.0048d5d8
add esp, 0xc
lea eax, [ebp - 0xbac]
push eax
lea edx, [ebp - 0x1fdc]
push edx
call fcn.0048d758
add esp, 8
lea edx, [ebp - 0x13ac]
lea eax, [ebp - 0x1bdc]
call fcn.0040f920
lea eax, [ebp - 0x247c]
call fcn.00412df4
lea eax, [ebp - 0x2450]
call fcn.00412df4
lea eax, [ebp - 0x2424]
call fcn.00412df4
push 0
lea ecx, [ebp - 0x3090]
lea edx, [ebp - 0x13ac]
lea eax, [ebp - 0xbac]
call fcn.00411f0c
test al, al
je 0x447143
mov edx, dword [ebp - 0x2490]
mov dword [ebp - 0x13dc], edx
mov edx, dword [ebp - 0x248c]
mov dword [ebp - 0x13d8], edx
lea edx, [ebp - 0x1fdc]
mov eax, dword [ebp - 0x738]
call fcn.00464ec8
mov eax, dword [ebp - 0x738]
call fcn.0046517c
jmp 0x447291
mov word [ebp - 0x720], 0x20
lea eax, [ebp - 0x614]
call fcn.0040ee04
add dword [ebp - 0x714], 4
mov word [ebp - 0x720], 0x2c
lea edx, [ebp - 0x614]
mov dword [ebp - 0x73c], edx
cmp dword [ebp - 0x734], 0
je 0x4471ab
mov ecx, dword [ebp - 0x734]
mov dword [ebp - 0x73c], ecx
jmp 0x4471bd
lea edx, [ebp - 0x614]
mov eax, 0x4b9834
xor ecx, ecx
call fcn.00463858
push 1
push 1
push 1
push 0
mov ecx, dword [ebp - 0x738]
mov edx, 2
mov eax, dword [ebp - 0x73c]
call fcn.00468854
test al, al
jne 0x447241
sub dword [ebp - 0x714], 4
lea eax, [ebp - 0x614]
mov edx, 2
call fcn.0040ef20
dec dword [ebp - 0x714]
dec dword [ebp - 0x714]
dec dword [ebp - 0x714]
lea eax, [ebp - 0x424]
mov edx, 2
call fcn.00439274
sub dword [ebp - 0x714], 4
lea eax, [ebp - 0x51c]
mov edx, 2
call fcn.0040ef20
mov ecx, dword [ebp - 0x730]
mov dword fs:[0], ecx
jmp 0x448474
xor ebx, ebx
jmp 0x447261
mov edx, ebx
mov eax, dword [ebp - 0x738]
call fcn.0046524c
mov word [ebp - 0x720], 0x2c
xor ecx, ecx
mov dword [eax + 8], ecx
inc ebx
mov eax, dword [ebp - 0x738]
mov edx, dword [eax + 0x104]
cmp edx, ebx
ja 0x447245
sub dword [ebp - 0x714], 4
lea eax, [ebp - 0x614]
mov edx, 2
call fcn.0040ef20
mov word [ebp - 0x720], 0x14
mov eax, 0x49ce23
call fcn.00465c74
mov byte [ebp - 0x73d], al
mov word [ebp - 0x720], 0x14
cmp byte [ebp - 0x73d], 0
je 0x4472c2
mov edx, str.InterfaceConvertLastProfile
mov eax, 0x49ce23
call fcn.00465be0
xor edx, edx
mov dword [ebp - 0x744], edx
lea ecx, [ebp - 0x51c]
push ecx
push 0x43c6c7
push dword [0x4b9820]
push str.CONVERTARC
push dword [0x4a6fb8]
call sub.USER32.DLL_DialogBoxParamA
test eax, eax
je 0x4483fa
mov edx, 0x49ce66
mov eax, 0x49ce23
xor ecx, ecx
call fcn.004659b8
test eax, eax
setne al
and eax, 1
mov byte [ebp - 0x745], al
push 0
mov cl, byte [ebp - 0x745]
xor edx, edx
mov eax, 8
call fcn.00475d6c
lea edx, [ebp - 0x3910]
push edx
push 0x400
call sub.KERNEL32.DLL_GetCurrentDirectoryA
mov dword [ebp - 0x750], 0
mov dword [ebp - 0x74c], 0
mov dword [ebp - 0x758], 0
mov dword [ebp - 0x754], 0
xor ecx, ecx
mov dword [0x4bcb08], 0
mov dword [0x4bcb0c], 0
mov dword [ebp - 0x75c], ecx
xor ebx, ebx
jmp 0x4473b7
mov edx, ebx
mov eax, dword [ebp - 0x738]
call fcn.0046524c
mov ecx, eax
mov word [ebp - 0x720], 0x14
test byte [ecx + 8], 8
je 0x4473b6
mov eax, dword [ecx + 0xc]
mov edx, dword [ecx + 0x10]
add dword [0x4bcb08], eax
adc dword [0x4bcb0c], edx
inc dword [ebp - 0x75c]
inc ebx
mov eax, dword [ebp - 0x738]
mov edx, dword [eax + 0x104]
cmp edx, ebx
ja 0x447380
mov eax, dword [ebp - 0x75c]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x3510]
call fcn.00443fec
lea edx, [ebp - 0x3510]
push edx
push 0x65
push dword [0x4b982c]
call sub.USER32.DLL_SetDlgItemTextA
mov dword [0x4bcb00], 0
mov dword [0x4bcb04], 0
xor ecx, ecx
mov dword [ebp - 0x760], ecx
mov dword [ebp - 0x764], 0xffffffff
jmp 0x448347
mov eax, dword [ebp - 0x744]
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x3510]
call fcn.00443fec
lea edx, [ebp - 0x3510]
push edx
push 0x66
push dword [0x4b982c]
call sub.USER32.DLL_SetDlgItemTextA
push dword [ebp - 0x74c]
push dword [ebp - 0x750]
lea eax, [ebp - 0x3510]
call fcn.00443fec
lea edx, [ebp - 0x3510]
push edx
push 0x67
push dword [0x4b982c]
call sub.USER32.DLL_SetDlgItemTextA
push dword [ebp - 0x754]
push dword [ebp - 0x758]
lea eax, [ebp - 0x3510]
call fcn.00443fec
lea edx, [ebp - 0x3510]
push edx
push 0x68
push dword [0x4b982c]
call sub.USER32.DLL_SetDlgItemTextA
cmp dword [ebp - 0x764], 0xffffffff
je 0x4474e2
lea ecx, [ebp - 0x4540]
mov edx, dword [ebp - 0x764]
mov eax, dword [ebp - 0x738]
call fcn.004650b0
lea ecx, [ebp - 0x4540]
mov eax, dword [ecx + 0xc00]
mov edx, dword [ecx + 0xc04]
add dword [0x4bcb00], eax
adc dword [0x4bcb04], edx
mov dword [ebp - 0x764], 0xffffffff
call fcn.00477b70
mov eax, dword [ebp - 0x738]
mov edx, dword [eax + 0x104]
cmp edx, dword [ebp - 0x760]
jbe 0x44835d
mov edx, dword [ebp - 0x760]
mov eax, dword [ebp - 0x738]
call fcn.0046524c
mov ebx, eax
mov word [ebp - 0x720], 0x14
test byte [ebx + 8], 8
je 0x448341
mov eax, dword [ebp - 0x760]
mov dword [ebp - 0x764], eax
push 0
push 1
mov eax, edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
call fcn.0045bbc8
dec eax
jne 0x448341
lea edx, [ebp - 0x45dc]
mov eax, edi
call fcn.0045d130
lea eax, [ebp - 0x4a7c]
call fcn.00412df4
lea eax, [ebp - 0x4a50]
call fcn.00412df4
lea eax, [ebp - 0x4a24]
call fcn.00412df4
push 0
lea ecx, [ebp - 0x5690]
mov edx, dword [ebx + 4]
mov eax, dword [ebx]
call fcn.00411f0c
test al, al
je 0x448341
cmp byte [esi + 0x1c10], 0
jne 0x4475bc
cmp dword [ebp - 0x4550], 0
je 0x4475bc
mov eax, 0x50e
call fcn.004116e0
push eax
push dword [ebx]
call fcn.00444878
add esp, 8
jmp 0x448341
lea edx, [ebp - 0x5a90]
mov eax, str.Rar_CVXXXXXX
call fcn.00467cd4
test al, al
je 0x448341
lea edx, [ebp - 0x5a90]
push edx
call fcn.0048f15c
pop ecx
cmp dword [0x4bc1ac], 1
jne 0x4475f1
mov eax, esi
call fcn.004229bc
call fcn.004524d0
lea ecx, [esi + 0x42d8]
lea edx, [esi + 0x3ed8]
mov eax, edi
call fcn.0045d0fc
mov edx, dword [edi + 0x208]
mov dword [esi + 0x2a90], edx
call fcn.00452fa4
mov dword [esi + 0x209c], 1
mov dword [esi + 0x2684], 4
mov dword [esi + 0x2688], 4
mov edx, 0x49cb51
mov eax, dword [esi + 0x4ad8]
call fcn.0040efcc
lea ecx, [esi + 0x3ed8]
mov eax, 0x20a
push ecx
call fcn.004116e0
push eax
lea edx, [ebp - 0x3510]
push edx
call fcn.00490628
add esp, 0xc
lea eax, [ebp - 0x3510]
call fcn.00477974
call fcn.0044a3d0
mov dword [ebp - 0x768], eax
mov eax, edi
xor ecx, ecx
xor edx, edx
call fcn.00458638
cmp dword [0x4bc1b8], 0
jne 0x44831a
call fcn.0044a3d0
cmp eax, dword [ebp - 0x768]
jne 0x44831a
call fcn.00452c84
mov eax, dword [esi + 0x20e4]
mov dword [ebp - 0x76c], eax
mov byte [esi + 0x21b6], 0
cmp byte [esi + 0x1410], 0
jne 0x447748
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x770], edx
mov dword [ebp - 0x774], ecx
lea ecx, [ebp - 0x774]
lea edx, [ebp - 0x770]
mov eax, edi
call fcn.0045d50c
cmp dword [ebp - 0x774], 0
jle 0x44773c
lea edx, [esi + 0x1410]
mov eax, 0x49ce7e
call fcn.00467c54
mov dword [ebp - 0x778], eax
cmp dword [ebp - 0x778], 0
je 0x44773c
push dword [ebp - 0x778]
push dword [ebp - 0x774]
push 1
push dword [ebp - 0x770]
call fcn.0048fb18
add esp, 0x10
push dword [ebp - 0x778]
call fcn.0048f204
pop ecx
push dword [ebp - 0x770]
call fcn.0048bd5c
pop ecx
lea edx, [ebp - 0x5e90]
mov eax, dword [ebx]
call fcn.0040baa8
lea ecx, [ebp - 0x40c]
push ecx
lea eax, [ebp - 0x6290]
push eax
call fcn.0048d758
add esp, 8
cmp byte [ebp - 0x6290], 0
je 0x44777f
lea eax, [ebp - 0x6290]
call fcn.0040ba60
mov eax, dword [ebx]
call fcn.0040c9f4
mov byte [ebp - 0x779], al
cmp dword [esi + 0x2a90], 0
jne 0x44779c
mov edx, 0x49cb09
jmp 0x4477a1
mov edx, 0x49cb19
mov dword [ebp - 0x780], edx
cmp dword [esi + 0x2a90], 0
jne 0x4477b7
mov eax, 0x49cb10
jmp 0x4477bc
mov eax, 0x49cb20
mov dword [ebp - 0x784], eax
cmp byte [esi + 0x410], 0
je 0x4477df
mov dword [ebp - 0x780], 0x49cd21
mov dword [ebp - 0x784], 0x49ce8c
mov edx, dword [ebp - 0x780]
mov eax, dword [ebx]
call fcn.0040b9a4
test al, al
je 0x44780e
cmp byte [ebp - 0x6290], 0
je 0x447812
lea edx, [ebp - 0x5e90]
lea eax, [ebp - 0x6290]
call fcn.0040e61c
test eax, eax
je 0x447812
xor edx, edx
jmp 0x447817
mov edx, 1
mov byte [ebp - 0x785], dl
cmp byte [ebp - 0x785], 0
je 0x447996
lea ecx, [ebp - 0x5a90]
push ecx
lea eax, [esi + 0x3ed8]
push eax
call fcn.0048d758
add esp, 8
lea eax, [esi + 0x3ed8]
call fcn.0040ba60
mov eax, dword [ebx + 4]
test eax, eax
je 0x447885
cmp word [eax], 0
je 0x447885
lea edx, [esi + 0x42d8]
lea eax, [esi + 0x3ed8]
mov ecx, 0x10000000
call fcn.0040f890
mov eax, dword [ebx + 4]
call fcn.0040b604
mov edx, eax
lea eax, [esi + 0x42d8]
call fcn.0040f954
jmp 0x44788e
mov word [esi + 0x42d8], 0
mov eax, dword [ebx]
call fcn.0040b578
push eax
lea edx, [esi + 0x3ed8]
push edx
call fcn.0048d67c
add esp, 8
lea eax, [esi + 0x3ed8]
call fcn.0040b948
mov dword [ebp - 0x78c], eax
cmp dword [ebp - 0x78c], 0
je 0x447b20
mov edx, dword [ebp - 0x78c]
mov byte [edx], 0
lea eax, [esi + 0x3ed8]
call fcn.0040b948
mov dword [ebp - 0x790], eax
mov edx, dword [ebp - 0x78c]
mov byte [edx], 0x2e
cmp dword [ebp - 0x790], 0
je 0x447b20
cmp byte [ebp - 0x779], 0
je 0x447b20
cmp dword [ebp - 0x45cc], 0
jne 0x447b20
cmp dword [ebp - 0x4568], 0
je 0x447b20
push dword [ebp - 0x78c]
push dword [ebp - 0x790]
call fcn.0048d758
add esp, 8
lea eax, [esi + 0x42d8]
call fcn.0040b980
mov dword [ebp - 0x794], eax
cmp dword [ebp - 0x794], 0
je 0x447b20
mov edx, dword [ebp - 0x794]
mov word [edx], 0
lea eax, [esi + 0x42d8]
call fcn.0040b980
mov dword [ebp - 0x798], eax
mov edx, dword [ebp - 0x794]
mov word [edx], 0x2e
cmp dword [ebp - 0x798], 0
je 0x447b20
mov edx, dword [ebp - 0x794]
mov eax, dword [ebp - 0x798]
call fcn.0040f920
jmp 0x447b20
cmp byte [ebp - 0x6290], 0
je 0x4479ce
lea ecx, [ebp - 0x6290]
push ecx
lea eax, [esi + 0x3ed8]
push eax
call fcn.0048d758
add esp, 8
mov eax, dword [ebx]
call fcn.0040b578
push eax
lea edx, [esi + 0x3ed8]
push edx
call fcn.0048d67c
add esp, 8
jmp 0x4479df
push dword [ebx]
lea ecx, [esi + 0x3ed8]
push ecx
call fcn.0048d758
add esp, 8
lea eax, [esi + 0x3ed8]
call fcn.0040b948
mov dword [ebp - 0x79c], eax
cmp dword [ebp - 0x79c], 0
je 0x447a6a
mov edx, dword [ebp - 0x79c]
mov byte [edx], 0
lea eax, [esi + 0x3ed8]
call fcn.0040b948
test eax, eax
je 0x447a61
mov edx, 0x49ce94
call fcn.0040e61c
test eax, eax
je 0x447a3a
cmp byte [ebp - 0x779], 0
je 0x447a61
cmp dword [ebp - 0x45cc], 0
jne 0x447a61
cmp dword [ebp - 0x4568], 0
je 0x447a61
lea eax, [esi + 0x42d8]
call fcn.0040b980
mov dword [ebp - 0x7a0], eax
cmp dword [ebp - 0x7a0], 0
je 0x447a6a
mov edx, dword [ebp - 0x7a0]
mov word [edx], 0
jmp 0x447a6a
mov ecx, dword [ebp - 0x79c]
mov byte [ecx], 0x2e
lea eax, [esi + 0x3ed8]
mov edx, dword [ebp - 0x780]
call fcn.0040b88c
cmp dword [ebx + 4], 0
je 0x447ae1
mov ecx, dword [ebx + 4]
cmp word [ecx], 0
je 0x447ae1
cmp byte [ebp - 0x6290], 0
je 0x447ac0
lea edx, [esi + 0x42d8]
lea eax, [ebp - 0x6290]
mov ecx, 0x10000000
call fcn.0040f890
mov eax, dword [ebx + 4]
call fcn.0040b604
mov edx, eax
lea eax, [esi + 0x42d8]
call fcn.0040f954
jmp 0x447ace
lea eax, [esi + 0x42d8]
mov edx, dword [ebx + 4]
call fcn.0040f920
lea eax, [esi + 0x42d8]
mov edx, dword [ebp - 0x784]
call fcn.0040b8d4
jmp 0x447aea
mov word [esi + 0x42d8], 0
lea edx, [esi + 0x42d8]
lea eax, [esi + 0x3ed8]
call fcn.0040a0c8
test al, al
je 0x447b20
mov eax, 0x50d
call fcn.004116e0
push eax
lea edx, [esi + 0x3ed8]
push edx
call fcn.00444878
add esp, 8
mov byte [ebp - 0x785], 1
call fcn.0044a3d0
cmp eax, dword [ebp - 0x768]
jne 0x447ba6
lea ecx, [ebp - 0x5a90]
push ecx
call fcn.0048f15c
pop ecx
mov edx, 0x49cb51
mov dword [esi + 0x20c4], 2
mov dword [esi + 0x20c0], 1
mov byte [esi + 0x20fc], 0
mov byte [esi + 0x20fe], 0
mov eax, dword [esi + 0x4ad8]
call fcn.0040efcc
lea eax, [esi + 0x3ed8]
call fcn.0040b578
push eax
mov eax, 0x208
call fcn.004116e0
push eax
lea edx, [ebp - 0x3510]
push edx
call fcn.00490628
add esp, 0xc
lea eax, [ebp - 0x3510]
call fcn.00477974
mov eax, edi
xor edx, edx
call fcn.00458a8c
cmp byte [esi + 0x1410], 0
je 0x447bcb
lea eax, [esi + 0x1410]
call fcn.00467ef4
test al, al
je 0x447bcb
lea edx, [esi + 0x1410]
push edx
call fcn.0049038c
pop ecx
mov byte [ebp - 0x7a1], 0
cmp dword [0x4bc1b8], 0
jne 0x4482fb
call fcn.0044a3d0
cmp eax, dword [ebp - 0x768]
jne 0x4482fb
push 0
push 1
lea ecx, [esi + 0x42d8]
lea edx, [esi + 0x3ed8]
mov eax, edi
call fcn.0045bbc8
dec eax
jne 0x4482fb
lea edx, [ebp - 0x632c]
mov eax, edi
call fcn.0045d130
mov eax, dword [ebp - 0x457c]
mov edx, dword [ebp - 0x4578]
cmp edx, dword [ebp - 0x62c8]
jne 0x447c35
cmp eax, dword [ebp - 0x62cc]
je 0x447c80
cmp dword [ebp - 0x4578], 0
jne 0x447c47
cmp dword [ebp - 0x457c], 0
je 0x447c80
mov edx, 0x49ce99
lea eax, [ebp - 0x45dc]
call fcn.0040e61c
test eax, eax
jne 0x447c66
cmp dword [ebp - 0x4568], 0
jne 0x447c80
mov eax, 0x50a
call fcn.004116e0
push eax
push dword [ebx]
call fcn.00444878
add esp, 8
jmp 0x4482fb
cmp dword [ebp - 8], 0
je 0x447cfd
mov eax, dword [ebp - 8]
cdq
push edx
push eax
mov eax, dword [ebp - 0x4574]
mov edx, dword [ebp - 0x4570]
call fcn.00491bd0
push edx
push eax
push 0
push 0x64
mov eax, dword [ebp - 0x62c4]
mov edx, dword [ebp - 0x62c0]
call fcn.00491bd0
cmp edx, dword [esp + 4]
jne 0x447cc3
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x447cfd
jmp 0x447cc7
pop edx
pop eax
jle 0x447cfd
lea eax, [esi + 0x3ed8]
call fcn.0040b578
push eax
mov eax, 0x50f
call fcn.004116e0
push eax
lea edx, [ebp - 0x3510]
push edx
call fcn.00490628
add esp, 0xc
lea eax, [ebp - 0x3510]
call fcn.00477974
jmp 0x4482fb
lea edx, [esi + 0x1c10]
push edx
lea ecx, [ebp - 0x63ac]
push ecx
call fcn.0048d758
add esp, 8
call fcn.004524d0
lea eax, [ebp - 0x63ac]
push eax
lea edx, [esi + 0x1c10]
push edx
call fcn.0048d758
add esp, 8
lea ecx, [esi + 0x42d8]
lea edx, [esi + 0x3ed8]
mov eax, edi
call fcn.0045d0fc
mov ecx, dword [edi + 0x208]
xor eax, eax
mov dword [esi + 0x2a90], ecx
xor edx, edx
mov byte [esi + 0x21b6], 1
mov dword [esi + 0x215c], eax
mov dword [esi + 0x2188], edx
mov edx, 0x49cb51
mov eax, dword [esi + 0x4ad8]
call fcn.0040efcc
lea eax, [esi + 0x3ed8]
call fcn.0040b578
push eax
mov eax, 0x20b
call fcn.004116e0
push eax
lea edx, [ebp - 0x3510]
push edx
call fcn.00490628
add esp, 0xc
lea eax, [ebp - 0x3510]
call fcn.00477974
mov eax, edi
xor ecx, ecx
xor edx, edx
call fcn.00458638
cmp dword [0x4bc1b8], 0
jne 0x4482fb
call fcn.0044a3d0
cmp eax, dword [ebp - 0x768]
jne 0x4482fb
cmp dword [ebp - 0x62c8], 0
jne 0x447e06
cmp dword [ebp - 0x62cc], 0
jne 0x447e06
cmp dword [ebp - 0x4a8c], 0
jne 0x447df7
cmp dword [ebp - 0x4a90], 0x200
jb 0x447e06
jmp 0x447df9
jl 0x447e06
cmp dword [ebp - 0x4584], 1
jbe 0x4482fb
cmp dword [ebp - 8], 0
je 0x447e54
mov eax, dword [ebp - 8]
cdq
push edx
push eax
mov eax, dword [ebp - 0x4574]
mov edx, dword [ebp - 0x4570]
call fcn.00491bd0
push edx
push eax
push 0
push 0x64
mov eax, dword [ebp - 0x62c4]
mov edx, dword [ebp - 0x62c0]
call fcn.00491bd0
cmp edx, dword [esp + 4]
jne 0x447e4c
cmp eax, dword [esp]
pop edx
pop eax
jbe 0x447e54
jmp 0x4482fb
pop edx
pop eax
jg 0x4482fb
mov byte [ebp - 0x7a1], 1
lea eax, [esi + 0x3ed8]
call fcn.0040b578
push eax
mov eax, 0x25a
call fcn.004116e0
push eax
lea edx, [ebp - 0x3510]
push edx
call fcn.00490628
add esp, 0xc
lea eax, [ebp - 0x3510]
call fcn.00477974
inc dword [ebp - 0x744]
mov eax, dword [ebp - 0x4a90]
mov edx, dword [ebp - 0x4a8c]
add dword [ebp - 0x750], eax
adc dword [ebp - 0x74c], edx
lea eax, [ebp - 0x684c]
call fcn.00412df4
lea eax, [ebp - 0x6820]
call fcn.00412df4
lea eax, [ebp - 0x67f4]
call fcn.00412df4
push 0
lea ecx, [ebp - 0x7460]
lea edx, [esi + 0x42d8]
lea eax, [esi + 0x3ed8]
call fcn.00411f0c
test al, al
je 0x447f00
mov eax, dword [ebp - 0x6860]
mov edx, dword [ebp - 0x685c]
add dword [ebp - 0x758], eax
adc dword [ebp - 0x754], edx
cmp byte [ebp - 0x785], 0
je 0x4481a0
push 1
push 0
mov eax, edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
call fcn.0045bbc8
dec eax
jne 0x4482fb
mov word [ebp - 0x720], 0x38
lea eax, [ebp - 0x70c]
call fcn.0040ee04
add dword [ebp - 0x714], 4
mov word [ebp - 0x720], 0x44
push dword [ebx]
lea edx, [ebp - 0x7860]
push edx
call fcn.0048d758
add esp, 8
mov byte [ebp - 0x7a2], 0
lea ecx, [ebp - 0x7860]
lea eax, [ebp - 0x7c60]
push ecx
push str._s._cvtbackup_
push eax
call fcn.00490628
add esp, 0xc
lea edx, [ebp - 0x7c60]
push edx
lea ecx, [ebp - 0x7860]
push ecx
call sub.KERNEL32.DLL_MoveFileA
test eax, eax
jne 0x447f9b
mov byte [ebp - 0x7a2], 1
jmp 0x447fdf
lea edx, [ebp - 0x7860]
lea eax, [ebp - 0x70c]
call fcn.0040efcc
lea edx, [ebp - 0x7c60]
lea eax, [ebp - 0x70c]
call fcn.0040efcc
lea edx, [ebp - 0x7860]
mov eax, edi
call fcn.0045d5e0
test al, al
je 0x447fdf
lea eax, [ebp - 0x7860]
xor edx, edx
call fcn.0040a0c8
test al, al
jne 0x447f60
cmp byte [ebp - 0x7a2], 0
jne 0x448147
push 1
push 0
lea ecx, [esi + 0x42d8]
lea edx, [esi + 0x3ed8]
mov eax, edi
call fcn.0045bbc8
dec eax
jne 0x448147
lea ecx, [esi + 0x3ed8]
push ecx
lea eax, [ebp - 0x7860]
push eax
call fcn.0048d758
add esp, 8
push dword [ebx]
lea edx, [ebp - 0x8060]
push edx
call fcn.0048d758
add esp, 8
lea eax, [ebp - 0x7860]
call fcn.0040b578
push eax
lea eax, [ebp - 0x8060]
call fcn.0040b578
push eax
call fcn.0048d758
add esp, 8
lea edx, [ebp - 0x8060]
push edx
lea ecx, [ebp - 0x7860]
push ecx
call sub.KERNEL32.DLL_MoveFileA
test eax, eax
jne 0x448074
mov byte [ebp - 0x7a2], 1
jmp 0x448147
cmp dword [ebp - 0x76c], 0
je 0x448086
cmp dword [ebp - 0x76c], 1
jne 0x4480da
push 0
push 0
push 3
push 0
push 0
push 0x40000000
lea eax, [ebp - 0x8060]
push eax
call sub.KERNEL32.DLL_CreateFileA
mov dword [ebp - 0x7a8], eax
mov word [ebp - 0x720], 0x44
cmp dword [ebp - 0x7a8], 0xffffffff
je 0x4480da
lea edx, [ebp - 0x45e8]
push edx
push 0
push 0
push dword [ebp - 0x7a8]
call sub.KERNEL32.DLL_SetFileTime
push dword [ebp - 0x7a8]
call sub.KERNEL32.DLL_CloseHandle
lea edx, [ebp - 0x7860]
mov eax, edi
call fcn.0045d5e0
test al, al
je 0x448147
lea eax, [ebp - 0x7860]
xor edx, edx
call fcn.0040a0c8
test al, al
jne 0x448020
jmp 0x448147
cmp byte [ebp - 0x7a2], 0
je 0x44812d
lea ecx, [ebp - 0x8860]
push ecx
call fcn.0049038c
pop ecx
lea eax, [ebp - 0x8860]
push eax
lea edx, [ebp - 0x8460]
push edx
call sub.KERNEL32.DLL_MoveFileA
jmp 0x448147
lea eax, [ebp - 0x8460]
xor edx, edx
call fcn.0040a4f4
lea ecx, [ebp - 0x8460]
push ecx
call fcn.0049038c
pop ecx
lea edx, [ebp - 0x8860]
lea eax, [ebp - 0x70c]
mov ecx, 0x400
call fcn.0040f050
test al, al
je 0x44817b
lea edx, [ebp - 0x8460]
lea eax, [ebp - 0x70c]
mov ecx, 0x400
call fcn.0040f050
test al, al
jne 0x448102
sub dword [ebp - 0x714], 4
lea eax, [ebp - 0x70c]
mov edx, 2
call fcn.0040ef20
mov word [ebp - 0x720], 0x14
jmp 0x4482fb
cmp byte [ebp - 0xc], 0
je 0x44823b
push 1
push 0
mov eax, edi
mov ecx, dword [ebx + 4]
mov edx, dword [ebx]
call fcn.0045bbc8
dec eax
jne 0x44823b
push dword [ebx]
lea eax, [ebp - 0x8c60]
push eax
call fcn.0048d758
add esp, 8
lea eax, [ebp - 0x8c60]
call fcn.0040b578
push eax
mov eax, 0x258
call fcn.004116e0
push eax
lea edx, [ebp - 0x3510]
push edx
call fcn.00490628
add esp, 0xc
lea eax, [ebp - 0x3510]
call fcn.00477974
lea eax, [ebp - 0x8c60]
xor edx, edx
call fcn.0040a4f4
lea ecx, [ebp - 0x8c60]
push ecx
call fcn.0049038c
pop ecx
lea edx, [ebp - 0x8c60]
mov eax, edi
call fcn.0045d5e0
test al, al
je 0x44823b
lea eax, [ebp - 0x8c60]
xor edx, edx
call fcn.0040a0c8
test al, al
jne 0x4481ce
push 1
push 0
lea ecx, [esi + 0x42d8]
lea edx, [esi + 0x3ed8]
mov eax, edi
call fcn.0045bbc8
dec eax
jne 0x4482fb
lea ecx, [esi + 0x3ed8]
push ecx
lea eax, [ebp - 0x9060]
push eax
call fcn.0048d758
add esp, 8
cmp dword [ebp - 0x76c], 0
je 0x448281
cmp dword [ebp - 0x76c], 1
jne 0x4482d5
push 0
push 0
push 3
push 0
push 0
push 0x40000000
lea edx, [ebp - 0x9060]
push edx
call sub.KERNEL32.DLL_CreateFileA
mov dword [ebp - 0x7ac], eax
mov word [ebp - 0x720], 0x14
cmp dword [ebp - 0x7ac], 0xffffffff
je 0x4482d5
lea ecx, [ebp - 0x45e8]
push ecx
push 0
push 0
push dword [ebp - 0x7ac]
call sub.KERNEL32.DLL_SetFileTime
push dword [ebp - 0x7ac]
call sub.KERNEL32.DLL_CloseHandle
lea edx, [ebp - 0x9060]
mov eax, edi
call fcn.0045d5e0
test al, al
je 0x4482fb
lea eax, [ebp - 0x9060]
xor edx, edx
call fcn.0040a0c8
test al, al
jne 0x44826f
cmp byte [ebp - 0x7a1], 0
jne 0x44831a
cmp byte [ebp - 0x785], 0
jne 0x44831a
lea ecx, [esi + 0x3ed8]
push ecx
call fcn.0049038c
pop ecx
lea eax, [ebp - 0x3910]
push eax
call fcn.0048f15c
pop ecx
lea eax, [ebp - 0x5a90]
call fcn.00467ef4
test al, al
je 0x448341
lea eax, [ebp - 0x5a90]
call fcn.00467754
inc dword [ebp - 0x760]
cmp dword [0x4bc1b4], 0
jne 0x44835d
cmp dword [0x4bc1b8], 0
je 0x44741b
cmp dword [0x4bc1b8], 0
jne 0x44836f
cmp dword [0x4bc1b4], 0
je 0x448376
mov eax, 0x271
jmp 0x44837b
mov eax, 0x4d0
call fcn.004116e0
call fcn.00477974
cmp dword [0x4bc1b4], 0
je 0x44839b
push dword [0x4b982c]
call sub.USER32.DLL_DestroyWindow
jmp 0x4483a0
call fcn.00477a0c
cmp dword [0x4bc1a8], 0
je 0x4483d1
push 0
push 0
lea ecx, [ebp - 0x13ac]
lea edx, [ebp - 0xbac]
mov eax, edi
call fcn.0045bbc8
dec eax
je 0x4483d1
mov eax, 0x4b9834
call fcn.004639fc
test al, al
jne 0x4483e3
cmp dword [0x4bc1a8], 0
jne 0x4483fa
cmp dword [ebp - 0x744], 0
jbe 0x4483fa
lea eax, [esi + 0x3ed8]
call fcn.0040b578
mov edx, eax
mov eax, 0x4b9834
call fcn.0045e1dc
cmp byte [ebp - 0x73d], 0
jne 0x448409
cmp byte [ebp - 4], 0
je 0x448424
mov edx, 0x49ce23
mov eax, str.InterfaceConvertLastProfile
call fcn.00465be0
mov eax, str.InterfaceConvertLastProfile
call fcn.00465c34
jmp 0x44842e
mov eax, 0x49ce23
call fcn.00465c34
dec dword [ebp - 0x714]
dec dword [ebp - 0x714]
dec dword [ebp - 0x714]
lea eax, [ebp - 0x424]
mov edx, 2
call fcn.00439274
sub dword [ebp - 0x714], 4
lea eax, [ebp - 0x51c]
mov edx, 2
call fcn.0040ef20
mov ecx, dword [ebp - 0x730]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret