Function at 0x44ade0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x618ea3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x124
push ebx
push ebp
push esi
mov ebx, ecx
push edi
mov dword [esp + 0x14], ebx
call fcn.00448f50
mov eax, dword [ebx + 0x28]
xor edi, edi
cmp eax, edi
je 0x44ae30
lea ecx, [eax + 0x130]
call fcn.00438120
mov esi, dword [ebx + 0x28]
mov ecx, dword [esi]
cmp ecx, edi
je 0x44ae2e
mov eax, dword [ecx]
mov edx, dword [eax + 8]
call edx
mov dword [esi], edi
mov eax, dword [ebx + 0x2c]
cmp eax, edi
je 0x44ae47
push 0x8000
push edi
push eax
call dword [sym.imp.KERNEL32.dll_VirtualFree]
mov dword [ebx + 0x2c], edi
mov ebp, dword [esp + 0x144]
cmp ebp, edi
jne 0x44ae83
push 0xc
call fcn.005f7f03
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, edi
mov dword [esp + 0x13c], edi
je 0x44ae74
mov ecx, eax
call fcn.004489e0
jmp 0x44ae76
xor eax, eax
mov dword [esp + 0x13c], 0xffffffff
mov ebp, eax
mov esi, dword [ebx + 0x28]
add esi, 4
cmp ebp, edi
je 0x44ae96
mov eax, dword [ebp]
mov edx, dword [eax]
mov ecx, ebp
call edx
mov ecx, dword [esi]
cmp ecx, edi
je 0x44aea3
mov eax, dword [ecx]
mov edx, dword [eax + 4]
call edx
mov eax, dword [esp + 0x148]
mov dword [esi], ebp
mov esi, dword [esp + 0x15c]
cmp esi, 0x39
sbb ecx, ecx
and ecx, esi
imul ecx, ecx, 0x34
mov dword [ebx + 0x34], eax
mov eax, dword [ecx + 0x6b026c]
mov ecx, dword [esp + 0x160]
cmp ecx, edi
je 0x44aeea
cmp eax, edi
je 0x44aeea
lea edx, [eax*4]
push edx
push ecx
lea eax, [ebx + 0x54]
push eax
call fcn.005f7b00
add esp, 0xc
mov ecx, dword [esp + 0x170]
mov edx, dword [esp + 0x16c]
mov eax, dword [esp + 0x168]
push ecx
mov ecx, dword [esp + 0x168]
push edx
mov edx, dword [esp + 0x160]
push eax
mov eax, dword [esp + 0x160]
push ecx
mov ecx, dword [esp + 0x15c]
push esi
push edx
push eax
push ecx
mov ecx, ebx
call fcn.00449b10
cmp byte [ebx + 2], 0
je 0x44afce
push 0x198
call fcn.005f7f03
add esp, 4
mov dword [esp + 0x10], eax
cmp eax, edi
mov dword [esp + 0x13c], 1
je 0x44af5f
mov ecx, eax
call fcn.00436510
mov ebp, eax
jmp 0x44af61
xor ebp, ebp
mov esi, dword [ebx + 0x28]
add esi, 0x160
cmp ebp, edi
mov dword [esp + 0x13c], 0xffffffff
je 0x44af83
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
lea ecx, [ebp + 0x14]
call eax
mov eax, dword [esi]
cmp eax, edi
je 0x44af94
mov edx, dword [eax + 0x14]
lea ecx, [eax + 0x14]
mov eax, dword [edx + 4]
call eax
mov dword [esi], ebp
movzx edx, byte [ebx + 3]
mov ecx, dword [ebx + 0x28]
mov ecx, dword [ecx + 0x160]
push edx
call fcn.00436d80
test al, al
jne 0x44afce
lea eax, [esp + 0x2c]
push str.Cannot_start_filter_chain:_The_3D_accelerator_device_is_not_available.
push eax
call fcn.0051c348
add esp, 8
push 0x694d20
lea ecx, [esp + 0x30]
push ecx
call fcn.005f8355
mov edx, dword [ebx + 0x30]
push edx
mov ecx, ebx
call fcn.004486f0
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ebx + 0x30]
mov dword [esp + 0x68], ecx
mov ecx, dword [ebx + 0x28]
add ecx, 0x130
mov dword [esp + 0x6c], eax
call fcn.00438120
mov ebp, dword [esp + 0x150]
cmp ebp, edi
mov esi, dword [ebx + 0x28]
je 0x44b00d
mov edx, dword [ebp]
mov eax, dword [edx + 4]
mov ecx, ebp
call eax
mov ecx, dword [esi]
cmp ecx, edi
je 0x44b01a
mov edx, dword [ecx]
mov eax, dword [edx + 8]
call eax
mov dword [esi], ebp
mov eax, dword [ebx + 0x28]
mov ecx, dword [eax]
mov edx, dword [ecx]
add eax, 0x130
push eax
mov eax, dword [edx + 0x14]
call eax
mov edi, dword [ebx + 0x28]
xor eax, eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], eax
add edi, 0xb4
mov ecx, 0xa
lea esi, [esp + 0x80]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp]
mov eax, dword [edx + 0x18]
mov ecx, ebp
call eax
mov esi, eax
xor eax, eax
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], esi
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x44], eax
lea ecx, [esp + 0xd0]
mov dword [esp + 0x13c], 2
call fcn.00522611
mov edi, 0x6575c8
push str._input
lea ecx, [esp + 0x5c]
mov byte [esp + 0x140], 3
mov dword [esp + 0x5c], edi
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], edi
call fcn.00402370
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x74]
push edx
lea ecx, [esp + 0xd8]
mov byte [esp + 0x144], 4
call fcn.00449390
mov eax, dword [eax]
mov dword [eax + 0x10], ebp
mov dword [eax + 0x14], esi
mov eax, dword [esp + 0x58]
cmp eax, edi
mov byte [esp + 0x13c], 3
je 0x44b12c
push eax
call fcn.005f7371
add esp, 4
mov ecx, dword [esp + 0x14c]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
cmp eax, ecx
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x10], ecx
je 0x44b6c7
lea esp, [esp]
mov esi, dword [eax]
mov ecx, dword [esi + 8]
cmp byte [ecx + 0x368], 0
mov dword [esp + 0x54], esi
mov dword [esp + 0x18], ecx
je 0x44b6ae
call fcn.0043c2d0
mov edi, eax
mov eax, dword [esi + 0xc]
cmp eax, dword [esi + 0x10]
mov dword [esp + 0x30], edi
jne 0x44b1ac
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x3c], ecx
cmp dword [edi + 0x6c], 0
mov dword [esp + 0x20], 1
jl 0x44b271
lea edx, [esp + 0x24]
push edx
push 1
lea ecx, [esp + 0x40]
call fcn.004eb760
jmp 0x44b271
mov ecx, dword [esi + 0x10]
sub ecx, eax
mov eax, 0x2aaaaaab
imul ecx
mov eax, dword [esp + 0x44]
sub eax, dword [esp + 0x38]
sar edx, 1
mov esi, edx
shr esi, 0x1f
add esi, edx
lea ebx, [esi*8]
cmp ebx, eax
mov dword [esp + 0x20], esi
jbe 0x44b1e2
push esi
lea ecx, [esp + 0x3c]
call fcn.004487a0
mov ecx, dword [esp + 0x38]
add ecx, ebx
xor ebx, ebx
test esi, esi
mov dword [esp + 0x3c], ecx
jbe 0x44b271
xor edi, edi
mov edx, dword [esp + 0x54]
mov esi, dword [edx + 0xc]
mov eax, dword [esi + edi]
add esi, edi
cmp eax, dword [esi + 4]
je 0x44b705
push str._prev
push esi
call fcn.0042f000
add esp, 8
test al, al
je 0x44b230
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x28]
mov dword [ecx + ebx*8], ebp
mov edx, dword [esp + 0x38]
mov dword [edx + ebx*8 + 4], eax
jmp 0x44b261
push esi
lea ecx, [esp + 0x5c]
push ecx
lea ecx, [esp + 0xd8]
call fcn.004484d0
mov eax, dword [eax]
test eax, eax
je 0x44b730
mov edx, dword [eax + 0x10]
mov ecx, dword [esp + 0x38]
mov dword [ecx + ebx*8], edx
mov edx, dword [eax + 0x14]
mov eax, dword [esp + 0x38]
mov dword [eax + ebx*8 + 4], edx
add ebx, 1
add edi, 0xc
cmp ebx, dword [esp + 0x20]
jb 0x44b1f4
mov edi, dword [esp + 0x30]
mov ecx, dword [edi + 0x6c]
mov esi, dword [esp + 0x20]
add ecx, 1
cmp esi, ecx
jb 0x44b75e
mov edx, dword [edi + 0x70]
add edx, 1
cmp esi, edx
ja 0x44b791
mov ecx, dword [esp + 0x18]
call fcn.0043e9a0
test esi, esi
mov dword [esp + 0x48], 0
jbe 0x44b5a0
mov eax, esi
neg eax
add eax, eax
add eax, eax
add eax, eax
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x4c]
lea ebp, [ecx + eax]
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x380]
mov esi, dword [ecx + 0x390]
add eax, dword [esp + 0x50]
mov ecx, dword [ebp]
mov edx, dword [ecx]
add esi, dword [esp + 0x48]
mov dword [esp + 0x34], eax
mov eax, dword [edx + 0x34]
call eax
cmp byte [esi], 0
mov edi, eax
mov ebx, dword [edi + 0x14]
jne 0x44b326
cmp ebx, 0x10001
je 0x44b30f
cmp ebx, 0x10002
jne 0x44b533
mov ecx, dword [esp + 0x18]
add ecx, 0x368
call fcn.0043c210
test al, al
je 0x44b533
mov eax, dword [esp + 0x34]
mov esi, dword [eax + 0xe0]
lea ecx, [esp + 0xc0]
push ecx
mov ecx, dword [esp + 0x1c]
add eax, 0xcc
add ecx, 0x368
mov dword [esp + 0x34], eax
call fcn.0043ce60
mov eax, dword [edi + 0xc]
mov edi, dword [edi + 8]
sub eax, dword [esp + 0xcc]
sub edi, dword [esp + 0xc8]
cmp esi, 0x10001
mov edx, dword [esp + 0xc0]
mov ecx, dword [esp + 0xc4]
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], edi
mov dword [esp + 0x7c], eax
je 0x44b396
cmp esi, 0x10002
jne 0x44b498
cmp ebx, 0x10001
je 0x44b3a6
cmp ebx, 0x10002
jne 0x44b3b6
mov ecx, dword [esp + 0x14]
push esi
push ebp
call fcn.0044ac80
jmp 0x44b533
cmp ebx, 8
je 0x44b466
cmp ebx, 0xd
je 0x44b466
push 0x370
call fcn.005f7f03
add esp, 4
mov dword [esp + 0x64], eax
test eax, eax
mov byte [esp + 0x13c], 5
je 0x44b3f0
mov ecx, eax
call fcn.00439770
mov edi, eax
jmp 0x44b3f2
xor edi, edi
test edi, edi
mov byte [esp + 0x13c], 3
mov dword [esp + 0x64], edi
je 0x44b40b
mov edx, dword [edi]
mov eax, dword [edx + 4]
mov ecx, edi
call eax
cmp esi, 0x10002
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 8]
push 0x10
push ecx
mov byte [esp + 0x144], 6
lea eax, [esp + 0x88]
push edx
jne 0x44b434
push 0xd
jmp 0x44b436
push 8
push eax
call fcn.00557280
add esp, 0x14
lea ecx, [esp + 0x80]
push ecx
mov ecx, dword [esp + 0x18]
push ebp
call fcn.0044a700
test edi, edi
mov byte [esp + 0x13c], 3
je 0x44b466
mov edx, dword [edi]
mov eax, dword [edx + 8]
mov ecx, edi
call eax
lea ecx, [esp + 0x70]
push ecx
mov ecx, dword [esp + 0x18]
push ebp
call fcn.0044a960
mov ecx, dword [ebp]
mov edx, dword [ecx]
mov eax, dword [edx + 0x34]
call eax
cmp dword [eax + 0x14], esi
je 0x44b533
mov ecx, dword [esp + 0x14]
push esi
push ebp
call fcn.0044ac80
jmp 0x44b533
cmp ebx, 0x10001
mov byte [esp + 0x1f], 1
je 0x44b4ad
cmp ebx, 0x10002
jne 0x44b51f
mov ecx, dword [ebp]
mov edx, dword [ecx]
mov eax, dword [edx + 0x34]
call eax
mov ecx, dword [eax + 0x14]
sub ecx, 0x10001
neg ecx
sbb ecx, ecx
and ecx, 5
add ecx, 8
cmp esi, ecx
jne 0x44b4ea
mov esi, dword [esp + 0x34]
add esi, 0xcc
mov ecx, 0xa
lea edi, [esp + 0x80]
rep movsd dword es:[edi], dword [esi]
xor bl, bl
jmp 0x44b509
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 8]
push 0x10
push edx
push eax
push ecx
lea ecx, [esp + 0x90]
push ecx
call fcn.00557280
mov bl, byte [esp + 0x33]
add esp, 0x14
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x80]
push edx
push ebp
call fcn.0044ab40
test bl, bl
je 0x44b533
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x14]
add eax, 0xcc
push eax
push ebp
call fcn.0044a700
mov eax, dword [esp + 0x34]
cmp byte [eax + 0x2e8], 0
je 0x44b57e
lea esi, [eax + 0xf8]
lea eax, [esp + 0x80]
push eax
mov ecx, esi
call fcn.0043cc90
lea ecx, [esp + 0xf4]
push ecx
mov ecx, esi
call fcn.0043cc90
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0xf4]
push edx
lea eax, [esp + 0x84]
push eax
push ebp
call fcn.0044a830
mov eax, dword [esp + 0x48]
add dword [esp + 0x4c], 8
add dword [esp + 0x50], 0x2f0
add eax, 1
cmp eax, dword [esp + 0x20]
mov dword [esp + 0x48], eax
jb 0x44b2c0
mov ecx, dword [esp + 0x14]
add ecx, 0x38
call fcn.00449a60
mov esi, dword [esp + 0x18]
mov edx, dword [esi]
mov ebx, eax
mov eax, dword [edx + 4]
mov ecx, esi
call eax
mov ecx, dword [ebx]
test ecx, ecx
je 0x44b5c8
mov edx, dword [ecx]
mov eax, dword [edx + 8]
call eax
mov edi, dword [esp + 0x20]
mov dword [ebx], esi
mov ecx, dword [ebx + 0x10]
sub ecx, dword [ebx + 4]
add ebx, 4
lea ebp, [edi*4]
cmp ebp, ecx
jbe 0x44b5ea
push edi
mov ecx, ebx
call fcn.005ee260
mov edx, dword [ebx]
add edx, ebp
xor eax, eax
test edi, edi
mov dword [ebx + 4], edx
jbe 0x44b617
mov ecx, edi
neg ecx
add ecx, ecx
add ecx, ecx
add ecx, ecx
mov ebp, dword [esp + 0x3c]
mov ebp, dword [ecx + ebp]
mov edx, dword [ebx]
mov dword [edx + eax*4], ebp
add eax, 1
add ecx, 8
cmp eax, edi
jb 0x44b601
lea eax, [esp + 0x68]
push eax
mov ecx, esi
call fcn.0043d8c0
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x28]
mov edx, dword [esi]
mov edx, dword [edx + 0x14]
add ecx, 0x130
push ecx
mov ecx, esi
call edx
xor ebx, ebx
test edi, edi
jbe 0x44b66d
mov ebp, edi
neg ebp
add ebp, ebp
add ebp, ebp
add ebp, ebp
lea ebx, [ebx]
mov ecx, dword [esp + 0x3c]
mov edx, dword [ecx + ebp + 4]
mov eax, dword [esi]
mov eax, dword [eax + 0x10]
push edx
push ebx
mov ecx, esi
call eax
add ebx, 1
add ebp, 8
cmp ebx, edi
jb 0x44b650
mov edx, dword [esi]
mov eax, dword [edx + 0x18]
mov ebp, esi
mov ecx, esi
mov dword [esp + 0x24], ebp
call eax
mov esi, eax
mov eax, dword [esp + 0x54]
mov ecx, dword [eax + 0x18]
add eax, 0x18
cmp ecx, dword [eax + 4]
mov dword [esp + 0x28], esi
je 0x44b6ae
push eax
lea edx, [esp + 0xe8]
push edx
lea ecx, [esp + 0xd8]
call fcn.00449390
mov eax, dword [eax]
mov dword [eax + 0x10], ebp
mov dword [eax + 0x14], esi
mov eax, dword [esp + 0x2c]
add eax, 4
cmp eax, dword [esp + 0x10]
mov dword [esp + 0x2c], eax
jne 0x44b150
mov ebx, dword [esp + 0x14]
mov edx, dword [ebp]
mov eax, dword [edx + 0x34]
mov ecx, ebp
call eax
mov ecx, dword [eax + 0x14]
cmp ecx, 0x10001
jne 0x44b7c4
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 8]
push 0x10
push ecx
push edx
lea eax, [esp + 0x8c]
push 8
push eax
call fcn.00557280
lea ecx, [esp + 0x94]
jmp 0x44b7ec
mov ecx, dword [esp + 0x18]
call fcn.0043c2c0
push eax
lea eax, [esp + 0x14]
push str.Cannot_start_filters:_an_instance_of_filter___s__has_an_unconnected_input.
push eax
call fcn.0051c348
add esp, 0xc
push 0x694d20
lea ecx, [esp + 0x14]
push ecx
call fcn.005f8355
mov esi, dword [esi]
mov ecx, dword [esp + 0x18]
push esi
call fcn.0043c2c0
push eax
lea edx, [esp + 0x18]
push str.Cannot_start_filters:_an_instance_of_filter___s__references_an_unknown_output_name:__s
push edx
call fcn.0051c348
add esp, 0x10
push 0x694d20
lea eax, [esp + 0x14]
push eax
call fcn.005f8355
mov ecx, dword [edi + 0x6c]
add ecx, 1
push esi
push ecx
mov ecx, dword [esp + 0x20]
call fcn.0043c2c0
push eax
lea edx, [esp + 0x1c]
push str.Cannot_start_filters:_an_instance_of_filter___s__has_too_few_inputs__expected__u__got__u_
push edx
call fcn.0051c348
add esp, 0x14
push 0x694d20
lea eax, [esp + 0x14]
push eax
call fcn.005f8355
mov ecx, dword [edi + 0x70]
add ecx, 1
push esi
push ecx
mov ecx, dword [esp + 0x20]
call fcn.0043c2c0
push eax
lea edx, [esp + 0x1c]
push 0x630250
push edx
call fcn.0051c348
add esp, 0x14
push 0x694d20
lea eax, [esp + 0x14]
push eax
call fcn.005f8355
cmp ecx, 0x10002
jne 0x44b7fc
mov ecx, dword [eax + 0xc]
mov edx, dword [eax + 8]
push 0x10
push ecx
push edx
lea eax, [esp + 0x100]
push 0xd
push eax
call fcn.00557280
lea ecx, [esp + 0x108]
add esp, 0x14
push ecx
lea edx, [esp + 0x28]
push edx
mov ecx, ebx
call fcn.0044ab40
lea ecx, [esp + 0xd0]
call fcn.00448890
mov eax, dword [esp + 0xd8]
cmp eax, 0x657edc
je 0x44b81f
push eax
call fcn.005f7e65
add esp, 4
mov eax, dword [esp + 0x38]
test eax, eax
je 0x44b830
push eax
call fcn.005f7a6f
add esp, 4
mov ecx, dword [esp + 0x134]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x130
ret 0x30