401fca:	8b e5                	mov    %ebp,%esp
401fcc:	5d                   	pop    %ebp
401fcd:	c2 08 00             	ret    $0x8
401fd0:	8b 75 ec             	mov    -0x14(%ebp),%esi
401fd3:	83 7e 18 10          	cmpl   $0x10,0x18(%esi)
401fd7:	72 0c                	jb     0x401fe5
401fd9:	8b 56 04             	mov    0x4(%esi),%edx
401fdc:	52                   	push   %edx
401fdd:	e8 4d 3a 00 00       	call   0x405a2f
401fe2:	83 c4 04             	add    $0x4,%esp
401fe5:	6a 00                	push   $0x0
401fe7:	c7 46 18 0f 00 00 00 	movl   $0xf,0x18(%esi)
401fee:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
401ff5:	6a 00                	push   $0x0
401ff7:	c6 46 04 00          	movb   $0x0,0x4(%esi)
401ffb:	e8 42 40 00 00       	call   0x406042
402000:	cc                   	int3
402001:	cc                   	int3
402002:	cc                   	int3
402003:	cc                   	int3
402004:	cc                   	int3
402005:	cc                   	int3
402006:	cc                   	int3
402007:	cc                   	int3
402008:	cc                   	int3
402009:	cc                   	int3
40200a:	cc                   	int3
40200b:	cc                   	int3
40200c:	cc                   	int3
40200d:	cc                   	int3
40200e:	cc                   	int3
40200f:	cc                   	int3
402010:	56                   	push   %esi
402011:	8b f1                	mov    %ecx,%esi
402013:	83 7e 18 10          	cmpl   $0x10,0x18(%esi)
402017:	72 0c                	jb     0x402025
402019:	8b 46 04             	mov    0x4(%esi),%eax
40201c:	50                   	push   %eax
40201d:	e8 0d 3a 00 00       	call   0x405a2f
402022:	83 c4 04             	add    $0x4,%esp
402025:	33 c0                	xor    %eax,%eax
402027:	c7 46 18 0f 00 00 00 	movl   $0xf,0x18(%esi)
40202e:	89 46 14             	mov    %eax,0x14(%esi)
402031:	88 46 04             	mov    %al,0x4(%esi)
402034:	5e                   	pop    %esi
402035:	c3                   	ret
402036:	cc                   	int3
402037:	cc                   	int3
402038:	cc                   	int3
402039:	cc                   	int3
40203a:	cc                   	int3
40203b:	cc                   	int3
40203c:	cc                   	int3
40203d:	cc                   	int3
40203e:	cc                   	int3
40203f:	cc                   	int3
402040:	53                   	push   %ebx
402041:	8b 5c 24 08          	mov    0x8(%esp),%ebx
402045:	83 fb fe             	cmp    $0xfffffffe,%ebx
402048:	56                   	push   %esi
402049:	8b f1                	mov    %ecx,%esi
40204b:	76 05                	jbe    0x402052
40204d:	e8 70 13 00 00       	call   0x4033c2
402052:	8b 46 18             	mov    0x18(%esi),%eax
402055:	3b c3                	cmp    %ebx,%eax
402057:	73 19                	jae    0x402072
402059:	8b 46 14             	mov    0x14(%esi),%eax
40205c:	50                   	push   %eax
40205d:	53                   	push   %ebx
40205e:	8b ce                	mov    %esi,%ecx
402060:	e8 5b fe ff ff       	call   0x401ec0
402065:	33 c9                	xor    %ecx,%ecx
402067:	3b cb                	cmp    %ebx,%ecx
402069:	1b c0                	sbb    %eax,%eax
40206b:	5e                   	pop    %esi
40206c:	f7 d8                	neg    %eax
40206e:	5b                   	pop    %ebx
40206f:	c2 08 00             	ret    $0x8
402072:	80 7c 24 10 00       	cmpb   $0x0,0x10(%esp)
402077:	74 52                	je     0x4020cb
402079:	83 fb 10             	cmp    $0x10,%ebx
40207c:	73 4d                	jae    0x4020cb
40207e:	57                   	push   %edi
40207f:	8b 7e 14             	mov    0x14(%esi),%edi
402082:	3b df                	cmp    %edi,%ebx
402084:	73 02                	jae    0x402088
402086:	8b fb                	mov    %ebx,%edi
402088:	83 f8 10             	cmp    $0x10,%eax
40208b:	72 21                	jb     0x4020ae
40208d:	85 ff                	test   %edi,%edi
40208f:	8d 46 04             	lea    0x4(%esi),%eax
402092:	55                   	push   %ebp
402093:	8b 28                	mov    (%eax),%ebp
402095:	76 0d                	jbe    0x4020a4
402097:	57                   	push   %edi
402098:	55                   	push   %ebp
402099:	6a 10                	push   $0x10
40209b:	50                   	push   %eax
40209c:	e8 93 39 00 00       	call   0x405a34
4020a1:	83 c4 10             	add    $0x10,%esp
4020a4:	55                   	push   %ebp
4020a5:	e8 85 39 00 00       	call   0x405a2f
4020aa:	83 c4 04             	add    $0x4,%esp
4020ad:	5d                   	pop    %ebp
4020ae:	89 7e 14             	mov    %edi,0x14(%esi)
4020b1:	c7 46 18 0f 00 00 00 	movl   $0xf,0x18(%esi)
4020b8:	33 c9                	xor    %ecx,%ecx
4020ba:	c6 44 3e 04 00       	movb   $0x0,0x4(%esi,%edi,1)
4020bf:	3b cb                	cmp    %ebx,%ecx
4020c1:	5f                   	pop    %edi
4020c2:	1b c0                	sbb    %eax,%eax
4020c4:	5e                   	pop    %esi
4020c5:	f7 d8                	neg    %eax
4020c7:	5b                   	pop    %ebx
4020c8:	c2 08 00             	ret    $0x8
4020cb:	85 db                	test   %ebx,%ebx
4020cd:	75 20                	jne    0x4020ef
4020cf:	83 f8 10             	cmp    $0x10,%eax
4020d2:	89 5e 14             	mov    %ebx,0x14(%esi)
4020d5:	72 12                	jb     0x4020e9
4020d7:	8b 76 04             	mov    0x4(%esi),%esi
4020da:	33 c9                	xor    %ecx,%ecx
4020dc:	3b cb                	cmp    %ebx,%ecx
4020de:	88 1e                	mov    %bl,(%esi)
4020e0:	1b c0                	sbb    %eax,%eax
4020e2:	5e                   	pop    %esi
4020e3:	f7 d8                	neg    %eax
4020e5:	5b                   	pop    %ebx
4020e6:	c2 08 00             	ret    $0x8
4020e9:	83 c6 04             	add    $0x4,%esi
4020ec:	c6 06 00             	movb   $0x0,(%esi)
4020ef:	33 c9                	xor    %ecx,%ecx
4020f1:	3b cb                	cmp    %ebx,%ecx
4020f3:	1b c0                	sbb    %eax,%eax
4020f5:	5e                   	pop    %esi
4020f6:	f7 d8                	neg    %eax
4020f8:	5b                   	pop    %ebx
4020f9:	c2 08 00             	ret    $0x8
4020fc:	cc                   	int3
4020fd:	cc                   	int3
4020fe:	cc                   	int3
4020ff:	cc                   	int3
402100:	56                   	push   %esi
402101:	8b f1                	mov    %ecx,%esi
402103:	c7 06 38 73 41 00    	movl   $0x417338,(%esi)
402109:	83 7e 24 10          	cmpl   $0x10,0x24(%esi)
40210d:	72 0c                	jb     0x40211b
40210f:	8b 46 10             	mov    0x10(%esi),%eax
402112:	50                   	push   %eax
402113:	e8 17 39 00 00       	call   0x405a2f
402118:	83 c4 04             	add    $0x4,%esp
40211b:	33 c0                	xor    %eax,%eax
40211d:	c7 46 24 0f 00 00 00 	movl   $0xf,0x24(%esi)
402124:	89 46 20             	mov    %eax,0x20(%esi)
402127:	88 46 10             	mov    %al,0x10(%esi)
40212a:	8b ce                	mov    %esi,%ecx
40212c:	5e                   	pop    %esi
40212d:	e9 1b 38 00 00       	jmp    0x40594d
402132:	cc                   	int3
402133:	cc                   	int3
402134:	cc                   	int3
402135:	cc                   	int3
402136:	cc                   	int3
402137:	cc                   	int3
402138:	cc                   	int3
402139:	cc                   	int3
40213a:	cc                   	int3
40213b:	cc                   	int3
40213c:	cc                   	int3
40213d:	cc                   	int3
40213e:	cc                   	int3
40213f:	cc                   	int3
402140:	83 79 24 10          	cmpl   $0x10,0x24(%ecx)
402144:	72 04                	jb     0x40214a
402146:	8b 41 10             	mov    0x10(%ecx),%eax
402149:	c3                   	ret
40214a:	8d 41 10             	lea    0x10(%ecx),%eax
40214d:	c3                   	ret
40214e:	cc                   	int3
40214f:	cc                   	int3
402150:	53                   	push   %ebx
402151:	8b 5c 24 08          	mov    0x8(%esp),%ebx
402155:	55                   	push   %ebp
402156:	8b 6c 24 10          	mov    0x10(%esp),%ebp
40215a:	39 6b 14             	cmp    %ebp,0x14(%ebx)
40215d:	56                   	push   %esi
40215e:	57                   	push   %edi
40215f:	8b f1                	mov    %ecx,%esi
402161:	73 05                	jae    0x402168
402163:	e8 eb 12 00 00       	call   0x403453
402168:	8b 7b 14             	mov    0x14(%ebx),%edi
40216b:	8b 44 24 1c          	mov    0x1c(%esp),%eax
40216f:	2b fd                	sub    %ebp,%edi
402171:	3b c7                	cmp    %edi,%eax
402173:	73 02                	jae    0x402177
402175:	8b f8                	mov    %eax,%edi
402177:	3b f3                	cmp    %ebx,%esi
402179:	75 1f                	jne    0x40219a
40217b:	6a ff                	push   $0xffffffff
40217d:	03 fd                	add    %ebp,%edi
40217f:	57                   	push   %edi
402180:	8b ce                	mov    %esi,%ecx
402182:	e8 a9 fc ff ff       	call   0x401e30
402187:	55                   	push   %ebp
402188:	6a 00                	push   $0x0
40218a:	8b ce                	mov    %esi,%ecx
40218c:	e8 9f fc ff ff       	call   0x401e30
402191:	5f                   	pop    %edi
402192:	8b c6                	mov    %esi,%eax
402194:	5e                   	pop    %esi
402195:	5d                   	pop    %ebp
402196:	5b                   	pop    %ebx
402197:	c2 0c 00             	ret    $0xc
40219a:	83 ff fe             	cmp    $0xfffffffe,%edi
40219d:	76 05                	jbe    0x4021a4
40219f:	e8 1e 12 00 00       	call   0x4033c2
4021a4:	8b 46 18             	mov    0x18(%esi),%eax
4021a7:	3b c7                	cmp    %edi,%eax
4021a9:	73 1b                	jae    0x4021c6
4021ab:	8b 46 14             	mov    0x14(%esi),%eax
4021ae:	50                   	push   %eax
4021af:	57                   	push   %edi
4021b0:	8b ce                	mov    %esi,%ecx
4021b2:	e8 09 fd ff ff       	call   0x401ec0
4021b7:	85 ff                	test   %edi,%edi
4021b9:	76 66                	jbe    0x402221
4021bb:	83 7b 18 10          	cmpl   $0x10,0x18(%ebx)
4021bf:	72 2f                	jb     0x4021f0
4021c1:	8b 53 04             	mov    0x4(%ebx),%edx
4021c4:	eb 2d                	jmp    0x4021f3
4021c6:	85 ff                	test   %edi,%edi
4021c8:	75 ef                	jne    0x4021b9
4021ca:	83 f8 10             	cmp    $0x10,%eax
4021cd:	89 7e 14             	mov    %edi,0x14(%esi)
4021d0:	72 0f                	jb     0x4021e1
4021d2:	8b 46 04             	mov    0x4(%esi),%eax
4021d5:	5f                   	pop    %edi
4021d6:	c6 00 00             	movb   $0x0,(%eax)
4021d9:	8b c6                	mov    %esi,%eax
4021db:	5e                   	pop    %esi
4021dc:	5d                   	pop    %ebp
4021dd:	5b                   	pop    %ebx
4021de:	c2 0c 00             	ret    $0xc
4021e1:	8d 46 04             	lea    0x4(%esi),%eax
4021e4:	5f                   	pop    %edi
4021e5:	c6 00 00             	movb   $0x0,(%eax)
4021e8:	8b c6                	mov    %esi,%eax
4021ea:	5e                   	pop    %esi
4021eb:	5d                   	pop    %ebp
4021ec:	5b                   	pop    %ebx
4021ed:	c2 0c 00             	ret    $0xc
4021f0:	8d 53 04             	lea    0x4(%ebx),%edx
4021f3:	8b 4e 18             	mov    0x18(%esi),%ecx
4021f6:	83 f9 10             	cmp    $0x10,%ecx
4021f9:	8d 5e 04             	lea    0x4(%esi),%ebx
4021fc:	72 04                	jb     0x402202
4021fe:	8b 03                	mov    (%ebx),%eax
402200:	eb 02                	jmp    0x402204
402202:	8b c3                	mov    %ebx,%eax
402204:	57                   	push   %edi
402205:	03 d5                	add    %ebp,%edx
402207:	52                   	push   %edx
402208:	51                   	push   %ecx
402209:	50                   	push   %eax
40220a:	e8 25 38 00 00       	call   0x405a34
40220f:	83 c4 10             	add    $0x10,%esp
402212:	83 7e 18 10          	cmpl   $0x10,0x18(%esi)
402216:	89 7e 14             	mov    %edi,0x14(%esi)
402219:	72 02                	jb     0x40221d
40221b:	8b 1b                	mov    (%ebx),%ebx
40221d:	c6 04 3b 00          	movb   $0x0,(%ebx,%edi,1)
402221:	5f                   	pop    %edi
402222:	8b c6                	mov    %esi,%eax
402224:	5e                   	pop    %esi
402225:	5d                   	pop    %ebp
402226:	5b                   	pop    %ebx
402227:	c2 0c 00             	ret    $0xc
40222a:	cc                   	int3
40222b:	cc                   	int3
40222c:	cc                   	int3
40222d:	cc                   	int3
40222e:	cc                   	int3
40222f:	cc                   	int3
402230:	53                   	push   %ebx
402231:	55                   	push   %ebp
402232:	56                   	push   %esi
402233:	8b f1                	mov    %ecx,%esi
402235:	8b 4e 18             	mov    0x18(%esi),%ecx
402238:	83 f9 10             	cmp    $0x10,%ecx
40223b:	8d 5e 04             	lea    0x4(%esi),%ebx
40223e:	72 04                	jb     0x402244
402240:	8b 03                	mov    (%ebx),%eax
402242:	eb 02                	jmp    0x402246
402244:	8b c3                	mov    %ebx,%eax
402246:	8b 6c 24 10          	mov    0x10(%esp),%ebp
40224a:	3b e8                	cmp    %eax,%ebp
40224c:	72 31                	jb     0x40227f
40224e:	83 f9 10             	cmp    $0x10,%ecx
402251:	72 04                	jb     0x402257
402253:	8b 03                	mov    (%ebx),%eax
402255:	eb 02                	jmp    0x402259
402257:	8b c3                	mov    %ebx,%eax
402259:	8b 56 14             	mov    0x14(%esi),%edx
40225c:	03 d0                	add    %eax,%edx
40225e:	3b d5                	cmp    %ebp,%edx
402260:	76 1d                	jbe    0x40227f
402262:	83 f9 10             	cmp    $0x10,%ecx
402265:	72 02                	jb     0x402269
402267:	8b 1b                	mov    (%ebx),%ebx
402269:	8b 44 24 14          	mov    0x14(%esp),%eax
40226d:	50                   	push   %eax
40226e:	2b eb                	sub    %ebx,%ebp
402270:	55                   	push   %ebp
402271:	56                   	push   %esi
402272:	8b ce                	mov    %esi,%ecx
402274:	e8 d7 fe ff ff       	call   0x402150
402279:	5e                   	pop    %esi
40227a:	5d                   	pop    %ebp
40227b:	5b                   	pop    %ebx
40227c:	c2 08 00             	ret    $0x8
40227f:	57                   	push   %edi
402280:	8b 7c 24 18          	mov    0x18(%esp),%edi
402284:	83 ff fe             	cmp    $0xfffffffe,%edi
402287:	76 05                	jbe    0x40228e
402289:	e8 34 11 00 00       	call   0x4033c2
40228e:	8b 46 18             	mov    0x18(%esi),%eax
402291:	3b c7                	cmp    %edi,%eax
402293:	73 1c                	jae    0x4022b1
402295:	8b 4e 14             	mov    0x14(%esi),%ecx
402298:	51                   	push   %ecx
402299:	57                   	push   %edi
40229a:	8b ce                	mov    %esi,%ecx
40229c:	e8 1f fc ff ff       	call   0x401ec0
4022a1:	85 ff                	test   %edi,%edi
4022a3:	76 43                	jbe    0x4022e8
4022a5:	8b 4e 18             	mov    0x18(%esi),%ecx
4022a8:	83 f9 10             	cmp    $0x10,%ecx
4022ab:	72 1e                	jb     0x4022cb
4022ad:	8b 03                	mov    (%ebx),%eax
4022af:	eb 1c                	jmp    0x4022cd
4022b1:	85 ff                	test   %edi,%edi
4022b3:	75 ee                	jne    0x4022a3
4022b5:	83 f8 10             	cmp    $0x10,%eax
4022b8:	89 7e 14             	mov    %edi,0x14(%esi)
4022bb:	72 02                	jb     0x4022bf
4022bd:	8b 1b                	mov    (%ebx),%ebx
4022bf:	5f                   	pop    %edi
4022c0:	8b c6                	mov    %esi,%eax
4022c2:	5e                   	pop    %esi
4022c3:	5d                   	pop    %ebp