572f8d:	cc                   	int3
572f8e:	cc                   	int3
572f8f:	cc                   	int3
572f90:	e9 5f af e9 ff       	jmp    0x40def4
572f95:	cc                   	int3
572f96:	cc                   	int3
572f97:	cc                   	int3
572f98:	cc                   	int3
572f99:	cc                   	int3
572f9a:	cc                   	int3
572f9b:	cc                   	int3
572f9c:	cc                   	int3
572f9d:	cc                   	int3
572f9e:	cc                   	int3
572f9f:	cc                   	int3
572fa0:	8b 44 24 04          	mov    0x4(%esp),%eax
572fa4:	85 c0                	test   %eax,%eax
572fa6:	75 03                	jne    0x572fab
572fa8:	c2 04 00             	ret    $0x4
572fab:	3d ff ff ff 1f       	cmp    $0x1fffffff,%eax
572fb0:	77 3b                	ja     0x572fed
572fb2:	c1 e0 03             	shl    $0x3,%eax
572fb5:	3d 00 10 00 00       	cmp    $0x1000,%eax
572fba:	72 22                	jb     0x572fde
572fbc:	8d 48 23             	lea    0x23(%eax),%ecx
572fbf:	3b c8                	cmp    %eax,%ecx
572fc1:	76 2f                	jbe    0x572ff2
572fc3:	51                   	push   %ecx
572fc4:	e8 b4 79 eb ff       	call   0x42a97d
572fc9:	8b c8                	mov    %eax,%ecx
572fcb:	83 c4 04             	add    $0x4,%esp
572fce:	85 c9                	test   %ecx,%ecx
572fd0:	74 25                	je     0x572ff7
572fd2:	8d 41 23             	lea    0x23(%ecx),%eax
572fd5:	83 e0 e0             	and    $0xffffffe0,%eax
572fd8:	89 48 fc             	mov    %ecx,-0x4(%eax)
572fdb:	c2 04 00             	ret    $0x4
572fde:	50                   	push   %eax
572fdf:	e8 99 79 eb ff       	call   0x42a97d
572fe4:	83 c4 04             	add    $0x4,%esp
572fe7:	85 c0                	test   %eax,%eax
572fe9:	75 bd                	jne    0x572fa8
572feb:	eb 0f                	jmp    0x572ffc
572fed:	e8 2c ef e8 ff       	call   0x401f1e
572ff2:	e8 27 ef e8 ff       	call   0x401f1e
572ff7:	e8 91 a9 ec ff       	call   0x43d98d
572ffc:	e8 8c a9 ec ff       	call   0x43d98d
573001:	cc                   	int3
573002:	cc                   	int3
573003:	cc                   	int3
573004:	cc                   	int3
573005:	cc                   	int3
573006:	cc                   	int3
573007:	cc                   	int3
573008:	cc                   	int3
573009:	cc                   	int3
57300a:	cc                   	int3
57300b:	cc                   	int3
57300c:	cc                   	int3
57300d:	cc                   	int3
57300e:	cc                   	int3
57300f:	cc                   	int3
573010:	cc                   	int3
573011:	cc                   	int3
573012:	cc                   	int3
573013:	cc                   	int3
573014:	cc                   	int3
573015:	cc                   	int3
573016:	cc                   	int3
573017:	cc                   	int3
573018:	cc                   	int3
573019:	cc                   	int3
57301a:	cc                   	int3
57301b:	cc                   	int3
57301c:	cc                   	int3
57301d:	cc                   	int3
57301e:	cc                   	int3
57301f:	cc                   	int3
573020:	56                   	push   %esi
573021:	57                   	push   %edi
573022:	8b f9                	mov    %ecx,%edi
573024:	8b 77 04             	mov    0x4(%edi),%esi
573027:	3b 77 08             	cmp    0x8(%edi),%esi
57302a:	74 1e                	je     0x57304a
57302c:	53                   	push   %ebx
57302d:	8b 5c 24 14          	mov    0x14(%esp),%ebx
573031:	55                   	push   %ebp
573032:	8b 6c 24 14          	mov    0x14(%esp),%ebp
573036:	8b 4e 04             	mov    0x4(%esi),%ecx
573039:	53                   	push   %ebx
57303a:	55                   	push   %ebp
57303b:	8b 01                	mov    (%ecx),%eax
57303d:	ff 50 10             	call   *0x10(%eax)
573040:	83 c6 08             	add    $0x8,%esi
573043:	3b 77 08             	cmp    0x8(%edi),%esi
573046:	75 ee                	jne    0x573036
573048:	5d                   	pop    %ebp
573049:	5b                   	pop    %ebx
57304a:	8b 47 08             	mov    0x8(%edi),%eax
57304d:	2b 47 04             	sub    0x4(%edi),%eax
573050:	5f                   	pop    %edi
573051:	c1 f8 03             	sar    $0x3,%eax
573054:	5e                   	pop    %esi
573055:	c2 08 00             	ret    $0x8
573058:	cc                   	int3
573059:	cc                   	int3
57305a:	cc                   	int3
57305b:	cc                   	int3
57305c:	cc                   	int3
57305d:	cc                   	int3
57305e:	cc                   	int3
57305f:	cc                   	int3
573060:	cc                   	int3
573061:	cc                   	int3
573062:	cc                   	int3
573063:	cc                   	int3
573064:	cc                   	int3
573065:	cc                   	int3
573066:	cc                   	int3
573067:	cc                   	int3
573068:	cc                   	int3
573069:	cc                   	int3
57306a:	cc                   	int3
57306b:	cc                   	int3
57306c:	cc                   	int3
57306d:	cc                   	int3
57306e:	cc                   	int3
57306f:	cc                   	int3
573070:	8b 44 24 04          	mov    0x4(%esp),%eax
573074:	8b 09                	mov    (%ecx),%ecx
573076:	89 08                	mov    %ecx,(%eax)
573078:	c2 04 00             	ret    $0x4
57307b:	cc                   	int3
57307c:	cc                   	int3
57307d:	cc                   	int3
57307e:	cc                   	int3
57307f:	cc                   	int3
573080:	8b 41 08             	mov    0x8(%ecx),%eax
573083:	2b 01                	sub    (%ecx),%eax
573085:	c1 f8 03             	sar    $0x3,%eax
573088:	c3                   	ret
573089:	cc                   	int3
57308a:	cc                   	int3
57308b:	2b 49 fc             	sub    -0x4(%ecx),%ecx
57308e:	e9 b8 96 eb ff       	jmp    0x42c74b
573093:	cc                   	int3
573094:	cc                   	int3
573095:	cc                   	int3
573096:	cc                   	int3
573097:	cc                   	int3
573098:	cc                   	int3
573099:	cc                   	int3
57309a:	cc                   	int3
57309b:	cc                   	int3
57309c:	cc                   	int3
57309d:	cc                   	int3
57309e:	cc                   	int3
57309f:	cc                   	int3
5730a0:	56                   	push   %esi
5730a1:	57                   	push   %edi
5730a2:	8b f1                	mov    %ecx,%esi
5730a4:	e8 19 24 ec ff       	call   0x4354c2
5730a9:	8b 7c 24 0c          	mov    0xc(%esp),%edi
5730ad:	3b f8                	cmp    %eax,%edi
5730af:	75 17                	jne    0x5730c8
5730b1:	8d 46 e8             	lea    -0x18(%esi),%eax
5730b4:	85 c0                	test   %eax,%eax
5730b6:	74 41                	je     0x5730f9
5730b8:	8b 46 e8             	mov    -0x18(%esi),%eax
5730bb:	5f                   	pop    %edi
5730bc:	8b 40 04             	mov    0x4(%eax),%eax
5730bf:	83 c0 e8             	add    $0xffffffe8,%eax
5730c2:	03 c6                	add    %esi,%eax
5730c4:	5e                   	pop    %esi
5730c5:	c2 04 00             	ret    $0x4
5730c8:	e8 a8 59 ea ff       	call   0x418a75
5730cd:	3b f8                	cmp    %eax,%edi
5730cf:	75 08                	jne    0x5730d9
5730d1:	5f                   	pop    %edi
5730d2:	8d 46 e8             	lea    -0x18(%esi),%eax
5730d5:	5e                   	pop    %esi
5730d6:	c2 04 00             	ret    $0x4
5730d9:	e8 29 ac ec ff       	call   0x43dd07
5730de:	3b f8                	cmp    %eax,%edi
5730e0:	75 17                	jne    0x5730f9
5730e2:	8d 46 e8             	lea    -0x18(%esi),%eax
5730e5:	85 c0                	test   %eax,%eax
5730e7:	74 10                	je     0x5730f9
5730e9:	8b 46 e8             	mov    -0x18(%esi),%eax
5730ec:	5f                   	pop    %edi
5730ed:	8b 40 08             	mov    0x8(%eax),%eax
5730f0:	83 c0 e8             	add    $0xffffffe8,%eax
5730f3:	03 c6                	add    %esi,%eax
5730f5:	5e                   	pop    %esi
5730f6:	c2 04 00             	ret    $0x4
5730f9:	5f                   	pop    %edi
5730fa:	33 c0                	xor    %eax,%eax
5730fc:	5e                   	pop    %esi
5730fd:	c2 04 00             	ret    $0x4
573100:	cc                   	int3
573101:	cc                   	int3
573102:	cc                   	int3
573103:	cc                   	int3
573104:	cc                   	int3
573105:	cc                   	int3
573106:	cc                   	int3
573107:	cc                   	int3
573108:	cc                   	int3
573109:	cc                   	int3
57310a:	cc                   	int3
57310b:	cc                   	int3
57310c:	cc                   	int3
57310d:	cc                   	int3
57310e:	cc                   	int3
57310f:	cc                   	int3
573110:	cc                   	int3
573111:	cc                   	int3
573112:	cc                   	int3
573113:	cc                   	int3
573114:	cc                   	int3
573115:	cc                   	int3
573116:	cc                   	int3
573117:	cc                   	int3
573118:	cc                   	int3
573119:	cc                   	int3
57311a:	cc                   	int3
57311b:	cc                   	int3
57311c:	cc                   	int3
57311d:	cc                   	int3
57311e:	cc                   	int3
57311f:	cc                   	int3
573120:	53                   	push   %ebx
573121:	56                   	push   %esi
573122:	57                   	push   %edi
573123:	8b f9                	mov    %ecx,%edi
573125:	8b 5f 04             	mov    0x4(%edi),%ebx
573128:	8b 37                	mov    (%edi),%esi
57312a:	3b f3                	cmp    %ebx,%esi
57312c:	74 1a                	je     0x573148
57312e:	66 90                	xchg   %ax,%ax
573130:	8b 06                	mov    (%esi),%eax
573132:	8b ce                	mov    %esi,%ecx
573134:	6a 00                	push   $0x0
573136:	ff 10                	call   *(%eax)
573138:	83 c6 08             	add    $0x8,%esi
57313b:	3b f3                	cmp    %ebx,%esi
57313d:	75 f1                	jne    0x573130
57313f:	8b 07                	mov    (%edi),%eax
573141:	89 47 04             	mov    %eax,0x4(%edi)
573144:	5f                   	pop    %edi
573145:	5e                   	pop    %esi
573146:	5b                   	pop    %ebx
573147:	c3                   	ret
573148:	8b c6                	mov    %esi,%eax
57314a:	89 47 04             	mov    %eax,0x4(%edi)
57314d:	5f                   	pop    %edi
57314e:	5e                   	pop    %esi
57314f:	5b                   	pop    %ebx
573150:	c3                   	ret
573151:	cc                   	int3
573152:	cc                   	int3
573153:	cc                   	int3
573154:	cc                   	int3
573155:	cc                   	int3
573156:	cc                   	int3
573157:	cc                   	int3
573158:	cc                   	int3
573159:	cc                   	int3
57315a:	cc                   	int3
57315b:	cc                   	int3
57315c:	cc                   	int3
57315d:	cc                   	int3
57315e:	cc                   	int3
57315f:	cc                   	int3
573160:	8b 44 24 04          	mov    0x4(%esp),%eax
573164:	8b 49 04             	mov    0x4(%ecx),%ecx
573167:	89 08                	mov    %ecx,(%eax)
573169:	c2 04 00             	ret    $0x4
57316c:	cc                   	int3
57316d:	cc                   	int3
57316e:	cc                   	int3
57316f:	cc                   	int3
573170:	51                   	push   %ecx
573171:	8b 44 24 0c          	mov    0xc(%esp),%eax
573175:	53                   	push   %ebx
573176:	56                   	push   %esi
573177:	57                   	push   %edi
573178:	8b d9                	mov    %ecx,%ebx
57317a:	c6 44 24 0c 00       	movb   $0x0,0xc(%esp)
57317f:	ff 74 24 0c          	push   0xc(%esp)
573183:	50                   	push   %eax
573184:	ff 73 04             	push   0x4(%ebx)
573187:	83 c0 08             	add    $0x8,%eax
57318a:	50                   	push   %eax
57318b:	e8 de e2 e9 ff       	call   0x41146e
573190:	8b 7b 04             	mov    0x4(%ebx),%edi
573193:	83 c4 10             	add    $0x10,%esp
573196:	8d 77 f8             	lea    -0x8(%edi),%esi
573199:	3b f7                	cmp    %edi,%esi
57319b:	74 12                	je     0x5731af
57319d:	0f 1f 00             	nopl   (%eax)
5731a0:	8b 06                	mov    (%esi),%eax
5731a2:	8b ce                	mov    %esi,%ecx
5731a4:	6a 00                	push   $0x0
5731a6:	ff 10                	call   *(%eax)
5731a8:	83 c6 08             	add    $0x8,%esi
5731ab:	3b f7                	cmp    %edi,%esi
5731ad:	75 f1                	jne    0x5731a0
5731af:	8b 44 24 14          	mov    0x14(%esp),%eax
5731b3:	83 43 04 f8          	addl   $0xfffffff8,0x4(%ebx)
5731b7:	8b 4c 24 18          	mov    0x18(%esp),%ecx
5731bb:	5f                   	pop    %edi
5731bc:	5e                   	pop    %esi
5731bd:	89 08                	mov    %ecx,(%eax)
5731bf:	5b                   	pop    %ebx
5731c0:	59                   	pop    %ecx
5731c1:	c2 08 00             	ret    $0x8
5731c4:	cc                   	int3
5731c5:	cc                   	int3
5731c6:	cc                   	int3
5731c7:	cc                   	int3
5731c8:	cc                   	int3
5731c9:	cc                   	int3
5731ca:	cc                   	int3
5731cb:	cc                   	int3
5731cc:	cc                   	int3
5731cd:	cc                   	int3
5731ce:	cc                   	int3
5731cf:	cc                   	int3
5731d0:	cc                   	int3
5731d1:	cc                   	int3
5731d2:	cc                   	int3
5731d3:	cc                   	int3
5731d4:	cc                   	int3
5731d5:	cc                   	int3
5731d6:	cc                   	int3
5731d7:	cc                   	int3
5731d8:	cc                   	int3
5731d9:	2b 49 fc             	sub    -0x4(%ecx),%ecx
5731dc:	e9 45 60 eb ff       	jmp    0x429226
5731e1:	cc                   	int3
5731e2:	cc                   	int3
5731e3:	cc                   	int3
5731e4:	cc                   	int3
5731e5:	cc                   	int3
5731e6:	cc                   	int3
5731e7:	cc                   	int3
5731e8:	cc                   	int3
5731e9:	cc                   	int3
5731ea:	cc                   	int3