Function at 0x44d650
Capabilities:
Delete file
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4eb519
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 + 0x24], eax
mov eax, dword [0x5430d8]
mov edi, edx
mov dword [esp + 0x20], edi
mov dword [esp + 0x28], ecx
test eax, eax
je 0x44d6d8
cmp dword [eax + 8], 4
mov ebx, eax
jl 0x44d6d8
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 0x44d71f
or dword [0x5432a4], eax
mov dword [esp + 0xe0], 0
call fcn.0043fb30
push 0x4ec560
call fcn.004b3d86
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 0x44d811
or dword [0x5431e4], 1
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
cmp byte [0x5431c6], 0
je 0x44d825
lea esi, [esp + 0x2c]
call fcn.004123d0
jmp 0x44d82e
lea ecx, [esp + 0x2c]
call fcn.00412610
mov eax, dword [edi + 0x8c]
mov ebx, 1
test eax, eax
js 0x44da94
cmp eax, ebx
jle 0x44d884
cmp eax, 2
jne 0x44da94
test byte [0x5431e4], bl
jne 0x44d86e
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
push 0xffffffffffffffff
push 0
lea ecx, [edi + 0x70]
push 0x5430fc
call fcn.00404530
jmp 0x44da94
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 + 0x64], cx
mov ebx, 7
xor esi, esi
push str.WEMediaChannelName
lea ecx, [esp + 0x68]
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], 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 + 0x84]
mov dword [esp + 0x98], ebx
mov dword [esp + 0x94], esi
mov word [esp + 0x84], ax
call fcn.00404960
mov byte [esp + 0xe0], 8
test byte [0x5431e4], 1
jne 0x44d94e
or dword [0x5431e4], 1
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
movzx ecx, byte [0x5431c2]
push ecx
lea ecx, [esp + 0x80]
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 0x44d998
mov edx, dword [esp + 0x98]
push edx
call fcn.004b1676
add esp, 4
xor edi, edi
xor eax, eax
cmp dword [esp + 0x90], 8
mov dword [esp + 0xac], ebx
mov dword [esp + 0xa8], edi
mov word [esp + 0x98], ax
jb 0x44d9c9
mov ecx, dword [esp + 0x7c]
push ecx
call fcn.004b1676
add esp, 4
xor edx, edx
cmp dword [esp + 0x50], 8
mov dword [esp + 0x90], ebx
mov dword [esp + 0x8c], edi
mov word [esp + 0x7c], dx
jb 0x44d9f2
mov eax, dword [esp + 0x3c]
push eax
call fcn.004b1676
add esp, 4
xor ecx, ecx
mov byte [esp + 0xe0], 5
cmp dword [esp + 0x74], 8
mov dword [esp + 0x50], ebx
mov dword [esp + 0x4c], edi
mov word [esp + 0x3c], cx
jb 0x44da1d
mov edx, dword [esp + 0x60]
push edx
call fcn.004b1676
add esp, 4
mov ecx, dword [esp + 0x20]
xor eax, eax
mov dword [esp + 0x74], ebx
mov dword [esp + 0x70], edi
mov word [esp + 0x60], ax
cmp dword [ecx + 0x80], edi
jne 0x44da69
test byte [0x5431e4], 1
jne 0x44da5a
or dword [0x5431e4], 1
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
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 0x44da8b
mov edx, dword [esp + 0xb4]
push edx
call fcn.004b1676
add esp, 4
mov edi, dword [esp + 0x20]
mov ebx, 1
mov eax, dword [edi + 0x80]
lea esi, [edi + 0x70]
push 0x50d894
mov edi, 0xc
mov ecx, esi
call fcn.00407850
test eax, eax
jne 0x44daf5
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 0x44dafa
mov eax, dword [esp + 0xb4]
push eax
call fcn.004b1676
add esp, 4
jmp 0x44dafa
mov edi, 8
cmp dword [esi + 0x14], edi
jb 0x44db01
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 0x44db42
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
cmp byte [0x5431c1], 0
je 0x44dc59
test byte [0x5431e4], 1
jne 0x44db70
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
test byte [0x5434ac], 1
jne 0x44db91
or dword [0x5434ac], ebx
call fcn.004565e0
push 0x4ec570
call fcn.004b3d86
add esp, 4
push 0xffffffffffffffff
push 0
push 0x543134
mov ecx, 0x5434cc
call fcn.00404530
test byte [0x5431e4], 1
jne 0x44dbc5
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
test byte [0x5434ac], 1
jne 0x44dbe6
or dword [0x5434ac], ebx
call fcn.004565e0
push 0x4ec570
call fcn.004b3d86
add esp, 4
push 0xffffffffffffffff
push 0
push 0x543150
mov ecx, 0x5434b0
call fcn.00404530
test byte [0x5431e4], 1
jne 0x44dc1a
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
test byte [0x5434ac], 1
mov cl, byte [0x5431c2]
mov byte [esp + 0x18], cl
jne 0x44dc45
or dword [0x5434ac], ebx
call fcn.004565e0
push 0x4ec570
call fcn.004b3d86
add esp, 4
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x24]
push edx
push eax
mov ecx, 0x5434b0
call fcn.00457130
test byte [0x5431e4], 1
jne 0x44dc7a
or dword [0x5431e4], ebx
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
cmp byte [0x5431c5], 0
je 0x44dd4c
push 0
lea esi, [esp + 0x64]
call fcn.00405180
add esp, 4
mov byte [esp + 0xe0], 0xb
mov eax, dword [esp + 0x60]
cmp dword [esp + 0x74], edi
jae 0x44dca9
mov eax, esi
mov ecx, dword [esp + 0x70]
mov ebx, dword [esp + 0x20]
push ecx
push eax
add ebx, 0x54
push ebx
xor eax, eax
call fcn.0040d750
test eax, eax
jne 0x44dd30
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 0x44dd06
mov edx, dword [esp + 0xb4]
push edx
call fcn.004b1676
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 + 0x74], 8
jb 0x44dd4c
mov eax, dword [esp + 0x60]
push eax
call fcn.004b1676
add esp, 4
mov edi, dword [esp + 0x20]
cmp dword [edi + 0x68], 8
lea eax, [edi + 0x54]
mov dword [esp + 0x18], eax
jb 0x44dd5f
mov eax, dword [eax]
push eax
push 0
call dword [sym.imp.SHELL32.dll_SHCreateDirectory]
test byte [0x5431e4], 1
mov esi, 1
jne 0x44dd8e
or dword [0x5431e4], esi
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
cmp byte [0x5431c0], 0
je 0x44de84
test byte [0x5431e4], 1
jne 0x44ddbc
or dword [0x5431e4], esi
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
cmp byte [0x5431c4], 0
jne 0x44de84
test byte [0x5431e4], 1
jne 0x44ddea
or dword [0x5431e4], esi
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
push 0xffffffffffffffff
push 0
push 0x5430e0
lea ecx, [edi + 0x14]
call fcn.00404530
test byte [0x5431e4], 1
jne 0x44de1c
or dword [0x5431e4], esi
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
push 0xffffffffffffffff
push 0
push 0x543118
lea ecx, [edi + 0x30]
call fcn.00404530
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x24]
push ebx
mov ecx, edi
call fcn.0044e270
test al, al
jne 0x44e01d
mov ecx, 8
cmp dword [ebx + 0x14], ecx
jb 0x44de51
mov ebx, dword [ebx]
mov eax, dword [esp + 0x24]
cmp dword [eax + 0x14], ecx
jb 0x44de5c
mov eax, dword [eax]
push ebx
push eax
push 0x50d638
mov edx, 0x80
push str.SetupSetupModule.cpp
mov esi, 2
mov eax, 0x5430d8
call fcn.0042b3c0
add esp, 0x10
jmp 0x44e151
lea esi, [esp + 0x98]
call fcn.0040f500
push eax
mov eax, str.Package.zip
lea ecx, [esp + 0x80]
mov byte [esp + 0xe4], 0xd
call fcn.004039a0
add esp, 4
mov bl, 0xf
mov byte [esp + 0xe0], bl
cmp dword [esp + 0xac], 8
jb 0x44ded0
mov ecx, dword [esp + 0x98]
push ecx
call fcn.004b1676
add esp, 4
mov esi, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
xor edx, edx
lea eax, [esp + 0x7c]
push eax
mov word [esp + 0x9c], dx
push edi
mov edx, esi
mov dword [esp + 0xb4], 7
mov dword [esp + 0xb0], 0
call fcn.0044f540
test al, al
jne 0x44df2e
mov byte [esp + 0xe0], 2
cmp dword [esp + 0x90], 8
jb 0x44e151
mov ecx, dword [esp + 0x7c]
push ecx
call fcn.004b1676
jmp 0x44e14e
test byte [0x5432a4], 1
jne 0x44df5f
or dword [0x5432a4], 1
mov byte [esp + 0xe0], 0x10
call fcn.0043fb30
push 0x4ec560
call fcn.004b3d86
add esp, 4
mov byte [esp + 0xe0], bl
mov ebx, 0x54342c
call fcn.00441d60
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
push 0x54307c
push eax
lea ecx, [esp + 0x44]
push ecx
mov eax, edi
lea ecx, [esp + 0x88]
mov dword [esp + 0x48], 0x44e220
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], 0x4503b0
call fcn.004057d0
add esp, 0xc
test al, al
jne 0x44dfdc
push 3
push 0x50d690
mov ecx, esi
call fcn.00404960
mov byte [esp + 0xe0], 2
cmp dword [esp + 0x90], 8
jb 0x44e151
mov edx, dword [esp + 0x7c]
push edx
call fcn.004b1676
jmp 0x44e14e
mov eax, dword [esp + 0x7c]
mov esi, 8
cmp dword [esp + 0x90], esi
jae 0x44dff2
lea eax, [esp + 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov byte [esp + 0xe0], 2
cmp dword [esp + 0x90], esi
jb 0x44e017
mov eax, dword [esp + 0x7c]
push eax
call fcn.004b1676
add esp, 4
mov ebx, dword [esp + 0x28]
jmp 0x44e021
mov edi, dword [esp + 0x18]
push str.Asset
lea ecx, [esp + 0x64]
push edi
push ecx
call fcn.00403a10
add esp, 0xc
mov esi, eax
push str.Asset.7z
lea edx, [esp + 0x9c]
push edi
push edx
mov byte [esp + 0xec], 0x11
call fcn.00403a10
add esp, 0xc
mov edi, dword [esp + 0x24]
push 0x54307c
push edi
mov edx, esi
mov ecx, eax
mov byte [esp + 0xe8], 0x12
call fcn.00405a20
add esp, 8
test al, al
mov esi, 8
sete byte [esp + 0x1f]
cmp dword [esp + 0xac], esi
jb 0x44e097
mov eax, dword [esp + 0x98]
push eax
call fcn.004b1676
add esp, 4
xor ecx, ecx
mov byte [esp + 0xe0], 2
mov dword [esp + 0xac], 7
mov dword [esp + 0xa8], 0
mov word [esp + 0x98], cx
cmp dword [esp + 0x74], esi
jb 0x44e0d2
mov edx, dword [esp + 0x60]
push edx
call fcn.004b1676
add esp, 4
xor eax, eax
mov dword [esp + 0x74], 7
mov dword [esp + 0x70], 0
mov word [esp + 0x60], ax
cmp byte [esp + 0x1f], al
je 0x44e11c
push 3
push 0x50d6b8
mov ecx, ebx
call fcn.00404960
cmp dword [ebx + 0x14], esi
jb 0x44e104
mov ebx, dword [ebx]
cmp dword [edi + 0x14], esi
jb 0x44e10b
mov edi, dword [edi]
push ebx
push edi
push 0x50d6c0
mov edx, 0xb8
jmp 0x44de68
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
push esi
call fcn.0044ece0
push edi
mov ecx, ebx
mov edx, esi
call fcn.0044e480
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 0x44e173
or dword [0x5431e4], 1
call fcn.00442d10
push 0x4ec540
call fcn.004b3d86
add esp, 4
cmp byte [0x5431c6], 0
mov bl, byte [esp + 0x17]
lea ecx, [esp + 0x2c]
je 0x44e196
test bl, bl
je 0x44e18f
call fcn.00412490
jmp 0x44e1a6
call fcn.00412550
jmp 0x44e1a6
test bl, bl
je 0x44e1a1
call fcn.004126d0
jmp 0x44e1a6
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.004b1681
mov esp, ebp
pop ebp
ret 4