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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xa0
mov esi, esp
lea edi, [ebp + 8]
mov eax, dword [0x59d024]
xor eax, ebp
mov dword [esi + 0x98], eax
cmp byte [edi + 0x74], 0
mov dword [esi + 0x20], ecx
je 0x4d8fef
mov ebx, ecx
mov ecx, dword [ecx + 4]
push edi
call fcn.004d3b20
cmp dword [edi + 0x44], 0
jne 0x4d96dd
mov edi, dword [edi + 0x70]
call fcn.004c3ae0
test al, al
je 0x4d908e
lea ebx, [esi + 0x70]
mov ecx, edi
push ebx
call fcn.004e3140
mov dword [esi + 0xc], edi
lea edi, [esi + 0x48]
push edi
call fcn.004be990
add esp, 4
mov ecx, dword [ebx]
sub ecx, dword [edi]
mov edx, dword [ebx + 4]
sbb edx, dword [edi + 4]
seto bl
mov eax, edx
sar eax, 0x1f
test bl, bl
cmovne ecx, eax
add eax, 0x80000000
test bl, bl
cmove eax, edx
lea edx, [ebp + 8]
mov edx, dword [edx + 0x4c]
xor ecx, edx
mov ebx, edx
sar ebx, 0x1f
xor ebx, eax
mov edx, 0x3afb7e91
mov eax, ecx
mul edx
imul edi, ecx, 0xd288ce70
add edi, edx
imul ebx, ebx, 0x3afb7e91
mov ecx, dword [esi + 0xc]
add ebx, edi
add eax, 0xd6388650
adc ebx, 0x346dc5
mov edx, ebx
shrd edx, eax, 4
shld ebx, eax, 0x1c
mov eax, 0xbac710ca
cmp eax, ebx
mov eax, 0x68db8
sbb eax, edx
jae 0x4d946e
mov dword [esi + 0xc], esp
sub esp, 0x70
mov edi, esp
mov ecx, edi
lea eax, [ebp + 8]
push eax
call fcn.004d7460
cmp dword [edi], 0
je 0x4d95b9
mov ebx, dword [esi + 0x20]
lea ecx, [ebx + 0x80]
cmp byte [edi + 0x59], 0
jne 0x4d92e0
lea eax, [esi + 0x70]
push edi
push eax
call fcn.004dac60
mov ecx, edi
call fcn.004d74b0
mov esp, dword [esi + 0xc]
lea eax, [ebp + 8]
mov eax, dword [eax + 0x70]
mov dword [esi + 0x38], eax
xor ecx, ecx
dec ecx
mov dword [esi + 0x43], ecx
mov dword [esi + 0x40], ecx
mov edi, dword [ebx + 0x84]
mov edx, dword [ebx + 0x88]
cmp edi, edx
je 0x4d92eb
cmp byte [ebx + 0xb4], 0
je 0x4d92eb
mov dword [esi + 0x10], 0
cmp dword [ebx + 0x90], 0
jne 0x4d9321
mov eax, dword [edi + 0x20]
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0x24]
mov dword [esi + 0xc], eax
mov ecx, dword [edi + 0x2c]
mov dword [esi + 0x28], ecx
mov ecx, dword [edi + 0x28]
mov dword [esi + 0x2c], ecx
mov ecx, dword [edi + 0x30]
mov dword [esi + 0x24], ecx
mov cl, 1
mov dword [esi + 0x18], ecx
xor ecx, ecx
dec ecx
mov eax, dword [ebx + 0x74]
test eax, eax
jne 0x4d9335
mov dword [esi + 0x1c], ecx
mov dword [esi + 0x30], ecx
mov edx, dword [esi + 0x18]
mov eax, dword [esi + 0xc]
mov cl, byte [ebx + 0x118]
test dl, dl
je 0x4d92cd
test cl, cl
je 0x4d92cd
mov ecx, dword [ebx + 0x120]
xor ecx, dword [esi + 0x14]
mov edi, dword [ebx + 0x124]
xor edi, eax
or edi, ecx
jne 0x4d91b0
mov ecx, dword [ebx + 0x128]
xor ecx, dword [esi + 0x2c]
mov edi, dword [ebx + 0x12c]
xor edi, dword [esi + 0x28]
or edi, ecx
jne 0x4d91b0
mov ecx, dword [esi + 0x10]
cmp dword [ebx + 0x130], ecx
jne 0x4d91b0
mov ecx, dword [esi + 0x24]
cmp dword [ebx + 0x134], ecx
je 0x4d92a1
mov byte [ebx + 0x118], dl
mov ecx, dword [esi + 0x40]
mov edi, dword [esi + 0x43]
mov dword [ebx + 0x119], ecx
mov dword [ebx + 0x11c], edi
mov dword [ebx + 0x124], eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x14]
mov dword [ebx + 0x120], eax
mov ecx, dword [esi + 0x28]
mov dword [ebx + 0x12c], ecx
mov ecx, dword [esi + 0x2c]
mov dword [ebx + 0x128], ecx
mov dword [esi + 0x18], edx
mov edx, dword [esi + 0x10]
mov dword [ebx + 0x130], edx
mov edx, dword [esi + 0x24]
mov dword [ebx + 0x134], edx
mov edx, dword [esi + 0x30]
mov dword [ebx + 0x13c], edx
mov edx, dword [esi + 0x1c]
mov dword [ebx + 0x138], edx
mov edi, dword [ebx + 0x70]
mov dword [esi + 0x34], edi
mov eax, dword [esi + 0x18]
mov byte [esi + 0x70], al
mov edi, dword [esi + 0x43]
mov dword [esi + 0x74], edi
mov edi, dword [esi + 0x40]
mov dword [esi + 0x71], edi
mov eax, dword [esi + 0x14]
mov dword [esi + 0x78], eax
mov eax, dword [esi + 0xc]
mov dword [esi + 0x7c], eax
mov dword [esi + 0x80], ecx
mov eax, dword [esi + 0x28]
mov dword [esi + 0x84], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x8c], eax
mov dword [esi + 0x90], edx
mov eax, dword [esi + 0x30]
mov dword [esi + 0x94], eax
sub esp, 0x30
movsd xmm0, qword [esi + 0x90]
movsd qword [esp + 0x28], xmm0
movdqu xmm0, xmmword [esi + 0x70]
movups xmm1, xmmword [esi + 0x80]
movups xmmword [esp + 0x18], xmm1
movdqu xmmword [esp + 8], xmm0
mov eax, dword [esi + 0x38]
mov dword [esp + 4], eax
mov dword [esp], ebx
mov ecx, dword [esi + 0x34]
call fcn.004e24b0
test byte [0x59f6fc], 9
jne 0x4d95bc
lea ecx, [ebp + 8]
call fcn.004d74b0
mov ecx, dword [esi + 0x98]
xor ecx, ebp
call fcn.004ed092
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x78
test dl, dl
setne ch
test cl, cl
setne cl
cmp ch, cl
je 0x4d92a1
jmp 0x4d91b0
inc dword [ebx + 0x90]
jmp 0x4d90bd
mov dword [esi + 0x18], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x2c], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x24], 0
jmp 0x4d913e
mov eax, dword [ebx + 0x7c]
xor ecx, ecx
cmp byte [eax + 0x20], 5
setb cl
mov dword [esi + 0x10], ecx
jmp 0x4d9118
mov dword [esi + 0x30], eax
xor ecx, ecx
dec ecx
cmp byte [ebx + 0xb4], 0
je 0x4d9149
mov eax, dword [ebx + 0x78]
cmp dword [eax + 8], 0
jne 0x4d9571
mov eax, dword [ebx + 0x7c]
cmp dword [eax + 8], 0
jne 0x4d9571
cmp edi, edx
jne 0x4d957a
lea eax, [ebx + 0x10]
mov edi, eax
push eax
call dword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x4d9797
cmp dword [ebx + 0x20], 0
setne byte [esi + 0x1c]
push edi
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov eax, dword [esi + 0x18]
mov byte [esi + 0x48], al
mov eax, dword [esi + 0x40]
mov dword [esi + 0x49], eax
mov eax, dword [esi + 0x43]
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x50], eax
mov eax, dword [esi + 0xc]
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x58], eax
mov eax, dword [esi + 0x28]
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x10]
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x64], eax
xor eax, eax
dec eax
mov dword [esi + 0x6c], eax
mov dword [esi + 0x68], eax
mov edi, dword [esi + 0x30]
mov eax, dword [edi]
mov ecx, dword [eax + 8]
mov dword [esi + 0xc], ecx
call dword [section..00cfg]
sub esp, 0x34
movsd xmm0, qword [esi + 0x68]
movsd qword [esp + 0x28], xmm0
movdqu xmm0, xmmword [esi + 0x48]
movups xmm1, xmmword [esi + 0x58]
movups xmmword [esp + 0x18], xmm1
movdqu xmmword [esp + 8], xmm0
movzx eax, byte [esi + 0x1c]
mov dword [esp + 0x30], eax
mov eax, dword [esi + 0x38]
mov dword [esp + 4], eax
lea eax, [esi + 0x70]
mov dword [esp], eax
mov ecx, edi
call dword [esi + 0xc]
mov dl, byte [esi + 0x70]
mov eax, dword [esi + 0x71]
mov dword [esi + 0x40], eax
mov eax, dword [esi + 0x74]
mov dword [esi + 0x43], eax
mov ecx, dword [esi + 0x7c]
mov eax, dword [esi + 0x78]
mov dword [esi + 0x14], eax
mov eax, ecx
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x28], ecx
mov ecx, dword [esi + 0x94]
mov dword [esi + 0x30], ecx
mov ecx, dword [esi + 0x90]
mov dword [esi + 0x1c], ecx
mov ecx, dword [esi + 0x80]
mov dword [esi + 0x2c], ecx
mov ecx, dword [esi + 0x88]
mov dword [esi + 0x10], ecx
mov ecx, dword [esi + 0x8c]
mov dword [esi + 0x24], ecx
jmp 0x4d9155
lea edi, [esi + 0x70]
lea eax, [esi + 0x48]
push eax
call fcn.004e3140
lea ecx, [ebp + 8]
mov eax, dword [ecx + 0x20]
sub eax, dword [esi + 0x48]
mov ecx, dword [ecx + 0x24]
sbb ecx, dword [esi + 0x4c]
seto bl
mov edx, ecx
sar edx, 0x1f
test bl, bl
cmovne eax, edx
add edx, 0x80000000
test bl, bl
cmove edx, ecx
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edx
mov ecx, dword [0x5b2628]
test ecx, ecx
jne 0x4d9506
xor eax, eax
mov dword [esi + 0x4c], eax
mov dword [esi + 0x48], 0xd693a400
mov dword [esi + 0x44], eax
mov dword [esi + 0x40], 0x3e8
sub esp, 0x1c
movsd xmm0, qword [esi + 0x48]
movsd qword [esp + 0xc], xmm0
movq xmm0, qword [esi + 0x40]
movq qword [esp + 4], xmm0
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 0x32
mov dword [esp], str.Scheduler.TaskQueueImpl.PostDelayedTaskDelay
call fcn.004b76a0
add esp, 0x1c
mov ecx, eax
mov dword [0x5b2628], eax
push edi
call fcn.004b8510
mov edi, dword [0x5b262c]
test edi, edi
mov ebx, dword [esi + 0x20]
jne 0x4d9540
sub esp, 0x14
movdqa xmm0, xmmword [0x593840]
movdqu xmmword [esp + 4], xmm0
mov dword [esp], str.Scheduler.TaskQueueImpl.DelayedIncomingQueueSize
call fcn.00470fa0
add esp, 0x14
mov edi, eax
mov dword [0x5b262c], eax
mov eax, dword [ebx + 0x88]
sub eax, dword [ebx + 0x84]
sar eax, 4
imul eax, eax, 0xb6db6db7
mov dword [esi + 0xc], eax
mov eax, dword [edi]
mov ebx, dword [eax + 0x14]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push dword [esi + 0xc]
call ebx
jmp 0x4d908e
mov byte [esi + 0x1c], 1
jmp 0x4d938d
mov eax, dword [ebx + 4]
mov eax, dword [eax + 0x2b0]
mov dword [esi + 0x34], eax
mov eax, dword [eax]
mov ecx, dword [eax + 4]
mov dword [esi + 0x3c], ecx
mov byte [esi + 0x1c], 1
call dword [section..00cfg]
mov ecx, dword [esi + 0x34]
lea eax, [esi + 0x70]
push eax
call dword [esi + 0x3c]
mov eax, dword [esi + 0x70]
cmp eax, dword [edi + 0x20]
mov eax, dword [esi + 0x74]
sbb eax, dword [edi + 0x24]
jl 0x4d936a
jmp 0x4d938d
int3
mov eax, dword [esi + 0x20]
mov eax, dword [eax + 8]
mov edi, dword [eax + 4]
call fcn.004c31d0
cmp edi, eax
jne 0x4d92ae
mov eax, dword [esi + 0x20]
lea edi, [eax + 0x10]
push edi
call dword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x4d978b
mov edx, dword [esi + 0x20]
mov eax, dword [edx + 0x20]
mov dword [esi + 0x18], eax
mov eax, dword [edx + 0x78]
mov ecx, dword [edx + 0x7c]
mov ecx, dword [ecx + 8]
mov dword [esi + 0xc], ecx
mov eax, dword [eax + 8]
mov dword [esi + 0x14], eax
mov eax, dword [edx + 0x88]
mov dword [esi + 0x10], eax
mov ebx, dword [edx + 0x84]
push edi
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test byte [0x59f6fc], 0x19
je 0x4d92ae
mov eax, dword [esi + 0x10]
sub eax, ebx
mov ebx, dword [esi + 0xc]
add ebx, dword [esi + 0x18]
add ebx, dword [esi + 0x14]
sar eax, 4
imul eax, eax, 0xb6db6db7
add ebx, eax
mov eax, dword [esi + 0x20]
push dword [eax]
call fcn.00550a30
add esp, 4
mov edi, eax
lea eax, [esi + 0x48]
push eax
call fcn.004c39a0
add esp, 4
call fcn.004c31d0
pcmpeqd xmm0, xmm0
movdqa xmmword [esi + 0x70], xmm0
movdqa xmmword [esi + 0x80], xmm0
mov word [esi + 0x70], 0x301
mov dword [esi + 0x74], str.value
mov ecx, ebx
sar ecx, 0x1f
mov dword [esi + 0x84], ecx
mov dword [esi + 0x80], ebx
sub esp, 0x30
lea ecx, [esi + 0x48]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], eax
xor eax, eax
mov dword [esp + 0x2c], eax
lea ebx, [esi + 0x70]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x1c], eax
pxor xmm0, xmm0
movdqu xmmword [esp + 0xc], xmm0
mov dword [esp + 8], edi
mov dword [esp + 4], 0x59f6fc
mov dword [esp], 0x43
call fcn.004c4950
add esp, 0x30
mov ecx, ebx
call fcn.004af270
jmp 0x4d92ae
cmp byte [ebx + 0x148], 0
je 0x4d8fef
test byte [0x59f66c], 9
je 0x4d8fef
cmp byte [ebx + 0xb4], 0
jne 0x4d8fef
cmp byte [ebx + 0x160], 0
je 0x4d8fef
xor eax, eax
dec eax
mov dword [esi + 0x44], eax
mov dword [esi + 0x40], eax
mov eax, dword [ebx + 4]
mov edi, dword [eax + 0x2b0]
mov eax, dword [edi]
mov ecx, dword [eax + 4]
mov dword [esi + 0xc], ecx
call dword [section..00cfg]
lea eax, [esi + 0x70]
mov ecx, edi
push eax
call dword [esi + 0xc]
cmp byte [ebx + 0x148], 0
je 0x4d97d5
mov eax, dword [esi + 0x70]
mov edx, dword [esi + 0x20]
sub eax, dword [edx + 0x150]
mov ecx, dword [esi + 0x74]
sbb ecx, dword [edx + 0x154]
seto bl
mov edx, ecx
sar edx, 0x1f
test bl, bl
cmovne eax, edx
add edx, 0x80000000
test bl, bl
cmove edx, ecx
mov dword [esi + 0x40], eax
mov dword [esi + 0x44], edx
test byte [0x59f66c], 0x19
jne 0x4d97a3
lea edi, [ebp + 8]
jmp 0x4d8fef
mov ecx, edi
call fcn.004c2ef0
jmp 0x4d95e7
mov ecx, edi
call fcn.004c2ef0
jmp 0x4d937e
lea eax, [esi + 0x40]
lea edx, [esi + 0x48]
mov dword [edx], eax
lea eax, [ebp + 8]
mov dword [edx + 4], eax
xor eax, eax
mov dword [esi + 0x74], eax
mov dword [esi + 0x70], eax
sub esp, 8
movq xmm0, qword [esi + 0x70]
movq qword [esp], xmm0
mov ecx, str.task_posted_to_disabled_queue
call fcn.00550cf0
add esp, 8
jmp 0x4d9783
call fcn.0051d4d0
int3