4c01c8:	c2 04 00             	ret    $0x4
4c01cb:	3d 00 10 00 00       	cmp    $0x1000,%eax
4c01d0:	72 22                	jb     0x4c01f4
4c01d2:	8d 48 23             	lea    0x23(%eax),%ecx
4c01d5:	3b c8                	cmp    %eax,%ecx
4c01d7:	76 2a                	jbe    0x4c0203
4c01d9:	51                   	push   %ecx
4c01da:	e8 9e a7 f6 ff       	call   0x42a97d
4c01df:	8b c8                	mov    %eax,%ecx
4c01e1:	83 c4 04             	add    $0x4,%esp
4c01e4:	85 c9                	test   %ecx,%ecx
4c01e6:	74 20                	je     0x4c0208
4c01e8:	8d 41 23             	lea    0x23(%ecx),%eax
4c01eb:	83 e0 e0             	and    $0xffffffe0,%eax
4c01ee:	89 48 fc             	mov    %ecx,-0x4(%eax)
4c01f1:	c2 04 00             	ret    $0x4
4c01f4:	50                   	push   %eax
4c01f5:	e8 83 a7 f6 ff       	call   0x42a97d
4c01fa:	83 c4 04             	add    $0x4,%esp
4c01fd:	85 c0                	test   %eax,%eax
4c01ff:	75 c7                	jne    0x4c01c8
4c0201:	eb 0a                	jmp    0x4c020d
4c0203:	e8 16 1d f4 ff       	call   0x401f1e
4c0208:	e8 80 d7 f7 ff       	call   0x43d98d
4c020d:	e8 7b d7 f7 ff       	call   0x43d98d
4c0212:	cc                   	int3
4c0213:	cc                   	int3
4c0214:	cc                   	int3
4c0215:	cc                   	int3
4c0216:	cc                   	int3
4c0217:	cc                   	int3
4c0218:	cc                   	int3
4c0219:	cc                   	int3
4c021a:	cc                   	int3
4c021b:	cc                   	int3
4c021c:	cc                   	int3
4c021d:	cc                   	int3
4c021e:	cc                   	int3
4c021f:	cc                   	int3
4c0220:	cc                   	int3
4c0221:	cc                   	int3
4c0222:	cc                   	int3
4c0223:	cc                   	int3
4c0224:	cc                   	int3
4c0225:	cc                   	int3
4c0226:	cc                   	int3
4c0227:	cc                   	int3
4c0228:	cc                   	int3
4c0229:	cc                   	int3
4c022a:	cc                   	int3
4c022b:	cc                   	int3
4c022c:	cc                   	int3
4c022d:	cc                   	int3
4c022e:	cc                   	int3
4c022f:	cc                   	int3
4c0230:	8b 01                	mov    (%ecx),%eax
4c0232:	c3                   	ret
4c0233:	cc                   	int3
4c0234:	cc                   	int3
4c0235:	cc                   	int3
4c0236:	cc                   	int3
4c0237:	cc                   	int3
4c0238:	cc                   	int3
4c0239:	cc                   	int3
4c023a:	cc                   	int3
4c023b:	cc                   	int3
4c023c:	cc                   	int3
4c023d:	cc                   	int3
4c023e:	cc                   	int3
4c023f:	cc                   	int3
4c0240:	8b 41 08             	mov    0x8(%ecx),%eax
4c0243:	2b 01                	sub    (%ecx),%eax
4c0245:	c3                   	ret
4c0246:	cc                   	int3
4c0247:	cc                   	int3
4c0248:	cc                   	int3
4c0249:	cc                   	int3
4c024a:	cc                   	int3
4c024b:	cc                   	int3
4c024c:	cc                   	int3
4c024d:	cc                   	int3
4c024e:	cc                   	int3
4c024f:	cc                   	int3
4c0250:	81 7c 24 08 00 10 00 	cmpl   $0x1000,0x8(%esp)
4c0257:	00
4c0258:	8b 44 24 04          	mov    0x4(%esp),%eax
4c025c:	72 19                	jb     0x4c0277
4c025e:	a8 1f                	test   $0x1f,%al
4c0260:	75 1f                	jne    0x4c0281
4c0262:	8b 48 fc             	mov    -0x4(%eax),%ecx
4c0265:	3b c8                	cmp    %eax,%ecx
4c0267:	73 1d                	jae    0x4c0286
4c0269:	2b c1                	sub    %ecx,%eax
4c026b:	83 f8 04             	cmp    $0x4,%eax
4c026e:	72 1b                	jb     0x4c028b
4c0270:	83 f8 23             	cmp    $0x23,%eax
4c0273:	77 1b                	ja     0x4c0290
4c0275:	8b c1                	mov    %ecx,%eax
4c0277:	50                   	push   %eax
4c0278:	e8 12 15 f4 ff       	call   0x40178f
4c027d:	59                   	pop    %ecx
4c027e:	c2 08 00             	ret    $0x8
4c0281:	e8 07 d7 f7 ff       	call   0x43d98d
4c0286:	e8 02 d7 f7 ff       	call   0x43d98d
4c028b:	e8 fd d6 f7 ff       	call   0x43d98d
4c0290:	e8 f8 d6 f7 ff       	call   0x43d98d
4c0295:	cc                   	int3
4c0296:	cc                   	int3
4c0297:	cc                   	int3
4c0298:	cc                   	int3
4c0299:	cc                   	int3
4c029a:	cc                   	int3
4c029b:	cc                   	int3
4c029c:	cc                   	int3
4c029d:	cc                   	int3
4c029e:	cc                   	int3
4c029f:	cc                   	int3
4c02a0:	cc                   	int3
4c02a1:	cc                   	int3
4c02a2:	cc                   	int3
4c02a3:	cc                   	int3
4c02a4:	cc                   	int3
4c02a5:	cc                   	int3
4c02a6:	cc                   	int3
4c02a7:	cc                   	int3
4c02a8:	cc                   	int3
4c02a9:	cc                   	int3
4c02aa:	cc                   	int3
4c02ab:	cc                   	int3
4c02ac:	cc                   	int3
4c02ad:	cc                   	int3
4c02ae:	cc                   	int3
4c02af:	cc                   	int3
4c02b0:	81 7c 24 08 00 10 00 	cmpl   $0x1000,0x8(%esp)
4c02b7:	00
4c02b8:	8b 44 24 04          	mov    0x4(%esp),%eax
4c02bc:	72 19                	jb     0x4c02d7
4c02be:	a8 1f                	test   $0x1f,%al
4c02c0:	75 1f                	jne    0x4c02e1
4c02c2:	8b 48 fc             	mov    -0x4(%eax),%ecx
4c02c5:	3b c8                	cmp    %eax,%ecx
4c02c7:	73 1d                	jae    0x4c02e6
4c02c9:	2b c1                	sub    %ecx,%eax
4c02cb:	83 f8 04             	cmp    $0x4,%eax
4c02ce:	72 1b                	jb     0x4c02eb
4c02d0:	83 f8 23             	cmp    $0x23,%eax
4c02d3:	77 1b                	ja     0x4c02f0
4c02d5:	8b c1                	mov    %ecx,%eax
4c02d7:	50                   	push   %eax
4c02d8:	e8 b2 14 f4 ff       	call   0x40178f
4c02dd:	59                   	pop    %ecx
4c02de:	c2 08 00             	ret    $0x8
4c02e1:	e8 a7 d6 f7 ff       	call   0x43d98d
4c02e6:	e8 a2 d6 f7 ff       	call   0x43d98d
4c02eb:	e8 9d d6 f7 ff       	call   0x43d98d
4c02f0:	e8 98 d6 f7 ff       	call   0x43d98d
4c02f5:	cc                   	int3
4c02f6:	cc                   	int3
4c02f7:	cc                   	int3
4c02f8:	cc                   	int3
4c02f9:	cc                   	int3
4c02fa:	cc                   	int3
4c02fb:	cc                   	int3
4c02fc:	cc                   	int3
4c02fd:	cc                   	int3
4c02fe:	cc                   	int3
4c02ff:	cc                   	int3
4c0300:	cc                   	int3
4c0301:	cc                   	int3
4c0302:	cc                   	int3
4c0303:	cc                   	int3
4c0304:	cc                   	int3
4c0305:	cc                   	int3
4c0306:	cc                   	int3
4c0307:	cc                   	int3
4c0308:	cc                   	int3
4c0309:	cc                   	int3
4c030a:	cc                   	int3
4c030b:	cc                   	int3
4c030c:	cc                   	int3
4c030d:	cc                   	int3
4c030e:	cc                   	int3
4c030f:	cc                   	int3
4c0310:	8b 41 04             	mov    0x4(%ecx),%eax
4c0313:	c3                   	ret
4c0314:	cc                   	int3
4c0315:	cc                   	int3
4c0316:	cc                   	int3
4c0317:	cc                   	int3
4c0318:	cc                   	int3
4c0319:	cc                   	int3
4c031a:	cc                   	int3
4c031b:	cc                   	int3
4c031c:	cc                   	int3
4c031d:	cc                   	int3
4c031e:	cc                   	int3
4c031f:	cc                   	int3
4c0320:	8b 01                	mov    (%ecx),%eax
4c0322:	c3                   	ret
4c0323:	cc                   	int3
4c0324:	cc                   	int3
4c0325:	cc                   	int3
4c0326:	cc                   	int3
4c0327:	cc                   	int3
4c0328:	cc                   	int3
4c0329:	cc                   	int3
4c032a:	cc                   	int3
4c032b:	cc                   	int3
4c032c:	cc                   	int3
4c032d:	cc                   	int3
4c032e:	cc                   	int3
4c032f:	cc                   	int3
4c0330:	8b c1                	mov    %ecx,%eax
4c0332:	c3                   	ret
4c0333:	cc                   	int3
4c0334:	cc                   	int3
4c0335:	cc                   	int3
4c0336:	cc                   	int3
4c0337:	cc                   	int3
4c0338:	cc                   	int3
4c0339:	cc                   	int3
4c033a:	cc                   	int3
4c033b:	cc                   	int3
4c033c:	cc                   	int3
4c033d:	cc                   	int3
4c033e:	cc                   	int3
4c033f:	cc                   	int3
4c0340:	83 c8 ff             	or     $0xffffffff,%eax
4c0343:	c2 04 00             	ret    $0x4
4c0346:	cc                   	int3
4c0347:	cc                   	int3
4c0348:	cc                   	int3
4c0349:	cc                   	int3
4c034a:	cc                   	int3
4c034b:	cc                   	int3
4c034c:	cc                   	int3
4c034d:	cc                   	int3
4c034e:	cc                   	int3
4c034f:	cc                   	int3
4c0350:	83 c8 ff             	or     $0xffffffff,%eax
4c0353:	c3                   	ret
4c0354:	cc                   	int3
4c0355:	cc                   	int3
4c0356:	cc                   	int3
4c0357:	cc                   	int3
4c0358:	cc                   	int3
4c0359:	cc                   	int3
4c035a:	cc                   	int3
4c035b:	cc                   	int3
4c035c:	cc                   	int3
4c035d:	cc                   	int3
4c035e:	cc                   	int3
4c035f:	cc                   	int3
4c0360:	83 c8 ff             	or     $0xffffffff,%eax
4c0363:	c3                   	ret
4c0364:	cc                   	int3
4c0365:	cc                   	int3
4c0366:	cc                   	int3
4c0367:	cc                   	int3
4c0368:	cc                   	int3
4c0369:	cc                   	int3
4c036a:	cc                   	int3
4c036b:	cc                   	int3
4c036c:	cc                   	int3
4c036d:	cc                   	int3
4c036e:	cc                   	int3
4c036f:	cc                   	int3
4c0370:	83 c8 ff             	or     $0xffffffff,%eax
4c0373:	c3                   	ret
4c0374:	cc                   	int3
4c0375:	cc                   	int3
4c0376:	cc                   	int3
4c0377:	cc                   	int3
4c0378:	cc                   	int3
4c0379:	cc                   	int3
4c037a:	cc                   	int3
4c037b:	cc                   	int3
4c037c:	cc                   	int3
4c037d:	cc                   	int3
4c037e:	cc                   	int3
4c037f:	cc                   	int3
4c0380:	8b 44 24 04          	mov    0x4(%esp),%eax
4c0384:	c3                   	ret
4c0385:	cc                   	int3
4c0386:	cc                   	int3
4c0387:	cc                   	int3
4c0388:	cc                   	int3
4c0389:	cc                   	int3
4c038a:	cc                   	int3
4c038b:	cc                   	int3
4c038c:	cc                   	int3
4c038d:	cc                   	int3
4c038e:	cc                   	int3
4c038f:	cc                   	int3
4c0390:	56                   	push   %esi
4c0391:	8b f1                	mov    %ecx,%esi
4c0393:	57                   	push   %edi
4c0394:	8b 7c 24 0c          	mov    0xc(%esp),%edi
4c0398:	8b 56 04             	mov    0x4(%esi),%edx
4c039b:	8b ca                	mov    %edx,%ecx
4c039d:	8b 06                	mov    (%esi),%eax
4c039f:	2b c8                	sub    %eax,%ecx
4c03a1:	3b cf                	cmp    %edi,%ecx
4c03a3:	77 25                	ja     0x4c03ca
4c03a5:	73 28                	jae    0x4c03cf
4c03a7:	2b c2                	sub    %edx,%eax
4c03a9:	8b ce                	mov    %esi,%ecx
4c03ab:	03 c7                	add    %edi,%eax
4c03ad:	50                   	push   %eax
4c03ae:	e8 97 41 f7 ff       	call   0x43454a
4c03b3:	8b 4e 04             	mov    0x4(%esi),%ecx
4c03b6:	8b 06                	mov    (%esi),%eax
4c03b8:	2b c1                	sub    %ecx,%eax
4c03ba:	03 c7                	add    %edi,%eax
4c03bc:	50                   	push   %eax
4c03bd:	6a 00                	push   $0x0
4c03bf:	51                   	push   %ecx
4c03c0:	e8 f3 43 f5 ff       	call   0x4147b8
4c03c5:	8b 06                	mov    (%esi),%eax
4c03c7:	83 c4 0c             	add    $0xc,%esp
4c03ca:	03 c7                	add    %edi,%eax
4c03cc:	89 46 04             	mov    %eax,0x4(%esi)
4c03cf:	5f                   	pop    %edi
4c03d0:	5e                   	pop    %esi
4c03d1:	c2 04 00             	ret    $0x4
4c03d4:	cc                   	int3
4c03d5:	cc                   	int3
4c03d6:	cc                   	int3
4c03d7:	cc                   	int3
4c03d8:	cc                   	int3
4c03d9:	cc                   	int3
4c03da:	cc                   	int3
4c03db:	cc                   	int3
4c03dc:	cc                   	int3
4c03dd:	cc                   	int3
4c03de:	cc                   	int3
4c03df:	cc                   	int3
4c03e0:	cc                   	int3
4c03e1:	cc                   	int3
4c03e2:	cc                   	int3
4c03e3:	cc                   	int3
4c03e4:	cc                   	int3
4c03e5:	cc                   	int3
4c03e6:	cc                   	int3
4c03e7:	cc                   	int3
4c03e8:	cc                   	int3
4c03e9:	cc                   	int3
4c03ea:	cc                   	int3
4c03eb:	cc                   	int3
4c03ec:	cc                   	int3