Function at 0x42aadd
Capabilities:
Check if file exists

Disassembly:
push ebp
lea ebp, [esp - 0x1c8]
sub esp, 0x248
mov eax, dword [0x451fbc]
xor eax, ebp
mov dword [ebp + 0x1c4], eax
push ebx
push esi
push edi
push 0x208
xor edi, edi
lea eax, [ebp - 0x44]
push edi
push eax
mov esi, ecx
call fcn.0042bbb0
add esp, 0xc
push 0x104
lea eax, [ebp - 0x44]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push str...whitelist.dat
lea eax, [ebp - 0x44]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
test eax, eax
je 0x42adc5
lea eax, [ebp - 0x44]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x42ab4d
xor eax, eax
jmp 0x42adc8
push edi
push 0x80
push 2
pop ebx
push ebx
push edi
push edi
push 0x40000000
lea eax, [ebp - 0x44]
push eax
mov dword [ebp - 0x48], edi
call dword [sym.imp.KERNEL32.dll_CreateFileW]
cmp eax, 0xffffffff
jne 0x42ab77
call fcn.00408d43
jmp 0x42ab7c
mov dword [ebp - 0x48], eax
xor eax, eax
cmp eax, edi
je 0x42ab90
cmp dword [ebp - 0x48], edi
je 0x42ab46
push dword [ebp - 0x48]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x42ab46
mov eax, dword [esi + 0x18]
sub eax, dword [esi + 0x14]
add esi, 8
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], ebx
cdq
mov ebx, 0x250
mov ecx, ebx
idiv ecx
push edi
push 0x10
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x80], 0x4c573351
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x80]
push eax
call fcn.004291de
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0xc]
cdq
idiv ebx
test eax, eax
je 0x42adb7
mov eax, dword [0x44d4f4]
push esi
push dword [esi + 0xc]
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edi
call fcn.004282f0
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x60]
push esi
push dword [esi + 0x10]
mov dword [ebp - 0x4c], eax
jmp 0x42ac56
lea ecx, [ebp - 0x50]
call fcn.00417864
lea ecx, [ebp - 0x50]
mov ebx, eax
call fcn.00417864
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x5c], eax
call fcn.00417864
mov ecx, dword [ebp - 0x5c]
add ebx, 0x20c
push ebx
add ecx, 4
push ecx
push dword [eax]
lea eax, [ebp - 0x58]
push str._d_s_s
push eax
call fcn.0040f168
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x54]
mov eax, dword [eax - 8]
lea eax, [ecx + eax + 5]
add esp, 0x14
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x54], eax
call fcn.0042a181
push esi
push dword [esi + 0x10]
lea ecx, [ebp - 0x70]
call fcn.004282f0
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x50]
call fcn.00410df2
test al, al
je 0x42abfc
push dword [ebp - 0x54]
call fcn.0042b856
pop ecx
mov dword [ebp - 0x5c], eax
cmp eax, edi
je 0x42ad8d
push dword [ebp - 0x54]
mov ebx, eax
push edi
push eax
call fcn.0042bbb0
add esp, 0xc
push esi
push dword [esi + 0xc]
lea ecx, [ebp - 0x64]
call fcn.004282f0
mov eax, dword [ebp - 0x64]
push esi
push dword [esi + 0x10]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x60]
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x4c], eax
call fcn.004282f0
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0x50]
call fcn.00410df2
test al, al
jne 0x42ad8d
lea ecx, [ebp - 0x50]
call fcn.00417864
lea ecx, [ebp - 0x50]
mov edi, eax
call fcn.00417864
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x68], eax
call fcn.00417864
mov ecx, dword [ebp - 0x68]
add edi, 0x20c
push edi
add ecx, 4
push ecx
push dword [eax]
lea eax, [ebp - 0x58]
push str._d_s_s
push eax
call fcn.0040f168
mov edi, dword [ebp - 0x58]
mov eax, dword [edi - 8]
add eax, 5
mov dword [ebp - 0x6c], eax
push 4
lea eax, [ebp - 0x6c]
push eax
push ebx
call fcn.0042ed70
add esp, 0x20
push edi
add ebx, 4
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x42ad35
xor eax, eax
jmp 0x42ad4d
add eax, eax
mov dword [ebp - 0x68], eax
call fcn.0042f610
mov eax, esp
push 3
push dword [ebp - 0x68]
push edi
push eax
call fcn.00422a53
mov ecx, dword [edi - 8]
inc ecx
push ecx
push eax
push ebx
call fcn.0042ed70
mov eax, dword [edi - 8]
add esp, 0xc
lea ecx, [ebp - 0x50]
lea ebx, [ebx + eax + 1]
call fcn.0042a181
push esi
push dword [esi + 0x10]
lea ecx, [ebp - 0x64]
call fcn.004282f0
lea eax, [ebp - 0x64]
push eax
lea ecx, [ebp - 0x50]
call fcn.00410df2
test al, al
je 0x42acc9
xor edi, edi
push dword [ebp - 0x54]
push 0x4c573351
push dword [ebp - 0x5c]
call fcn.0042a018
add esp, 0xc
push edi
push dword [ebp - 0x54]
lea ecx, [ebp - 0x48]
push dword [ebp - 0x5c]
call fcn.004291de
lea ecx, [ebp - 0x58]
call fcn.0040813c
cmp dword [ebp - 0x48], edi
je 0x42adc5
push dword [ebp - 0x48]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
inc eax
lea esp, [ebp - 0x8c]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x1c4]
xor ecx, ebp
call fcn.0042bb9b
add ebp, 0x1c8
leave
ret