Function at 0x498b42
Capabilities:
Check if file exists
Create directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x571d4c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x41310
call fcn.005374e0
mov dword [ebp - 0x41304], ecx
call fcn.0055f60b
mov eax, dword [eax + 4]
mov dword [ebp - 0x10], eax
push str.UtilitiesBHO.dat
mov ecx, dword [ebp - 0x10]
add ecx, 0x13c
push ecx
lea edx, [ebp - 0x14]
push edx
call fcn.0054d5cd
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmp eax, 1
jne 0x498eb6
push 0xffffffffffffffff
push 0
mov ecx, dword [ebp - 0x10]
add ecx, 0x4b8
call fcn.0054c43e
mov ecx, dword [0x5be480]
mov dword [ebp - 0x24], ecx
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x412e0]
call fcn.004e70a0
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x14]
mov eax, dword [edx - 8]
mov dword [ebp - 0x412f4], eax
push 2
push 0
mov ecx, dword [ebp - 0x412f4]
push ecx
lea ecx, [ebp - 0x14]
call fcn.0054d76d
push eax
call fcn.004dfb41
add esp, 0xc
mov dword [ebp - 0x1c], eax
push 0xffffffffffffffff
lea ecx, [ebp - 0x14]
call fcn.0054d7bd
push 0x230
push 0
lea edx, [ebp - 0x268]
push edx
call fcn.005370b0
add esp, 0xc
mov dword [ebp - 0x412e4], 0
lea eax, [ebp - 0x268]
push eax
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.004dfc5f
add esp, 0xc
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x412e4], edx
mov eax, dword [0x5be480]
mov dword [ebp - 0x18], eax
mov byte [ebp - 4], 3
mov ecx, dword [0x5be480]
mov dword [ebp - 0x20], ecx
mov byte [ebp - 4], 4
mov edx, dword [0x5be480]
mov dword [ebp - 0x26c], edx
mov byte [ebp - 4], 5
push 0x5b53f4
mov eax, dword [ebp - 0x10]
add eax, 0x13c
push eax
lea ecx, [ebp - 0x412e8]
push ecx
call fcn.0054d5cd
mov dword [ebp - 0x41308], eax
mov edx, dword [ebp - 0x41308]
mov dword [ebp - 0x4130c], edx
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x4130c]
push eax
lea ecx, [ebp - 0x26c]
call fcn.0054d46f
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x412e8]
call fcn.0054d328
mov ecx, dword [ebp - 0x26c]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x498ce4
push 0
mov edx, dword [ebp - 0x26c]
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
jmp 0x498d16
push ecx
mov ecx, esp
mov dword [ebp - 0x412ec], esp
lea eax, [ebp - 0x26c]
push eax
call fcn.0054d095
mov dword [ebp - 0x41310], eax
mov ecx, dword [ebp - 0x10]
call fcn.004bb9ee
push 0
mov ecx, dword [ebp - 0x26c]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea ecx, [ebp - 0x38]
call fcn.0054c3ab
mov byte [ebp - 4], 7
mov dword [ebp - 0x270], 0
jmp 0x498d3d
mov edx, dword [ebp - 0x270]
add edx, 1
mov dword [ebp - 0x270], edx
mov eax, dword [ebp - 0x270]
cmp eax, dword [ebp - 0x412e4]
jge 0x498e2d
lea ecx, [ebp - 0x268]
push ecx
mov edx, dword [ebp - 0x270]
push edx
mov eax, dword [ebp - 0x1c]
push eax
call fcn.004dfc5f
add esp, 0xc
lea ecx, [ebp - 0x268]
push ecx
lea edx, [ebp - 0x26c]
push edx
lea eax, [ebp - 0x412f0]
push eax
call fcn.0054d5cd
mov dword [ebp - 0x41314], eax
mov ecx, dword [ebp - 0x41314]
mov dword [ebp - 0x41318], ecx
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x41318]
push edx
lea ecx, [ebp - 0x18]
call fcn.0054d46f
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x412f0]
call fcn.0054d328
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax - 8]
mov dword [ebp - 0x412f8], ecx
push 2
push 0
mov edx, dword [ebp - 0x412f8]
push edx
lea ecx, [ebp - 0x18]
call fcn.0054d76d
push eax
mov eax, dword [ebp - 0x270]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.004dfeea
add esp, 0x14
push 0xffffffffffffffff
lea ecx, [ebp - 0x18]
call fcn.0054d7bd
mov edx, dword [ebp - 0x10]
add edx, 0x4b8
mov dword [ebp - 0x41300], edx
mov eax, dword [ebp - 0x41300]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x412fc], ecx
lea edx, [ebp - 0x18]
push edx
mov eax, dword [ebp - 0x412fc]
push eax
mov ecx, dword [ebp - 0x41300]
call fcn.0054c5b3
jmp 0x498d2e
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.004e6e20
add esp, 4
and eax, 0xff
test eax, eax
je 0x498e56
mov edx, dword [ebp - 0x1c]
push edx
call fcn.004e6d77
add esp, 4
mov dword [ebp - 0x4131c], eax
jmp 0x498e68
mov eax, dword [ebp - 0x1c]
push eax
call fcn.004dff55
add esp, 4
mov dword [ebp - 0x4131c], eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x38]
call fcn.0054c3de
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x26c]
call fcn.0054d328
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x20]
call fcn.0054d328
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x18]
call fcn.0054d328
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x412e0]
call fcn.004e71cb
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x24]
call fcn.0054d328
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x14]
call fcn.0054d328
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret