43c0db:	57                   	push   %edi
43c0dc:	68 27 11 00 00       	push   $0x1127
43c0e1:	ff 36                	push   (%esi)
43c0e3:	ff 15 70 d6 48 00    	call   *0x48d670
43c0e9:	c1 e8 0c             	shr    $0xc,%eax
43c0ec:	48                   	dec    %eax
43c0ed:	83 f8 ff             	cmp    $0xffffffff,%eax
43c0f0:	74 3a                	je     0x43c12c
43c0f2:	8a 4d 0c             	mov    0xc(%ebp),%cl
43c0f5:	84 c9                	test   %cl,%cl
43c0f7:	75 04                	jne    0x43c0fd
43c0f9:	85 c0                	test   %eax,%eax
43c0fb:	74 2f                	je     0x43c12c
43c0fd:	80 f9 01             	cmp    $0x1,%cl
43c100:	75 05                	jne    0x43c107
43c102:	83 f8 01             	cmp    $0x1,%eax
43c105:	74 25                	je     0x43c12c
43c107:	8d 45 f8             	lea    -0x8(%ebp),%eax
43c10a:	50                   	push   %eax
43c10b:	57                   	push   %edi
43c10c:	8b ce                	mov    %esi,%ecx
43c10e:	e8 76 00 00 00       	call   0x43c189
43c113:	84 c0                	test   %al,%al
43c115:	74 15                	je     0x43c12c
43c117:	ff 75 fc             	push   -0x4(%ebp)
43c11a:	8b ce                	mov    %esi,%ecx
43c11c:	ff 75 f8             	push   -0x8(%ebp)
43c11f:	6a 01                	push   $0x1
43c121:	6a 00                	push   $0x0
43c123:	e8 30 f2 ff ff       	call   0x43b358
43c128:	b0 01                	mov    $0x1,%al
43c12a:	eb 02                	jmp    0x43c12e
43c12c:	32 c0                	xor    %al,%al
43c12e:	5f                   	pop    %edi
43c12f:	5e                   	pop    %esi
43c130:	c9                   	leave
43c131:	c2 08 00             	ret    $0x8
43c134:	55                   	push   %ebp
43c135:	8b ec                	mov    %esp,%ebp
43c137:	51                   	push   %ecx
43c138:	ff 75 08             	push   0x8(%ebp)
43c13b:	e8 9e 01 00 00       	call   0x43c2de
43c140:	85 c0                	test   %eax,%eax
43c142:	0f 95 c0             	setne  %al
43c145:	59                   	pop    %ecx
43c146:	5d                   	pop    %ebp
43c147:	c2 04 00             	ret    $0x4
43c14a:	55                   	push   %ebp
43c14b:	8b ec                	mov    %esp,%ebp
43c14d:	51                   	push   %ecx
43c14e:	56                   	push   %esi
43c14f:	ff 75 08             	push   0x8(%ebp)
43c152:	8b f1                	mov    %ecx,%esi
43c154:	e8 85 01 00 00       	call   0x43c2de
43c159:	8b c8                	mov    %eax,%ecx
43c15b:	85 c9                	test   %ecx,%ecx
43c15d:	75 04                	jne    0x43c163
43c15f:	32 c0                	xor    %al,%al
43c161:	eb 20                	jmp    0x43c183
43c163:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
43c167:	6a 02                	push   $0x2
43c169:	58                   	pop    %eax
43c16a:	75 03                	jne    0x43c16f
43c16c:	33 c0                	xor    %eax,%eax
43c16e:	40                   	inc    %eax
43c16f:	51                   	push   %ecx
43c170:	50                   	push   %eax
43c171:	68 02 11 00 00       	push   $0x1102
43c176:	ff 36                	push   (%esi)
43c178:	ff 15 70 d6 48 00    	call   *0x48d670
43c17e:	85 c0                	test   %eax,%eax
43c180:	0f 95 c0             	setne  %al
43c183:	5e                   	pop    %esi
43c184:	59                   	pop    %ecx
43c185:	5d                   	pop    %ebp
43c186:	c2 08 00             	ret    $0x8
43c189:	55                   	push   %ebp
43c18a:	8b ec                	mov    %esp,%ebp
43c18c:	81 ec ac 00 00 00    	sub    $0xac,%esp
43c192:	53                   	push   %ebx
43c193:	56                   	push   %esi
43c194:	57                   	push   %edi
43c195:	8b f9                	mov    %ecx,%edi
43c197:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c19d:	89 7d fc             	mov    %edi,-0x4(%ebp)
43c1a0:	e8 6b 61 fc ff       	call   0x402310
43c1a5:	ff 37                	push   (%edi)
43c1a7:	8b 45 08             	mov    0x8(%ebp),%eax
43c1aa:	6a 10                	push   $0x10
43c1ac:	89 45 ec             	mov    %eax,-0x14(%ebp)
43c1af:	e8 7b 80 00 00       	call   0x44422f
43c1b4:	8b f0                	mov    %eax,%esi
43c1b6:	6a 10                	push   $0x10
43c1b8:	56                   	push   %esi
43c1b9:	8d 45 ec             	lea    -0x14(%ebp),%eax
43c1bc:	50                   	push   %eax
43c1bd:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c1c3:	e8 43 81 00 00       	call   0x44430b
43c1c8:	56                   	push   %esi
43c1c9:	33 db                	xor    %ebx,%ebx
43c1cb:	53                   	push   %ebx
43c1cc:	68 04 11 00 00       	push   $0x1104
43c1d1:	ff 37                	push   (%edi)
43c1d3:	ff 15 70 d6 48 00    	call   *0x48d670
43c1d9:	6a 10                	push   $0x10
43c1db:	8d 45 ec             	lea    -0x14(%ebp),%eax
43c1de:	50                   	push   %eax
43c1df:	56                   	push   %esi
43c1e0:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c1e6:	e8 eb 80 00 00       	call   0x4442d6
43c1eb:	8b 45 f8             	mov    -0x8(%ebp),%eax
43c1ee:	2b 45 f0             	sub    -0x10(%ebp),%eax
43c1f1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43c1f4:	ff 37                	push   (%edi)
43c1f6:	8b 75 ec             	mov    -0x14(%ebp),%esi
43c1f9:	99                   	cltd
43c1fa:	2b c2                	sub    %edx,%eax
43c1fc:	d1 f8                	sar    $1,%eax
43c1fe:	03 45 f0             	add    -0x10(%ebp),%eax
43c201:	6a 10                	push   $0x10
43c203:	89 41 04             	mov    %eax,0x4(%ecx)
43c206:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c20c:	89 45 e0             	mov    %eax,-0x20(%ebp)
43c20f:	e8 1b 80 00 00       	call   0x44422f
43c214:	8b f8                	mov    %eax,%edi
43c216:	3b 75 f4             	cmp    -0xc(%ebp),%esi
43c219:	0f 8f ab 00 00 00    	jg     0x43c2ca
43c21f:	6a 10                	push   $0x10
43c221:	57                   	push   %edi
43c222:	8d 45 dc             	lea    -0x24(%ebp),%eax
43c225:	50                   	push   %eax
43c226:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c22c:	89 75 dc             	mov    %esi,-0x24(%ebp)
43c22f:	e8 d7 80 00 00       	call   0x44430b
43c234:	8b 45 fc             	mov    -0x4(%ebp),%eax
43c237:	57                   	push   %edi
43c238:	53                   	push   %ebx
43c239:	68 11 11 00 00       	push   $0x1111
43c23e:	ff 30                	push   (%eax)
43c240:	ff 15 70 d6 48 00    	call   *0x48d670
43c246:	6a 10                	push   $0x10
43c248:	8d 45 dc             	lea    -0x24(%ebp),%eax
43c24b:	50                   	push   %eax
43c24c:	57                   	push   %edi
43c24d:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c253:	e8 7e 80 00 00       	call   0x4442d6
43c258:	f6 45 e4 40          	testb  $0x40,-0x1c(%ebp)
43c25c:	75 06                	jne    0x43c264
43c25e:	46                   	inc    %esi
43c25f:	3b 75 f4             	cmp    -0xc(%ebp),%esi
43c262:	7e bb                	jle    0x43c21f
43c264:	3b 75 f4             	cmp    -0xc(%ebp),%esi
43c267:	7f 61                	jg     0x43c2ca
43c269:	89 75 08             	mov    %esi,0x8(%ebp)
43c26c:	6a 10                	push   $0x10
43c26e:	57                   	push   %edi
43c26f:	8d 45 dc             	lea    -0x24(%ebp),%eax
43c272:	50                   	push   %eax
43c273:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c279:	89 75 dc             	mov    %esi,-0x24(%ebp)
43c27c:	e8 8a 80 00 00       	call   0x44430b
43c281:	8b 45 fc             	mov    -0x4(%ebp),%eax
43c284:	57                   	push   %edi
43c285:	53                   	push   %ebx
43c286:	68 11 11 00 00       	push   $0x1111
43c28b:	ff 30                	push   (%eax)
43c28d:	ff 15 70 d6 48 00    	call   *0x48d670
43c293:	6a 10                	push   $0x10
43c295:	8d 45 dc             	lea    -0x24(%ebp),%eax
43c298:	50                   	push   %eax
43c299:	57                   	push   %edi
43c29a:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c2a0:	e8 31 80 00 00       	call   0x4442d6
43c2a5:	f6 45 e4 40          	testb  $0x40,-0x1c(%ebp)
43c2a9:	74 06                	je     0x43c2b1
43c2ab:	46                   	inc    %esi
43c2ac:	3b 75 f4             	cmp    -0xc(%ebp),%esi
43c2af:	7e bb                	jle    0x43c26c
43c2b1:	3b 75 f4             	cmp    -0xc(%ebp),%esi
43c2b4:	7f 14                	jg     0x43c2ca
43c2b6:	2b 75 08             	sub    0x8(%ebp),%esi
43c2b9:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43c2bc:	8b c6                	mov    %esi,%eax
43c2be:	99                   	cltd
43c2bf:	2b c2                	sub    %edx,%eax
43c2c1:	d1 f8                	sar    $1,%eax
43c2c3:	03 45 08             	add    0x8(%ebp),%eax
43c2c6:	b3 01                	mov    $0x1,%bl
43c2c8:	89 01                	mov    %eax,(%ecx)
43c2ca:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c2d0:	e8 00 73 fc ff       	call   0x4035d5
43c2d5:	5f                   	pop    %edi
43c2d6:	5e                   	pop    %esi
43c2d7:	8a c3                	mov    %bl,%al
43c2d9:	5b                   	pop    %ebx
43c2da:	c9                   	leave
43c2db:	c2 08 00             	ret    $0x8
43c2de:	55                   	push   %ebp
43c2df:	8b ec                	mov    %esp,%ebp
43c2e1:	83 ec 20             	sub    $0x20,%esp
43c2e4:	53                   	push   %ebx
43c2e5:	56                   	push   %esi
43c2e6:	57                   	push   %edi
43c2e7:	33 f6                	xor    %esi,%esi
43c2e9:	56                   	push   %esi
43c2ea:	56                   	push   %esi
43c2eb:	8b c1                	mov    %ecx,%eax
43c2ed:	68 0a 11 00 00       	push   $0x110a
43c2f2:	ff 30                	push   (%eax)
43c2f4:	89 45 f4             	mov    %eax,-0xc(%ebp)
43c2f7:	ff 15 70 d6 48 00    	call   *0x48d670
43c2fd:	8b f8                	mov    %eax,%edi
43c2ff:	89 7d f8             	mov    %edi,-0x8(%ebp)
43c302:	85 ff                	test   %edi,%edi
43c304:	0f 84 be 00 00 00    	je     0x43c3c8
43c30a:	8b 5d 08             	mov    0x8(%ebp),%ebx
43c30d:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43c310:	8b 5b 04             	mov    0x4(%ebx),%ebx
43c313:	e8 df 14 fd ff       	call   0x40d7f7
43c318:	85 db                	test   %ebx,%ebx
43c31a:	0f 84 9e 00 00 00    	je     0x43c3be
43c320:	85 f6                	test   %esi,%esi
43c322:	74 1c                	je     0x43c340
43c324:	8b 45 f4             	mov    -0xc(%ebp),%eax
43c327:	57                   	push   %edi
43c328:	6a 04                	push   $0x4
43c32a:	68 0a 11 00 00       	push   $0x110a
43c32f:	ff 30                	push   (%eax)
43c331:	ff 15 70 d6 48 00    	call   *0x48d670
43c337:	8b f8                	mov    %eax,%edi
43c339:	89 7d f8             	mov    %edi,-0x8(%ebp)
43c33c:	85 ff                	test   %edi,%edi
43c33e:	74 7e                	je     0x43c3be
43c340:	68 00 dc 49 00       	push   $0x49dc00
43c345:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43c348:	e8 16 a7 fc ff       	call   0x406a63
43c34d:	3b f3                	cmp    %ebx,%esi
43c34f:	73 4e                	jae    0x43c39f
43c351:	8b 7d 08             	mov    0x8(%ebp),%edi
43c354:	56                   	push   %esi
43c355:	8b cf                	mov    %edi,%ecx
43c357:	e8 2a 5d fc ff       	call   0x402086
43c35c:	6a 7c                	push   $0x7c
43c35e:	59                   	pop    %ecx
43c35f:	66 39 08             	cmp    %cx,(%eax)
43c362:	75 1f                	jne    0x43c383
43c364:	8d 46 01             	lea    0x1(%esi),%eax
43c367:	50                   	push   %eax
43c368:	8b cf                	mov    %edi,%ecx
43c36a:	e8 17 5d fc ff       	call   0x402086
43c36f:	6a 7c                	push   $0x7c
43c371:	59                   	pop    %ecx
43c372:	66 39 08             	cmp    %cx,(%eax)
43c375:	75 25                	jne    0x43c39c
43c377:	51                   	push   %ecx
43c378:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43c37b:	e8 19 04 fd ff       	call   0x40c799
43c380:	83 c6 02             	add    $0x2,%esi
43c383:	56                   	push   %esi
43c384:	8b cf                	mov    %edi,%ecx
43c386:	e8 fb 5c fc ff       	call   0x402086
43c38b:	0f b7 00             	movzwl (%eax),%eax
43c38e:	50                   	push   %eax
43c38f:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43c392:	e8 02 04 fd ff       	call   0x40c799
43c397:	46                   	inc    %esi
43c398:	3b f3                	cmp    %ebx,%esi
43c39a:	72 b8                	jb     0x43c354
43c39c:	8b 7d f8             	mov    -0x8(%ebp),%edi
43c39f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43c3a2:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43c3a5:	50                   	push   %eax
43c3a6:	57                   	push   %edi
43c3a7:	e8 e8 01 00 00       	call   0x43c594
43c3ac:	8b f8                	mov    %eax,%edi
43c3ae:	89 45 f8             	mov    %eax,-0x8(%ebp)
43c3b1:	85 ff                	test   %edi,%edi
43c3b3:	74 09                	je     0x43c3be
43c3b5:	46                   	inc    %esi
43c3b6:	3b f3                	cmp    %ebx,%esi
43c3b8:	0f 82 62 ff ff ff    	jb     0x43c320
43c3be:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43c3c1:	e8 71 07 fd ff       	call   0x40cb37
43c3c6:	8b c7                	mov    %edi,%eax
43c3c8:	5f                   	pop    %edi
43c3c9:	5e                   	pop    %esi
43c3ca:	5b                   	pop    %ebx
43c3cb:	c9                   	leave
43c3cc:	c2 04 00             	ret    $0x4
43c3cf:	55                   	push   %ebp
43c3d0:	8b ec                	mov    %esp,%ebp
43c3d2:	53                   	push   %ebx
43c3d3:	8b 5d 08             	mov    0x8(%ebp),%ebx
43c3d6:	56                   	push   %esi
43c3d7:	57                   	push   %edi
43c3d8:	53                   	push   %ebx
43c3d9:	8b f9                	mov    %ecx,%edi
43c3db:	e8 fe fe ff ff       	call   0x43c2de
43c3e0:	85 c0                	test   %eax,%eax
43c3e2:	74 25                	je     0x43c409
43c3e4:	33 f6                	xor    %esi,%esi
43c3e6:	39 73 04             	cmp    %esi,0x4(%ebx)
43c3e9:	8b 1d 70 d6 48 00    	mov    0x48d670,%ebx
43c3ef:	74 12                	je     0x43c403
43c3f1:	50                   	push   %eax
43c3f2:	6a 04                	push   $0x4
43c3f4:	eb 04                	jmp    0x43c3fa
43c3f6:	50                   	push   %eax
43c3f7:	46                   	inc    %esi
43c3f8:	6a 01                	push   $0x1
43c3fa:	68 0a 11 00 00       	push   $0x110a
43c3ff:	ff 37                	push   (%edi)
43c401:	ff d3                	call   *%ebx
43c403:	85 c0                	test   %eax,%eax
43c405:	75 ef                	jne    0x43c3f6
43c407:	8b c6                	mov    %esi,%eax
43c409:	5f                   	pop    %edi
43c40a:	5e                   	pop    %esi
43c40b:	5b                   	pop    %ebx
43c40c:	5d                   	pop    %ebp
43c40d:	c2 04 00             	ret    $0x4
43c410:	55                   	push   %ebp
43c411:	8b ec                	mov    %esp,%ebp
43c413:	81 ec b8 00 00 00    	sub    $0xb8,%esp
43c419:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
43c41d:	53                   	push   %ebx
43c41e:	56                   	push   %esi
43c41f:	8b 75 10             	mov    0x10(%ebp),%esi
43c422:	8b d9                	mov    %ecx,%ebx
43c424:	8b 06                	mov    (%esi),%eax
43c426:	89 45 d8             	mov    %eax,-0x28(%ebp)
43c429:	8b 46 04             	mov    0x4(%esi),%eax
43c42c:	89 45 dc             	mov    %eax,-0x24(%ebp)
43c42f:	8b 46 08             	mov    0x8(%esi),%eax
43c432:	89 45 e0             	mov    %eax,-0x20(%ebp)
43c435:	8b 46 0c             	mov    0xc(%esi),%eax
43c438:	57                   	push   %edi
43c439:	ff 00                	incl   (%eax)
43c43b:	8b 7d 08             	mov    0x8(%ebp),%edi
43c43e:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43c441:	89 45 e4             	mov    %eax,-0x1c(%ebp)
43c444:	e8 ae 13 fd ff       	call   0x40d7f7
43c449:	85 ff                	test   %edi,%edi
43c44b:	0f 84 c7 00 00 00    	je     0x43c518
43c451:	c7 45 10 01 00 00 00 	movl   $0x1,0x10(%ebp)
43c458:	57                   	push   %edi
43c459:	6a 04                	push   $0x4
43c45b:	68 0a 11 00 00       	push   $0x110a
43c460:	ff 33                	push   (%ebx)
43c462:	ff 15 70 d6 48 00    	call   *0x48d670