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

Disassembly:
push 0xffffffffffffffff
push 0x4f5c90
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x58
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov ebx, dword [0x4f94a0]
push 0
push 0
mov eax, dword [edi + 0xcc]
push 0x1004
mov dword [esp + 0x24], edi
mov eax, dword [eax]
push eax
call ebx
mov esi, dword [esp + 0x78]
cmp esi, 0xffffffff
jne 0x4b0c35
test eax, eax
jle 0x4b0c35
mov eax, dword [edi + 0xcc]
push 2
push esi
push 0x100c
mov ecx, dword [eax]
push ecx
call ebx
mov esi, eax
inc esi
neg esi
sbb esi, esi
and esi, eax
mov edx, dword [0x50a0e0]
mov dword [esp + 0x10], edx
mov ebx, dword [edi + 0xcc]
mov dword [esp + 0x70], 0
test ebx, ebx
je 0x4b165b
mov ecx, 0xa
xor eax, eax
lea edi, [esp + 0x40]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x10]
mov dword [esp + 0x48], 2
call fcn.004069f0
mov edi, 0x100
lea ecx, [esp + 0x10]
push edi
mov dword [esp + 0x5c], edi
call fcn.004562d0
test eax, eax
mov dword [esp + 0x54], eax
je 0x4b0cc3
mov ecx, dword [ebx]
lea eax, [esp + 0x40]
push eax
push esi
push 0x1073
push ecx
call dword [0x4f94a0]
mov ebp, eax
lea edx, [edi - 1]
cmp ebp, edx
jl 0x4b0cc5
add edi, edi
lea ecx, [esp + 0x10]
push edi
mov dword [esp + 0x5c], edi
call fcn.004562d0
test eax, eax
mov dword [esp + 0x54], eax
jne 0x4b0c8e
xor ebp, ebp
or edi, 0xffffffff
lea ecx, [esp + 0x10]
push edi
call fcn.00407070
test ebp, ebp
je 0x4b165b
push 0
push str.taskid:
lea ecx, [esp + 0x18]
mov dword [esp + 0x38], edi
mov dword [esp + 0x30], edi
call fcn.004147e0
test eax, eax
jl 0x4b0d53
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x78]
mov eax, dword [eax - 8]
add eax, 0xfffffff9
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.00407130
mov edx, dword [esp + 0x78]
push edx
call fcn.004dd24b
mov edx, dword [0x50a0e4]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x7c]
add esp, 4
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4b0f74
add eax, 0xfffffff4
push eax
call dword [0x4f9320]
test eax, eax
jg 0x4b0f74
mov edx, dword [esp + 0x78]
lea eax, [edx - 0xc]
jmp 0x4b0f6b
push 0
push str.tindex:
lea ecx, [esp + 0x18]
call fcn.004147e0
test eax, eax
jl 0x4b165b
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x78]
mov eax, dword [eax - 8]
add eax, 0xfffffff9
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.00407130
mov edx, dword [esp + 0x78]
mov byte [esp + 0x70], 1
push edx
call fcn.004dd24b
lea ebx, [esi - 1]
add esp, 4
test ebx, ebx
mov dword [esp + 0x28], eax
jl 0x4b0f40
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x4b0de5
mov ecx, dword [eax - 0xc]
test ecx, ecx
jl 0x4b0dc2
lea ecx, [esp + 0x10]
call fcn.004020f0
jmp 0x4b0de5
mov eax, 0x51d42c
test eax, eax
je 0x4b0dd6
push 0x51d42c
call dword [0x4f9318]
push 0x51d42c
push eax
lea ecx, [esp + 0x18]
call fcn.00402200
mov ecx, dword [esp + 0x18]
xor eax, eax
lea edi, [esp + 0x40]
mov ebp, dword [ecx + 0xcc]
mov ecx, 0xa
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x10]
mov dword [esp + 0x48], 2
call fcn.004069f0
mov esi, 0x100
lea ecx, [esp + 0x10]
push esi
mov dword [esp + 0x5c], esi
call fcn.004562d0
test eax, eax
mov dword [esp + 0x54], eax
je 0x4b0e5e
mov eax, dword [ebp]
lea edx, [esp + 0x40]
push edx
push ebx
push 0x1073
push eax
call dword [0x4f94a0]
mov edi, eax
lea ecx, [esi - 1]
cmp edi, ecx
jl 0x4b0e60
add esi, esi
lea ecx, [esp + 0x10]
push esi
mov dword [esp + 0x5c], esi
call fcn.004562d0
test eax, eax
mov dword [esp + 0x54], eax
jne 0x4b0e28
xor edi, edi
push 0xffffffffffffffff
lea ecx, [esp + 0x14]
call fcn.00407070
test edi, edi
je 0x4b0e83
push 0
push str.taskid:
lea ecx, [esp + 0x18]
call fcn.004147e0
test eax, eax
jge 0x4b0e8f
dec ebx
jns 0x4b0da5
jmp 0x4b0f40
mov edx, dword [esp + 0x10]
lea ecx, [esp + 0x10]
mov eax, dword [edx - 8]
add eax, 0xfffffff9
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.00407130
mov esi, eax
mov eax, dword [esi]
mov ecx, dword [esp + 0x78]
cmp ecx, eax
mov byte [esp + 0x70], 2
je 0x4b0f00
mov edx, dword [ecx - 0xc]
test edx, edx
jge 0x4b0ecd
mov edx, dword [0x50a0e4]
add ecx, 0xfffffff4
cmp ecx, edx
jne 0x4b0ed4
mov ecx, dword [eax - 0xc]
test ecx, ecx
jge 0x4b0ee7
mov ecx, dword [eax - 8]
push eax
push ecx
lea ecx, [esp + 0x80]
call fcn.00402200
jmp 0x4b0f00
lea ecx, [esp + 0x78]
call fcn.004020f0
mov esi, dword [esi]
mov dword [esp + 0x78], esi
add esi, 0xfffffff4
push esi
call dword [0x4f9310]
mov eax, dword [esp + 0x38]
mov ecx, dword [0x50a0e4]
lea edx, [eax - 0xc]
cmp edx, ecx
je 0x4b0f2f
add eax, 0xfffffff4
push eax
call dword [0x4f9320]
test eax, eax
jg 0x4b0f2f
mov eax, dword [esp + 0x38]
add eax, 0xfffffff4
push eax
call fcn.004dcaa6
add esp, 4
mov ecx, dword [esp + 0x78]
push ecx
call fcn.004dd24b
add esp, 4
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x78]
mov ecx, dword [0x50a0e4]
mov byte [esp + 0x70], 0
lea edx, [eax - 0xc]
cmp edx, ecx
je 0x4b0f74
add eax, 0xfffffff4
push eax
call dword [0x4f9320]
test eax, eax
jg 0x4b0f74
mov eax, dword [esp + 0x78]
add eax, 0xfffffff4
push eax
call fcn.004dcaa6
add esp, 4
mov eax, dword [esp + 0x30]
test eax, eax
jle 0x4b165b
push 0x214
call fcn.004dcb8f
mov esi, dword [esp + 0x1c]
mov ebp, eax
mov ecx, 0x85
xor eax, eax
mov edi, ebp
add esp, 4
rep stosd dword es:[edi], eax
mov ecx, dword [esi + 0x13c]
mov dword [esp + 0x38], ebp
test ecx, ecx
je 0x4b164e
mov ebx, dword [esp + 0x30]
push 1
push 0x214
push ebp
push ebx
call fcn.00494f30
test eax, eax
jle 0x4b164e
mov eax, dword [ebp + 0x40]
test eax, eax
jne 0x4b1029
mov eax, dword [ebp + 0x38]
test eax, eax
jne 0x4b1029
mov ecx, dword [esi + 0x13c]
push 1
push ebx
call fcn.00495010
test ebp, ebp
je 0x4b0ff3
push ebp
call fcn.004dcaa6
add esp, 4
mov eax, dword [esp + 0x10]
mov edx, dword [0x50a0e4]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4b1022
add eax, 0xfffffff4
push eax
call dword [0x4f9320]
test eax, eax
jg 0x4b1022
mov edx, dword [esp + 0x10]
add edx, 0xfffffff4
push edx
call fcn.004dcaa6
add esp, 4
xor eax, eax
jmp 0x4b1669
mov eax, dword [0x50a0e0]
lea esi, [ebp + 0x5f]
test esi, esi
mov dword [esp + 0x2c], eax
je 0x4b106f
push esi
call dword [0x4f92f4]
mov edi, eax
test edi, edi
je 0x4b106f
push edi
lea ecx, [esp + 0x30]
call fcn.00402090
test eax, eax
je 0x4b106f
mov ecx, dword [esp + 0x2c]
inc edi
push edi
push esi
push ecx
call fcn.00409560
add esp, 0xc
lea ecx, [esp + 0x2c]
push 0xffffffffffffffff
call fcn.00407070
mov edx, dword [0x50a0e0]
mov dword [esp + 0x78], edx
push 0
push 0x7c
lea ecx, [esp + 0x34]
mov byte [esp + 0x78], 4
call fcn.00417230
test eax, eax
jle 0x4b1169
push eax
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x34]
call fcn.004072a0
mov esi, eax
mov eax, dword [esi]
mov ecx, dword [esp + 0x78]
cmp ecx, eax
mov byte [esp + 0x70], 5
je 0x4b10fa
mov edx, dword [ecx - 0xc]
test edx, edx
jge 0x4b10c7
mov edx, dword [0x50a0e4]
add ecx, 0xfffffff4
cmp ecx, edx
jne 0x4b10ce
mov ecx, dword [eax - 0xc]
test ecx, ecx
jge 0x4b10e1
mov ecx, dword [eax - 8]
push eax
push ecx
lea ecx, [esp + 0x80]
call fcn.00402200
jmp 0x4b10fa
lea ecx, [esp + 0x78]
call fcn.004020f0
mov esi, dword [esi]
mov dword [esp + 0x78], esi
add esi, 0xfffffff4
push esi
call dword [0x4f9310]
mov eax, dword [esp + 0x34]
mov ecx, dword [0x50a0e4]
mov byte [esp + 0x70], 4
lea edx, [eax - 0xc]
cmp edx, ecx
je 0x4b112e
add eax, 0xfffffff4
push eax
call dword [0x4f9320]
test eax, eax
jg 0x4b112e
mov eax, dword [esp + 0x34]
add eax, 0xfffffff4
push eax
call fcn.004dcaa6
add esp, 4
mov cx, word [ebp + 0x5c]
push ecx
call dword [0x4f9640]
cmp ax, 1
jbe 0x4b1169
mov edx, 0x50b02c
test edx, edx
jne 0x4b114c
xor eax, eax
jmp 0x4b1157
push 0x50b02c
call dword [0x4f9318]
push 0x50b02c
push eax
lea ecx, [esp + 0x80]
call fcn.00406dd0
mov eax, dword [ebp + 0x34]
mov ecx, dword [ebp + 0x3c]
cmp eax, ecx
mov dword [esp + 0x34], 0
jne 0x4b11a1
mov eax, dword [ebp + 0x40]
mov ecx, dword [ebp + 0x38]
cmp ecx, eax
jne 0x4b11a1
test eax, eax
je 0x4b11a1
mov cl, byte [ebp + 0x5e]
mov edx, 0
shr ecx, 1
and ecx, 1
sete dl
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x34], edx
mov eax, dword [esp + 0x18]
push 0
push 0
push ebx
mov ecx, dword [eax + 0x13c]
call fcn.00494cc0
mov esi, eax
test esi, esi
jle 0x4b157a
push esi
call fcn.004dcb8f
mov ecx, dword [esp + 0x1c]
add esp, 4
mov edi, eax
mov ecx, dword [ecx + 0x13c]
push esi
push edi
push ebx
mov dword [esp + 0x48], edi
call fcn.00494cc0
test eax, eax
mov dword [esp + 0x1c], eax
jle 0x4b1567
mov esi, dword [str..qmv_.m4v_.f4v_.tim_.swf_.csf_.scm_.ts_.tp_.mkv_.dat_.vob_.qt_.ram_.wav_.wmv_.asf_.rm_.rmvb_.mov_.avi_.mpg_.mpeg_.mpe_.3gp_.mp2_.mp4_.flv_._mv_.wm_.rp_.rpm_.rt_.rsc_.3gp2_.3gpp_.acc_.aif_.aifc_.aiff_.asx_.bik_.flc_.roq_.d2v_.dsa_.dss_.dsv_.m1v_.m2p_.m2v_.m4b_.mkv_.mod_.ogm_.pmp_.pm2_.pss_.m4p_.mv_.m2ts_.evo_.3g2_.wmp_.wm_.ivf_.rmm_.mjp_.pva_.rat_.dvd_.smk_.tpr_.vg2_.vid_.vp6_.vp7_.amv_.fli_.pmp2_.mts_.drc]
mov edx, dword [0x50a0e0]
test esi, esi
mov dword [esp + 0x24], edx
je 0x4b1249
mov eax, esi
shr eax, 0x10
jne 0x4b1219
and esi, 0xffff
lea ecx, [esp + 0x24]
push esi
call fcn.00407b70
jmp 0x4b1249
push esi
call dword [0x4f9318]
mov edi, eax
test edi, edi
je 0x4b1249
push edi
lea ecx, [esp + 0x28]
call fcn.00402090
test eax, eax
je 0x4b1249
lea ecx, [edi + edi]
mov edi, dword [esp + 0x24]
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [str..smv_.spx_.au_.flac_.ra_.amr_.m4a_.mpga_.mp5_.dsm_.mpa_.mac_.dts_.mpga_.wma_.mp3_.midi_.ac3_.aac_.ogg_.mid_.ape_.cda_.rmi_.tta_.tta]
mov byte [esp + 0x70], 6
test esi, esi
jne 0x4b125c
xor eax, eax
jmp 0x4b1263
push esi
call dword [0x4f9318]
push esi
push eax
lea ecx, [esp + 0x2c]
call fcn.00406dd0
mov ebx, dword [esp + 0x3c]
lea esi, [ebx + 0xb]
or ecx, 0xffffffff
mov edi, esi
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x28]
not ecx
dec ecx
mov ebp, ecx
add ebp, 0xc
cmp eax, 0xffffffff
je 0x4b12b2
mov ax, word [ebx + 8]
mov esi, dword [0x4f9640]
push eax
call esi
mov ecx, dword [esp + 0x28]
and eax, 0xffff
cmp eax, ecx
je 0x4b1392
jmp 0x4b1379
mov ecx, dword [0x50a0e0]
test esi, esi
mov dword [esp + 0x14], ecx
je 0x4b12f6
push esi
call dword [0x4f92f4]
mov edi, eax
test edi, edi
je 0x4b12f6
push edi
lea ecx, [esp + 0x18]
call fcn.00402090
test eax, eax
je 0x4b12f6
mov edx, dword [esp + 0x14]
inc edi
push edi
push esi
push edx
call fcn.00409560
add esp, 0xc
lea ecx, [esp + 0x14]
push 0xffffffffffffffff
call fcn.00407070
mov eax, dword [esp + 0x14]
push 0x2e
push eax
mov byte [esp + 0x78], 8
call fcn.004dd29d
mov edx, dword [esp + 0x1c]
add esp, 8
test eax, eax
jne 0x4b1317
or ecx, 0xffffffff
jmp 0x4b131d
sub eax, edx
sar eax, 1
mov ecx, eax
mov eax, dword [edx - 8]
sub eax, ecx
lea ecx, [esp + 0x20]
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00407130
lea ecx, [esp + 0x20]
mov byte [esp + 0x70], 9
call fcn.00408910
mov edx, dword [esp + 0x20]
push edx
call dword [0x4f94ec]
mov eax, dword [esp + 0x20]
push 0
push eax
lea ecx, [esp + 0x2c]
call fcn.004147e0
test eax, eax
jge 0x4b144c
lea ecx, [esp + 0x20]
call fcn.004021d0
lea ecx, [esp + 0x14]
mov byte [esp + 0x70], 6
call fcn.004021d0
mov eax, dword [esp + 0x1c]
add ebx, ebp
sub eax, ebp
test eax, eax
mov dword [esp + 0x1c], eax
jg 0x4b1272
jmp 0x4b1547
mov ecx, dword [esp + 0x38]
mov dx, word [ecx + 0x5c]
push edx
call esi
cmp ax, 1
jbe 0x4b1547
mov eax, dword [esp + 0x34]
test eax, eax
je 0x4b1547
mov eax, dword [0x50a0e0]
lea esi, [ebx + 0xb]
test esi, esi
mov dword [esp + 0x14], eax
je 0x4b13f9
push esi
call dword [0x4f92f4]
mov edi, eax
test edi, edi
je 0x4b13f9
push edi
lea ecx, [esp + 0x18]
call fcn.00402090
test eax, eax
je 0x4b13f9
mov ecx, dword [esp + 0x14]
inc edi
push edi
push esi
push ecx
call fcn.00409560
add esp, 0xc
lea ecx, [esp + 0x14]
push 0xffffffffffffffff
call fcn.00407070
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x78]
push eax
mov byte [esp + 0x74], 7
mov edx, dword [eax - 8]
push edx
call fcn.00406dd0
mov eax, dword [esp + 0x14]
mov edx, dword [0x50a0e4]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4b1547
add eax, 0xfffffff4
push eax
call dword [0x4f9320]
test eax, eax
jg 0x4b1547
mov edx, dword [esp + 0x14]
lea eax, [edx - 0xc]
push eax
call fcn.004dcaa6
add esp, 4
jmp 0x4b1547
mov ax, word [ebx + 8]
mov esi, dword [0x4f9640]
push eax
call esi
mov ecx, dword [esp + 0x38]
and eax, 0xffff
mov dword [esp + 0x28], eax
mov dx, word [ecx + 0x5c]
push edx
call esi
cmp ax, 1
jbe 0x4b150f
mov eax, dword [esp + 0x34]
test eax, eax
je 0x4b150f
mov eax, dword [0x50a0e0]
lea esi, [ebx + 0xb]
test esi, esi
mov dword [esp + 0x1c], eax
je 0x4b14c9
push esi
call dword [0x4f92f4]
mov edi, eax
test edi, edi
je 0x4b14c9
push edi
lea ecx, [esp + 0x20]
call fcn.00402090
test eax, eax
je 0x4b14c9
mov ecx, dword [esp + 0x1c]
inc edi
push edi
push esi
push ecx
call fcn.00409560
add esp, 0xc
lea ecx, [esp + 0x1c]
push 0xffffffffffffffff
call fcn.00407070
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x78]
push eax
mov byte [esp + 0x74], 0xa
mov edx, dword [eax - 8]
push edx
call fcn.00406dd0
mov eax, dword [esp + 0x1c]
mov edx, dword [0x50a0e4]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4b150f
add eax, 0xfffffff4
push eax
call dword [0x4f9320]
test eax, eax
jg 0x4b150f
mov edx, dword [esp + 0x1c]
lea eax, [edx - 0xc]
push eax
call fcn.004dcaa6
add esp, 4
mov eax, dword [esp + 0x20]
mov edx, dword [0x50a0e4]
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x4b153e
add eax, 0xfffffff4
push eax
call dword [0x4f9320]
test eax, eax
jg 0x4b153e
mov edx, dword [esp + 0x20]
lea eax, [edx - 0xc]
push eax
call fcn.004dcaa6
add esp, 4
lea ecx, [esp + 0x14]
call fcn.004021d0
lea ecx, [esp + 0x24]
mov byte [esp + 0x70], 4
call fcn.004021d0
mov edi, dword [esp + 0x3c]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x30]
jmp 0x4b156b
mov esi, dword [esp + 0x18]
test edi, edi
je 0x4b157e
push edi
call fcn.004dcaa6
add esp, 4
jmp 0x4b157e
mov esi, dword [esp + 0x18]
mov eax, dword [esi + 0x14]
test eax, eax
je 0x4b163c
mov eax, dword [esp + 0x34]
test eax, eax
je 0x4b15d3
mov eax, dword [0x5227a4]
test eax, eax
jne 0x4b15d3
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x78]
mov dword [0x52225c], 0
mov dword [0x522260], ebx
mov dword [0x522264], eax
mov dword [0x52230c], ebx
mov dword [0x522310], eax
mov ecx, dword [esi + 0x14]
push edx
push 0x10
mov eax, dword [ecx]
push 0x574
call dword [eax]
jmp 0x4b163c
mov ecx, dword [esi + 0x13c]
push 4
push ebx
call fcn.00495010
xor eax, eax
mov dword [0x522310], eax
mov dword [0x52230c], eax
mov eax, dword [0x50a0e0]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0x38]
push ecx
push str.tindex:
push ebx
push str.taskid:
push str._s_d__s_d
push edx
mov byte [esp + 0x88], 0xb
call fcn.004073f0
mov ecx, dword [esi + 0x14]
mov edx, dword [esp + 0x50]
add esp, 0x18
mov eax, dword [ecx]
push edx
push 0x31
push 0x574
call dword [eax]
lea ecx, [esp + 0x38]
call fcn.004021d0
lea ecx, [esp + 0x78]
call fcn.004021d0
lea ecx, [esp + 0x2c]
call fcn.004021d0
test ebp, ebp
je 0x4b165b
push ebp
call fcn.004dcaa6
add esp, 4
lea ecx, [esp + 0x10]
call fcn.004021d0
mov eax, 1
mov ecx, dword [esp + 0x68]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x64
ret 4