Function at 0x44d750
Capabilities:
Check if file exists
Delete file
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4ebba6
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
mov eax, dword [0x53f1e4]
xor eax, esp
mov dword [esp + 0xc0], eax
push ebx
push esi
push edi
mov eax, dword [0x53f1e4]
xor eax, esp
push eax
lea eax, [esp + 0xd8]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x20], eax
mov eax, dword [0x5430d8]
mov edi, edx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x28], ecx
test eax, eax
je 0x44d7d8
cmp dword [eax + 8], 4
mov ebx, eax
jl 0x44d7d8
push str.SetupSetupModule.cpp
push 4
push ecx
mov edx, esp
mov dword [esp + 0x24], esp
push edx
mov ecx, str.begin_Install
mov esi, 0x34
call fcn.00408620
push ebx
mov ecx, esi
call fcn.0042c420
mov eax, dword [edi + 0x10]
mov ecx, dword [edi + 0xc]
push 0
push 0
push eax
push ecx
mov byte [esp + 0x27], 0
call dword [sym.imp.USER32.dll_PostMessageW]
mov eax, 1
test byte [0x5432a4], al
jne 0x44d81f
or dword [0x5432a4], eax
mov dword [esp + 0xe0], 0
call fcn.0043fb30
push 0x4ecbf0
call fcn.004b4336
add esp, 4
mov ebx, 0x54342c
call fcn.00441d60
and dword [esp + 0x34], 0xfffffe00
xor ecx, ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0xe0], 2
mov edx, dword [esp + 0x44]
mov al, byte [edi + 8]
and edx, 0xffffff05
or edx, 5
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], ecx
mov byte [esp + 0x3c], al
push ecx
lea eax, [esp + 0x30]
push eax
mov ecx, str.quiet
mov byte [esp + 0xe8], 3
call fcn.0041af50
mov esi, eax
lea eax, [esp + 0x3c]
call fcn.00419c60
lea eax, [esp + 0x3c]
mov byte [esp + 0xe0], 2
call fcn.00419bc0
mov ecx, dword [esp + 0x44]
mov eax, dword [edi + 0x8c]
and ecx, 0xffffff01
cdq
or ecx, 1
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], 0
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], edx
push 0
lea edx, [esp + 0x30]
push edx
mov ecx, str.installtype
mov byte [esp + 0xe8], 4
call fcn.0041af50
mov esi, eax
lea eax, [esp + 0x3c]
call fcn.00419c60
lea eax, [esp + 0x3c]
mov byte [esp + 0xe0], 2
call fcn.00419bc0
test byte [0x5431e4], 1
jne 0x44d911
or dword [0x5431e4], 1
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
cmp byte [0x5431c6], 0
je 0x44d925
lea esi, [esp + 0x2c]
call fcn.004123d0
jmp 0x44d92e
lea ecx, [esp + 0x2c]
call fcn.00412610
mov eax, dword [edi + 0x8c]
mov ebx, 1
test eax, eax
js 0x44db91
cmp eax, ebx
jle 0x44d984
cmp eax, 2
jne 0x44db91
test byte [0x5431e4], bl
jne 0x44d96e
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
push 0xffffffffffffffff
push 0
lea ecx, [edi + 0x70]
push 0x5430fc
call fcn.00404530
jmp 0x44db91
lea eax, [edi + 0x54]
push str.cfg.ini
push eax
lea eax, [esp + 0xbc]
push eax
call fcn.00403a10
add esp, 0xc
mov byte [esp + 0xe0], 5
xor ecx, ecx
push 0x12
mov word [esp + 0x80], cx
mov ebx, 7
xor esi, esi
push str.WEMediaChannelName
lea ecx, [esp + 0x84]
mov dword [esp + 0x98], ebx
mov dword [esp + 0x94], esi
call fcn.00404960
mov byte [esp + 0xe0], 6
push 0xe
xor edx, edx
push str.WEMediaChannel
lea ecx, [esp + 0x44]
mov dword [esp + 0x58], ebx
mov dword [esp + 0x54], esi
mov word [esp + 0x44], dx
call fcn.00404960
mov byte [esp + 0xe0], bl
push 0xa
xor eax, eax
push 0x50c074
lea ecx, [esp + 0x68]
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], esi
mov word [esp + 0x68], ax
call fcn.00404960
mov byte [esp + 0xe0], 8
test byte [0x5431e4], 1
jne 0x44da4e
or dword [0x5431e4], 1
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
movzx ecx, byte [0x5431c2]
push ecx
lea ecx, [esp + 0x64]
lea esi, [esp + 0x9c]
call fcn.0040ab10
add esp, 4
lea esi, [edi + 0x70]
mov edi, eax
mov byte [esp + 0xe0], 9
call fcn.00404350
cmp dword [esp + 0xac], 8
jb 0x44da95
mov edx, dword [esp + 0x98]
push edx
call fcn.004b1c22
add esp, 4
xor edi, edi
xor eax, eax
cmp dword [esp + 0x74], 8
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa8], edi
mov word [esp + 0x98], ax
jb 0x44dac3
mov ecx, dword [esp + 0x60]
push ecx
call fcn.004b1c22
add esp, 4
xor edx, edx
cmp dword [esp + 0x50], 8
mov dword [esp + 0x74], ebx
mov dword [esp + 0x70], edi
mov word [esp + 0x60], dx
jb 0x44dae6
mov eax, dword [esp + 0x3c]
push eax
call fcn.004b1c22
add esp, 4
xor ecx, ecx
mov byte [esp + 0xe0], 5
cmp dword [esp + 0x90], 8
mov dword [esp + 0x50], ebx
mov dword [esp + 0x4c], edi
mov word [esp + 0x3c], cx
jb 0x44db14
mov edx, dword [esp + 0x7c]
push edx
call fcn.004b1c22
add esp, 4
mov ecx, dword [esp + 0x1c]
xor eax, eax
mov dword [esp + 0x90], ebx
mov dword [esp + 0x8c], edi
mov word [esp + 0x7c], ax
cmp dword [ecx + 0x80], edi
jne 0x44db66
test byte [0x5431e4], 1
jne 0x44db57
or dword [0x5431e4], 1
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
push 0xffffffffffffffff
push edi
push 0x5430fc
mov ecx, esi
call fcn.00404530
mov byte [esp + 0xe0], 2
cmp dword [esp + 0xc8], 8
jb 0x44db88
mov edx, dword [esp + 0xb4]
push edx
call fcn.004b1c22
add esp, 4
mov edi, dword [esp + 0x1c]
mov ebx, 1
mov eax, dword [edi + 0x80]
lea esi, [edi + 0x70]
push 0x50d9cc
mov edi, 0xc
mov ecx, esi
call fcn.00407850
test eax, eax
jne 0x44dbf2
lea ecx, [esp + 0xb4]
call fcn.004063e0
mov edi, eax
mov byte [esp + 0xe0], 0xa
call fcn.00404350
mov edi, 8
mov byte [esp + 0xe0], 2
cmp dword [esp + 0xc8], edi
jb 0x44dbf7
mov eax, dword [esp + 0xb4]
push eax
call fcn.004b1c22
add esp, 4
jmp 0x44dbf7
mov edi, 8
cmp dword [esi + 0x14], edi
jb 0x44dbfe
mov esi, dword [esi]
push esi
mov edx, 0x60
push str.m_strChannelName_s
push str.SetupSetupModule.cpp
lea esi, [edx - 0x5c]
mov eax, 0x5430d8
call fcn.0042b3c0
add esp, 0xc
test byte [0x5431e4], 1
jne 0x44dc3f
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
cmp byte [0x5431c1], 0
je 0x44dd56
test byte [0x5431e4], 1
jne 0x44dc6d
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
test byte [0x5434ac], 1
jne 0x44dc8e
or dword [0x5434ac], ebx
call fcn.00456bb0
push 0x4ecc00
call fcn.004b4336
add esp, 4
push 0xffffffffffffffff
push 0
push 0x543134
mov ecx, 0x5434cc
call fcn.00404530
test byte [0x5431e4], 1
jne 0x44dcc2
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
test byte [0x5434ac], 1
jne 0x44dce3
or dword [0x5434ac], ebx
call fcn.00456bb0
push 0x4ecc00
call fcn.004b4336
add esp, 4
push 0xffffffffffffffff
push 0
push 0x543150
mov ecx, 0x5434b0
call fcn.00404530
test byte [0x5431e4], 1
jne 0x44dd17
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
test byte [0x5434ac], 1
mov cl, byte [0x5431c2]
mov byte [esp + 0x18], cl
jne 0x44dd42
or dword [0x5434ac], ebx
call fcn.00456bb0
push 0x4ecc00
call fcn.004b4336
add esp, 4
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x20]
push edx
push eax
mov ecx, 0x5434b0
call fcn.00457700
test byte [0x5431e4], 1
jne 0x44dd77
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
cmp byte [0x5431c5], 0
je 0x44de55
push 0
lea esi, [esp + 0x80]
call fcn.00405180
add esp, 4
mov byte [esp + 0xe0], 0xb
mov eax, dword [esp + 0x7c]
cmp dword [esp + 0x90], edi
jae 0x44ddac
mov eax, esi
mov ecx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x1c]
push ecx
push eax
add ebx, 0x54
push ebx
xor eax, eax
call fcn.0040d750
test eax, eax
jne 0x44de36
push 1
lea esi, [esp + 0xb8]
call fcn.00405180
add esp, 4
mov edi, eax
mov esi, ebx
mov byte [esp + 0xe0], 0xc
call fcn.00404350
mov byte [esp + 0xe0], 0xb
cmp dword [esp + 0xc8], 8
jb 0x44de0c
mov edx, dword [esp + 0xb4]
push edx
call fcn.004b1c22
add esp, 4
push 1
mov eax, 0x5062dc
mov ecx, ebx
call fcn.00403f00
push 7
mov eax, 0x50a8b0
mov ecx, ebx
call fcn.00403f00
push 1
mov eax, 0x5062dc
mov ecx, ebx
call fcn.00403f00
mov byte [esp + 0xe0], 2
cmp dword [esp + 0x90], 8
jb 0x44de55
mov eax, dword [esp + 0x7c]
push eax
call fcn.004b1c22
add esp, 4
mov ebx, dword [esp + 0x1c]
cmp dword [ebx + 0x68], 8
lea edi, [ebx + 0x54]
mov dword [esp + 0x18], edi
jb 0x44de6a
mov eax, dword [edi]
jmp 0x44de6c
mov eax, edi
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHCreateDirectory]
test byte [0x5431e4], 1
mov esi, 1
jne 0x44de9b
or dword [0x5431e4], esi
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
cmp byte [0x5431c0], 0
je 0x44df91
test byte [0x5431e4], 1
jne 0x44dec9
or dword [0x5431e4], esi
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
cmp byte [0x5431c4], 0
jne 0x44df91
test byte [0x5431e4], 1
jne 0x44def7
or dword [0x5431e4], esi
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
push 0xffffffffffffffff
push 0
push 0x5430e0
lea ecx, [ebx + 0x14]
call fcn.00404530
test byte [0x5431e4], 1
jne 0x44df29
or dword [0x5431e4], esi
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
push 0xffffffffffffffff
push 0
push 0x543118
lea ecx, [ebx + 0x30]
call fcn.00404530
mov esi, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
push esi
mov ecx, ebx
call fcn.0044e760
test al, al
jne 0x44e112
mov ecx, 8
cmp dword [esi + 0x14], ecx
jb 0x44df5e
mov esi, dword [esi]
mov eax, dword [esp + 0x20]
cmp dword [eax + 0x14], ecx
jb 0x44df69
mov eax, dword [eax]
push esi
push eax
push 0x50d638
mov edx, 0x80
push str.SetupSetupModule.cpp
mov esi, 2
mov eax, 0x5430d8
call fcn.0042b3c0
add esp, 0x10
jmp 0x44e342
lea esi, [esp + 0x98]
call fcn.0040f500
push eax
mov eax, str.Package.zip
lea ecx, [esp + 0x64]
mov byte [esp + 0xe4], 0xd
call fcn.004039a0
add esp, 4
mov byte [esp + 0xe0], 0xf
cmp dword [esp + 0xac], 8
jb 0x44dfd9
mov ecx, dword [esp + 0x98]
push ecx
call fcn.004b1c22
add esp, 4
mov esi, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
xor edx, edx
lea eax, [esp + 0x60]
push eax
mov word [esp + 0x9c], dx
push ebx
mov edx, esi
mov dword [esp + 0xb4], 7
mov dword [esp + 0xb0], 0
call fcn.0044fb20
test al, al
jne 0x44e034
mov byte [esp + 0xe0], 2
cmp dword [esp + 0x74], 8
jb 0x44e342
mov ecx, dword [esp + 0x60]
push ecx
call fcn.004b1c22
jmp 0x44e33f
test byte [0x5432a4], 1
jne 0x44e066
or dword [0x5432a4], 1
mov byte [esp + 0xe0], 0x10
call fcn.0043fb30
push 0x4ecbf0
call fcn.004b4336
add esp, 4
mov byte [esp + 0xe0], 0xf
mov ebx, 0x54342c
call fcn.00441d60
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
push 0x54307c
push eax
lea ecx, [esp + 0x44]
push ecx
mov eax, edi
lea ecx, [esp + 0x6c]
mov dword [esp + 0x48], 0x44e710
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], 0x450990
call fcn.004057d0
add esp, 0xc
test al, al
jne 0x44e0d9
push 3
push 0x50d690
mov ecx, esi
call fcn.00404960
mov byte [esp + 0xe0], 2
cmp dword [esp + 0x74], 8
jb 0x44e342
mov edx, dword [esp + 0x60]
push edx
call fcn.004b1c22
jmp 0x44e33f
mov eax, dword [esp + 0x60]
mov esi, 8
cmp dword [esp + 0x74], esi
jae 0x44e0ec
lea eax, [esp + 0x60]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [esp + 0xe0], 2
cmp dword [esp + 0x74], esi
jb 0x44e10e
mov eax, dword [esp + 0x60]
push eax
call fcn.004b1c22
add esp, 4
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x1c]
mov eax, dword [edi + 0x94]
test eax, eax
je 0x44e129
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea eax, [edi + 0x98]
mov ebx, 8
cmp dword [eax + 0x14], ebx
jb 0x44e13b
mov eax, dword [eax]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x44e198
push 3
push 0x50d698
mov ecx, esi
call fcn.00404960
mov edi, dword [esp + 0x20]
push 7
push 0x50d6a0
mov ecx, edi
call fcn.00404960
cmp dword [esi + 0x14], ebx
jb 0x44e16d
mov esi, dword [esi]
cmp dword [edi + 0x14], ebx
jb 0x44e185
mov eax, dword [edi]
push esi
push eax
push 0x50d6b0
mov edx, 0xa2
jmp 0x44df75
push esi
mov eax, edi
push eax
push 0x50d6b0
mov edx, 0xa2
jmp 0x44df75
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
push 0x54307c
lea ecx, [esp + 0x40]
push ebx
push ecx
lea ecx, [edi + 0x98]
mov dword [esp + 0x48], 0x44e740
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], 0
call fcn.004057d0
add esp, 0xc
test al, al
jne 0x44e203
push 3
push 0x50d6ec
mov ecx, esi
call fcn.00404960
mov eax, 8
cmp dword [esi + 0x14], eax
jb 0x44e1eb
mov esi, dword [esi]
cmp dword [ebx + 0x14], eax
jb 0x44e1f2
mov ebx, dword [ebx]
push esi
push ebx
push 0x50d6f4
mov edx, 0xae
jmp 0x44df75
mov edx, dword [esp + 0x18]
push str.Asset
push edx
lea eax, [esp + 0x84]
push eax
call fcn.00403a10
add esp, 0xc
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x18]
push str.Asset.7z
push ecx
lea edx, [esp + 0xa0]
push edx
mov byte [esp + 0xec], 0x11
call fcn.00403a10
add esp, 0xc
mov edx, dword [esp + 0x28]
push 0x54307c
push ebx
mov ecx, eax
mov byte [esp + 0xe8], 0x12
call fcn.00405a20
add esp, 8
test al, al
sete byte [esp + 0x27]
cmp dword [esp + 0xac], 8
jb 0x44e280
mov eax, dword [esp + 0x98]
push eax
call fcn.004b1c22
add esp, 4
xor ecx, ecx
mov byte [esp + 0xe0], 2
cmp dword [esp + 0x90], 8
mov dword [esp + 0xac], 7
mov dword [esp + 0xa8], 0
mov word [esp + 0x98], cx
jb 0x44e2bf
mov edx, dword [esp + 0x7c]
push edx
call fcn.004b1c22
add esp, 4
xor eax, eax
mov dword [esp + 0x90], 7
mov dword [esp + 0x8c], 0
mov word [esp + 0x7c], ax
cmp byte [esp + 0x27], al
je 0x44e311
push esi
mov edx, 0x50d750
call fcn.00404090
mov eax, 8
cmp dword [esi + 0x14], eax
jb 0x44e2f9
mov esi, dword [esi]
cmp dword [ebx + 0x14], eax
jb 0x44e300
mov ebx, dword [ebx]
push esi
push ebx
push 0x50d758
mov edx, 0xb8
jmp 0x44df75
mov ecx, dword [esp + 0x18]
push edi
call fcn.0044f1d0
push ebx
mov ecx, esi
mov edx, edi
call fcn.0044e970
call fcn.00443d80
mov ecx, dword [esp + 0x18]
push ecx
lea edi, [eax + 0x194]
call fcn.00441c10
mov byte [esp + 0x1b], 1
add esp, 4
test byte [0x5431e4], 1
jne 0x44e364
or dword [0x5431e4], 1
call fcn.00442d10
push 0x4ecbd0
call fcn.004b4336
add esp, 4
cmp byte [0x5431c6], 0
mov bl, byte [esp + 0x17]
lea ecx, [esp + 0x2c]
je 0x44e387
test bl, bl
je 0x44e380
call fcn.00412490
jmp 0x44e397
call fcn.00412550
jmp 0x44e397
test bl, bl
je 0x44e392
call fcn.004126d0
jmp 0x44e397
call fcn.00412790
movzx edx, bl
push edx
push str.end_Install.bResult_d
push str.SetupSetupModule.cpp
mov edx, 0xda
mov esi, 4
mov eax, 0x5430d8
call fcn.0042b3c0
add esp, 0xc
lea eax, [esp + 0x2c]
mov dword [esp + 0xe0], 0xffffffff
call fcn.00419bc0
mov al, bl
mov ecx, dword [esp + 0xd8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.004b1c2d
mov esp, ebp
pop ebp
ret 4