Function at 0x413100
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x6c
mov eax, dword [0x42a7dc]
mov dword [ebp - 0x48], 0
test eax, eax
jne 0x414249
mov eax, dword [0x42a7ec]
test eax, eax
jle 0x41312c
add dword [0x449324], eax
mov eax, dword [0x42a4dc]
mov dword [0x42a7ec], 0
test eax, eax
jne 0x41445d
mov eax, dword [0x42a5cc]
test eax, eax
je 0x41322d
mov dword [ebp - 0x34], 0x421700
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
lea edi, [eax + 4]
add eax, 0x404
mov dword [ebp - 0x2c], eax
lea esi, [esi]
nop
mov eax, dword [edi]
test eax, eax
je 0x413203
mov esi, eax
mov dword [ebp - 0x30], edi
and esi, 0xfffff000
mov edx, esi
shr edx, 0x16
mov ecx, dword [edx*4 + 0x446214]
mov edx, esi
shr edx, 0xc
and edx, 0x3ff
mov edx, dword [ecx + edx*4]
nop
mov ecx, eax
sub ecx, esi
mov ebx, ecx
shr ecx, 3
shr ebx, 8
and ecx, 0x1f
mov edi, dword [edx + ebx*4 + 0x20]
bt edi, ecx
jb 0x4131c7
mov edi, 1
shl edi, cl
or dword [edx + ebx*4 + 0x20], edi
add dword [edx + 0x1c], 1
mov eax, dword [eax]
test eax, eax
je 0x413200
mov ecx, eax
and ecx, 0xfffff000
cmp esi, ecx
je 0x4131f3
mov edx, ecx
shr edx, 0x16
mov ebx, dword [edx*4 + 0x446214]
mov edx, ecx
shr edx, 0xc
and edx, 0x3ff
mov edx, dword [ebx + edx*4]
mov esi, ecx
jmp 0x4131a0
mov edi, dword [ebp - 0x30]
add edi, 4
cmp dword [ebp - 0x2c], edi
jne 0x413170
add dword [ebp - 0x34], 0x14
mov eax, dword [ebp - 0x34]
mov esi, 0x42173c
cmp esi, eax
jne 0x413157
mov eax, 1
call sym._GC_start_reclaim
mov edi, dword [0x42a8cc]
mov dword [ebp - 0x3c], 0
test edi, edi
je 0x41324e
mov ecx, dword [0x42a8d4]
mov eax, 1
shl eax, cl
mov dword [ebp - 0x3c], eax
mov eax, dword [0x42a8c4]
mov dword [0x44930c], eax
mov eax, dword [0x42a8b8]
mov dword [0x449310], eax
mov eax, dword [0x42a8d8]
test eax, eax
je 0x4133a4
mov ecx, eax
mov esi, eax
and ecx, 0xfffff000
mov edx, ecx
sub esi, ecx
shr edx, 0x16
mov ebx, dword [edx*4 + 0x446214]
mov edx, ecx
mov ecx, esi
shr edx, 0xc
shr ecx, 3
and edx, 0x3ff
and ecx, 0x1f
mov edx, dword [ebx + edx*4]
mov ebx, esi
shr ebx, 8
mov esi, dword [edx + ebx*4 + 0x20]
bt esi, ecx
jae 0x414140
mov edx, dword [0x42a8dc]
test edx, edx
je 0x4133a4
xor edi, edi
jmp 0x4132d1
add edi, 1
cmp edi, edx
jae 0x4133a4
mov eax, dword [0x42a8d8]
mov ebx, dword [eax + edi*4]
test ebx, ebx
je 0x4132c1
test bl, 1
jne 0x4132c1
mov eax, dword [0x42a874]
mov esi, ebx
mov edx, dword [0x42a86c]
shr esi, 0xc
mov dword [ebp - 0x2c], eax
mov eax, ebx
and esi, 0x3ff
shr eax, 0x16
mov dword [ebp - 0x38], esi
add eax, 0x6e7c
mov dword [ebp - 0x44], eax
mov eax, dword [eax*4 + 0x42a824]
mov esi, dword [eax + esi*4]
mov eax, dword [esi + 0x14]
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x30], eax
test eax, eax
jne 0x41411a
mov ecx, dword [ebp - 0x2c]
mov eax, ecx
mov dword [0x42a874], eax
cmp edx, ecx
ja 0x41334d
nop
mov ecx, dword [0x42a89c]
lea ecx, [edx + ecx*8]
call sym._GC_mark_from
mov edx, dword [0x42a86c]
mov dword [0x42a874], eax
cmp eax, edx
jae 0x413330
mov eax, dword [ebp - 0x44]
mov esi, dword [ebp - 0x38]
mov edx, ebx
shr ebx, 3
shr edx, 8
mov ecx, ebx
mov eax, dword [eax*4 + 0x42a824]
and edx, 0xf
and ecx, 0x1f
mov eax, dword [eax + esi*4]
mov ebx, dword [eax + edx*4 + 0x20]
bt ebx, ecx
jb 0x413385
mov esi, 1
shl esi, cl
or dword [eax + edx*4 + 0x20], esi
add dword [eax + 0x1c], 1
mov ecx, dword [0x42a8a0]
test ecx, ecx
jne 0x41344a
mov edx, dword [0x42a8dc]
add edi, 1
cmp edi, edx
jb 0x4132cc
mov ecx, dword [0x42a8c8]
mov eax, 1
shl eax, cl
mov esi, eax
mov dword [ebp - 0x38], eax
mov eax, dword [0x42a8c0]
test eax, eax
je 0x413574
test esi, esi
je 0x413574
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x2c], 0
mov esi, dword [ebp - 0x2c]
mov ebx, dword [eax + esi*4]
lea edi, [esi*4]
mov dword [ebp - 0x30], edi
test ebx, ebx
je 0x413433
xor edi, edi
nop
mov edx, dword [ebx + 8]
mov eax, dword [ebx + 4]
not edx
mov ecx, edx
and ecx, 0xfffff000
mov esi, ecx
sub edx, ecx
shr ecx, 0xc
shr esi, 0x16
and ecx, 0x3ff
mov esi, dword [esi*4 + 0x446214]
mov ecx, dword [esi + ecx*4]
mov esi, edx
shr edx, 3
shr esi, 8
mov ecx, dword [ecx + esi*4 + 0x20]
bt ecx, edx
jae 0x413470
mov edi, ebx
mov ebx, eax
test eax, eax
jne 0x4133f0
add dword [ebp - 0x2c], 1
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x38], eax
je 0x413539
mov eax, dword [0x42a8c0]
jmp 0x4133d9
call sym._GC_mark_some.constprop.33
test eax, eax
jne 0x413393
call sym._GC_mark_some.constprop.33
test eax, eax
je 0x41344a
jmp 0x413393
mov edx, dword [ebx]
not edx
mov dword [edx], 0
test edi, edi
je 0x4134fa
mov edx, dword [0x42a7e4]
mov dword [edi + 4], eax
test edx, edx
jne 0x41350f
mov ecx, ebx
and ecx, 0xfffff000
mov edx, ecx
sub ebx, ecx
shr edx, 0x16
mov esi, dword [edx*4 + 0x446214]
mov edx, ecx
mov ecx, ebx
shr ebx, 8
shr edx, 0xc
shr ecx, 3
and edx, 0x3ff
and ecx, 0x1f
mov edx, dword [esi + edx*4]
lea ebx, [edx + ebx*4]
mov esi, dword [ebx + 0x20]
mov dword [ebp - 0x34], ebx
bt esi, ecx
jae 0x4134ee
mov ebx, dword [edx + 0x1c]
mov dword [ebp - 0x40], ebx
mov ebx, 1
shl ebx, cl
mov ecx, ebx
mov ebx, dword [ebp - 0x34]
not ecx
and esi, ecx
mov dword [ebx + 0x20], esi
mov ebx, dword [ebp - 0x40]
lea ecx, [ebx - 1]
mov dword [edx + 0x1c], ecx
sub dword [0x42a8c4], 1
jmp 0x41342d
mov edx, dword [0x42a8c0]
mov esi, dword [ebp - 0x30]
mov dword [ebp - 0x44], 1
mov dword [edx + esi], eax
jmp 0x41348f
mov edx, edi
mov ecx, edi
mov esi, 1
shr edx, 0x11
shr ecx, 0xc
and edx, 0x1fff
shl esi, cl
add edx, 0x307c
lock or dword [edx*4 + 0x42a820], esi
jmp 0x41348f
mov edi, dword [ebp - 0x44]
test edi, edi
je 0x413574
mov esi, dword [0x42a7e4]
test esi, esi
je 0x413574
mov eax, dword [0x42a8c0]
mov ebx, 1
mov edx, eax
shr eax, 0xc
shr edx, 0x11
mov ecx, eax
and edx, 0x1fff
shl ebx, cl
add edx, 0x307c
lock or dword [edx*4 + 0x42a820], ebx
mov ebx, dword [ebp - 0x3c]
test ebx, ebx
je 0x41444e
mov dword [ebp - 0x38], 0
mov eax, dword [0x42a8cc]
mov esi, dword [ebp - 0x38]
mov ebx, dword [eax + esi*4]
test ebx, ebx
jne 0x4135ab
jmp 0x41367d
mov ebx, dword [ebx + 4]
test ebx, ebx
je 0x413678
mov esi, dword [ebx]
not esi
mov eax, esi
and eax, 0xfffff000
mov edx, eax
mov edi, eax
shr edx, 0xc
shr edi, 0x16
mov ecx, edx
mov edx, esi
add edi, 0x6e7c
sub edx, eax
and ecx, 0x3ff
mov eax, edx
shr edx, 8
mov dword [ebp - 0x30], ecx
shr eax, 3
add edx, 8
and eax, 0x1f
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x2c], eax
mov eax, dword [edi*4 + 0x42a824]
mov eax, dword [eax + ecx*4]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [eax + edx*4]
bt eax, ecx
jb 0x4135a0
mov dword [esp], esi
call dword [ebx + 0x14]
mov eax, dword [0x42a874]
mov edx, dword [0x42a86c]
cmp edx, eax
ja 0x41363d
lea esi, [esi]
lea esi, [esi]
mov ecx, dword [0x42a89c]
lea ecx, [edx + ecx*8]
call sym._GC_mark_from
mov edx, dword [0x42a86c]
mov dword [0x42a874], eax
cmp eax, edx
jae 0x413620
mov eax, dword [edi*4 + 0x42a824]
mov edi, dword [ebp - 0x30]
mov eax, dword [eax + edi*4]
mov edi, dword [ebp - 0x34]
mov eax, dword [eax + edi*4]
mov edi, dword [ebp - 0x2c]
bt eax, edi
jae 0x4135a0
mov dword [esp + 4], esi
mov dword [esp], str.GC_Warning:_Finalization_cycle_involving__p_n
call dword [0x42184c]
mov ebx, dword [ebx + 4]
test ebx, ebx
jne 0x4135ab
mov eax, dword [0x42a8cc]
add dword [ebp - 0x38], 1
mov esi, dword [ebp - 0x38]
cmp esi, dword [ebp - 0x3c]
jne 0x41358b
mov dword [0x42a84c], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x30], 0
mov esi, dword [ebp - 0x30]
mov edx, dword [eax + esi*4]
lea edi, [esi*4]
mov dword [ebp - 0x34], edi
test edx, edx
je 0x413777
xor esi, esi
mov dword [ebp - 0x2c], esi
jmp 0x41372c
mov esi, 1
shl esi, cl
mov ecx, dword [ebp - 0x2c]
or dword [eax + edi*4 + 0x20], esi
add dword [eax + 0x1c], 1
mov eax, dword [0x42a7e4]
test ecx, ecx
je 0x413791
mov esi, dword [ebp - 0x2c]
mov dword [esi + 4], ebx
test eax, eax
jne 0x4137e4
mov eax, dword [0x42a8d0]
sub dword [0x42a8b0], 1
mov dword [edx + 4], eax
mov dword [0x42a8d0], edx
mov eax, dword [edx + 0x10]
not dword [edx]
mov edx, dword [0x42a84c]
lea eax, [edx + eax + 0x18]
mov edx, ebx
mov dword [0x42a84c], eax
test ebx, ebx
je 0x413777
mov ecx, dword [edx]
not ecx
mov ebx, ecx
and ebx, 0xfffff000
mov eax, ebx
sub ecx, ebx
shr eax, 0x16
mov edi, dword [eax*4 + 0x446214]
mov eax, ebx
mov ebx, dword [edx + 4]
shr eax, 0xc
and eax, 0x3ff
mov eax, dword [edi + eax*4]
mov edi, ecx
shr ecx, 3
shr edi, 8
and ecx, 0x1f
mov esi, dword [eax + edi*4 + 0x20]
bt esi, ecx
jae 0x4136d0
mov dword [ebp - 0x2c], edx
mov edx, ebx
test ebx, ebx
jne 0x41372c
add dword [ebp - 0x30], 1
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x3c], eax
je 0x41380e
mov eax, dword [0x42a8cc]
jmp 0x4136a5
mov ecx, dword [0x42a8cc]
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x38], 1
mov dword [ecx + esi], ebx
mov ecx, dword [0x42a8d0]
sub dword [0x42a8b0], 1
mov dword [edx + 4], ecx
test eax, eax
je 0x41370c
mov eax, edx
mov ecx, edx
mov esi, 1
shr eax, 0x11
shr ecx, 0xc
and eax, 0x1fff
shl esi, cl
add eax, 0x307c
lock or dword [eax*4 + 0x42a820], esi
jmp 0x41370c
mov eax, esi
mov ecx, esi
mov esi, 1
shr eax, 0x11
shr ecx, 0xc
and eax, 0x1fff
shl esi, cl
add eax, 0x307c
lock or dword [eax*4 + 0x42a820], esi
mov eax, dword [0x42a7e4]
jmp 0x4137a4
mov edi, dword [ebp - 0x38]
test edi, edi
je 0x413823
mov esi, dword [0x42a7e4]
test esi, esi
jne 0x4143d8
mov ecx, dword [0x42a8c8]
mov eax, 1
shl eax, cl
mov esi, eax
mov dword [ebp - 0x3c], eax
mov eax, dword [0x42a8c0]
test eax, eax
je 0x413aa8
test esi, esi
je 0x413aa8
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x38], 0
mov esi, dword [ebp - 0x38]
lea edi, [esi*4]
mov esi, dword [eax + esi*4]
mov dword [ebp - 0x40], edi
test esi, esi
je 0x413990
mov dword [ebp - 0x34], 0
lea esi, [esi]
nop
mov edi, dword [esi]
mov eax, dword [esi + 4]
mov ebx, dword [0x42a558]
not edi
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], edi
test ebx, ebx
je 0x413973
mov eax, edi
mov ecx, edi
shr eax, 0x16
and ecx, 0xfffff000
mov edx, dword [eax*4 + 0x446214]
mov eax, edi
shr eax, 0xc
and eax, 0x3ff
mov edi, dword [edx + eax*4]
test edi, edi
je 0x413973
mov edx, edi
cmp edi, 0xfff
ja 0x4139aa
lea esi, [esi]
lea esi, [esi]
shl edx, 0xc
sub ecx, edx
mov edx, ecx
mov eax, ecx
shr edx, 0x16
mov ebx, dword [edx*4 + 0x446214]
mov edx, ecx
shr edx, 0xc
and edx, 0x3ff
mov edx, dword [ebx + edx*4]
mov edi, edx
cmp edx, 0xfff
jbe 0x4138e0
test byte [edi + 0xd], 4
jne 0x413973
mov edi, dword [edi + 0x10]
mov ebx, eax
xor edx, edx
and eax, 0xffc
and ebx, 0xfffffffc
add ecx, 0x1000
div edi
sub ebx, edx
lea eax, [ebx + edi]
cmp ecx, eax
jae 0x413939
cmp edi, 0x1000
jbe 0x413973
cmp dword [ebp - 0x30], eax
jae 0x413973
test ebx, ebx
je 0x413973
mov eax, ebx
and eax, 0xfffff000
mov edx, eax
sub ebx, eax
shr eax, 0xc
shr edx, 0x16
and eax, 0x3ff
mov edx, dword [edx*4 + 0x446214]
mov eax, dword [edx + eax*4]
mov edx, ebx
shr ebx, 3
shr edx, 8
mov eax, dword [eax + edx*4 + 0x20]
bt eax, ebx
jae 0x4139b2
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x413990
mov dword [ebp - 0x34], esi
mov esi, dword [ebp - 0x2c]
jmp 0x413880
add dword [ebp - 0x38], 1
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x3c], eax
je 0x413a6e
mov eax, dword [0x42a8c0]
jmp 0x413858
mov eax, dword [ebp - 0x30]
jmp 0x41390b
mov ecx, dword [ebp - 0x34]
test ecx, ecx
je 0x413a2f
mov eax, dword [ebp - 0x34]
mov edi, dword [ebp - 0x2c]
mov edx, dword [0x42a7e4]
mov dword [eax + 4], edi
test edx, edx
jne 0x413a46
mov edx, esi
and edx, 0xfffff000
mov eax, edx
sub esi, edx
shr eax, 0x16
mov ecx, dword [eax*4 + 0x446214]
mov eax, edx
mov edx, esi
shr eax, 0xc
shr edx, 8
and eax, 0x3ff
mov eax, dword [ecx + eax*4]
mov ecx, esi
shr ecx, 3
lea edx, [eax + edx*4]
and ecx, 0x1f
mov ebx, dword [edx + 0x20]
bt ebx, ecx
jae 0x413a20
mov edi, 1
mov esi, dword [eax + 0x1c]
shl edi, cl
mov ecx, edi
sub esi, 1
not ecx
and ebx, ecx
mov dword [edx + 0x20], ebx
mov dword [eax + 0x1c], esi
sub dword [0x42a8c4], 1
mov esi, dword [ebp - 0x34]
jmp 0x413973
mov eax, dword [0x42a8c0]
mov edi, dword [ebp - 0x40]
mov dword [ebp - 0x44], 1
mov ebx, dword [ebp - 0x2c]
mov dword [eax + edi], ebx
jmp 0x4139cc
mov edi, eax
shr eax, 0x11
mov edx, 1
shr edi, 0xc
and eax, 0x1fff
mov ecx, edi
add eax, 0x307c
shl edx, cl
lock or dword [eax*4 + 0x42a820], edx
jmp 0x4139cc
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x413aa8
mov eax, dword [0x42a7e4]
test eax, eax
je 0x413aa8
mov eax, dword [0x42a8c0]
mov ebx, 1
mov edx, eax
shr eax, 0xc
shr edx, 0x11
mov ecx, eax
and edx, 0x1fff
shl ebx, cl
add edx, 0x307c
lock or dword [edx*4 + 0x42a820], ebx
mov eax, dword [0x42a8dc]
mov edx, dword [0x42a8d8]
lea ebx, [edx + eax*4]
test eax, eax
je 0x413b02
mov eax, dword [edx]
test al, 1
je 0x413afb
not eax
mov ecx, eax
and ecx, 0xfffff000
mov esi, ecx
sub eax, ecx
shr ecx, 0xc
shr esi, 0x16
and ecx, 0x3ff
mov esi, dword [esi*4 + 0x446214]
mov ecx, dword [esi + ecx*4]
mov esi, eax
shr eax, 3
shr esi, 8
mov ecx, dword [ecx + esi*4 + 0x20]
bt ecx, eax
jb 0x413afb
mov dword [edx], 0
add edx, 4
cmp ebx, edx
jne 0x413aba
mov ecx, dword [0x42a8bc]
mov eax, 1
shl eax, cl
mov dword [ebp - 0x30], eax
mov eax, dword [0x42a8b4]
test eax, eax
je 0x413f12
mov edi, dword [ebp - 0x30]
test edi, edi
je 0x413f12
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x2c], 0
mov esi, dword [ebp - 0x2c]
mov ebx, dword [eax + esi*4]
lea edi, [esi*4]
mov dword [ebp - 0x34], edi
test ebx, ebx
je 0x413b9c
xor edi, edi
nop
mov edx, dword [ebx + 8]
mov eax, dword [ebx + 4]
not edx
mov ecx, edx
and ecx, 0xfffff000
mov esi, ecx
sub edx, ecx
shr ecx, 0xc
shr esi, 0x16
and ecx, 0x3ff
mov esi, dword [esi*4 + 0x446214]
mov ecx, dword [esi + ecx*4]
mov esi, edx
shr edx, 3
shr esi, 8
mov ecx, dword [ecx + esi*4 + 0x20]
bt ecx, edx
jae 0x413d3a
mov edi, ebx
mov ebx, eax
test eax, eax
jne 0x413b50
mov eax, dword [0x42a8b4]
add dword [ebp - 0x2c], 1
mov esi, dword [ebp - 0x2c]
cmp dword [ebp - 0x30], esi
jne 0x413b38
mov ecx, dword [ebp - 0x40]
test ecx, ecx
je 0x413bbd
mov edx, dword [0x42a7e4]
test edx, edx
jne 0x414407
mov ecx, dword [0x42a8bc]
mov edx, 1
shl edx, cl
mov dword [ebp - 0x3c], edx
test eax, eax
je 0x413f12
test edx, edx
je 0x413f12
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x38], 0
mov esi, dword [ebp - 0x38]
lea edi, [esi*4]
mov esi, dword [eax + esi*4]
mov dword [ebp - 0x40], edi
test esi, esi
je 0x413d20
mov dword [ebp - 0x34], 0
lea esi, [esi]
mov eax, dword [esi + 4]
mov edi, dword [esi]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x42a558]
not edi
mov dword [ebp - 0x30], edi
test eax, eax
je 0x413d07
mov eax, edi
mov ecx, edi
shr eax, 0x16
and ecx, 0xfffff000
mov edx, dword [eax*4 + 0x446214]
mov eax, edi
shr eax, 0xc
and eax, 0x3ff
mov edi, dword [edx + eax*4]
test edi, edi
je 0x413d07
mov edx, edi
cmp edi, 0xfff
ja 0x413dc8
lea esi, [esi]
lea esi, [esi]
nop
shl edx, 0xc
sub ecx, edx
mov edx, ecx
mov eax, ecx
shr edx, 0x16
mov ebx, dword [edx*4 + 0x446214]
mov edx, ecx
shr edx, 0xc
and edx, 0x3ff
mov edx, dword [ebx + edx*4]
mov edi, edx
cmp edx, 0xfff
jbe 0x413c70
test byte [edi + 0xd], 4
jne 0x413d07
mov edi, dword [edi + 0x10]
mov ebx, eax
xor edx, edx
and eax, 0xffc
and ebx, 0xfffffffc
add ecx, 0x1000
div edi
sub ebx, edx
lea eax, [ebx + edi]
cmp ecx, eax
jae 0x413cc9
cmp edi, 0x1000
jbe 0x413d07
test ebx, ebx
je 0x413d07
cmp dword [ebp - 0x30], eax
jae 0x413d07
mov eax, ebx
and eax, 0xfffff000
mov edx, eax
sub ebx, eax
shr eax, 0xc
shr edx, 0x16
and eax, 0x3ff
mov edx, dword [edx*4 + 0x446214]
mov eax, dword [edx + eax*4]
mov edx, ebx
shr ebx, 3
shr edx, 8
mov eax, dword [eax + edx*4 + 0x20]
bt eax, ebx
jae 0x413dd0
mov edx, dword [ebp - 0x2c]
test edx, edx
je 0x413d20
mov dword [ebp - 0x34], esi
mov esi, dword [ebp - 0x2c]
jmp 0x413c10
add dword [ebp - 0x38], 1
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x3c], eax
je 0x413ed9
mov eax, dword [0x42a8b4]
jmp 0x413beb
mov edx, dword [ebx]
not edx
mov dword [edx], 0
test edi, edi
je 0x413e55
mov esi, dword [0x42a7e4]
mov dword [edi + 4], eax
test esi, esi
jne 0x413e87
mov ecx, ebx
and ecx, 0xfffff000
mov edx, ecx
sub ebx, ecx
shr edx, 0x16
mov esi, dword [edx*4 + 0x446214]
mov edx, ecx
mov ecx, ebx
shr ebx, 8
shr edx, 0xc
shr ecx, 3
and edx, 0x3ff
and ecx, 0x1f
mov edx, dword [esi + edx*4]
lea ebx, [edx + ebx*4]
mov esi, dword [ebx + 0x20]
mov dword [ebp - 0x38], ebx
bt esi, ecx
jae 0x413dbc
mov ebx, dword [edx + 0x1c]
mov dword [ebp - 0x3c], ebx
mov ebx, 1
shl ebx, cl
mov ecx, ebx
mov ebx, dword [ebp - 0x38]
not ecx
and esi, ecx
mov dword [ebx + 0x20], esi
mov ebx, dword [ebp - 0x3c]
lea ecx, [ebx - 1]
mov dword [edx + 0x1c], ecx
sub dword [0x42a8b8], 1
jmp 0x413b91
mov eax, dword [ebp - 0x30]
jmp 0x413c9b
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x413e6d
mov eax, dword [ebp - 0x34]
mov edi, dword [ebp - 0x2c]
mov ecx, dword [0x42a7e4]
mov dword [eax + 4], edi
test ecx, ecx
jne 0x413eb1
mov edx, esi
and edx, 0xfffff000
mov eax, edx
sub esi, edx
shr eax, 0x16
mov ecx, dword [eax*4 + 0x446214]
mov eax, edx
mov edx, esi
shr eax, 0xc
shr edx, 8
and eax, 0x3ff
mov eax, dword [ecx + eax*4]
mov ecx, esi
shr ecx, 3
lea edx, [eax + edx*4]
and ecx, 0x1f
mov ebx, dword [edx + 0x20]
bt ebx, ecx
jae 0x413e46
mov edi, 1
mov esi, dword [eax + 0x1c]
shl edi, cl
mov ecx, edi
sub esi, 1
not ecx
and ebx, ecx
mov dword [edx + 0x20], ebx
mov dword [eax + 0x1c], esi
sub dword [0x42a8b8], 1
mov esi, dword [ebp - 0x34]
jmp 0x413d07
mov edx, dword [0x42a8b4]
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x40], 1
mov dword [edx + esi], eax
jmp 0x413d5d
mov eax, dword [0x42a8b4]
mov edi, dword [ebp - 0x40]
mov dword [ebp - 0x44], 1
mov ebx, dword [ebp - 0x2c]
mov dword [eax + edi], ebx
jmp 0x413df2
mov edx, edi
mov ecx, edi
mov esi, 1
shr edx, 0x11
shr ecx, 0xc
and edx, 0x1fff
shl esi, cl
add edx, 0x307c
lock or dword [edx*4 + 0x42a820], esi
jmp 0x413d5d
mov edi, eax
shr eax, 0x11
mov edx, 1
shr edi, 0xc
and eax, 0x1fff
mov ecx, edi
add eax, 0x307c
shl edx, cl
lock or dword [eax*4 + 0x42a820], edx
jmp 0x413df2
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x413f12
mov eax, dword [0x42a7e4]
test eax, eax
je 0x413f12
mov edx, dword [0x42a8b4]
mov ebx, 1
mov eax, edx
shr edx, 0xc
shr eax, 0x11
mov ecx, edx
and eax, 0x1fff
shl ebx, cl
add eax, 0x307c
lock or dword [eax*4 + 0x42a820], ebx
mov eax, dword [0x42a5c8]
test eax, eax
jne 0x41438b
mov eax, dword [0x42a7dc]
mov dword [ebp - 0x4c], 0
test eax, eax
jne 0x41437d
mov eax, dword [0x42a4d4]
test eax, eax
jne 0x41436c
mov eax, dword [0x42a7ec]
mov dword [ebp - 0x44], 0x421700
xor edx, edx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [eax]
lea esi, [eax + 4]
add eax, 0x404
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x40], eax
lea esi, [esi]
nop
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
test eax, eax
je 0x414035
mov esi, eax
and esi, 0xfffff000
mov edx, esi
shr edx, 0x16
mov ecx, dword [edx*4 + 0x446214]
mov edx, esi
shr edx, 0xc
and edx, 0x3ff
mov edx, dword [ecx + edx*4]
mov edi, dword [edx + 0x10]
mov dword [ebp - 0x30], edi
lea esi, [esi]
lea esi, [esi]
mov ecx, eax
sub ecx, esi
mov ebx, ecx
shr ecx, 3
shr ebx, 8
and ecx, 0x1f
lea ebx, [edx + ebx*4]
mov edi, dword [ebx + 0x20]
mov dword [ebp - 0x34], ebx
bt edi, ecx
jae 0x413fef
mov ebx, dword [edx + 0x1c]
mov dword [ebp - 0x38], ebx
mov ebx, 1
shl ebx, cl
mov ecx, ebx
mov ebx, dword [ebp - 0x34]
not ecx
and edi, ecx
mov dword [ebx + 0x20], edi
mov ebx, dword [ebp - 0x38]
sub ebx, 1
mov dword [edx + 0x1c], ebx
mov eax, dword [eax]
mov ebx, dword [ebp - 0x30]
sub dword [ebp - 0x3c], ebx
test eax, eax
je 0x414030
mov ecx, eax
and ecx, 0xfffff000
cmp esi, ecx
je 0x414027
mov edx, ecx
shr edx, 0x16
mov ebx, dword [edx*4 + 0x446214]
mov edx, ecx
shr edx, 0xc
and edx, 0x3ff
mov edx, dword [ebx + edx*4]
mov esi, dword [edx + 0x10]
mov dword [ebp - 0x30], esi
mov esi, ecx
jmp 0x413fb0
mov edx, 1
add dword [ebp - 0x2c], 4
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x40]
jne 0x413f70
add dword [ebp - 0x44], 0x14
mov eax, dword [ebp - 0x44]
mov esi, 0x42173c
cmp esi, eax
jne 0x413f54
test dl, dl
je 0x414361
mov eax, dword [ebp - 0x3c]
mov dword [0x42a7ec], eax
cmp dword [0x42a7dc], 2
je 0x414436
xor eax, eax
call sym._GC_start_reclaim
mov eax, dword [0x42a7dc]
test eax, eax
jne 0x414196
mov esi, dword [0x42a048]
mov ecx, dword [0x42a820]
test esi, esi
je 0x4142fd
sub ecx, dword [0x42a830]
mov dword [0x44931c], 0
mov dword [0x449320], ecx
mov eax, dword [0x42a844]
add dword [0x42a83c], eax
mov eax, dword [0x4493f4]
mov dword [0x449318], 0
mov dword [0x42a048], 0
mov dword [0x449314], eax
mov eax, dword [0x42a7dc]
mov dword [0x42a844], 0
mov dword [0x42a848], 0
mov dword [0x42a850], 0
mov dword [0x42a854], 0
test eax, eax
jne 0x414257
add esp, 0x6c
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [0x42a89c]
mov ecx, dword [ebp - 0x2c]
mov esi, eax
mov dword [ebp - 0x34], eax
lea eax, [ecx + 8]
lea esi, [edx + esi*8]
mov ecx, eax
cmp eax, esi
jae 0x414154
mov esi, dword [ebp - 0x30]
mov dword [eax], ebx
mov dword [eax + 4], esi
jmp 0x413326
mov esi, 1
shl esi, cl
or dword [edx + ebx*4 + 0x20], esi
add dword [edx + 0x1c], 1
jmp 0x4132af
mov esi, dword [0x42a7dc]
mov dword [0x42a8a0], 5
mov dword [0x42a878], 1
test esi, esi
jne 0x414467
mov esi, dword [ebp - 0x40]
mov eax, dword [ebp - 0x2c]
mov esi, dword [esi + 0x14]
sub eax, 0xff8
mov dword [eax], ebx
mov ecx, eax
mov dword [ebp - 0x30], esi
mov esi, dword [ebp - 0x30]
mov dword [eax + 4], esi
jmp 0x413326
mov eax, dword [0x42a840]
mov edx, dword [0x42a820]
mov dword [esp], str.GC__lu_freed__ld_bytes__heap__lu_KiB____lu_KiB_internal__n
add eax, 0x1cbf3
sub eax, edx
shr eax, 0xa
mov dword [esp + 0x10], eax
lea eax, [edx + 0x1ff]
shr eax, 0xa
mov dword [esp + 0xc], eax
mov eax, dword [0x42a7ec]
mov dword [esp + 8], eax
mov eax, dword [0x42a7d8]
mov dword [esp + 4], eax
call sym._GC_log_printf
mov edi, dword [0x42a7dc]
test edi, edi
je 0x41408a
mov eax, dword [0x42a888]
mov ecx, dword [0x42a844]
mov ebx, dword [0x42a820]
add ecx, dword [0x42a88c]
lea edi, [ecx + 0x1ff]
lea esi, [eax + 0x1ff]
add ecx, eax
xor eax, eax
shr edi, 0xa
shr esi, 0xa
cmp ecx, ebx
jae 0x41422c
cmp ecx, 0x28f5c27
ja 0x4143bf
imul eax, ecx, 0x64
xor edx, edx
div ebx
mov dword [esp + 0xc], edi
mov dword [esp + 8], esi
mov dword [esp + 4], eax
mov dword [esp], str.In_use_heap:__d_____lu_KiB_pointers___lu_KiB_other__n
call sym._GC_log_printf
jmp 0x41408a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x48], eax
jmp 0x41311d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp], str._lu_finalization_entries___lu__lu_short_long_disappearing_links_alive_n
mov ebx, eax
mov eax, dword [0x42a8b8]
mov dword [esp + 0xc], eax
mov eax, dword [0x42a8c4]
mov dword [esp + 8], eax
mov eax, dword [0x42a8b0]
mov dword [esp + 4], eax
call sym._GC_log_printf
mov eax, dword [0x42a8d0]
xor edx, edx
test eax, eax
je 0x41429b
mov eax, dword [eax + 4]
add edx, 1
test eax, eax
jne 0x414291
mov eax, dword [0x449310]
sub eax, dword [0x42a8b8]
mov dword [esp + 4], edx
mov dword [esp + 0xc], eax
mov eax, dword [0x44930c]
sub eax, dword [0x42a8c4]
mov dword [esp], str._lu_finalization_ready_objects___ld__ld_short_long_links_cleared_n
mov dword [esp + 8], eax
call sym._GC_log_printf
mov eax, dword [ebp - 0x4c]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0
sub ebx, eax
sub eax, dword [ebp - 0x48]
mov dword [esp], str.Finalize_and_initiate_sweep_took__lu_ms__lu_ns___lu_ms__lu_ns_n
mov dword [esp + 0xc], ebx
mov dword [esp + 4], eax
call sym._GC_log_printf
add esp, 0x6c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [ebp - 0x1c], ebp
mov edx, dword [0x42a4d0]
mov eax, dword [ebp - 0x1c]
mov ebx, dword [0x42a7e8]
sub ecx, dword [0x449320]
sub edx, eax
mov eax, dword [0x42a88c]
add edx, dword [0x42a888]
shr eax, 2
add eax, dword [0x42a7d4]
lea eax, [eax + edx*2]
xor edx, edx
div dword [0x4216e0]
mov edx, eax
shr edx, 1
test ebx, ebx
cmovne eax, edx
mov edx, 1
test eax, eax
cmove eax, edx
add eax, dword [0x42a830]
cmp ecx, eax
seta al
movzx eax, al
mov dword [0x44931c], eax
jmp 0x4140b4
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x3c], eax
jmp 0x414069
mov dword [esp], str.Back_height_not_available:_Rebuild_collector_with__DMAKE_BACK_GRAPH_n
call sym._GC_err_printf
jmp 0x413f40
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x4c], eax
jmp 0x413f33
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov edx, eax
shr edx, 8
xor edx, eax
movzx edx, dl
mov edx, dword [edx*4 + 0x42a060]
test edx, edx
je sym._GC_finish_collection.lto_priv.85.cold.1
cmp dword [edx + 8], eax
jne 0x414485
mov eax, dword [edx + 4]
mov byte [eax + 0x10], 0
jmp 0x413f1f
mov eax, ebx
mov edx, 0x51eb851f
mul edx
mov eax, ecx
mov ebx, edx
xor edx, edx
shr ebx, 5
div ebx
jmp 0x41422c
mov eax, dword [0x42a8cc]
mov ebx, 1
mov edx, eax
shr eax, 0xc
shr edx, 0x11
mov ecx, eax
and edx, 0x1fff
shl ebx, cl
add edx, 0x307c
lock or dword [edx*4 + 0x42a820], ebx
jmp 0x413823
mov edx, eax
shr eax, 0xc
mov ebx, 1
shr edx, 0x11
mov ecx, eax
and edx, 0x1fff
shl ebx, cl
add edx, 0x307c
lock or dword [edx*4 + 0x42a820], ebx
mov eax, dword [0x42a8b4]
jmp 0x413bbd
mov eax, dword [ebp - 0x3c]
mov dword [esp], str.Bytes_recovered_before_sweep___f.l._count___ld_n
mov dword [esp + 4], eax
call sym._GC_log_printf
jmp 0x414076
mov dword [0x42a84c], 0
jmp 0x413823
call sym._GC_dump_named.constprop.41
jmp 0x413143
mov eax, dword [ebp - 0x34]
mov dword [esp], str.Mark_stack_overflow__current_size:__lu_entries_n
mov dword [esp + 4], eax
call sym._GC_log_printf
mov edx, dword [0x42a86c]
jmp 0x414176
mov edx, dword [edx]
test edx, edx
je 0x414496
cmp eax, dword [edx + 8]
je 0x4143b3
jmp 0x414485
jmp sym._GC_finish_collection.lto_priv.85.cold.1