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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x470cd1
mov eax, dword fs:[0]
push eax
mov eax, 0x22d8
call fcn.0044feb0
mov eax, dword [0x4958b0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
cmp dword [ebp + 8], 0
jne 0x424e9c
xor eax, eax
jmp 0x4256af
push str._CastingStation__InitBoomerang_Startup_init_WER
call fcn.004172e0
add esp, 4
mov ax, word [0x47e118]
mov word [ebp - 0xa30], ax
push 0x206
push 0
lea ecx, [ebp - 0xa2e]
push ecx
call fcn.0044e250
add esp, 0xc
mov dx, word [0x47e11c]
mov word [ebp - 0x218], dx
push 0x206
push 0
lea eax, [ebp - 0x216]
push eax
call fcn.0044e250
add esp, 0xc
mov cx, word [0x47e120]
mov word [ebp - 0x828], cx
push 0x1fe
push 0
lea edx, [ebp - 0x826]
push edx
call fcn.0044e250
add esp, 0xc
mov ax, word [0x47e124]
mov word [ebp - 0x628], ax
push 0x206
push 0
lea ecx, [ebp - 0x626]
push ecx
call fcn.0044e250
add esp, 0xc
push 1
push 0x47e128
push 0x80000002
lea ecx, [ebp - 0x22c4]
call fcn.00403320
mov dword [ebp - 4], 0
push 0x104
lea edx, [ebp - 0xa30]
push edx
push str.WER_6432ModulePath
lea ecx, [ebp - 0x22c4]
call fcn.004037c0
test eax, eax
jne 0x424f91
push 0x104
lea eax, [ebp - 0xa30]
push eax
push str.WER_ModulePath
lea ecx, [ebp - 0x22c4]
call fcn.004037c0
mov dword [ebp - 0x22a0], 0
lea ecx, [ebp - 0x22a0]
push ecx
push 0
push 0x104
push 0x47e1ac
call fcn.00424b70
add esp, 8
push eax
push str.BoomerangLib.dll
push 0x104
lea edx, [ebp - 0xa30]
push edx
call fcn.00401850
add esp, 0x18
mov dword [ebp - 0x22d0], eax
cmp dword [ebp - 0x22d0], 0
jl 0x424ffa
mov eax, dword [ebp - 0x22a0]
push eax
push 0x104
lea ecx, [ebp - 0x628]
push ecx
call fcn.0044dbc0
add esp, 0xc
lea edx, [ebp - 0x22a0]
push edx
call fcn.00401810
add esp, 4
mov dword [ebp - 0x2290], 0
push 8
push 0
lea eax, [ebp - 0x628]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov ecx, dword [ebp + 0xc]
mov dword [ecx], eax
mov edx, dword [ebp + 0xc]
cmp dword [edx], 0
je 0x42563d
lea eax, [ebp - 0x628]
push eax
push str._CastingStation__InitBoomerang_Load_BoomerangLib_Path:__s
call fcn.004172e0
add esp, 8
push 0x104
lea ecx, [ebp - 0x218]
push ecx
push str.WER_SettingPath
lea ecx, [ebp - 0x22c4]
call fcn.004037c0
lea edx, [ebp - 0x218]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x425085
push 0
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea ecx, [ebp - 0x218]
push ecx
push str._CastingStation__InitBoomerang_Setting_WER_path:_s
call fcn.004172e0
add esp, 8
mov dword [ebp - 0x229c], 0
push str.CreateBoomerangClient
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x229c], eax
cmp dword [ebp - 0x229c], 0
jne 0x4250ea
mov dword [ebp - 0x22cc], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x22c4]
call fcn.00403590
mov eax, dword [ebp - 0x22cc]
jmp 0x4256af
call dword [ebp - 0x229c]
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
mov edx, dword [ebp + 8]
cmp dword [edx], 0
je 0x42563b
mov ax, word [0x47e214]
mov word [ebp - 0xe40], ax
push 0x206
push 0
lea ecx, [ebp - 0xe3e]
push ecx
call fcn.0044e250
add esp, 0xc
push str.Boomerang
push 0x47e320
push 0x47e35c
push 0x104
lea edx, [ebp - 0xe40]
push edx
call fcn.0044cc3d
add esp, 0x14
lea eax, [ebp - 0xe40]
push eax
push str._CastingStation__Setting_WER_reg_path_s
call fcn.004172e0
add esp, 8
lea ecx, [ebp - 0x218]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ecx, dword [ebp + 8]
mov edx, dword [eax]
mov ecx, dword [ecx]
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp - 0xe40]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ecx, dword [ebp + 8]
mov edx, dword [eax]
mov ecx, dword [ecx]
mov eax, dword [edx]
call eax
mov cx, word [0x47e3bc]
mov word [ebp - 0x420], cx
push 0x206
push 0
lea edx, [ebp - 0x41e]
push edx
call fcn.0044e250
add esp, 0xc
push 0x104
lea eax, [ebp - 0x420]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea ecx, [ebp - 0x420]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
mov dx, word [0x47e3c0]
mov word [ebp - 0xc38], dx
push 0x206
push 0
lea eax, [ebp - 0xc36]
push eax
call fcn.0044e250
add esp, 0xc
mov cx, word [0x47e3c4]
mov word [ebp - 0x1250], cx
push 0x206
push 0
lea edx, [ebp - 0x124e]
push edx
call fcn.0044e250
add esp, 0xc
mov ax, word [0x47e3c8]
mov word [ebp - 0x1048], ax
push 0x206
push 0
lea ecx, [ebp - 0x1046]
push ecx
call fcn.0044e250
add esp, 0xc
push 0x104
lea edx, [ebp - 0xc38]
push edx
push str.InstallPath
lea ecx, [ebp - 0x22c4]
call fcn.004037c0
mov dword [ebp - 0x228c], 0x80004005
mov dword [ebp - 0x2288], 0
lea eax, [ebp - 0x2288]
push eax
push 0
push 0x104
push 0x47e3e4
call fcn.00424b70
add esp, 8
push eax
push str.CommonUNOUNO.dll
push 0x104
lea ecx, [ebp - 0xc38]
push ecx
call fcn.00401850
add esp, 0x18
mov dword [ebp - 0x228c], eax
cmp dword [ebp - 0x228c], 0
jl 0x4252c9
mov edx, dword [ebp - 0x2288]
push edx
push 0x104
lea eax, [ebp - 0x1250]
push eax
call fcn.0044dbc0
add esp, 0xc
lea ecx, [ebp - 0x2288]
push ecx
call fcn.00401810
add esp, 4
mov dword [ebp - 0x2288], 0
lea edx, [ebp - 0x2288]
push edx
push 0
push 0x104
push 0x47e450
call fcn.00424b70
add esp, 8
push eax
push str.CommonBoomerangModuleEvoParser.dll
push 0x104
lea eax, [ebp - 0xc38]
push eax
call fcn.00401850
add esp, 0x18
mov dword [ebp - 0x228c], eax
cmp dword [ebp - 0x228c], 0
jl 0x425341
mov ecx, dword [ebp - 0x2288]
push ecx
push 0x104
lea edx, [ebp - 0x1048]
push edx
call fcn.0044dbc0
add esp, 0xc
lea eax, [ebp - 0x2288]
push eax
call fcn.00401810
add esp, 4
lea ecx, [ebp - 0x1048]
push ecx
lea edx, [ebp - 0x1250]
push edx
lea eax, [ebp - 0x628]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp + 8]
mov edx, dword [edx]
mov ecx, dword [eax]
mov eax, dword [edx + 0xc]
call eax
xor ecx, ecx
mov word [ebp - 0x2254], cx
push 0x1000
push 0
lea edx, [ebp - 0x2252]
push edx
call fcn.0044e250
add esp, 0xc
push 0x800
lea eax, [ebp - 0x2254]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov dword [ebp - 0x22b4], eax
mov ecx, dword [ebp - 0x22b4]
shl ecx, 1
mov dword [ebp - 0x22ac], ecx
cmp dword [ebp - 0x22ac], 0x1002
jae 0x4253cb
jmp 0x4253d0
call fcn.004502f1
xor edx, edx
mov eax, dword [ebp - 0x22ac]
mov word [ebp + eax - 0x2254], dx
lea ecx, [ebp - 0x2254]
push ecx
lea ecx, [ebp - 0x226c]
call fcn.00418330
mov byte [ebp - 4], 1
mov edx, dword [0x47beb0]
push edx
push 0x5c
lea ecx, [ebp - 0x226c]
call fcn.00425c60
push eax
push 0
lea eax, [ebp - 0x2284]
push eax
lea ecx, [ebp - 0x226c]
call fcn.00423f70
mov dword [ebp - 0x22c8], eax
mov ecx, dword [ebp - 0x22c8]
push ecx
lea ecx, [ebp - 0x226c]
call fcn.00419000
lea ecx, [ebp - 0x2284]
call fcn.00418ac0
push str.CastingStationBoomerangSilentList.ini
lea ecx, [ebp - 0x226c]
call fcn.00419a90
lea ecx, [ebp - 0x226c]
call fcn.0041d550
push eax
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ecx, dword [ebp + 8]
mov edx, dword [eax]
mov ecx, dword [ecx]
mov eax, dword [edx + 8]
call eax
mov dword [ebp - 0x22a4], 1
push 1
lea ecx, [ebp - 0x22a4]
push ecx
push str.UI_EnableWER
lea ecx, [ebp - 0x22c4]
call fcn.004035d0
test eax, eax
je 0x4254b4
cmp dword [ebp - 0x22a4], 0
jne 0x4254b4
push 0
mov edx, dword [ebp + 8]
mov eax, dword [edx]
mov ecx, dword [ebp + 8]
mov edx, dword [eax]
mov ecx, dword [ecx]
mov eax, dword [edx + 0x14]
call eax
jmp 0x4254c7
push 1
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp + 8]
mov edx, dword [edx]
mov ecx, dword [eax]
mov eax, dword [edx + 0x14]
call eax
push 1
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp + 8]
mov edx, dword [edx]
mov ecx, dword [eax]
mov eax, dword [edx + 0x34]
call eax
push 1
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp + 8]
mov edx, dword [edx]
mov ecx, dword [eax]
mov eax, dword [edx + 0x18]
call eax
push 1
push 0x47e49c
push 0x80000001
lea ecx, [ebp - 0x22e4]
call fcn.00403320
mov byte [ebp - 4], 2
push 0x100
lea ecx, [ebp - 0x828]
push ecx
push str.UI_Language
lea ecx, [ebp - 0x22e4]
call fcn.004037c0
lea edx, [ebp - 0x828]
push edx
push str._kanten__Language_WER_:_s
call fcn.004172e0
add esp, 8
lea eax, [ebp - 0x828]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp + 8]
mov edx, dword [edx]
mov ecx, dword [eax]
mov eax, dword [edx + 0x1c]
call eax
mov dword [ebp - 0x2294], 0
push str.ConvertBoomerangClinet2
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x2294], eax
cmp dword [ebp - 0x2294], 0
je 0x4255be
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push ecx
call dword [ebp - 0x2294]
add esp, 4
mov dword [ebp - 0x2298], eax
cmp dword [ebp - 0x2298], 0
je 0x4255be
mov dword [ebp - 0x22b0], 1
lea edx, [ebp - 0x22b0]
push edx
push 0
mov eax, dword [ebp - 0x2298]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x2298]
mov eax, dword [edx + 4]
call eax
push 0x104
push 0x47e5d8
call fcn.00424b70
add esp, 8
push eax
push str.APREG.url
push 0x104
lea ecx, [ebp - 0x420]
push ecx
call fcn.00401cf0
add esp, 0x10
lea edx, [ebp - 0x420]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x425613
lea eax, [ebp - 0x420]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx]
mov eax, dword [ebp + 8]
mov edx, dword [edx]
mov ecx, dword [eax]
mov eax, dword [edx + 0x20]
call eax
mov dword [ebp - 0x2290], 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x22e4]
call fcn.00403590
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x226c]
call fcn.00418ac0
jmp 0x425658
lea ecx, [ebp - 0x628]
push ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._CastingStation__InitBoomerang_Load_BoomerangLib_failed__Error_code:__d_Path:__s
call fcn.004172e0
add esp, 0xc
cmp dword [ebp - 0x2290], 0
je 0x42566d
mov dword [ebp - 0x22a8], str.True
jmp 0x425677
mov dword [ebp - 0x22a8], str.False
mov edx, dword [ebp - 0x22a8]
push edx
push str._CastingStation__InitBoomerang_WER_finish__ret:__s
call fcn.004172e0
add esp, 8
mov eax, dword [ebp - 0x2290]
mov dword [ebp - 0x22d4], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x22c4]
call fcn.00403590
mov eax, dword [ebp - 0x22d4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0044c9f3
mov esp, ebp
pop ebp
ret