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
4022c4:	c6 03 00             	movb   $0x0,(%ebx)
4022c7:	5b                   	pop    %ebx
4022c8:	c2 08 00             	ret    $0x8
4022cb:	8b c3                	mov    %ebx,%eax
4022cd:	57                   	push   %edi
4022ce:	55                   	push   %ebp
4022cf:	51                   	push   %ecx
4022d0:	50                   	push   %eax
4022d1:	e8 5e 37 00 00       	call   0x405a34
4022d6:	83 c4 10             	add    $0x10,%esp
4022d9:	83 7e 18 10          	cmpl   $0x10,0x18(%esi)
4022dd:	89 7e 14             	mov    %edi,0x14(%esi)
4022e0:	72 02                	jb     0x4022e4
4022e2:	8b 1b                	mov    (%ebx),%ebx
4022e4:	c6 04 3b 00          	movb   $0x0,(%ebx,%edi,1)
4022e8:	5f                   	pop    %edi
4022e9:	8b c6                	mov    %esi,%eax
4022eb:	5e                   	pop    %esi
4022ec:	5d                   	pop    %ebp
4022ed:	5b                   	pop    %ebx
4022ee:	c2 08 00             	ret    $0x8
4022f1:	cc                   	int3
4022f2:	cc                   	int3
4022f3:	cc                   	int3
4022f4:	cc                   	int3
4022f5:	cc                   	int3
4022f6:	cc                   	int3
4022f7:	cc                   	int3
4022f8:	cc                   	int3
4022f9:	cc                   	int3
4022fa:	cc                   	int3
4022fb:	cc                   	int3
4022fc:	cc                   	int3
4022fd:	cc                   	int3
4022fe:	cc                   	int3
4022ff:	cc                   	int3
402300:	56                   	push   %esi
402301:	33 c0                	xor    %eax,%eax
402303:	8b f1                	mov    %ecx,%esi
402305:	6a ff                	push   $0xffffffff
402307:	89 46 14             	mov    %eax,0x14(%esi)
40230a:	c7 46 18 0f 00 00 00 	movl   $0xf,0x18(%esi)
402311:	50                   	push   %eax
402312:	88 46 04             	mov    %al,0x4(%esi)
402315:	8b 44 24 10          	mov    0x10(%esp),%eax
402319:	50                   	push   %eax
40231a:	e8 31 fe ff ff       	call   0x402150
40231f:	8b c6                	mov    %esi,%eax
402321:	5e                   	pop    %esi
402322:	c2 04 00             	ret    $0x4
402325:	cc                   	int3
402326:	cc                   	int3
402327:	cc                   	int3
402328:	cc                   	int3
402329:	cc                   	int3
40232a:	cc                   	int3
40232b:	cc                   	int3
40232c:	cc                   	int3
40232d:	cc                   	int3
40232e:	cc                   	int3
40232f:	cc                   	int3
402330:	56                   	push   %esi
402331:	8b 74 24 08          	mov    0x8(%esp),%esi
402335:	8b c6                	mov    %esi,%eax
402337:	57                   	push   %edi
402338:	8d 78 01             	lea    0x1(%eax),%edi
40233b:	eb 03                	jmp    0x402340
40233d:	8d 49 00             	lea    0x0(%ecx),%ecx
402340:	8a 10                	mov    (%eax),%dl
402342:	83 c0 01             	add    $0x1,%eax
402345:	84 d2                	test   %dl,%dl
402347:	75 f7                	jne    0x402340
402349:	2b c7                	sub    %edi,%eax
40234b:	50                   	push   %eax
40234c:	56                   	push   %esi
40234d:	e8 de fe ff ff       	call   0x402230
402352:	5f                   	pop    %edi
402353:	5e                   	pop    %esi
402354:	c2 04 00             	ret    $0x4
402357:	cc                   	int3
402358:	cc                   	int3
402359:	cc                   	int3
40235a:	cc                   	int3
40235b:	cc                   	int3
40235c:	cc                   	int3
40235d:	cc                   	int3
40235e:	cc                   	int3
40235f:	cc                   	int3
402360:	6a ff                	push   $0xffffffff
402362:	68 18 5a 41 00       	push   $0x415a18
402367:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40236d:	50                   	push   %eax
40236e:	51                   	push   %ecx
40236f:	56                   	push   %esi
402370:	a1 20 c5 41 00       	mov    0x41c520,%eax
402375:	33 c4                	xor    %esp,%eax
402377:	50                   	push   %eax
402378:	8d 44 24 0c          	lea    0xc(%esp),%eax
40237c:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
402382:	8b f1                	mov    %ecx,%esi
402384:	89 74 24 08          	mov    %esi,0x8(%esp)
402388:	e8 f1 34 00 00       	call   0x40587e
40238d:	33 c0                	xor    %eax,%eax
40238f:	8d 4e 0c             	lea    0xc(%esi),%ecx
402392:	c7 06 38 73 41 00    	movl   $0x417338,(%esi)
402398:	6a ff                	push   $0xffffffff
40239a:	89 41 14             	mov    %eax,0x14(%ecx)
40239d:	c7 41 18 0f 00 00 00 	movl   $0xf,0x18(%ecx)
4023a4:	50                   	push   %eax
4023a5:	89 44 24 1c          	mov    %eax,0x1c(%esp)
4023a9:	88 41 04             	mov    %al,0x4(%ecx)
4023ac:	8b 44 24 24          	mov    0x24(%esp),%eax
4023b0:	50                   	push   %eax
4023b1:	e8 9a fd ff ff       	call   0x402150
4023b6:	8b c6                	mov    %esi,%eax
4023b8:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4023bc:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4023c3:	59                   	pop    %ecx
4023c4:	5e                   	pop    %esi
4023c5:	83 c4 10             	add    $0x10,%esp
4023c8:	c2 04 00             	ret    $0x4
4023cb:	cc                   	int3
4023cc:	cc                   	int3
4023cd:	cc                   	int3
4023ce:	cc                   	int3
4023cf:	cc                   	int3
4023d0:	56                   	push   %esi
4023d1:	8b f1                	mov    %ecx,%esi
4023d3:	c7 06 38 73 41 00    	movl   $0x417338,(%esi)
4023d9:	83 7e 24 10          	cmpl   $0x10,0x24(%esi)
4023dd:	72 0c                	jb     0x4023eb
4023df:	8b 46 10             	mov    0x10(%esi),%eax
4023e2:	50                   	push   %eax
4023e3:	e8 47 36 00 00       	call   0x405a2f
4023e8:	83 c4 04             	add    $0x4,%esp
4023eb:	33 c0                	xor    %eax,%eax
4023ed:	c7 46 24 0f 00 00 00 	movl   $0xf,0x24(%esi)
4023f4:	89 46 20             	mov    %eax,0x20(%esi)
4023f7:	8b ce                	mov    %esi,%ecx
4023f9:	88 46 10             	mov    %al,0x10(%esi)
4023fc:	e8 4c 35 00 00       	call   0x40594d
402401:	f6 44 24 08 01       	testb  $0x1,0x8(%esp)
402406:	74 09                	je     0x402411
402408:	56                   	push   %esi
402409:	e8 21 36 00 00       	call   0x405a2f
40240e:	83 c4 04             	add    $0x4,%esp
402411:	8b c6                	mov    %esi,%eax
402413:	5e                   	pop    %esi
402414:	c2 04 00             	ret    $0x4
402417:	cc                   	int3
402418:	cc                   	int3
402419:	cc                   	int3
40241a:	cc                   	int3
40241b:	cc                   	int3
40241c:	cc                   	int3
40241d:	cc                   	int3
40241e:	cc                   	int3
40241f:	cc                   	int3
402420:	8b 54 24 04          	mov    0x4(%esp),%edx
402424:	56                   	push   %esi
402425:	8b f1                	mov    %ecx,%esi
402427:	8b c2                	mov    %edx,%eax
402429:	57                   	push   %edi
40242a:	c7 46 18 0f 00 00 00 	movl   $0xf,0x18(%esi)
402431:	c7 46 14 00 00 00 00 	movl   $0x0,0x14(%esi)
402438:	c6 46 04 00          	movb   $0x0,0x4(%esi)
40243c:	8d 78 01             	lea    0x1(%eax),%edi
40243f:	90                   	nop
402440:	8a 08                	mov    (%eax),%cl
402442:	83 c0 01             	add    $0x1,%eax
402445:	84 c9                	test   %cl,%cl
402447:	75 f7                	jne    0x402440
402449:	2b c7                	sub    %edi,%eax
40244b:	50                   	push   %eax
40244c:	52                   	push   %edx