40d03e:	68 02 00 00 80       	push   $0x80000002
40d043:	ff 15 10 11 45 00    	call   *0x451110
40d049:	85 c0                	test   %eax,%eax
40d04b:	75 3b                	jne    0x40d088
40d04d:	8d 45 f8             	lea    -0x8(%ebp),%eax
40d050:	89 75 f8             	mov    %esi,-0x8(%ebp)
40d053:	50                   	push   %eax
40d054:	56                   	push   %esi
40d055:	8d 45 f4             	lea    -0xc(%ebp),%eax
40d058:	50                   	push   %eax
40d059:	56                   	push   %esi
40d05a:	ff 75 f0             	push   -0x10(%ebp)
40d05d:	ff 75 fc             	push   -0x4(%ebp)
40d060:	ff 15 0c 11 45 00    	call   *0x45110c
40d066:	ff 75 fc             	push   -0x4(%ebp)
40d069:	89 45 e8             	mov    %eax,-0x18(%ebp)
40d06c:	ff 15 14 11 45 00    	call   *0x451114
40d072:	8b 45 e8             	mov    -0x18(%ebp),%eax
40d075:	85 c0                	test   %eax,%eax
40d077:	0f 84 f3 ac 01 00    	je     0x427d70
40d07d:	3d ea 00 00 00       	cmp    $0xea,%eax
40d082:	0f 84 e8 ac 01 00    	je     0x427d70
40d088:	8d 45 fc             	lea    -0x4(%ebp),%eax
40d08b:	50                   	push   %eax
40d08c:	68 19 00 02 00       	push   $0x20019
40d091:	56                   	push   %esi
40d092:	68 10 61 40 00       	push   $0x406110
40d097:	68 02 00 00 80       	push   $0x80000002
40d09c:	ff 15 10 11 45 00    	call   *0x451110
40d0a2:	85 c0                	test   %eax,%eax
40d0a4:	0f 85 ef ac 01 00    	jne    0x427d99
40d0aa:	8d 45 f8             	lea    -0x8(%ebp),%eax
40d0ad:	89 75 f0             	mov    %esi,-0x10(%ebp)
40d0b0:	50                   	push   %eax
40d0b1:	8d 45 f0             	lea    -0x10(%ebp),%eax
40d0b4:	c7 45 f8 04 00 00 00 	movl   $0x4,-0x8(%ebp)
40d0bb:	50                   	push   %eax
40d0bc:	8d 45 f4             	lea    -0xc(%ebp),%eax
40d0bf:	50                   	push   %eax
40d0c0:	56                   	push   %esi
40d0c1:	68 e8 61 40 00       	push   $0x4061e8
40d0c6:	ff 75 fc             	push   -0x4(%ebp)
40d0c9:	ff 15 0c 11 45 00    	call   *0x45110c
40d0cf:	ff 75 fc             	push   -0x4(%ebp)
40d0d2:	8b f8                	mov    %eax,%edi
40d0d4:	ff 15 14 11 45 00    	call   *0x451114
40d0da:	85 ff                	test   %edi,%edi
40d0dc:	0f 85 9e ac 01 00    	jne    0x427d80
40d0e2:	83 7d f4 04          	cmpl   $0x4,-0xc(%ebp)
40d0e6:	75 08                	jne    0x40d0f0
40d0e8:	33 db                	xor    %ebx,%ebx
40d0ea:	39 5d f0             	cmp    %ebx,-0x10(%ebp)
40d0ed:	0f 94 c3             	sete   %bl
40d0f0:	8b 45 ec             	mov    -0x14(%ebp),%eax
40d0f3:	89 18                	mov    %ebx,(%eax)
40d0f5:	8b c6                	mov    %esi,%eax
40d0f7:	e9 27 ff ff ff       	jmp    0x40d023
40d0fc:	cc                   	int3
40d0fd:	cc                   	int3
40d0fe:	cc                   	int3
40d0ff:	cc                   	int3
40d100:	8b ff                	mov    %edi,%edi
40d102:	55                   	push   %ebp
40d103:	8b ec                	mov    %esp,%ebp
40d105:	83 e4 f8             	and    $0xfffffff8,%esp
40d108:	83 ec 44             	sub    $0x44,%esp
40d10b:	53                   	push   %ebx
40d10c:	56                   	push   %esi
40d10d:	8b d9                	mov    %ecx,%ebx
40d10f:	c7 44 24 1c 00 00 00 	movl   $0x0,0x1c(%esp)
40d116:	00
40d117:	57                   	push   %edi
40d118:	8d 44 24 40          	lea    0x40(%esp),%eax
40d11c:	89 5c 24 24          	mov    %ebx,0x24(%esp)
40d120:	50                   	push   %eax
40d121:	c7 43 08 01 00 00 00 	movl   $0x1,0x8(%ebx)
40d128:	ff 15 00 30 45 00    	call   *0x453000
40d12e:	8b 45 10             	mov    0x10(%ebp),%eax
40d131:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d135:	51                   	push   %ecx
40d136:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d13a:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%esp)
40d141:	00
40d142:	51                   	push   %ecx
40d143:	8b 30                	mov    (%eax),%esi
40d145:	8d 4c 24 48          	lea    0x48(%esp),%ecx
40d149:	51                   	push   %ecx
40d14a:	6a 00                	push   $0x0
40d14c:	68 94 65 40 00       	push   $0x406594
40d151:	8b 76 10             	mov    0x10(%esi),%esi
40d154:	8b ce                	mov    %esi,%ecx
40d156:	50                   	push   %eax
40d157:	c7 44 24 48 00 00 00 	movl   $0x0,0x48(%esp)
40d15e:	00
40d15f:	ff 15 c4 12 45 00    	call   *0x4512c4
40d165:	ff d6                	call   *%esi
40d167:	85 c0                	test   %eax,%eax
40d169:	0f 88 61 ac 01 00    	js     0x427dd0
40d16f:	66 8b 44 24 40       	mov    0x40(%esp),%ax
40d174:	66 83 f8 0b          	cmp    $0xb,%ax
40d178:	0f 85 32 ac 01 00    	jne    0x427db0
40d17e:	66 83 7c 24 48 ff    	cmpw   $0xffff,0x48(%esp)
40d184:	0f 85 aa 04 00 00    	jne    0x40d634
40d18a:	b8 01 00 00 00       	mov    $0x1,%eax
40d18f:	89 43 0c             	mov    %eax,0xc(%ebx)
40d192:	33 ff                	xor    %edi,%edi
40d194:	8d 44 24 40          	lea    0x40(%esp),%eax
40d198:	50                   	push   %eax
40d199:	ff 15 1c 30 45 00    	call   *0x45301c
40d19f:	85 ff                	test   %edi,%edi
40d1a1:	0f 88 94 04 00 00    	js     0x40d63b
40d1a7:	8d 44 24 40          	lea    0x40(%esp),%eax
40d1ab:	50                   	push   %eax
40d1ac:	ff 15 00 30 45 00    	call   *0x453000
40d1b2:	8b 45 10             	mov    0x10(%ebp),%eax
40d1b5:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d1b9:	51                   	push   %ecx
40d1ba:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d1be:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%esp)
40d1c5:	00
40d1c6:	51                   	push   %ecx
40d1c7:	8b 30                	mov    (%eax),%esi
40d1c9:	8d 4c 24 48          	lea    0x48(%esp),%ecx
40d1cd:	51                   	push   %ecx
40d1ce:	6a 00                	push   $0x0
40d1d0:	68 7c 65 40 00       	push   $0x40657c
40d1d5:	8b 76 10             	mov    0x10(%esi),%esi
40d1d8:	8b ce                	mov    %esi,%ecx
40d1da:	50                   	push   %eax
40d1db:	c7 44 24 48 00 00 00 	movl   $0x0,0x48(%esp)
40d1e2:	00
40d1e3:	ff 15 c4 12 45 00    	call   *0x4512c4
40d1e9:	ff d6                	call   *%esi
40d1eb:	85 c0                	test   %eax,%eax
40d1ed:	0f 88 13 ac 01 00    	js     0x427e06
40d1f3:	66 8b 44 24 40       	mov    0x40(%esp),%ax
40d1f8:	66 83 f8 0b          	cmp    $0xb,%ax
40d1fc:	0f 85 eb ab 01 00    	jne    0x427ded
40d202:	66 83 7c 24 48 ff    	cmpw   $0xffff,0x48(%esp)
40d208:	0f 85 d8 ab 01 00    	jne    0x427de6
40d20e:	b8 01 00 00 00       	mov    $0x1,%eax
40d213:	89 43 10             	mov    %eax,0x10(%ebx)
40d216:	8d 44 24 40          	lea    0x40(%esp),%eax
40d21a:	50                   	push   %eax
40d21b:	ff 15 1c 30 45 00    	call   *0x45301c
40d221:	85 ff                	test   %edi,%edi
40d223:	0f 88 12 04 00 00    	js     0x40d63b
40d229:	8d 44 24 40          	lea    0x40(%esp),%eax
40d22d:	50                   	push   %eax
40d22e:	ff 15 00 30 45 00    	call   *0x453000
40d234:	8b 45 10             	mov    0x10(%ebp),%eax
40d237:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d23b:	51                   	push   %ecx
40d23c:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d240:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%esp)
40d247:	00
40d248:	51                   	push   %ecx
40d249:	8b 30                	mov    (%eax),%esi
40d24b:	8d 4c 24 48          	lea    0x48(%esp),%ecx
40d24f:	51                   	push   %ecx
40d250:	6a 00                	push   $0x0
40d252:	68 5c 65 40 00       	push   $0x40655c
40d257:	8b 76 10             	mov    0x10(%esi),%esi
40d25a:	8b ce                	mov    %esi,%ecx
40d25c:	50                   	push   %eax
40d25d:	c7 44 24 48 00 00 00 	movl   $0x0,0x48(%esp)
40d264:	00
40d265:	ff 15 c4 12 45 00    	call   *0x4512c4
40d26b:	ff d6                	call   *%esi
40d26d:	85 c0                	test   %eax,%eax
40d26f:	0f 88 c0 ab 01 00    	js     0x427e35
40d275:	66 8b 44 24 40       	mov    0x40(%esp),%ax
40d27a:	66 83 f8 0b          	cmp    $0xb,%ax
40d27e:	0f 85 98 ab 01 00    	jne    0x427e1c
40d284:	33 c0                	xor    %eax,%eax
40d286:	66 83 7c 24 48 ff    	cmpw   $0xffff,0x48(%esp)
40d28c:	0f 94 c0             	sete   %al
40d28f:	89 43 14             	mov    %eax,0x14(%ebx)
40d292:	8d 44 24 40          	lea    0x40(%esp),%eax
40d296:	50                   	push   %eax
40d297:	ff 15 1c 30 45 00    	call   *0x45301c
40d29d:	85 ff                	test   %edi,%edi
40d29f:	0f 88 96 03 00 00    	js     0x40d63b
40d2a5:	8d 44 24 40          	lea    0x40(%esp),%eax
40d2a9:	50                   	push   %eax
40d2aa:	ff 15 00 30 45 00    	call   *0x453000
40d2b0:	8b 45 10             	mov    0x10(%ebp),%eax
40d2b3:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d2b7:	51                   	push   %ecx
40d2b8:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d2bc:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%esp)
40d2c3:	00
40d2c4:	51                   	push   %ecx
40d2c5:	8b 30                	mov    (%eax),%esi
40d2c7:	8d 4c 24 48          	lea    0x48(%esp),%ecx
40d2cb:	51                   	push   %ecx
40d2cc:	6a 00                	push   $0x0
40d2ce:	68 34 65 40 00       	push   $0x406534
40d2d3:	8b 76 10             	mov    0x10(%esi),%esi
40d2d6:	8b ce                	mov    %esi,%ecx
40d2d8:	50                   	push   %eax
40d2d9:	c7 44 24 48 00 00 00 	movl   $0x0,0x48(%esp)
40d2e0:	00
40d2e1:	ff 15 c4 12 45 00    	call   *0x4512c4
40d2e7:	ff d6                	call   *%esi
40d2e9:	85 c0                	test   %eax,%eax
40d2eb:	0f 88 7a ab 01 00    	js     0x427e6b
40d2f1:	66 8b 44 24 40       	mov    0x40(%esp),%ax
40d2f6:	66 83 f8 0b          	cmp    $0xb,%ax
40d2fa:	0f 85 52 ab 01 00    	jne    0x427e52
40d300:	66 83 7c 24 48 ff    	cmpw   $0xffff,0x48(%esp)
40d306:	0f 85 3f ab 01 00    	jne    0x427e4b
40d30c:	b8 01 00 00 00       	mov    $0x1,%eax
40d311:	89 43 18             	mov    %eax,0x18(%ebx)
40d314:	8d 44 24 40          	lea    0x40(%esp),%eax
40d318:	50                   	push   %eax
40d319:	ff 15 1c 30 45 00    	call   *0x45301c
40d31f:	85 ff                	test   %edi,%edi
40d321:	0f 88 14 03 00 00    	js     0x40d63b
40d327:	8d 44 24 40          	lea    0x40(%esp),%eax
40d32b:	50                   	push   %eax
40d32c:	ff 15 00 30 45 00    	call   *0x453000
40d332:	8b 45 10             	mov    0x10(%ebp),%eax
40d335:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d339:	51                   	push   %ecx
40d33a:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d33e:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%esp)
40d345:	00
40d346:	51                   	push   %ecx
40d347:	8b 30                	mov    (%eax),%esi
40d349:	8d 4c 24 48          	lea    0x48(%esp),%ecx
40d34d:	51                   	push   %ecx
40d34e:	6a 00                	push   $0x0
40d350:	68 10 65 40 00       	push   $0x406510
40d355:	8b 76 10             	mov    0x10(%esi),%esi
40d358:	8b ce                	mov    %esi,%ecx
40d35a:	50                   	push   %eax
40d35b:	c7 44 24 48 00 00 00 	movl   $0x0,0x48(%esp)
40d362:	00
40d363:	ff 15 c4 12 45 00    	call   *0x4512c4
40d369:	ff d6                	call   *%esi
40d36b:	85 c0                	test   %eax,%eax
40d36d:	0f 88 28 ab 01 00    	js     0x427e9b
40d373:	66 8b 44 24 40       	mov    0x40(%esp),%ax
40d378:	66 83 f8 0b          	cmp    $0xb,%ax
40d37c:	0f 84 ff aa 01 00    	je     0x427e81
40d382:	66 83 f8 01          	cmp    $0x1,%ax
40d386:	0f 85 08 ab 01 00    	jne    0x427e94
40d38c:	c7 43 1c 00 00 00 00 	movl   $0x0,0x1c(%ebx)
40d393:	8d 44 24 40          	lea    0x40(%esp),%eax
40d397:	50                   	push   %eax
40d398:	ff 15 1c 30 45 00    	call   *0x45301c
40d39e:	85 ff                	test   %edi,%edi
40d3a0:	0f 88 95 02 00 00    	js     0x40d63b
40d3a6:	8d 44 24 40          	lea    0x40(%esp),%eax
40d3aa:	50                   	push   %eax
40d3ab:	ff 15 00 30 45 00    	call   *0x453000
40d3b1:	8b 45 10             	mov    0x10(%ebp),%eax
40d3b4:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d3b8:	51                   	push   %ecx
40d3b9:	8d 4c 24 30          	lea    0x30(%esp),%ecx
40d3bd:	c7 44 24 30 00 00 00 	movl   $0x0,0x30(%esp)
40d3c4:	00
40d3c5:	51                   	push   %ecx
40d3c6:	8b 30                	mov    (%eax),%esi
40d3c8:	8d 4c 24 48          	lea    0x48(%esp),%ecx
40d3cc:	51                   	push   %ecx
40d3cd:	6a 00                	push   $0x0
40d3cf:	68 e4 64 40 00       	push   $0x4064e4
40d3d4:	8b 76 10             	mov    0x10(%esi),%esi
40d3d7:	8b ce                	mov    %esi,%ecx
40d3d9:	50                   	push   %eax
40d3da:	c7 44 24 48 00 00 00 	movl   $0x0,0x48(%esp)
40d3e1:	00
40d3e2:	ff 15 c4 12 45 00    	call   *0x4512c4
40d3e8:	ff d6                	call   *%esi
40d3ea:	85 c0                	test   %eax,%eax
40d3ec:	0f 88 d9 aa 01 00    	js     0x427ecb
40d3f2:	66 8b 44 24 40       	mov    0x40(%esp),%ax
40d3f7:	66 83 f8 0b          	cmp    $0xb,%ax
40d3fb:	0f 84 b0 aa 01 00    	je     0x427eb1
40d401:	66 83 f8 01          	cmp    $0x1,%ax
40d405:	0f 85 b9 aa 01 00    	jne    0x427ec4
40d40b:	c7 43 20 00 00 00 00 	movl   $0x0,0x20(%ebx)
40d412:	8d 44 24 40          	lea    0x40(%esp),%eax
40d416:	50                   	push   %eax
40d417:	ff 15 1c 30 45 00    	call   *0x45301c
40d41d:	85 ff                	test   %edi,%edi
40d41f:	0f 88 16 02 00 00    	js     0x40d63b
40d425:	8d 44 24 40          	lea    0x40(%esp),%eax
40d429:	50                   	push   %eax
40d42a:	ff 15 00 30 45 00    	call   *0x453000
40d430:	8b 7d 10             	mov    0x10(%ebp),%edi
40d433:	8d 44 24 34          	lea    0x34(%esp),%eax
40d437:	50                   	push   %eax
40d438:	8d 44 24 3c          	lea    0x3c(%esp),%eax
40d43c:	c7 44 24 3c 00 00 00 	movl   $0x0,0x3c(%esp)
40d443:	00
40d444:	50                   	push   %eax
40d445:	8b 37                	mov    (%edi),%esi
40d447:	8d 44 24 48          	lea    0x48(%esp),%eax
40d44b:	50                   	push   %eax
40d44c:	6a 00                	push   $0x0
40d44e:	68 bc 64 40 00       	push   $0x4064bc
40d453:	8b 76 10             	mov    0x10(%esi),%esi
40d456:	8b ce                	mov    %esi,%ecx
40d458:	57                   	push   %edi
40d459:	c7 44 24 4c 00 00 00 	movl   $0x0,0x4c(%esp)
40d460:	00
40d461:	ff 15 c4 12 45 00    	call   *0x4512c4
40d467:	ff d6                	call   *%esi
40d469:	85 c0                	test   %eax,%eax
40d46b:	0f 88 55 ab 01 00    	js     0x427fc6
40d471:	66 8b 44 24 40       	mov    0x40(%esp),%ax
40d476:	b9 08 20 00 00       	mov    $0x2008,%ecx
40d47b:	66 3b c1             	cmp    %cx,%ax
40d47e:	0f 85 9a 01 00 00    	jne    0x40d61e
40d484:	ff 74 24 48          	push   0x48(%esp)
40d488:	ff 15 04 30 45 00    	call   *0x453004
40d48e:	83 f8 01             	cmp    $0x1,%eax
40d491:	0f 85 f1 00 00 00    	jne    0x40d588
40d497:	8d 44 24 3c          	lea    0x3c(%esp),%eax
40d49b:	50                   	push   %eax
40d49c:	6a 01                	push   $0x1
40d49e:	ff 74 24 50          	push   0x50(%esp)
40d4a2:	ff 15 08 30 45 00    	call   *0x453008
40d4a8:	8d 44 24 30          	lea    0x30(%esp),%eax
40d4ac:	50                   	push   %eax
40d4ad:	6a 01                	push   $0x1
40d4af:	ff 74 24 50          	push   0x50(%esp)
40d4b3:	ff 15 14 30 45 00    	call   *0x453014
40d4b9:	8b 54 24 30          	mov    0x30(%esp),%edx
40d4bd:	8b c2                	mov    %edx,%eax
40d4bf:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
40d4c3:	2b c1                	sub    %ecx,%eax
40d4c5:	83 c0 01             	add    $0x1,%eax
40d4c8:	0f 84 eb aa 01 00    	je     0x427fb9
40d4ce:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
40d4d2:	3b ca                	cmp    %edx,%ecx
40d4d4:	0f 8f ae 00 00 00    	jg     0x40d588
40d4da:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
40d4e0:	8d 44 24 28          	lea    0x28(%esp),%eax
40d4e4:	50                   	push   %eax
40d4e5:	8d 44 24 30          	lea    0x30(%esp),%eax
40d4e9:	50                   	push   %eax
40d4ea:	ff 74 24 50          	push   0x50(%esp)
40d4ee:	ff 15 18 30 45 00    	call   *0x453018
40d4f4:	85 c0                	test   %eax,%eax
40d4f6:	78 7a                	js     0x40d572
40d4f8:	8b 7c 24 28          	mov    0x28(%esp),%edi