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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0xc0
mov eax, dword [0x59d024]
xor eax, ebp
mov dword [esp + 0xb8], eax
mov esi, dword [ecx + 0x27c]
add esi, dword [ecx + 0x280]
mov ebx, dword [ecx + 0x270]
mov edx, 0xaaaaaaab
mov eax, esi
mul edx
shr edx, 4
mov dword [esp + 0x18], edx
mov edi, dword [ebx + edx*4]
mov dword [esp + 0x14], ecx
cmp dword [ecx + 0x274], ebx
je 0x4d2acc
mov eax, esi
mov edx, 0xaaaaaaab
mul edx
shr edx, 1
and edx, 0xfffffff8
lea eax, [edx + edx*2]
sub esi, eax
imul eax, esi, 0xa8
add eax, edi
mov dword [esp + 0x28], eax
cmp edi, eax
je 0x4d2ad3
movzx eax, byte [0x59f6fc]
mov byte [esp + 0x40], al
test al, 0x19
jne 0x4d2ae9
mov dword [esp + 0x4c], 0xffffffff
mov dword [esp + 0x3c], 0
mov dword [esp + 0x48], 0xffffffff
mov dword [esp + 0x44], 0xffffffff
mov eax, dword [esp + 0x28]
mov eax, dword [eax - 0x38]
cmp byte [eax + 0x175], 0
je 0x4d24b9
movzx ebx, byte [0x59f6fc]
test bl, 0x19
jne 0x4d2c05
mov edx, 0xffffffff
xor esi, esi
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x30], 0xffffffff
mov eax, dword [esp + 0x28]
lea ecx, [eax - 0xa8]
mov dword [esp + 0x18], ecx
lea edi, [eax - 0x30]
cmp byte [eax - 0x2c], 0
jne 0x4d261b
test bl, 0x19
jne 0x4d2c73
mov eax, dword [esp + 0x28]
mov ecx, dword [eax - 0x38]
mov esi, dword [eax - 0x30]
call fcn.004dac40
test al, al
jne 0x4d2644
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x4c], 0
jne 0x4d28a2
cmp dword [eax + 0x21c], 0
setne al
mov dword [esp + 0x24], eax
je 0x4d2248
test esi, esi
jne 0x4d264c
test esi, esi
jne 0x4d265c
movzx eax, byte [0x59f6fc]
mov byte [esp + 0x30], al
test al, 0x19
jne 0x4d2cb8
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x1c], 0
mov dword [esp + 0x34], 0xffffffff
mov dword [esp + 0x38], 0xffffffff
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x90], xmm0
mov dword [esp + 0xa0], 0xffffffff
mov ebx, dword [esp + 0x14]
mov esi, dword [ebx + 0x1ec]
mov edi, dword [ebx + 0x1f0]
lea ecx, [esp + 0x90]
call fcn.004b2b40
cmp esi, edi
je 0x4d2343
lea eax, [ebx + 0x1ec]
mov dword [esp + 0x98], eax
lea eax, [ebx + 0x1f8]
lea ecx, [esp + 0x90]
push eax
call fcn.004b2bb0
mov dword [esp + 0x9c], 0
mov edx, 0xffffffff
cmp dword [ebx + 0x204], 0
jne 0x4d2e80
mov dword [esp + 0xa0], edx
mov eax, dword [esp + 0x98]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
sar ecx, 2
cmp ecx, edx
cmovae ecx, edx
test ecx, ecx
je 0x4d2364
xor edx, edx
mov esi, dword [eax]
mov edi, dword [eax + 4]
sub edi, esi
sar edi, 2
cmp edi, edx
jbe 0x4d3163
cmp dword [esi + edx*4], 0
jne 0x4d2364
inc edx
mov dword [esp + 0x9c], edx
cmp ecx, edx
jne 0x4d231d
jmp 0x4d2364
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x70], xmm0
mov dword [esp + 0x80], 0xffffffff
lea ecx, [esp + 0x70]
call fcn.004b2b40
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov esi, dword [esp + 0x98]
test esi, esi
je 0x4d2460
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0xa0]
mov edx, dword [esi + 4]
sub edx, dword [esi]
sar edx, 2
cmp edx, ecx
cmovae edx, ecx
cmp eax, edx
je 0x4d2460
mov ecx, dword [esp + 0x78]
cmp esi, ecx
je 0x4d2ab5
mov ecx, dword [esi]
mov edx, dword [esi + 4]
sub edx, ecx
sar edx, 2
cmp edx, eax
jbe 0x4d3163
mov esi, dword [ecx + eax*4]
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push dword [esp + 0x18]
call edi
mov esi, dword [esp + 0x98]
test esi, esi
je 0x4d23a4
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
inc eax
mov dword [esp + 0x9c], eax
mov ecx, dword [esi + 4]
sub ecx, dword [esi]
sar ecx, 2
cmp ecx, edx
cmovae ecx, edx
cmp eax, ecx
jae 0x4d23a4
mov edx, dword [esi]
mov edi, dword [esi + 4]
sub edi, edx
sar edi, 2
cmp edi, eax
jbe 0x4d3163
cmp dword [edx + eax*4], 0
jne 0x4d23a4
jmp 0x4d2e98
mov ecx, dword [esp + 0x78]
test ecx, ecx
jne 0x4d2d2c
mov esi, dword [esp + 0x98]
test esi, esi
jne 0x4d27ff
test byte [esp + 0x30], 0x19
jne 0x4d2d7b
test byte [0x59f6fc], 0x19
jne 0x4d2dcc
mov ebx, dword [esp + 0x28]
mov ecx, dword [ebx - 0x38]
push dword [esp + 0x18]
call fcn.004da630
cmp byte [ebx - 0x2c], 0
sete al
mov ecx, dword [esp + 0x24]
xor cl, 1
or cl, al
je 0x4d276e
test byte [esp + 0x40], 0x19
jne 0x4d2b5d
mov edi, dword [esp + 0x14]
mov eax, dword [edi + 0x280]
test eax, eax
je 0x4d2bae
mov esi, dword [edi + 0x270]
mov ecx, dword [edi + 0x27c]
add ecx, eax
dec ecx
mov edx, 0xaaaaaaab
mov eax, ecx
mul edx
shr edx, 4
lea eax, [edx*8]
lea eax, [eax + eax*2]
sub ecx, eax
imul ecx, ecx, 0xa8
add ecx, dword [esi + edx*4]
je 0x4d2bcc
call fcn.004d74b0
mov eax, dword [edi + 0x274]
mov ecx, dword [edi + 0x280]
lea edx, [ecx - 1]
mov esi, dword [edi + 0x270]
mov dword [edi + 0x280], edx
mov edx, eax
sub edx, esi
je 0x4d2be7
sar edx, 2
lea edx, [edx + edx*2]
lea edx, [edx*8 - 1]
mov esi, dword [esp + 0x14]
add ecx, dword [esi + 0x27c]
sub edx, ecx
inc edx
cmp edx, 0x30
jae 0x4d2bee
cmp dword [esi + 0x4c], 0
jne 0x4d2603
mov ebx, dword [esi + 0x250]
add esi, 0x254
cmp ebx, esi
je 0x4d25ce
mov eax, dword [esp + 0x14]
lea ecx, [eax - 4]
mov dword [esp + 0x28], ecx
add eax, 0x244
mov dword [esp + 0x18], eax
mov ecx, dword [ebx + 0x10]
call fcn.004d9da0
test al, al
jne 0x4d28af
test ebx, ebx
je 0x4d2a97
mov eax, dword [ebx + 4]
test eax, eax
jne 0x4d25c0
mov edi, dword [ebx + 8]
cmp dword [edi], ebx
mov ebx, edi
je 0x4d25c8
jmp 0x4d25a6
mov edi, eax
mov eax, dword [eax]
test eax, eax
jne 0x4d25c0
mov ebx, edi
cmp edi, esi
jne 0x4d2587
mov edi, dword [esp + 0x14]
lea ecx, [edi + 0x25c]
lea esi, [edi + 0x260]
push dword [edi + 0x260]
call fcn.004d3c60
mov dword [edi + 0x264], 0
mov dword [edi + 0x25c], esi
mov dword [edi + 0x260], 0
mov ecx, dword [esp + 0xb8]
xor ecx, ebp
call fcn.004ed092
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov eax, dword [esp + 0x28]
mov ecx, dword [eax - 0x38]
push dword [ebp + 8]
push edi
push dword [esp + 0x20]
mov dword [esp + 0x2c], edi
mov edi, esi
mov esi, edx
call fcn.004dabe0
mov edx, esi
mov esi, edi
mov edi, dword [esp + 0x20]
jmp 0x4d2202
test esi, esi
je 0x4d2f21
mov ecx, edi
push dword [ebp + 8]
call fcn.004e3380
mov al, 1
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x28]
cmp byte [eax - 0x2c], 0
je 0x4d2250
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x4c], 0
jne 0x4d2250
movzx eax, byte [0x59f6fc]
mov byte [esp + 0x30], al
test al, 0x19
jne 0x4d2ead
mov dword [esp + 0x20], 0xffffffff
mov dword [esp + 0x1c], 0
mov dword [esp + 0x38], 0xffffffff
mov dword [esp + 0x34], 0xffffffff
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x90], xmm0
mov dword [esp + 0xa0], 0xffffffff
mov ebx, dword [esp + 0x14]
mov esi, dword [ebx + 0x208]
mov edi, dword [ebx + 0x20c]
lea ecx, [esp + 0x90]
call fcn.004b2b40
cmp esi, edi
je 0x4d2846
lea eax, [ebx + 0x208]
lea esi, [esp + 0x90]
mov dword [esi + 8], eax
lea eax, [ebx + 0x214]
mov ecx, esi
push eax
call fcn.004b2bb0
mov dword [esi + 0xc], 0
cmp dword [ebx + 0x220], 0
jne 0x4d2f2c
xor edx, edx
dec edx
mov dword [esp + 0xa0], edx
mov eax, dword [esp + 0x98]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
sar ecx, 2
cmp ecx, edx
cmovae ecx, edx
test ecx, ecx
je 0x4d285d
xor edx, edx
mov esi, dword [eax]
mov edi, dword [eax + 4]
sub edi, esi
sar edi, 2
cmp edi, edx
jbe 0x4d3163
cmp dword [esi + edx*4], 0
jne 0x4d285d
inc edx
mov dword [esp + 0x9c], edx
cmp ecx, edx
jne 0x4d2741
jmp 0x4d285d
mov eax, dword [ebx - 0x20]
sub eax, dword [ebx - 0x28]
mov edx, dword [ebx - 0x1c]
sbb edx, dword [ebx - 0x24]
seto bl
mov ecx, edx
sar ecx, 0x1f
test bl, bl
cmovne eax, ecx
add ecx, 0x80000000
test bl, bl
cmove ecx, edx
cmp eax, 0xc351
mov edx, ecx
sbb edx, 0
jl 0x4d24b9
mov edx, dword [esp + 0x14]
cmp dword [edx + 0x4c], 0
jne 0x4d24b9
test byte [0x59ed78], 0x19
je 0x4d24b9
movd xmm0, eax
movd xmm1, ecx
add eax, 1
adc ecx, 0x80000000
cmp eax, 2
sbb ecx, 0
punpckldq xmm0, xmm1
movq qword [esp + 0x58], xmm0
fild qword [esp + 0x58]
fstp qword [esp + 0x50]
jb 0x4d307e
movsd xmm0, qword [esp + 0x50]
divsd xmm0, qword [0x584708]
jmp 0x4d3086
mov eax, dword [esi + 0x10]
cmp eax, dword [esi + 0xc]
jne 0x4d2820
mov edi, dword [esi]
mov ebx, dword [esi + 4]
cmp edi, ebx
je 0x4d2820
cmp dword [edi], 0
je 0x4d2975
add edi, 4
cmp edi, ebx
jne 0x4d2810
cmp dword [esp + 0x98], 0
je 0x4d247b
lea ecx, [esp + 0x90]
mov dword [ecx + 8], 0
call fcn.004b2b80
jmp 0x4d247b
xor eax, eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x70], xmm0
mov dword [esp + 0x80], 0xffffffff
lea ecx, [esp + 0x70]
call fcn.004b2b40
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov esi, dword [esp + 0x98]
jmp 0x4d31a8
mov dword [esp + 0x24], 0
jmp 0x4d2248
lea edi, [ebx + 0x10]
mov eax, dword [ebx + 0x14]
mov dword [ebx + 0x14], 0
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x28]
push eax
call fcn.00491030
mov ecx, dword [esp + 0x18]
push edi
call fcn.004d3cd0
test ebx, ebx
je 0x4d2a97
mov eax, dword [ebx + 4]
mov ecx, eax
mov edx, ebx
test eax, eax
jne 0x4d28fc
mov edi, dword [edx + 8]
cmp dword [edi], edx
mov edx, edi
je 0x4d2904
jmp 0x4d28f1
mov edi, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x4d28fc
mov edx, ebx
test eax, eax
jne 0x4d2915
mov ecx, dword [edx + 8]
cmp dword [ecx], edx
mov edx, ecx
je 0x4d291d
jmp 0x4d290a
mov ecx, eax
mov eax, dword [eax]
test eax, eax
jne 0x4d2915
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x250], ebx
je 0x4d2a3d
dec dword [eax + 0x258]
push ebx
push dword [eax + 0x254]
call fcn.004abe70
add esp, 8
mov eax, dword [ebx + 0x14]
mov dword [ebx + 0x14], 0
test eax, eax
je 0x4d2967
mov ecx, eax
mov dword [esp + 0x40], eax
call fcn.00498600
push dword [esp + 0x40]
call fcn.004eca8e
add esp, 4
push ebx
call fcn.004eca8e
add esp, 4
jmp 0x4d25c8
lea eax, [edi + 4]
cmp eax, ebx
jne 0x4d2a4e
sub ebx, edi
jb 0x4d35da
je 0x4d2820
mov ecx, dword [esi + 4]
mov eax, edi
add eax, ebx
mov dword [esp + 0x10], ecx
cmp eax, ecx
je 0x4d2a48
sar ebx, 2
shl ebx, 2
test ebx, ebx
je 0x4d29e1
mov eax, dword [edi]
mov ecx, eax
shr ecx, 0xe
mov edx, eax
shr edx, 0x13
mov edx, dword [edx*4 + 0x5a5e98]
bt edx, ecx
lea ecx, [edi + ebx]
jae 0x4d29d7
push eax
mov dword [esp + 0x10], ecx
call fcn.004b5bd0
mov ecx, dword [esp + 0x10]
add esp, 4
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], 0
lea eax, [edi + ebx]
add eax, 4
add edi, 4
cmp eax, dword [esp + 0x10]
jne 0x4d29a7
mov ebx, dword [esi + 4]
cmp ebx, edi
je 0x4d2a35
lea eax, [ebx - 4]
mov dword [esp + 0xc], eax
mov eax, dword [ebx - 4]
mov ecx, eax
shr ecx, 0xe
mov edx, eax
shr edx, 0x13
mov edx, dword [edx*4 + 0x5a5e98]
bt edx, ecx
jb 0x4d2a2a
mov dword [ebx - 4], 0
mov eax, dword [esp + 0xc]
mov ebx, eax
cmp eax, edi
jne 0x4d29f7
jmp 0x4d2a35
push eax
call fcn.004b5bd0
add esp, 4
jmp 0x4d2a17
mov dword [esi + 4], edi
jmp 0x4d2820
mov dword [eax + 0x250], ecx
jmp 0x4d292d
mov ebx, dword [esp + 0x10]
jmp 0x4d29f3
mov ecx, dword [eax]
mov dword [esp + 0xc], ecx
test ecx, ecx
je 0x4d2a8f
cmp eax, edi
je 0x4d2a8c
mov dword [esp + 0x10], eax
mov eax, dword [edi]
mov edx, eax
shr edx, 0xe
mov ecx, eax
shr ecx, 0x13
mov ecx, dword [ecx*4 + 0x5a5e98]
bt ecx, edx
jb 0x4d3133
mov eax, dword [esp + 0xc]
mov dword [edi], eax
mov eax, dword [esp + 0x10]
mov dword [eax], 0
add edi, 4
add eax, 4
jmp 0x4d2978
push str.node_shouldnt_be_null
push str.__x___nullptr
push 0xc2
push str....._buildtools_third_partylibc_trunkinclude__tree
push str._s:_d:_assertion__s_failed:__s
call fcn.0051d7e0
cmp eax, dword [esp + 0x7c]
jne 0x4d23db
test esi, esi
jne 0x4d2d54
jmp 0x4d246c
xor eax, eax
jmp 0x4d216d
mov eax, 0xfc0
mov edx, dword [esp + 0x18]
add eax, dword [ebx + edx*4 - 4]
mov dword [esp + 0x28], eax
jmp 0x4d2179
lea esi, [esp + 0x90]
push esi
call fcn.004c39a0
add esp, 4
call fcn.004c31d0
sub esp, 0x30
xor ecx, ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
pxor xmm0, xmm0
movdqu xmmword [esp + 0xc], xmm0
mov dword [esp + 8], str.SequenceManagerImpl::NotifyDidProcessTaskObservers
mov dword [esp + 4], 0x59f6fc
mov dword [esp], 0x58
call fcn.004c4950
add esp, 0x30
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], edx
mov dword [esp + 0x4c], str.SequenceManagerImpl::NotifyDidProcessTaskObservers
mov dword [esp + 0x3c], 0x59f6fc
jmp 0x4d21ac
mov eax, dword [esp + 0x3c]
cmp byte [eax], 0
je 0x4d24c4
mov eax, dword [esp + 0x48]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x94], eax
sub esp, 0x10
movq xmm0, qword [esp + 0xa0]
movq qword [esp + 8], xmm0
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
call fcn.004c54a0
add esp, 0x10
jmp 0x4d24c4
push str.deque::pop_back_called_on_an_empty_deque
push str._empty__
push 0xa19
push str....._buildtools_third_partylibc_trunkincludedeque
push str._s:_d:_assertion__s_failed:__s
call fcn.0051d7e0
push str.null_pointer_given_to_destroy_at
push str.__loc___nullptr
push 0x3f
push str....._buildtools_third_partylibc_trunkinclude__memoryconstruct_at.h
push str._s:_d:_assertion__s_failed:__s
call fcn.0051d7e0
xor edx, edx
jmp 0x4d2543
push dword [eax - 4]
call fcn.004eca8e
add esp, 4
add dword [esi + 0x274], 0xfffffffc
jmp 0x4d2559
lea esi, [esp + 0x90]
push esi
call fcn.004c39a0
add esp, 4
call fcn.004c31d0
sub esp, 0x30
xor ecx, ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
pxor xmm0, xmm0
movdqu xmmword [esp + 0xc], xmm0
mov dword [esp + 8], str.SequenceManager.QueueOnTaskCompleted
mov dword [esp + 4], 0x59f6fc
mov dword [esp], 0x58
call fcn.004c4950
add esp, 0x30
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], edx
mov edx, str.SequenceManager.QueueOnTaskCompleted
mov esi, 0x59f6fc
jmp 0x4d21e7
cmp byte [esi], 0
je 0x4d220b
mov eax, dword [esp + 0x24]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x94], eax
sub esp, 0x10
movq xmm0, qword [esp + 0xa0]
movq qword [esp + 8], xmm0
mov dword [esp + 4], edx
mov dword [esp], esi
call fcn.004c54a0
add esp, 0x10
jmp 0x4d220b
lea esi, [esp + 0x90]
push esi
call fcn.004c39a0
add esp, 4
call fcn.004c31d0
sub esp, 0x30
xor ecx, ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
pxor xmm0, xmm0
movdqu xmmword [esp + 0xc], xmm0
mov dword [esp + 8], str.SequenceManager.DidProcessTaskObservers
mov dword [esp + 4], 0x59f6fc
mov dword [esp], 0x58
call fcn.004c4950
add esp, 0x30
mov dword [esp + 0x20], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], str.SequenceManager.DidProcessTaskObservers
mov dword [esp + 0x1c], 0x59f6fc
jmp 0x4d2283
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
sar eax, 2
mov edx, dword [esp + 0x80]
cmp eax, edx
cmovae eax, edx
cmp dword [esp + 0x7c], eax
je 0x4d2d52
mov eax, dword [esp + 0x9c]
jmp 0x4d23d3
mov esi, ecx
mov eax, dword [esi + 0x10]
cmp eax, dword [esi + 0xc]
jne 0x4d300f
mov edi, dword [esi]
mov ebx, dword [esi + 4]
cmp edi, ebx
je 0x4d300f
cmp dword [edi], 0
je 0x4d2f44
add edi, 4
jmp 0x4d2d65
mov eax, dword [esp + 0x1c]
cmp byte [eax], 0
je 0x4d2486
mov eax, dword [esp + 0x20]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x94], eax
sub esp, 0x10
movq xmm0, qword [esp + 0xa0]
movq qword [esp + 8], xmm0
mov eax, dword [esp + 0x48]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
call fcn.004c54a0
add esp, 0x10
jmp 0x4d2486
lea esi, [esp + 0x90]
push esi
call fcn.004c39a0
add esp, 4
call fcn.004c31d0
sub esp, 0x30
xor ecx, ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
pxor xmm0, xmm0
movdqu xmmword [esp + 0xc], xmm0
mov dword [esp + 8], str.SequenceManager.QueueNotifyDidProcessTask
mov dword [esp + 4], 0x59f6fc
mov dword [esp], 0x58
call fcn.004c4950
add esp, 0x30
mov esi, eax
mov edi, edx
mov ebx, dword [esp + 0x28]
mov ecx, dword [ebx - 0x38]
push dword [esp + 0x18]
call fcn.004da630
cmp byte [0x59f6fc], 0
je 0x4d24a3
mov dword [esp + 0x90], esi
mov dword [esp + 0x94], edi
sub esp, 0x10
movq xmm0, qword [esp + 0xa0]
movq qword [esp + 8], xmm0
mov dword [esp + 4], str.SequenceManager.QueueNotifyDidProcessTask
mov dword [esp], 0x59f6fc
call fcn.004c54a0
add esp, 0x10
jmp 0x4d24a3
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x1f0]
sub edx, dword [eax + 0x1ec]
sar edx, 2
jmp 0x4d22fc
inc eax
mov dword [esp + 0x9c], eax
cmp ecx, eax
jne 0x4d243b
jmp 0x4d23a4
lea esi, [esp + 0x90]
push esi
call fcn.004c39a0
add esp, 4
call fcn.004c31d0
sub esp, 0x30
xor ecx, ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], ecx
pxor xmm0, xmm0
movdqu xmmword [esp + 0xc], xmm0
mov dword [esp + 8], str.SequenceManager.DidProcessTaskTimeObservers
mov dword [esp + 4], 0x59f6fc
mov dword [esp], 0x58
call fcn.004c4950
add esp, 0x30
mov dword [esp + 0x38], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x20], str.SequenceManager.DidProcessTaskTimeObservers
mov dword [esp + 0x1c], 0x59f6fc
jmp 0x4d26ab
mov al, 1
mov dword [esp + 0x24], eax
jmp 0x4d2250
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x20c]
sub edx, dword [eax + 0x208]
sar edx, 2
jmp 0x4d271c
lea eax, [edi + 4]
mov dword [esp + 0xc], eax
cmp eax, ebx
jne 0x4d302f
sub ebx, edi
jb 0x4d35da
je 0x4d300f
mov ecx, dword [esi + 4]
mov eax, edi
add eax, ebx
mov dword [esp + 0xc], ecx
cmp eax, ecx
je 0x4d2fc6
sar ebx, 2
shl ebx, 2
test ebx, ebx
je 0x4d2fb0
mov eax, dword [edi]
mov ecx, eax
shr ecx, 0xe
mov edx, eax
shr edx, 0x13
mov edx, dword [edx*4 + 0x5a5e98]
bt edx, ecx
lea ecx, [edi + ebx]
mov dword [esp + 0x10], ecx
jae 0x4d2fa2
push eax
call fcn.004b5bd0
add esp, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], 0
lea eax, [edi + ebx]
add eax, 4
add edi, 4
cmp eax, dword [esp + 0xc]
jne 0x4d2f76
mov eax, dword [esi + 4]
mov dword [esp + 0xc], eax
cmp dword [esp + 0xc], edi
je 0x4d300c
mov eax, dword [esp + 0xc]
lea ebx, [eax - 4]
mov eax, dword [eax - 4]
mov ecx, eax
shr ecx, 0xe
mov edx, eax
shr edx, 0x13
mov edx, dword [edx*4 + 0x5a5e98]
bt edx, ecx
jb 0x4d3001
mov eax, dword [esp + 0xc]
mov dword [eax - 4], 0
mov dword [esp + 0xc], ebx
cmp ebx, edi
jne 0x4d2fcc
jmp 0x4d300c
push eax
call fcn.004b5bd0
add esp, 4
jmp 0x4d2fec
mov dword [esi + 4], edi
cmp dword [esp + 0x78], 0
je 0x4d246c
lea ecx, [esp + 0x70]
mov dword [ecx + 8], 0
call fcn.004b2b80
jmp 0x4d246c
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x10], eax
test eax, eax
je 0x4d3072
cmp dword [esp + 0xc], edi
je 0x4d306f
mov eax, dword [edi]
mov edx, eax
shr edx, 0xe
mov ecx, eax
shr ecx, 0x13
mov ecx, dword [ecx*4 + 0x5a5e98]
bt ecx, edx
jb 0x4d314b
mov eax, dword [esp + 0x10]
mov dword [edi], eax
mov eax, dword [esp + 0xc]
mov dword [eax], 0
add edi, 4
mov eax, dword [esp + 0xc]
add eax, 4
jmp 0x4d2f47
movsd xmm0, qword [0x58dc60]
movsd qword [esp + 0x28], xmm0
lea edi, [esp + 0x70]
push edi
call fcn.004c39a0
add esp, 4
call fcn.004c31d0
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x90], xmm0
movdqa xmmword [esp + 0xa0], xmm0
mov word [esp + 0x90], 0x401
mov dword [esp + 0x94], str.duration
movq xmm0, qword [esp + 0x28]
movq qword [esp + 0xa0], xmm0
sub esp, 0x30
lea esi, [esp + 0xc0]
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], edi
mov dword [esp + 0x20], eax
pxor xmm0, xmm0
movdqu xmmword [esp + 0xc], xmm0
mov dword [esp + 0x2c], 8
mov dword [esp + 0x1c], 0
mov dword [esp + 8], str.LongTask
mov dword [esp + 4], 0x59ed78
mov dword [esp], 0x49
call fcn.004c4950
add esp, 0x30
mov ecx, esi
call fcn.004af270
jmp 0x4d24b9
push eax
call fcn.004b5bd0
add esp, 4
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
mov dword [esp + 0xc], eax
jmp 0x4d2a7c
push eax
call fcn.004b5bd0
add esp, 4
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x10], eax
jmp 0x4d305f
push str.vector___index_out_of_bounds
push str.__n___size__
push 0x587
push str....._buildtools_third_partylibc_trunkinclude_vector
push str._s:_d:_assertion__s_failed:__s
call fcn.0051d7e0
nop word cs:[eax + eax]
mov edx, dword [esi]
mov edi, dword [esi + 4]
sub edi, edx
sar edi, 2
cmp edi, eax
jbe 0x4d3163
cmp dword [edx + eax*4], 0
je 0x4d34b6
test esi, esi
je 0x4d3280
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0xa0]
mov edx, dword [esi + 4]
sub edx, dword [esi]
sar edx, 2
cmp edx, ecx
cmovae edx, ecx
cmp eax, edx
je 0x4d3280
mov ecx, dword [esp + 0x78]
cmp esi, ecx
je 0x4d3465
mov ecx, dword [esi]
mov edx, dword [esi + 4]
sub edx, ecx
sar edx, 2
cmp edx, eax
jbe 0x4d3163
mov esi, dword [ecx + eax*4]
mov eax, dword [esp + 0x28]
movsd xmm0, qword [eax - 0x20]
movsd qword [esp + 0x68], xmm0
movsd xmm0, qword [eax - 0x28]
movsd qword [esp + 0x60], xmm0
mov eax, dword [esi]
mov edi, dword [eax + 8]
mov ecx, edi
call dword [section..00cfg]
sub esp, 0x10
movsd xmm0, qword [esp + 0x78]
movsd qword [esp + 8], xmm0
movq xmm0, qword [esp + 0x70]
movq qword [esp], xmm0
mov ecx, esi
call edi
mov esi, dword [esp + 0x98]
test esi, esi
je 0x4d31a8
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
inc eax
mov dword [esp + 0x9c], eax
mov ecx, dword [esi + 4]
sub ecx, dword [esi]
sar ecx, 2
cmp ecx, edx
cmovae ecx, edx
cmp eax, ecx
jb 0x4d3190
jmp 0x4d31a8
mov ecx, dword [esp + 0x78]
test ecx, ecx
jne 0x4d34cb
mov esi, dword [esp + 0x98]
test esi, esi
jne 0x4d32f3
test byte [esp + 0x30], 0x19
je 0x4d2250
mov eax, dword [esp + 0x1c]
cmp byte [eax], 0
je 0x4d2250
mov eax, dword [esp + 0x38]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x94], eax
sub esp, 0x10
movq xmm0, qword [esp + 0xa0]
movq qword [esp + 8], xmm0
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
call fcn.004c54a0
add esp, 0x10
jmp 0x4d2250
mov eax, dword [esi + 0x10]
cmp eax, dword [esi + 0xc]
jne 0x4d33e3
mov edi, dword [esi]
mov ebx, dword [esi + 4]
nop word cs:[eax + eax]
cmp edi, ebx
je 0x4d33e3
cmp dword [edi], 0
je 0x4d3322
add edi, 4
jmp 0x4d3310
lea eax, [edi + 4]
cmp eax, ebx
jne 0x4d3409
sub ebx, edi
jb 0x4d35da
je 0x4d33e3
mov ecx, dword [esi + 4]
mov eax, edi
add eax, ebx
cmp eax, ecx
je 0x4d339e
sar ebx, 2
shl ebx, 2
mov dword [esp + 0xc], ecx
test ebx, ebx
je 0x4d338e
mov eax, dword [edi]
mov ecx, eax
shr ecx, 0xe
mov edx, eax
shr edx, 0x13
mov edx, dword [edx*4 + 0x5a5e98]
bt edx, ecx
lea ecx, [edi + ebx]
jae 0x4d3380
push eax
mov dword [esp + 0x14], ecx
call fcn.004b5bd0
mov ecx, dword [esp + 0x14]
add esp, 4
mov eax, dword [ecx]
mov dword [edi], eax
mov dword [ecx], 0
mov ecx, dword [esp + 0xc]
lea eax, [edi + ebx]
add eax, 4
add edi, 4
cmp eax, ecx
jne 0x4d3350
mov ecx, dword [esi + 4]
cmp ecx, edi
jne 0x4d33af
jmp 0x4d33e0
push eax
call fcn.004b5bd0
add esp, 4
jmp 0x4d33cf
mov dword [esp + 0xc], ecx
lea ebx, [ecx - 4]
mov eax, dword [ecx - 4]
mov ecx, eax
shr ecx, 0xe
mov edx, eax
shr edx, 0x13
mov edx, dword [edx*4 + 0x5a5e98]
bt edx, ecx
jb 0x4d33a4
mov eax, dword [esp + 0xc]
mov dword [eax - 4], 0
mov ecx, ebx
cmp ebx, edi
jne 0x4d33af
mov dword [esi + 4], edi
cmp dword [esp + 0x98], 0
je 0x4d3297
lea ecx, [esp + 0x90]
mov dword [ecx + 8], 0
call fcn.004b2b80
jmp 0x4d3297
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x10], eax
test eax, eax
je 0x4d3450
cmp dword [esp + 0xc], edi
je 0x4d344d
mov eax, dword [edi]
mov edx, eax
shr edx, 0xe
mov ecx, eax
shr ecx, 0x13
mov ecx, dword [ecx*4 + 0x5a5e98]
bt ecx, edx
jb 0x4d362c
mov eax, dword [esp + 0x10]
mov dword [edi], eax
mov eax, dword [esp + 0xc]
mov dword [eax], 0
add edi, 4
mov eax, dword [esp + 0xc]
add eax, 4
mov dword [esp + 0xc], eax
cmp eax, ebx
je 0x4d332d
jmp 0x4d340d
cmp eax, dword [esp + 0x7c]
jne 0x4d31df
test esi, esi
je 0x4d328c
mov eax, dword [esi + 0x10]
cmp eax, dword [esi + 0xc]
jne 0x4d3496
mov edi, dword [esi]
mov eax, dword [esi + 4]
cmp edi, eax
je 0x4d3496
mov ebx, eax
cmp dword [edi], 0
je 0x4d34f5
add edi, 4
cmp edi, ebx
jne 0x4d348a
cmp dword [esp + 0x78], 0
je 0x4d328c
lea ecx, [esp + 0x70]
mov dword [ecx + 8], 0
call fcn.004b2b80
jmp 0x4d328c
inc eax
mov dword [esp + 0x9c], eax
cmp ecx, eax
jne 0x4d3190
jmp 0x4d31a8
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
sar eax, 2
mov edx, dword [esp + 0x80]
cmp eax, edx
cmovae eax, edx
cmp dword [esp + 0x7c], eax
je 0x4d34f1
mov eax, dword [esp + 0x9c]
jmp 0x4d31d7
mov esi, ecx
jmp 0x4d3477
lea eax, [edi + 4]
mov dword [esp + 0xc], eax
cmp eax, ebx
je 0x4d351b
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x10], eax
test eax, eax
jne 0x4d35f6
mov eax, dword [esp + 0xc]
add eax, 4
jmp 0x4d34f8
sub ebx, edi
jb 0x4d35da
je 0x4d3496
mov ecx, dword [esi + 4]
mov eax, edi
add eax, ebx
mov dword [esp + 0xc], ecx
cmp eax, ecx
je 0x4d3594
sar ebx, 2
shl ebx, 2
mov dword [esp + 0x10], ebx
cmp dword [esp + 0x10], 0
je 0x4d357b
mov eax, dword [edi]
mov ecx, eax
shr ecx, 0xe
mov edx, eax
shr edx, 0x13
mov edx, dword [edx*4 + 0x5a5e98]
bt edx, ecx
mov ecx, dword [esp + 0x10]
lea ebx, [edi + ecx]
jae 0x4d3571
push eax
call fcn.004b5bd0
add esp, 4
mov eax, dword [ebx]
mov dword [edi], eax
mov dword [ebx], 0
mov eax, dword [esp + 0x10]
add eax, edi
add eax, 4
add edi, 4
cmp eax, dword [esp + 0xc]
jne 0x4d3542
mov eax, dword [esi + 4]
mov dword [esp + 0xc], eax
cmp dword [esp + 0xc], edi
je 0x4d35ee
mov eax, dword [esp + 0xc]
lea ebx, [eax - 4]
mov eax, dword [eax - 4]
mov ecx, eax
shr ecx, 0xe
mov edx, eax
shr edx, 0x13
mov edx, dword [edx*4 + 0x5a5e98]
bt edx, ecx
jb 0x4d35cf
mov eax, dword [esp + 0xc]
mov dword [eax - 4], 0
mov dword [esp + 0xc], ebx
cmp ebx, edi
jne 0x4d359a
jmp 0x4d35ee
push eax
call fcn.004b5bd0
add esp, 4
jmp 0x4d35ba
push str.vector::erase_first__last__called_with_invalid_range
push str.__first_____last
push 0x644
jmp 0x4d3172
mov dword [esi + 4], edi
jmp 0x4d3496
cmp dword [esp + 0xc], edi
je 0x4d3624
mov eax, dword [edi]
mov edx, eax
shr edx, 0xe
mov ecx, eax
shr ecx, 0x13
mov ecx, dword [ecx*4 + 0x5a5e98]
bt ecx, edx
jb 0x4d3644
mov eax, dword [esp + 0x10]
mov dword [edi], eax
mov eax, dword [esp + 0xc]
mov dword [eax], 0
add edi, 4
jmp 0x4d3512
push eax
call fcn.004b5bd0
add esp, 4
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x10], eax
jmp 0x4d343d
push eax
call fcn.004b5bd0
add esp, 4
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x10], eax
jmp 0x4d3614