40d01d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
40d020:	85 c9                	test   %ecx,%ecx
40d022:	74 0a                	je     0x40d02e
40d024:	8b 01                	mov    (%ecx),%eax
40d026:	51                   	push   %ecx
40d027:	ff 50 08             	call   *0x8(%eax)
40d02a:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
40d02e:	8b 45 14             	mov    0x14(%ebp),%eax
40d031:	8b 4d 08             	mov    0x8(%ebp),%ecx
40d034:	40                   	inc    %eax
40d035:	83 c1 58             	add    $0x58,%ecx
40d038:	89 45 14             	mov    %eax,0x14(%ebp)
40d03b:	89 4d 08             	mov    %ecx,0x8(%ebp)
40d03e:	3b 45 f4             	cmp    -0xc(%ebp),%eax
40d041:	0f 82 25 fd ff ff    	jb     0x40cd6c
40d047:	33 f6                	xor    %esi,%esi
40d049:	5f                   	pop    %edi
40d04a:	5b                   	pop    %ebx
40d04b:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40d04e:	85 c9                	test   %ecx,%ecx
40d050:	74 06                	je     0x40d058
40d052:	8b 01                	mov    (%ecx),%eax
40d054:	51                   	push   %ecx
40d055:	ff 50 08             	call   *0x8(%eax)
40d058:	8b 4d f8             	mov    -0x8(%ebp),%ecx
40d05b:	85 c9                	test   %ecx,%ecx
40d05d:	74 06                	je     0x40d065
40d05f:	8b 01                	mov    (%ecx),%eax
40d061:	51                   	push   %ecx
40d062:	ff 50 08             	call   *0x8(%eax)
40d065:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
40d069:	74 08                	je     0x40d073
40d06b:	ff 75 fc             	push   -0x4(%ebp)
40d06e:	e8 7c 84 03 00       	call   0x4454ef
40d073:	8b c6                	mov    %esi,%eax
40d075:	5e                   	pop    %esi
40d076:	8b e5                	mov    %ebp,%esp
40d078:	5d                   	pop    %ebp
40d079:	c2 10 00             	ret    $0x10
40d07c:	ff 75 fc             	push   -0x4(%ebp)
40d07f:	68 f0 fa 44 00       	push   $0x44faf0
40d084:	eb 78                	jmp    0x40d0fe
40d086:	68 d4 fa 44 00       	push   $0x44fad4
40d08b:	e9 96 00 00 00       	jmp    0x40d126
40d090:	68 2c fb 44 00       	push   $0x44fb2c
40d095:	e9 8c 00 00 00       	jmp    0x40d126
40d09a:	68 c8 fb 44 00       	push   $0x44fbc8
40d09f:	e9 82 00 00 00       	jmp    0x40d126
40d0a4:	68 ac fb 44 00       	push   $0x44fbac
40d0a9:	eb 7b                	jmp    0x40d126
40d0ab:	68 64 fc 44 00       	push   $0x44fc64
40d0b0:	eb 74                	jmp    0x40d126
40d0b2:	68 30 fc 44 00       	push   $0x44fc30
40d0b7:	eb 6d                	jmp    0x40d126
40d0b9:	68 00 fd 44 00       	push   $0x44fd00
40d0be:	eb 66                	jmp    0x40d126
40d0c0:	68 d4 fc 44 00       	push   $0x44fcd4
40d0c5:	eb 5f                	jmp    0x40d126
40d0c7:	68 74 fd 44 00       	push   $0x44fd74
40d0cc:	eb 58                	jmp    0x40d126
40d0ce:	68 5c fd 44 00       	push   $0x44fd5c
40d0d3:	eb 51                	jmp    0x40d126
40d0d5:	68 34 fd 44 00       	push   $0x44fd34
40d0da:	eb 4a                	jmp    0x40d126
40d0dc:	68 30 f7 44 00       	push   $0x44f730
40d0e1:	eb 43                	jmp    0x40d126
40d0e3:	68 7c fb 44 00       	push   $0x44fb7c
40d0e8:	eb 3c                	jmp    0x40d126
40d0ea:	68 60 fb 44 00       	push   $0x44fb60
40d0ef:	eb 35                	jmp    0x40d126
40d0f1:	ff 75 fc             	push   -0x4(%ebp)
40d0f4:	be 57 00 07 80       	mov    $0x80070057,%esi
40d0f9:	68 b0 fa 44 00       	push   $0x44fab0
40d0fe:	56                   	push   %esi
40d0ff:	e8 2b 30 03 00       	call   0x44012f
40d104:	83 c4 0c             	add    $0xc,%esp
40d107:	e9 3d ff ff ff       	jmp    0x40d049
40d10c:	68 58 fa 44 00       	push   $0x44fa58
40d111:	eb 13                	jmp    0x40d126
40d113:	68 4c f6 44 00       	push   $0x44f64c
40d118:	eb 0c                	jmp    0x40d126
40d11a:	68 6c ca 44 00       	push   $0x44ca6c
40d11f:	eb 05                	jmp    0x40d126
40d121:	68 48 ca 44 00       	push   $0x44ca48
40d126:	56                   	push   %esi
40d127:	e8 03 30 03 00       	call   0x44012f
40d12c:	59                   	pop    %ecx
40d12d:	59                   	pop    %ecx
40d12e:	e9 16 ff ff ff       	jmp    0x40d049
40d133:	55                   	push   %ebp
40d134:	8b ec                	mov    %esp,%ebp
40d136:	57                   	push   %edi
40d137:	8b 7d 08             	mov    0x8(%ebp),%edi
40d13a:	83 3f 00             	cmpl   $0x0,(%edi)
40d13d:	0f 84 bc 00 00 00    	je     0x40d1ff
40d143:	53                   	push   %ebx
40d144:	33 db                	xor    %ebx,%ebx
40d146:	39 5f 04             	cmp    %ebx,0x4(%edi)
40d149:	0f 86 a8 00 00 00    	jbe    0x40d1f7
40d14f:	33 c0                	xor    %eax,%eax
40d151:	89 45 08             	mov    %eax,0x8(%ebp)
40d154:	56                   	push   %esi
40d155:	8b 37                	mov    (%edi),%esi
40d157:	03 f0                	add    %eax,%esi
40d159:	83 3e 00             	cmpl   $0x0,(%esi)
40d15c:	74 07                	je     0x40d165
40d15e:	ff 36                	push   (%esi)
40d160:	e8 8a 83 03 00       	call   0x4454ef
40d165:	83 7e 18 00          	cmpl   $0x0,0x18(%esi)
40d169:	74 08                	je     0x40d173
40d16b:	ff 76 18             	push   0x18(%esi)
40d16e:	e8 7c 83 03 00       	call   0x4454ef
40d173:	83 7e 30 00          	cmpl   $0x0,0x30(%esi)
40d177:	74 08                	je     0x40d181
40d179:	ff 76 30             	push   0x30(%esi)
40d17c:	e8 18 68 ff ff       	call   0x403999
40d181:	83 7e 28 00          	cmpl   $0x0,0x28(%esi)
40d185:	74 08                	je     0x40d18f
40d187:	ff 76 28             	push   0x28(%esi)
40d18a:	e8 0a 68 ff ff       	call   0x403999
40d18f:	83 7e 20 00          	cmpl   $0x0,0x20(%esi)
40d193:	74 08                	je     0x40d19d
40d195:	ff 76 20             	push   0x20(%esi)
40d198:	e8 fc 67 ff ff       	call   0x403999
40d19d:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
40d1a1:	74 08                	je     0x40d1ab
40d1a3:	ff 76 38             	push   0x38(%esi)
40d1a6:	e8 44 83 03 00       	call   0x4454ef
40d1ab:	83 7e 50 00          	cmpl   $0x0,0x50(%esi)
40d1af:	74 08                	je     0x40d1b9
40d1b1:	ff 76 50             	push   0x50(%esi)
40d1b4:	e8 36 83 03 00       	call   0x4454ef
40d1b9:	83 7e 40 00          	cmpl   $0x0,0x40(%esi)
40d1bd:	74 08                	je     0x40d1c7
40d1bf:	ff 76 40             	push   0x40(%esi)
40d1c2:	e8 28 83 03 00       	call   0x4454ef
40d1c7:	83 7e 44 00          	cmpl   $0x0,0x44(%esi)
40d1cb:	74 08                	je     0x40d1d5
40d1cd:	ff 76 44             	push   0x44(%esi)
40d1d0:	e8 1a 83 03 00       	call   0x4454ef
40d1d5:	83 7e 48 00          	cmpl   $0x0,0x48(%esi)
40d1d9:	74 08                	je     0x40d1e3
40d1db:	ff 76 48             	push   0x48(%esi)
40d1de:	e8 0c 83 03 00       	call   0x4454ef
40d1e3:	8b 45 08             	mov    0x8(%ebp),%eax
40d1e6:	43                   	inc    %ebx
40d1e7:	83 c0 58             	add    $0x58,%eax
40d1ea:	89 45 08             	mov    %eax,0x8(%ebp)
40d1ed:	3b 5f 04             	cmp    0x4(%edi),%ebx
40d1f0:	0f 82 5f ff ff ff    	jb     0x40d155
40d1f6:	5e                   	pop    %esi
40d1f7:	ff 37                	push   (%edi)
40d1f9:	e8 9b 67 ff ff       	call   0x403999
40d1fe:	5b                   	pop    %ebx
40d1ff:	83 27 00             	andl   $0x0,(%edi)
40d202:	83 67 04 00          	andl   $0x0,0x4(%edi)
40d206:	5f                   	pop    %edi
40d207:	5d                   	pop    %ebp
40d208:	c2 04 00             	ret    $0x4
40d20b:	55                   	push   %ebp
40d20c:	8b ec                	mov    %esp,%ebp
40d20e:	8b 4d 0c             	mov    0xc(%ebp),%ecx
40d211:	85 c9                	test   %ecx,%ecx
40d213:	0f 84 39 01 00 00    	je     0x40d352
40d219:	83 f9 ff             	cmp    $0xffffffff,%ecx
40d21c:	0f 84 30 01 00 00    	je     0x40d352
40d222:	8b 45 08             	mov    0x8(%ebp),%eax
40d225:	56                   	push   %esi
40d226:	6a 04                	push   $0x4
40d228:	5e                   	pop    %esi
40d229:	3b c6                	cmp    %esi,%eax
40d22b:	0f 87 d2 00 00 00    	ja     0x40d303
40d231:	0f 84 a1 00 00 00    	je     0x40d2d8
40d237:	83 e8 00             	sub    $0x0,%eax
40d23a:	0f 84 1c 01 00 00    	je     0x40d35c
40d240:	83 e8 01             	sub    $0x1,%eax
40d243:	74 67                	je     0x40d2ac
40d245:	83 e8 01             	sub    $0x1,%eax
40d248:	74 2e                	je     0x40d278
40d24a:	83 e8 01             	sub    $0x1,%eax
40d24d:	0f 85 fe 00 00 00    	jne    0x40d351
40d253:	83 f9 01             	cmp    $0x1,%ecx
40d256:	0f 84 a0 00 00 00    	je     0x40d2fc
40d25c:	83 f9 06             	cmp    $0x6,%ecx
40d25f:	0f 84 97 00 00 00    	je     0x40d2fc
40d265:	83 f9 07             	cmp    $0x7,%ecx
40d268:	0f 84 87 00 00 00    	je     0x40d2f5
40d26e:	83 f9 02             	cmp    $0x2,%ecx
40d271:	74 5e                	je     0x40d2d1
40d273:	83 f9 03             	cmp    $0x3,%ecx
40d276:	eb 53                	jmp    0x40d2cb
40d278:	83 f9 02             	cmp    $0x2,%ecx
40d27b:	0f 84 17 01 00 00    	je     0x40d398
40d281:	83 f9 03             	cmp    $0x3,%ecx
40d284:	0f 84 0e 01 00 00    	je     0x40d398
40d28a:	3b ce                	cmp    %esi,%ecx
40d28c:	0f 84 bd 00 00 00    	je     0x40d34f
40d292:	83 f9 0a             	cmp    $0xa,%ecx
40d295:	0f 84 b4 00 00 00    	je     0x40d34f
40d29b:	6a 05                	push   $0x5
40d29d:	5a                   	pop    %edx
40d29e:	33 c0                	xor    %eax,%eax
40d2a0:	3b ca                	cmp    %edx,%ecx
40d2a2:	0f 44 c2             	cmove  %edx,%eax
40d2a5:	8b c8                	mov    %eax,%ecx
40d2a7:	e9 a5 00 00 00       	jmp    0x40d351
40d2ac:	83 f9 01             	cmp    $0x1,%ecx
40d2af:	0f 84 a7 00 00 00    	je     0x40d35c
40d2b5:	83 f9 06             	cmp    $0x6,%ecx
40d2b8:	0f 84 9e 00 00 00    	je     0x40d35c
40d2be:	83 f9 02             	cmp    $0x2,%ecx
40d2c1:	74 0e                	je     0x40d2d1
40d2c3:	83 f9 03             	cmp    $0x3,%ecx
40d2c6:	74 09                	je     0x40d2d1
40d2c8:	83 f9 07             	cmp    $0x7,%ecx
40d2cb:	0f 85 c3 00 00 00    	jne    0x40d394
40d2d1:	6a 02                	push   $0x2
40d2d3:	e9 c2 00 00 00       	jmp    0x40d39a
40d2d8:	83 f9 01             	cmp    $0x1,%ecx
40d2db:	74 1f                	je     0x40d2fc
40d2dd:	83 f9 06             	cmp    $0x6,%ecx
40d2e0:	74 1a                	je     0x40d2fc
40d2e2:	83 f9 02             	cmp    $0x2,%ecx
40d2e5:	74 0e                	je     0x40d2f5
40d2e7:	83 f9 03             	cmp    $0x3,%ecx
40d2ea:	74 09                	je     0x40d2f5
40d2ec:	83 f9 07             	cmp    $0x7,%ecx
40d2ef:	0f 85 9f 00 00 00    	jne    0x40d394
40d2f5:	6a 07                	push   $0x7
40d2f7:	e9 9e 00 00 00       	jmp    0x40d39a
40d2fc:	6a 06                	push   $0x6
40d2fe:	e9 97 00 00 00       	jmp    0x40d39a
40d303:	6a 05                	push   $0x5
40d305:	5a                   	pop    %edx
40d306:	2b c2                	sub    %edx,%eax
40d308:	74 77                	je     0x40d381
40d30a:	83 e8 01             	sub    $0x1,%eax
40d30d:	74 52                	je     0x40d361
40d30f:	83 e8 08             	sub    $0x8,%eax
40d312:	74 10                	je     0x40d324
40d314:	83 e8 01             	sub    $0x1,%eax
40d317:	75 38                	jne    0x40d351
40d319:	3b ce                	cmp    %esi,%ecx
40d31b:	74 34                	je     0x40d351
40d31d:	83 f9 0a             	cmp    $0xa,%ecx
40d320:	74 2f                	je     0x40d351
40d322:	eb 70                	jmp    0x40d394
40d324:	83 f9 01             	cmp    $0x1,%ecx
40d327:	74 33                	je     0x40d35c
40d329:	83 f9 06             	cmp    $0x6,%ecx
40d32c:	74 2e                	je     0x40d35c
40d32e:	83 f9 0b             	cmp    $0xb,%ecx
40d331:	74 25                	je     0x40d358
40d333:	3b ca                	cmp    %edx,%ecx
40d335:	74 21                	je     0x40d358
40d337:	83 f9 02             	cmp    $0x2,%ecx
40d33a:	74 95                	je     0x40d2d1
40d33c:	83 f9 03             	cmp    $0x3,%ecx
40d33f:	74 90                	je     0x40d2d1
40d341:	3b ce                	cmp    %esi,%ecx
40d343:	74 0a                	je     0x40d34f
40d345:	83 f9 0a             	cmp    $0xa,%ecx
40d348:	74 05                	je     0x40d34f
40d34a:	83 f9 07             	cmp    $0x7,%ecx
40d34d:	75 45                	jne    0x40d394
40d34f:	8b ce                	mov    %esi,%ecx
40d351:	5e                   	pop    %esi
40d352:	8b c1                	mov    %ecx,%eax
40d354:	5d                   	pop    %ebp
40d355:	c2 08 00             	ret    $0x8
40d358:	8b ca                	mov    %edx,%ecx
40d35a:	eb f5                	jmp    0x40d351
40d35c:	33 c9                	xor    %ecx,%ecx
40d35e:	41                   	inc    %ecx
40d35f:	eb f0                	jmp    0x40d351
40d361:	83 f9 02             	cmp    $0x2,%ecx
40d364:	74 32                	je     0x40d398
40d366:	83 f9 03             	cmp    $0x3,%ecx
40d369:	74 2d                	je     0x40d398
40d36b:	3b ce                	cmp    %esi,%ecx
40d36d:	74 e0                	je     0x40d34f
40d36f:	83 f9 0a             	cmp    $0xa,%ecx
40d372:	74 db                	je     0x40d34f
40d374:	83 f9 0b             	cmp    $0xb,%ecx
40d377:	74 04                	je     0x40d37d
40d379:	3b ca                	cmp    %edx,%ecx
40d37b:	75 17                	jne    0x40d394
40d37d:	6a 0b                	push   $0xb
40d37f:	eb 19                	jmp    0x40d39a
40d381:	3b ce                	cmp    %esi,%ecx
40d383:	74 ca                	je     0x40d34f
40d385:	83 f9 0a             	cmp    $0xa,%ecx
40d388:	74 c5                	je     0x40d34f
40d38a:	83 f9 02             	cmp    $0x2,%ecx
40d38d:	74 09                	je     0x40d398
40d38f:	83 f9 03             	cmp    $0x3,%ecx
40d392:	74 04                	je     0x40d398
40d394:	33 c9                	xor    %ecx,%ecx
40d396:	eb b9                	jmp    0x40d351
40d398:	6a 03                	push   $0x3
40d39a:	59                   	pop    %ecx
40d39b:	eb b4                	jmp    0x40d351
40d39d:	55                   	push   %ebp
40d39e:	8b ec                	mov    %esp,%ebp
40d3a0:	53                   	push   %ebx
40d3a1:	56                   	push   %esi
40d3a2:	8b 75 08             	mov    0x8(%ebp),%esi
40d3a5:	57                   	push   %edi
40d3a6:	33 ff                	xor    %edi,%edi
40d3a8:	8d 46 18             	lea    0x18(%esi),%eax
40d3ab:	50                   	push   %eax
40d3ac:	ff 15 b4 b1 44 00    	call   *0x44b1b4
40d3b2:	57                   	push   %edi
40d3b3:	33 db                	xor    %ebx,%ebx
40d3b5:	8d 46 30             	lea    0x30(%esi),%eax
40d3b8:	43                   	inc    %ebx
40d3b9:	53                   	push   %ebx
40d3ba:	50                   	push   %eax
40d3bb:	ff 15 fc b1 44 00    	call   *0x44b1fc
40d3c1:	85 c0                	test   %eax,%eax
40d3c3:	74 07                	je     0x40d3cc
40d3c5:	8b df                	mov    %edi,%ebx
40d3c7:	bf 9f 13 07 80       	mov    $0x8007139f,%edi
40d3cc:	8d 46 18             	lea    0x18(%esi),%eax
40d3cf:	50                   	push   %eax
40d3d0:	ff 15 b8 b1 44 00    	call   *0x44b1b8
40d3d6:	8b 45 0c             	mov    0xc(%ebp),%eax
40d3d9:	85 c0                	test   %eax,%eax
40d3db:	74 02                	je     0x40d3df
40d3dd:	89 18                	mov    %ebx,(%eax)
40d3df:	85 ff                	test   %edi,%edi
40d3e1:	79 1d                	jns    0x40d400
40d3e3:	57                   	push   %edi
40d3e4:	68 ea 00 00 00       	push   $0xea
40d3e9:	68 3c ff 44 00       	push   $0x44ff3c
40d3ee:	e8 e0 63 ff ff       	call   0x4037d3
40d3f3:	68 b0 00 45 00       	push   $0x4500b0
40d3f8:	57                   	push   %edi
40d3f9:	e8 31 2d 03 00       	call   0x44012f
40d3fe:	59                   	pop    %ecx
40d3ff:	59                   	pop    %ecx
40d400:	8b c7                	mov    %edi,%eax
40d402:	5f                   	pop    %edi
40d403:	5e                   	pop    %esi
40d404:	5b                   	pop    %ebx
40d405:	5d                   	pop    %ebp
40d406:	c2 08 00             	ret    $0x8
40d409:	55                   	push   %ebp
40d40a:	8b ec                	mov    %esp,%ebp
40d40c:	8b 55 0c             	mov    0xc(%ebp),%edx