Function at 0x458880
Capabilities:
Check if file exists
Read .ini file

Disassembly:
push ebp
mov ebp, esp
mov eax, 0xc414
call fcn.0046f060
mov eax, dword [0x4af6f0]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [ebp + 8]
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0x8414], ax
lea eax, [ebp - 0x8412]
push eax
call fcn.0046f6e0
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0x9414], ax
lea eax, [ebp - 0x9412]
push eax
call fcn.0046f6e0
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0x320c], ax
lea eax, [ebp - 0x320a]
push eax
call fcn.0046f6e0
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x20c], ax
lea eax, [ebp - 0x20a]
push eax
call fcn.0046f6e0
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x3414], ax
lea eax, [ebp - 0x3412]
push eax
call fcn.0046f6e0
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0xc414], ax
lea eax, [ebp - 0xc412]
push eax
call fcn.0046f6e0
add esp, 0x48
xor eax, eax
mov word [ebp - 0xa414], ax
push 0xffe
push eax
lea eax, [ebp - 0xa412]
push eax
call fcn.0046f6e0
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0x4414], ax
lea eax, [ebp - 0x4412]
push eax
call fcn.0046f6e0
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0x5414], ax
lea eax, [ebp - 0x5412]
push eax
call fcn.0046f6e0
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0x120c], ax
lea eax, [ebp - 0x120a]
push eax
call fcn.0046f6e0
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0x220c], ax
lea eax, [ebp - 0x220a]
push eax
call fcn.0046f6e0
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0xb414], ax
lea eax, [ebp - 0xb412]
push eax
call fcn.0046f6e0
add esp, 0x48
xor eax, eax
mov word [ebp - 0x7414], ax
push 0xffe
push eax
lea eax, [ebp - 0x7412]
push eax
call fcn.0046f6e0
xor eax, eax
push 0xffe
push eax
mov word [ebp - 0x6414], ax
lea eax, [ebp - 0x6412]
push eax
call fcn.0046f6e0
push 0x2c
push 0x800
lea eax, [ebp - 0x9414]
push eax
push 0x800
lea eax, [ebp - 0x8414]
push eax
push esi
call fcn.0043d9c0
add esp, 0x30
test eax, eax
je 0x458be1
lea eax, [ebp - 0x8414]
push str._SETUPVAR_READ_
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458d33
push 0x2c
push 0x800
lea eax, [ebp - 0x4414]
push eax
push 0x800
lea eax, [ebp - 0x5414]
push eax
lea eax, [ebp - 0x9414]
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0x5414]
push 0x800
push eax
call fcn.0045fb00
push 0x2c
push 0x800
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x4414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
lea eax, [ebp - 0x320c]
push 0x800
push eax
call fcn.0045fb00
push 0x2c
push 0x800
lea eax, [ebp - 0x120c]
push eax
lea eax, [ebp - 0x320c]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x220c]
push eax
lea eax, [ebp - 0x120c]
push 0x800
push eax
push eax
call fcn.0043d9c0
lea eax, [ebp - 0x4414]
push 0x4932fc
push eax
call fcn.0047054b
add esp, 0x20
test eax, eax
jne 0x458b7d
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x5414]
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458bb3
lea eax, [ebp - 0x120c]
push eax
push 0x4b50c0
call fcn.0046e870
add esp, 8
test eax, eax
jne 0x458be1
lea eax, [ebp - 0x120c]
jmp 0x458bd1
lea eax, [ebp - 0x4414]
push 0x493308
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458c22
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x5414]
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458b5d
lea eax, [ebp - 0x220c]
push eax
push 0x4b50c0
call fcn.0046e870
add esp, 8
test eax, eax
jne 0x458be1
lea eax, [ebp - 0x220c]
push eax
push 0x64
push 0x4b50c0
call fcn.0046e804
add esp, 0xc
lea eax, [ebp - 0x8414]
push str._INIT_
push eax
call fcn.0047054b
add esp, 8
pop esi
test eax, eax
jne 0x458c00
mov word [0x4b50c0], ax
push 0x4b50c0
push str.ScriptIF____Condition_s
call fcn.00469290
mov ecx, dword [ebp - 4]
add esp, 8
xor ecx, ebp
xor eax, eax
call fcn.0046ebfa
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x4414]
push 0x493300
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458c5d
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x5414]
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jns 0x458bb3
jmp 0x458b5d
lea eax, [ebp - 0x4414]
push 0x493304
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458c98
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x5414]
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jle 0x458bb3
jmp 0x458b5d
lea eax, [ebp - 0x4414]
push 0x4977f4
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458cd3
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x5414]
push eax
call fcn.0046e870
add esp, 8
test eax, eax
je 0x458bb3
jmp 0x458b5d
lea eax, [ebp - 0x4414]
push 0x4977f8
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458be1
lea ecx, [ebp - 0x320c]
lea edx, [ecx + 2]
jmp 0x458d00
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x458d00
sub ecx, edx
lea eax, [ebp - 0x320c]
sar ecx, 1
push ecx
push eax
lea eax, [ebp - 0x5414]
push eax
call fcn.00470122
add esp, 0xc
test eax, eax
je 0x458bb3
jmp 0x458b5d
lea eax, [ebp - 0x8414]
push str._INIFILE_READ_
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458fab
push 0x2c
push 0x800
lea eax, [ebp - 0xc414]
push eax
push 0x104
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x9414]
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0x20c]
push 0x104
push eax
call fcn.0045fb00
push 0x2c
push 0x800
lea eax, [ebp - 0xa414]
push eax
lea eax, [ebp - 0xc414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x4414]
push eax
lea eax, [ebp - 0xa414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x4414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0x320c]
push 0x800
push eax
call fcn.0045fb00
push 0x2c
push 0x800
lea eax, [ebp - 0x120c]
push eax
lea eax, [ebp - 0x320c]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x220c]
push eax
lea eax, [ebp - 0x120c]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x18
lea eax, [ebp - 0x20c]
push eax
push 0x800
lea eax, [ebp - 0x5414]
push eax
push 0x48c8a4
lea eax, [ebp - 0xa414]
push eax
lea eax, [ebp - 0xc414]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
jne 0x458eba
push 0x48c8a4
lea eax, [ebp - 0x5414]
push 0x800
push eax
call fcn.0046fd12
add esp, 0xc
lea eax, [ebp - 0x4414]
push 0x4932fc
push eax
call fcn.0047054b
add esp, 8
test eax, eax
je 0x458b43
lea eax, [ebp - 0x4414]
push 0x493308
push eax
call fcn.0047054b
add esp, 8
test eax, eax
je 0x458b99
lea eax, [ebp - 0x4414]
push 0x493300
push eax
call fcn.0047054b
add esp, 8
test eax, eax
je 0x458c3a
lea eax, [ebp - 0x4414]
push 0x493304
push eax
call fcn.0047054b
add esp, 8
test eax, eax
je 0x458c75
lea eax, [ebp - 0x4414]
push 0x4977f4
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458f5a
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x5414]
push eax
call fcn.0046e870
jmp 0x458bac
lea eax, [ebp - 0x4414]
push 0x4977f8
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458be1
lea ecx, [ebp - 0x320c]
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x458f80
sub ecx, edx
lea eax, [ebp - 0x320c]
sar ecx, 1
push ecx
push eax
lea eax, [ebp - 0x5414]
push eax
call fcn.00470122
add esp, 0xc
jmp 0x458baf
lea eax, [ebp - 0x8414]
push str._REGKEY_READ_
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x459220
push 0x2c
push 0x800
lea eax, [ebp - 0x7414]
push eax
push 0x800
lea eax, [ebp - 0xb414]
push eax
lea eax, [ebp - 0x9414]
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0xb414]
push 1
push eax
call fcn.00430b00
mov esi, eax
lea eax, [ebp - 0x7414]
push 0x800
push eax
call fcn.0045fb00
push 0x2c
push 0x800
lea eax, [ebp - 0x6414]
push eax
lea eax, [ebp - 0x7414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x28
test eax, eax
je 0x458be1
lea eax, [ebp - 0x6414]
push 0x800
push eax
call fcn.0045fb00
push 0x2c
push 0x800
lea eax, [ebp - 0x4414]
push eax
lea eax, [ebp - 0x6414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x4414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0x320c]
push 0x800
push eax
call fcn.0045fb00
push 0x800
lea eax, [ebp - 0x5414]
push eax
lea eax, [ebp - 0x6414]
push eax
lea eax, [ebp - 0x7414]
push eax
push esi
call fcn.00430ca0
add esp, 0x1c
test eax, eax
jne 0x4590fc
push 0x48c8a4
lea eax, [ebp - 0x5414]
push 0x800
push eax
call fcn.0046fd12
add esp, 0xc
push 0x2c
push 0x800
lea eax, [ebp - 0x120c]
push eax
lea eax, [ebp - 0x320c]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x220c]
push eax
lea eax, [ebp - 0x120c]
push 0x800
push eax
push eax
call fcn.0043d9c0
lea eax, [ebp - 0x4414]
push 0x4932fc
push eax
call fcn.0047054b
add esp, 0x20
test eax, eax
je 0x458b43
lea eax, [ebp - 0x4414]
push 0x493308
push eax
call fcn.0047054b
add esp, 8
test eax, eax
je 0x458b99
lea eax, [ebp - 0x4414]
push 0x493300
push eax
call fcn.0047054b
add esp, 8
test eax, eax
je 0x458c3a
lea eax, [ebp - 0x4414]
push 0x493304
push eax
call fcn.0047054b
add esp, 8
test eax, eax
je 0x458c75
lea eax, [ebp - 0x4414]
push 0x4977f4
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x4591e7
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x5414]
push eax
call fcn.0046e870
jmp 0x458bac
lea eax, [ebp - 0x4414]
push 0x4977f8
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458be1
lea ecx, [ebp - 0x320c]
lea edx, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x459210
jmp 0x458f8b
lea eax, [ebp - 0x8414]
push str._REGKEY_EXIST_
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x4593b1
push 0x2c
push 0x800
lea eax, [ebp - 0x7414]
push eax
push 0x800
lea eax, [ebp - 0xb414]
push eax
lea eax, [ebp - 0x9414]
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0xb414]
push 1
push eax
call fcn.00430b00
push 0x2c
mov esi, eax
lea eax, [ebp - 0x6414]
push 0x800
push eax
lea eax, [ebp - 0x7414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x6414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0x320c]
push 0x800
push eax
call fcn.0045fb00
push 0x2c
push 0x800
lea eax, [ebp - 0x120c]
push eax
lea eax, [ebp - 0x320c]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x220c]
push eax
lea eax, [ebp - 0x120c]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x18
lea eax, [ebp - 0x320c]
cmp word [ebp - 0x6414], 0
push str._TRUE_
push eax
jne 0x459370
call fcn.0047054b
add esp, 8
test eax, eax
lea eax, [ebp - 0x7414]
push eax
push esi
jne 0x459366
call fcn.00430f10
jmp 0x458bac
call fcn.00430f10
jmp 0x458b56
call fcn.0047054b
add esp, 8
test eax, eax
lea eax, [ebp - 0x5414]
push 0x800
push eax
lea eax, [ebp - 0x6414]
push eax
lea eax, [ebp - 0x7414]
push eax
push esi
jne 0x4593a4
call fcn.00430ca0
add esp, 0x14
jmp 0x458baf
call fcn.00430ca0
add esp, 0x14
jmp 0x458b59
lea eax, [ebp - 0x8414]
push str._FILEKEY_EXIST_
push eax
call fcn.0047054b
add esp, 8
test eax, eax
je 0x45966a
lea eax, [ebp - 0x8414]
push str._DIRKEY_EXIST_
push eax
call fcn.0047054b
add esp, 8
test eax, eax
je 0x45966a
lea eax, [ebp - 0x8414]
push str._FILE_EXIST_
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x4594bf
push 0x2c
push 0x800
lea eax, [ebp - 0x320c]
push eax
push 0x104
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x9414]
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0x20c]
push 0x104
push eax
call fcn.0045fb00
push 0x2c
push 0x800
lea eax, [ebp - 0x120c]
push eax
lea eax, [ebp - 0x320c]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x220c]
push eax
lea eax, [ebp - 0x120c]
push 0x800
push eax
push eax
call fcn.0043d9c0
lea eax, [ebp - 0x320c]
push str._TRUE_
push eax
call fcn.0047054b
add esp, 0x20
neg eax
sbb esi, esi
lea eax, [ebp - 0x20c]
inc esi
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmp eax, esi
jmp 0x458b5b
lea eax, [ebp - 0x8414]
push str._DIR_EXIST_
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x459595
push 0x2c
push 0x800
lea eax, [ebp - 0x320c]
push eax
push 0x104
lea eax, [ebp - 0x3414]
push eax
lea eax, [ebp - 0x9414]
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0x3414]
push 0x104
push eax
call fcn.0045fb00
push 0x2c
push 0x800
lea eax, [ebp - 0x120c]
push eax
lea eax, [ebp - 0x320c]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x220c]
push eax
lea eax, [ebp - 0x120c]
push 0x800
push eax
push eax
call fcn.0043d9c0
lea eax, [ebp - 0x320c]
push str._TRUE_
push eax
call fcn.0047054b
add esp, 0x20
neg eax
sbb esi, esi
lea eax, [ebp - 0x3414]
inc esi
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmp eax, esi
jmp 0x458b5b
lea eax, [ebp - 0x8414]
push str._MODULE_EXIST_
push eax
call fcn.0047054b
add esp, 8
test eax, eax
jne 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x320c]
push eax
push 0x104
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x9414]
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0x20c]
push 0x104
push eax
call fcn.0045fb00
push 0x2c
push 0x800
lea eax, [ebp - 0x120c]
push eax
lea eax, [ebp - 0x320c]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x220c]
push eax
lea eax, [ebp - 0x120c]
push 0x800
push eax
push eax
call fcn.0043d9c0
lea eax, [ebp - 0x320c]
push str._TRUE_
push eax
call fcn.0047054b
add esp, 0x20
neg eax
sbb esi, esi
lea eax, [ebp - 0x20c]
inc esi
push eax
call fcn.00455090
cmp eax, esi
jmp 0x458b5b
push 0x2c
push 0x800
lea eax, [ebp - 0x7414]
push eax
push 0x800
lea eax, [ebp - 0xb414]
push eax
lea eax, [ebp - 0x9414]
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
push dword [0x4af520]
lea eax, [ebp - 0xb414]
push eax
call fcn.00430b00
push 0x2c
mov esi, eax
lea eax, [ebp - 0x6414]
push 0x800
push eax
lea eax, [ebp - 0x7414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x20
test eax, eax
je 0x458be1
push 0x2c
push 0x800
lea eax, [ebp - 0x320c]
push eax
lea eax, [ebp - 0x6414]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x18
test eax, eax
je 0x458be1
lea eax, [ebp - 0x320c]
push 0x800
push eax
call fcn.0045fb00
push 0x104
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x6414]
push eax
lea eax, [ebp - 0x7414]
push eax
push esi
call fcn.00430ca0
add esp, 0x1c
test eax, eax
jne 0x459756
push 0x48c8a4
lea eax, [ebp - 0x20c]
push 0x104
push eax
call fcn.0046fd12
add esp, 0xc
push 0x2c
push 0x800
lea eax, [ebp - 0x120c]
push eax
lea eax, [ebp - 0x320c]
push 0x800
push eax
push eax
call fcn.0043d9c0
add esp, 0x18
jmp 0x45946a