42309f:	89 45 fc             	mov    %eax,-0x4(%ebp)
4230a2:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4230a5:	8b 7d 08             	mov    0x8(%ebp),%edi
4230a8:	89 7d c8             	mov    %edi,-0x38(%ebp)
4230ab:	50                   	push   %eax
4230ac:	89 45 cc             	mov    %eax,-0x34(%ebp)
4230af:	e8 17 23 00 00       	call   0x4253cb
4230b4:	33 db                	xor    %ebx,%ebx
4230b6:	43                   	inc    %ebx
4230b7:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4230ba:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4230bd:	8b 06                	mov    (%esi),%eax
4230bf:	51                   	push   %ecx
4230c0:	8b ce                	mov    %esi,%ecx
4230c2:	ff 50 0c             	call   *0xc(%eax)
4230c5:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4230c8:	e8 52 23 00 00       	call   0x42541f
4230cd:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
4230d1:	8d 45 b0             	lea    -0x50(%ebp),%eax
4230d4:	50                   	push   %eax
4230d5:	57                   	push   %edi
4230d6:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4230d9:	e8 47 23 00 00       	call   0x425425
4230de:	89 5d cc             	mov    %ebx,-0x34(%ebp)
4230e1:	88 5d fc             	mov    %bl,-0x4(%ebp)
4230e4:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4230e7:	e8 68 b8 fe ff       	call   0x40e954
4230ec:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
4230f0:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4230f3:	e8 e5 22 00 00       	call   0x4253dd
4230f8:	8b c7                	mov    %edi,%eax
4230fa:	e8 29 c9 01 00       	call   0x43fa28
4230ff:	c2 04 00             	ret    $0x4
423102:	6a 44                	push   $0x44
423104:	b8 cf 04 49 00       	mov    $0x4904cf,%eax
423109:	e8 70 c9 01 00       	call   0x43fa7e
42310e:	8b f1                	mov    %ecx,%esi
423110:	33 c0                	xor    %eax,%eax
423112:	89 45 fc             	mov    %eax,-0x4(%ebp)
423115:	8d 4d b0             	lea    -0x50(%ebp),%ecx
423118:	8b 7d 08             	mov    0x8(%ebp),%edi
42311b:	89 7d c8             	mov    %edi,-0x38(%ebp)
42311e:	50                   	push   %eax
42311f:	89 45 cc             	mov    %eax,-0x34(%ebp)
423122:	e8 a4 22 00 00       	call   0x4253cb
423127:	33 db                	xor    %ebx,%ebx
423129:	43                   	inc    %ebx
42312a:	89 5d fc             	mov    %ebx,-0x4(%ebp)
42312d:	8d 4d b0             	lea    -0x50(%ebp),%ecx
423130:	8b 06                	mov    (%esi),%eax
423132:	51                   	push   %ecx
423133:	8b ce                	mov    %esi,%ecx
423135:	ff 50 0c             	call   *0xc(%eax)
423138:	8d 4d d0             	lea    -0x30(%ebp),%ecx
42313b:	e8 df 22 00 00       	call   0x42541f
423140:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
423144:	8d 45 b0             	lea    -0x50(%ebp),%eax
423147:	50                   	push   %eax
423148:	57                   	push   %edi
423149:	8d 4d d0             	lea    -0x30(%ebp),%ecx
42314c:	e8 d4 22 00 00       	call   0x425425
423151:	89 5d cc             	mov    %ebx,-0x34(%ebp)
423154:	88 5d fc             	mov    %bl,-0x4(%ebp)
423157:	8d 4d d0             	lea    -0x30(%ebp),%ecx
42315a:	e8 f5 b7 fe ff       	call   0x40e954
42315f:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
423163:	8d 4d b0             	lea    -0x50(%ebp),%ecx
423166:	e8 72 22 00 00       	call   0x4253dd
42316b:	8b c7                	mov    %edi,%eax
42316d:	e8 b6 c8 01 00       	call   0x43fa28
423172:	c2 04 00             	ret    $0x4
423175:	6a 44                	push   $0x44
423177:	b8 1d 05 49 00       	mov    $0x49051d,%eax
42317c:	e8 fd c8 01 00       	call   0x43fa7e
423181:	8b f1                	mov    %ecx,%esi
423183:	33 c0                	xor    %eax,%eax
423185:	89 45 fc             	mov    %eax,-0x4(%ebp)
423188:	8d 4d b0             	lea    -0x50(%ebp),%ecx
42318b:	8b 7d 08             	mov    0x8(%ebp),%edi
42318e:	89 7d c8             	mov    %edi,-0x38(%ebp)
423191:	50                   	push   %eax
423192:	89 45 cc             	mov    %eax,-0x34(%ebp)
423195:	e8 31 22 00 00       	call   0x4253cb
42319a:	33 db                	xor    %ebx,%ebx
42319c:	43                   	inc    %ebx
42319d:	89 5d fc             	mov    %ebx,-0x4(%ebp)
4231a0:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4231a3:	8b 06                	mov    (%esi),%eax
4231a5:	51                   	push   %ecx
4231a6:	8b ce                	mov    %esi,%ecx
4231a8:	ff 50 0c             	call   *0xc(%eax)
4231ab:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4231ae:	e8 6c 22 00 00       	call   0x42541f
4231b3:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
4231b7:	8d 45 b0             	lea    -0x50(%ebp),%eax
4231ba:	50                   	push   %eax
4231bb:	57                   	push   %edi
4231bc:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4231bf:	e8 61 22 00 00       	call   0x425425
4231c4:	89 5d cc             	mov    %ebx,-0x34(%ebp)
4231c7:	88 5d fc             	mov    %bl,-0x4(%ebp)
4231ca:	8d 4d d0             	lea    -0x30(%ebp),%ecx
4231cd:	e8 82 b7 fe ff       	call   0x40e954
4231d2:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
4231d6:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4231d9:	e8 ff 21 00 00       	call   0x4253dd
4231de:	8b c7                	mov    %edi,%eax
4231e0:	e8 43 c8 01 00       	call   0x43fa28
4231e5:	c2 04 00             	ret    $0x4
4231e8:	6a 44                	push   $0x44
4231ea:	b8 6b 05 49 00       	mov    $0x49056b,%eax
4231ef:	e8 8a c8 01 00       	call   0x43fa7e
4231f4:	8b f1                	mov    %ecx,%esi
4231f6:	33 c0                	xor    %eax,%eax
4231f8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4231fb:	8d 4d b0             	lea    -0x50(%ebp),%ecx
4231fe:	8b 7d 08             	mov    0x8(%ebp),%edi
423201:	89 7d c8             	mov    %edi,-0x38(%ebp)
423204:	50                   	push   %eax
423205:	89 45 cc             	mov    %eax,-0x34(%ebp)
423208:	e8 be 21 00 00       	call   0x4253cb
42320d:	33 db                	xor    %ebx,%ebx
42320f:	43                   	inc    %ebx
423210:	89 5d fc             	mov    %ebx,-0x4(%ebp)
423213:	8d 4d b0             	lea    -0x50(%ebp),%ecx
423216:	8b 06                	mov    (%esi),%eax
423218:	51                   	push   %ecx
423219:	8b ce                	mov    %esi,%ecx
42321b:	ff 50 0c             	call   *0xc(%eax)
42321e:	8d 4d d0             	lea    -0x30(%ebp),%ecx
423221:	e8 f9 21 00 00       	call   0x42541f
423226:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
42322a:	8d 45 b0             	lea    -0x50(%ebp),%eax
42322d:	50                   	push   %eax
42322e:	57                   	push   %edi
42322f:	8d 4d d0             	lea    -0x30(%ebp),%ecx
423232:	e8 ee 21 00 00       	call   0x425425
423237:	89 5d cc             	mov    %ebx,-0x34(%ebp)
42323a:	88 5d fc             	mov    %bl,-0x4(%ebp)
42323d:	8d 4d d0             	lea    -0x30(%ebp),%ecx
423240:	e8 0f b7 fe ff       	call   0x40e954
423245:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
423249:	8d 4d b0             	lea    -0x50(%ebp),%ecx
42324c:	e8 8c 21 00 00       	call   0x4253dd
423251:	8b c7                	mov    %edi,%eax
423253:	e8 d0 c7 01 00       	call   0x43fa28
423258:	c2 04 00             	ret    $0x4
42325b:	6a 04                	push   $0x4
42325d:	b8 a9 05 49 00       	mov    $0x4905a9,%eax
423262:	e8 e3 c7 01 00       	call   0x43fa4a
423267:	ff 75 0c             	push   0xc(%ebp)
42326a:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
42326e:	ff 75 08             	push   0x8(%ebp)
423271:	e8 de 0f fe ff       	call   0x404254
423276:	59                   	pop    %ecx
423277:	59                   	pop    %ecx
423278:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42327c:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
423283:	8b 45 08             	mov    0x8(%ebp),%eax
423286:	e8 88 c7 01 00       	call   0x43fa13
42328b:	c3                   	ret
42328c:	6a 04                	push   $0x4
42328e:	b8 dd 05 49 00       	mov    $0x4905dd,%eax
423293:	e8 b2 c7 01 00       	call   0x43fa4a
423298:	ff 75 10             	push   0x10(%ebp)
42329b:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
42329f:	ff 75 0c             	push   0xc(%ebp)
4232a2:	8b 01                	mov    (%ecx),%eax
4232a4:	ff 75 08             	push   0x8(%ebp)
4232a7:	ff 50 10             	call   *0x10(%eax)
4232aa:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4232ae:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
4232b5:	8b 45 08             	mov    0x8(%ebp),%eax
4232b8:	e8 56 c7 01 00       	call   0x43fa13
4232bd:	c2 0c 00             	ret    $0xc
4232c0:	6a 04                	push   $0x4
4232c2:	b8 11 06 49 00       	mov    $0x490611,%eax
4232c7:	e8 7e c7 01 00       	call   0x43fa4a
4232cc:	ff 75 10             	push   0x10(%ebp)
4232cf:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
4232d3:	ff 75 0c             	push   0xc(%ebp)
4232d6:	8b 01                	mov    (%ecx),%eax
4232d8:	ff 75 08             	push   0x8(%ebp)
4232db:	ff 50 10             	call   *0x10(%eax)
4232de:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4232e2:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
4232e9:	8b 45 08             	mov    0x8(%ebp),%eax
4232ec:	e8 22 c7 01 00       	call   0x43fa13
4232f1:	c2 0c 00             	ret    $0xc
4232f4:	6a 1c                	push   $0x1c
4232f6:	b8 34 06 49 00       	mov    $0x490634,%eax
4232fb:	e8 7e c7 01 00       	call   0x43fa7e
423300:	8b 09                	mov    (%ecx),%ecx
423302:	8d 45 09             	lea    0x9(%ebp),%eax
423305:	50                   	push   %eax
423306:	8d 45 08             	lea    0x8(%ebp),%eax
423309:	50                   	push   %eax
42330a:	8d 45 d8             	lea    -0x28(%ebp),%eax
42330d:	50                   	push   %eax
42330e:	e8 79 ff ff ff       	call   0x42328c
423313:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
423317:	83 7d e8 01          	cmpl   $0x1,-0x18(%ebp)
42331b:	75 0f                	jne    0x42332c
42331d:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
423321:	8d 45 d8             	lea    -0x28(%ebp),%eax
423324:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
423328:	8a 18                	mov    (%eax),%bl
42332a:	eb 03                	jmp    0x42332f
42332c:	8a 5d 08             	mov    0x8(%ebp),%bl
42332f:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
423333:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423336:	e8 99 9f ff ff       	call   0x41d2d4
42333b:	8a c3                	mov    %bl,%al
42333d:	e8 e6 c6 01 00       	call   0x43fa28
423342:	c2 04 00             	ret    $0x4
423345:	6a 1c                	push   $0x1c
423347:	b8 61 06 49 00       	mov    $0x490661,%eax
42334c:	e8 2d c7 01 00       	call   0x43fa7e
423351:	8b 09                	mov    (%ecx),%ecx
423353:	8d 45 0a             	lea    0xa(%ebp),%eax
423356:	50                   	push   %eax
423357:	8d 45 08             	lea    0x8(%ebp),%eax
42335a:	50                   	push   %eax
42335b:	8d 45 d8             	lea    -0x28(%ebp),%eax
42335e:	50                   	push   %eax
42335f:	e8 5c ff ff ff       	call   0x4232c0
423364:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
423368:	83 7d e8 01          	cmpl   $0x1,-0x18(%ebp)
42336c:	75 10                	jne    0x42337e
42336e:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
423372:	8d 45 d8             	lea    -0x28(%ebp),%eax
423375:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
423379:	0f b7 30             	movzwl (%eax),%esi
42337c:	eb 04                	jmp    0x423382
42337e:	0f b7 75 08          	movzwl 0x8(%ebp),%esi
423382:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
423386:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423389:	e8 6c 9f ff ff       	call   0x41d2fa
42338e:	66 8b c6             	mov    %si,%ax
423391:	e8 92 c6 01 00       	call   0x43fa28
423396:	c2 04 00             	ret    $0x4
423399:	6a 04                	push   $0x4
42339b:	b8 9f 06 49 00       	mov    $0x49069f,%eax
4233a0:	e8 a5 c6 01 00       	call   0x43fa4a
4233a5:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
4233a9:	8b 01                	mov    (%ecx),%eax
4233ab:	ff 75 08             	push   0x8(%ebp)
4233ae:	ff 50 1c             	call   *0x1c(%eax)
4233b1:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4233b5:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
4233bc:	8b 45 08             	mov    0x8(%ebp),%eax
4233bf:	e8 4f c6 01 00       	call   0x43fa13
4233c4:	c2 04 00             	ret    $0x4
4233c7:	55                   	push   %ebp
4233c8:	8b ec                	mov    %esp,%ebp
4233ca:	56                   	push   %esi
4233cb:	8b 75 10             	mov    0x10(%ebp),%esi
4233ce:	33 d2                	xor    %edx,%edx
4233d0:	6a 0f                	push   $0xf
4233d2:	c1 e6 02             	shl    $0x2,%esi
4233d5:	58                   	pop    %eax
4233d6:	8b ce                	mov    %esi,%ecx
4233d8:	e8 23 c9 01 00       	call   0x43fd00
4233dd:	23 45 08             	and    0x8(%ebp),%eax
4233e0:	8b ce                	mov    %esi,%ecx
4233e2:	23 55 0c             	and    0xc(%ebp),%edx
4233e5:	5e                   	pop    %esi
4233e6:	5d                   	pop    %ebp
4233e7:	e9 d4 c9 01 00       	jmp    0x43fdc0
4233ec:	8a 41 14             	mov    0x14(%ecx),%al
4233ef:	c3                   	ret
4233f0:	56                   	push   %esi
4233f1:	8b f1                	mov    %ecx,%esi
4233f3:	8b 06                	mov    (%esi),%eax
4233f5:	ff 50 18             	call   *0x18(%eax)
4233f8:	b9 ff ff 00 00       	mov    $0xffff,%ecx
4233fd:	66 3b c8             	cmp    %ax,%cx
423400:	74 12                	je     0x423414
423402:	8b 46 2c             	mov    0x2c(%esi),%eax
423405:	ff 08                	decl   (%eax)
423407:	8b 4e 1c             	mov    0x1c(%esi),%ecx
42340a:	8b 11                	mov    (%ecx),%edx
42340c:	8d 42 02             	lea    0x2(%edx),%eax
42340f:	89 01                	mov    %eax,(%ecx)
423411:	0f b7 0a             	movzwl (%edx),%ecx
423414:	66 8b c1             	mov    %cx,%ax
423417:	5e                   	pop    %esi
423418:	c3                   	ret
423419:	b8 ff ff 00 00       	mov    $0xffff,%eax
42341e:	c3                   	ret
42341f:	8b d1                	mov    %ecx,%edx
423421:	53                   	push   %ebx
423422:	56                   	push   %esi
423423:	57                   	push   %edi
423424:	8b 5a 1c             	mov    0x1c(%edx),%ebx
423427:	8b 3b                	mov    (%ebx),%edi
423429:	85 ff                	test   %edi,%edi
42342b:	74 47                	je     0x423474
42342d:	8b 4a 2c             	mov    0x2c(%edx),%ecx
423430:	8b 09                	mov    (%ecx),%ecx
423432:	8d 0c 4f             	lea    (%edi,%ecx,2),%ecx
423435:	3b f9                	cmp    %ecx,%edi
423437:	73 05                	jae    0x42343e
423439:	66 8b 07             	mov    (%edi),%ax
42343c:	eb 3b                	jmp    0x423479
42343e:	8b 42 20             	mov    0x20(%edx),%eax
423441:	83 38 00             	cmpl   $0x0,(%eax)
423444:	74 2e                	je     0x423474
423446:	f6 42 3c 04          	testb  $0x4,0x3c(%edx)
42344a:	75 28                	jne    0x423474
42344c:	8b 72 38             	mov    0x38(%edx),%esi
42344f:	3b 30                	cmp    (%eax),%esi
423451:	0f 42 30             	cmovb  (%eax),%esi
423454:	3b f7                	cmp    %edi,%esi
423456:	76 1c                	jbe    0x423474
423458:	89 72 38             	mov    %esi,0x38(%edx)
42345b:	8b c3                	mov    %ebx,%eax
42345d:	8b 0b                	mov    (%ebx),%ecx
42345f:	2b f1                	sub    %ecx,%esi
423461:	d1 fe                	sar    $1,%esi
423463:	89 08                	mov    %ecx,(%eax)
423465:	8b 42 2c             	mov    0x2c(%edx),%eax
423468:	89 30                	mov    %esi,(%eax)
42346a:	8b 42 1c             	mov    0x1c(%edx),%eax
42346d:	8b 00                	mov    (%eax),%eax
42346f:	66 8b 00             	mov    (%eax),%ax
423472:	eb 05                	jmp    0x423479
423474:	b8 ff ff 00 00       	mov    $0xffff,%eax
423479:	5f                   	pop    %edi
42347a:	5e                   	pop    %esi
42347b:	5b                   	pop    %ebx
42347c:	c3                   	ret
42347d:	55                   	push   %ebp
42347e:	8b ec                	mov    %esp,%ebp
423480:	83 7d 0c 08          	cmpl   $0x8,0xc(%ebp)
423484:	8a 4d 08             	mov    0x8(%ebp),%cl
423487:	74 2e                	je     0x4234b7
423489:	80 f9 30             	cmp    $0x30,%cl
42348c:	7c 05                	jl     0x423493
42348e:	80 f9 39             	cmp    $0x39,%cl
423491:	7e 2b                	jle    0x4234be
423493:	83 7d 0c 10          	cmpl   $0x10,0xc(%ebp)
423497:	75 2d                	jne    0x4234c6
423499:	8d 41 9f             	lea    -0x61(%ecx),%eax
42349c:	3c 05                	cmp    $0x5,%al
42349e:	77 08                	ja     0x4234a8
4234a0:	0f be c1             	movsbl %cl,%eax
4234a3:	83 e8 57             	sub    $0x57,%eax
4234a6:	eb 21                	jmp    0x4234c9
4234a8:	8d 41 bf             	lea    -0x41(%ecx),%eax