40af3b:	50                   	push   %eax
40af3c:	8d 45 f4             	lea    -0xc(%ebp),%eax
40af3f:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40af45:	8b f1                	mov    %ecx,%esi
40af47:	89 75 f0             	mov    %esi,-0x10(%ebp)
40af4a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40af4e:	8d 4e 60             	lea    0x60(%esi),%ecx
40af51:	ff 15 6c 33 42 00    	call   *0x42336c
40af57:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40af5b:	8b ce                	mov    %esi,%ecx
40af5d:	ff 15 54 31 42 00    	call   *0x423154
40af63:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40af66:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40af6d:	59                   	pop    %ecx
40af6e:	5e                   	pop    %esi
40af6f:	c9                   	leave
40af70:	c3                   	ret
40af71:	cc                   	int3
40af72:	cc                   	int3
40af73:	cc                   	int3
40af74:	cc                   	int3
40af75:	cc                   	int3
40af76:	cc                   	int3
40af77:	cc                   	int3
40af78:	cc                   	int3
40af79:	cc                   	int3
40af7a:	cc                   	int3
40af7b:	cc                   	int3
40af7c:	cc                   	int3
40af7d:	cc                   	int3
40af7e:	cc                   	int3
40af7f:	cc                   	int3
40af80:	68 74 07 00 00       	push   $0x774
40af85:	b8 07 ce 41 00       	mov    $0x41ce07,%eax
40af8a:	e8 dc 14 01 00       	call   0x41c46b
40af8f:	8b f9                	mov    %ecx,%edi
40af91:	33 db                	xor    %ebx,%ebx
40af93:	8d 8d 9c f8 ff ff    	lea    -0x764(%ebp),%ecx
40af99:	21 9d 8c f8 ff ff    	and    %ebx,-0x774(%ebp)
40af9f:	33 f6                	xor    %esi,%esi
40afa1:	21 9d 88 f8 ff ff    	and    %ebx,-0x778(%ebp)
40afa7:	ff 15 40 32 42 00    	call   *0x423240
40afad:	21 75 fc             	and    %esi,-0x4(%ebp)
40afb0:	8d 8d 94 f8 ff ff    	lea    -0x76c(%ebp),%ecx
40afb6:	ff 15 40 32 42 00    	call   *0x423240
40afbc:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
40afc0:	8d 8d 98 f8 ff ff    	lea    -0x768(%ebp),%ecx
40afc6:	ff 15 40 32 42 00    	call   *0x423240
40afcc:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
40afd0:	8d 95 98 f8 ff ff    	lea    -0x768(%ebp),%edx
40afd6:	b9 65 01 00 00       	mov    $0x165,%ecx
40afdb:	e8 61 38 00 00       	call   0x40e841
40afe0:	56                   	push   %esi
40afe1:	ff b5 98 f8 ff ff    	push   -0x768(%ebp)
40afe7:	8d 8d a0 f8 ff ff    	lea    -0x760(%ebp),%ecx
40afed:	68 04 42 03 00       	push   $0x34204
40aff2:	56                   	push   %esi
40aff3:	68 70 46 40 00       	push   $0x404670
40aff8:	6a 01                	push   $0x1
40affa:	ff 15 50 31 42 00    	call   *0x423150
40b000:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
40b004:	81 bd 20 f9 ff ff 00 	cmpl   $0x1000,-0x6e0(%ebp)
40b00b:	10 00 00
40b00e:	73 4a                	jae    0x40b05a
40b010:	68 00 20 00 00       	push   $0x2000
40b015:	e8 b7 02 01 00       	call   0x41b2d1
40b01a:	8b f0                	mov    %eax,%esi
40b01c:	59                   	pop    %ecx
40b01d:	85 f6                	test   %esi,%esi
40b01f:	75 0c                	jne    0x40b02d
40b021:	6a 68                	push   $0x68
40b023:	e8 2b 36 00 00       	call   0x40e653
40b028:	e9 cd 01 00 00       	jmp    0x40b1fa
40b02d:	33 c0                	xor    %eax,%eax
40b02f:	66 89 06             	mov    %ax,(%esi)
40b032:	8b 85 20 f9 ff ff    	mov    -0x6e0(%ebp),%eax
40b038:	89 85 8c f8 ff ff    	mov    %eax,-0x774(%ebp)
40b03e:	8b 85 1c f9 ff ff    	mov    -0x6e4(%ebp),%eax
40b044:	89 85 88 f8 ff ff    	mov    %eax,-0x778(%ebp)
40b04a:	89 b5 1c f9 ff ff    	mov    %esi,-0x6e4(%ebp)
40b050:	c7 85 20 f9 ff ff 00 	movl   $0x1000,-0x6e0(%ebp)
40b057:	10 00 00
40b05a:	68 04 01 00 00       	push   $0x104
40b05f:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
40b065:	50                   	push   %eax
40b066:	6a 66                	push   $0x66
40b068:	ff 35 28 15 42 00    	push   0x421528
40b06e:	ff 15 60 34 42 00    	call   *0x423460
40b074:	85 c0                	test   %eax,%eax
40b076:	74 0c                	je     0x40b084
40b078:	8d 85 e8 fd ff ff    	lea    -0x218(%ebp),%eax
40b07e:	89 85 30 f9 ff ff    	mov    %eax,-0x6d0(%ebp)
40b084:	68 04 01 00 00       	push   $0x104
40b089:	8d 85 e0 fb ff ff    	lea    -0x420(%ebp),%eax
40b08f:	50                   	push   %eax
40b090:	68 78 46 40 00       	push   $0x404678
40b095:	ff 15 78 30 42 00    	call   *0x423078
40b09b:	48                   	dec    %eax
40b09c:	3d 03 01 00 00       	cmp    $0x103,%eax
40b0a1:	77 0c                	ja     0x40b0af
40b0a3:	8d 85 e0 fb ff ff    	lea    -0x420(%ebp),%eax
40b0a9:	89 85 2c f9 ff ff    	mov    %eax,-0x6d4(%ebp)
40b0af:	8d 8d a0 f8 ff ff    	lea    -0x760(%ebp),%ecx
40b0b5:	ff 15 4c 31 42 00    	call   *0x42314c
40b0bb:	83 e8 01             	sub    $0x1,%eax
40b0be:	74 34                	je     0x40b0f4
40b0c0:	83 e8 01             	sub    $0x1,%eax
40b0c3:	0f 84 0f 01 00 00    	je     0x40b1d8
40b0c9:	ff 15 38 30 42 00    	call   *0x423038
40b0cf:	3d 03 30 00 00       	cmp    $0x3003,%eax
40b0d4:	75 0c                	jne    0x40b0e2
40b0d6:	68 2b 01 00 00       	push   $0x12b
40b0db:	e8 73 35 00 00       	call   0x40e653
40b0e0:	eb 0c                	jmp    0x40b0ee
40b0e2:	50                   	push   %eax
40b0e3:	68 2c 01 00 00       	push   $0x12c
40b0e8:	e8 66 35 00 00       	call   0x40e653
40b0ed:	59                   	pop    %ecx
40b0ee:	59                   	pop    %ecx
40b0ef:	e9 e4 00 00 00       	jmp    0x40b1d8
40b0f4:	8b 85 1c f9 ff ff    	mov    -0x6e4(%ebp),%eax
40b0fa:	c7 87 60 01 00 00 01 	movl   $0x1,0x160(%edi)
40b101:	00 00 00
40b104:	89 85 90 f8 ff ff    	mov    %eax,-0x770(%ebp)
40b10a:	85 c0                	test   %eax,%eax
40b10c:	0f 84 b3 00 00 00    	je     0x40b1c5
40b112:	8d 85 90 f8 ff ff    	lea    -0x770(%ebp),%eax
40b118:	50                   	push   %eax
40b119:	8d 85 84 f8 ff ff    	lea    -0x77c(%ebp),%eax
40b11f:	50                   	push   %eax
40b120:	8d 8d a0 f8 ff ff    	lea    -0x760(%ebp),%ecx
40b126:	ff 15 40 31 42 00    	call   *0x423140
40b12c:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
40b130:	8d 8d 9c f8 ff ff    	lea    -0x764(%ebp),%ecx
40b136:	50                   	push   %eax
40b137:	ff 15 80 33 42 00    	call   *0x423380
40b13d:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
40b141:	8d 8d 84 f8 ff ff    	lea    -0x77c(%ebp),%ecx
40b147:	ff 15 44 32 42 00    	call   *0x423244
40b14d:	6a 5c                	push   $0x5c
40b14f:	8d 8d 9c f8 ff ff    	lea    -0x764(%ebp),%ecx
40b155:	ff 15 3c 31 42 00    	call   *0x42313c
40b15b:	8b c8                	mov    %eax,%ecx
40b15d:	85 c9                	test   %ecx,%ecx
40b15f:	79 04                	jns    0x40b165
40b161:	33 c9                	xor    %ecx,%ecx
40b163:	eb 01                	jmp    0x40b166
40b165:	41                   	inc    %ecx
40b166:	8b 85 9c f8 ff ff    	mov    -0x764(%ebp),%eax
40b16c:	8b 40 f8             	mov    -0x8(%eax),%eax
40b16f:	2b c1                	sub    %ecx,%eax
40b171:	8d 8d 9c f8 ff ff    	lea    -0x764(%ebp),%ecx
40b177:	50                   	push   %eax
40b178:	8d 85 80 f8 ff ff    	lea    -0x780(%ebp),%eax
40b17e:	50                   	push   %eax
40b17f:	ff 15 38 31 42 00    	call   *0x423138
40b185:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
40b189:	8d 8d 94 f8 ff ff    	lea    -0x76c(%ebp),%ecx
40b18f:	50                   	push   %eax
40b190:	ff 15 80 33 42 00    	call   *0x423380
40b196:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
40b19a:	8d 8d 80 f8 ff ff    	lea    -0x780(%ebp),%ecx
40b1a0:	ff 15 44 32 42 00    	call   *0x423244
40b1a6:	8d 8d 94 f8 ff ff    	lea    -0x76c(%ebp),%ecx
40b1ac:	e8 3c 6a 00 00       	call   0x411bed
40b1b1:	85 c0                	test   %eax,%eax
40b1b3:	74 03                	je     0x40b1b8
40b1b5:	33 db                	xor    %ebx,%ebx
40b1b7:	43                   	inc    %ebx
40b1b8:	83 bd 90 f8 ff ff 00 	cmpl   $0x0,-0x770(%ebp)
40b1bf:	0f 85 4d ff ff ff    	jne    0x40b112
40b1c5:	83 a7 60 01 00 00 00 	andl   $0x0,0x160(%edi)
40b1cc:	83 fb 01             	cmp    $0x1,%ebx
40b1cf:	75 07                	jne    0x40b1d8
40b1d1:	8b cf                	mov    %edi,%ecx
40b1d3:	e8 ee eb ff ff       	call   0x409dc6
40b1d8:	85 f6                	test   %esi,%esi
40b1da:	74 1f                	je     0x40b1fb
40b1dc:	8b 85 8c f8 ff ff    	mov    -0x774(%ebp),%eax
40b1e2:	89 85 20 f9 ff ff    	mov    %eax,-0x6e0(%ebp)
40b1e8:	8b 85 88 f8 ff ff    	mov    -0x778(%ebp),%eax
40b1ee:	56                   	push   %esi
40b1ef:	89 85 1c f9 ff ff    	mov    %eax,-0x6e4(%ebp)
40b1f5:	e8 e2 00 01 00       	call   0x41b2dc
40b1fa:	59                   	pop    %ecx
40b1fb:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
40b1ff:	8d 8d 50 f9 ff ff    	lea    -0x6b0(%ebp),%ecx
40b205:	ff 15 44 32 42 00    	call   *0x423244
40b20b:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
40b20f:	8d 8d a0 f8 ff ff    	lea    -0x760(%ebp),%ecx
40b215:	ff 15 54 31 42 00    	call   *0x423154
40b21b:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
40b21f:	8d 8d 98 f8 ff ff    	lea    -0x768(%ebp),%ecx
40b225:	ff 15 44 32 42 00    	call   *0x423244
40b22b:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
40b22f:	8d 8d 94 f8 ff ff    	lea    -0x76c(%ebp),%ecx
40b235:	ff 15 44 32 42 00    	call   *0x423244
40b23b:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b23f:	8d 8d 9c f8 ff ff    	lea    -0x764(%ebp),%ecx
40b245:	ff 15 44 32 42 00    	call   *0x423244
40b24b:	e8 ca 11 01 00       	call   0x41c41a
40b250:	c3                   	ret
40b251:	8b ff                	mov    %edi,%edi
40b253:	55                   	push   %ebp
40b254:	8b ec                	mov    %esp,%ebp
40b256:	6a ff                	push   $0xffffffff
40b258:	68 4f ce 41 00       	push   $0x41ce4f
40b25d:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40b263:	50                   	push   %eax
40b264:	51                   	push   %ecx
40b265:	56                   	push   %esi
40b266:	a1 e4 05 42 00       	mov    0x4205e4,%eax
40b26b:	33 c5                	xor    %ebp,%eax
40b26d:	50                   	push   %eax
40b26e:	8d 45 f4             	lea    -0xc(%ebp),%eax
40b271:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
40b277:	8b f1                	mov    %ecx,%esi
40b279:	89 75 f0             	mov    %esi,-0x10(%ebp)
40b27c:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40b280:	8d 8e b0 00 00 00    	lea    0xb0(%esi),%ecx
40b286:	ff 15 44 32 42 00    	call   *0x423244
40b28c:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40b290:	8b ce                	mov    %esi,%ecx
40b292:	ff 15 54 31 42 00    	call   *0x423154
40b298:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40b29b:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40b2a2:	59                   	pop    %ecx
40b2a3:	5e                   	pop    %esi
40b2a4:	c9                   	leave
40b2a5:	c3                   	ret
40b2a6:	cc                   	int3
40b2a7:	cc                   	int3
40b2a8:	cc                   	int3
40b2a9:	cc                   	int3
40b2aa:	cc                   	int3
40b2ab:	cc                   	int3
40b2ac:	cc                   	int3
40b2ad:	cc                   	int3
40b2ae:	cc                   	int3
40b2af:	cc                   	int3
40b2b0:	8b ff                	mov    %edi,%edi
40b2b2:	55                   	push   %ebp
40b2b3:	8b ec                	mov    %esp,%ebp
40b2b5:	51                   	push   %ecx
40b2b6:	53                   	push   %ebx
40b2b7:	56                   	push   %esi
40b2b8:	57                   	push   %edi
40b2b9:	33 db                	xor    %ebx,%ebx
40b2bb:	8b f1                	mov    %ecx,%esi
40b2bd:	53                   	push   %ebx
40b2be:	53                   	push   %ebx
40b2bf:	68 04 10 00 00       	push   $0x1004
40b2c4:	ff b6 04 02 00 00    	push   0x204(%esi)
40b2ca:	c7 86 60 01 00 00 01 	movl   $0x1,0x160(%esi)
40b2d1:	00 00 00
40b2d4:	ff 15 40 34 42 00    	call   *0x423440
40b2da:	33 ff                	xor    %edi,%edi
40b2dc:	89 45 fc             	mov    %eax,-0x4(%ebp)
40b2df:	85 c0                	test   %eax,%eax
40b2e1:	7e 4e                	jle    0x40b331
40b2e3:	6a 02                	push   $0x2
40b2e5:	57                   	push   %edi
40b2e6:	68 2c 10 00 00       	push   $0x102c
40b2eb:	ff b6 04 02 00 00    	push   0x204(%esi)
40b2f1:	ff 15 40 34 42 00    	call   *0x423440
40b2f7:	a8 02                	test   $0x2,%al
40b2f9:	74 30                	je     0x40b32b
40b2fb:	57                   	push   %edi
40b2fc:	8d 8e e4 01 00 00    	lea    0x1e4(%esi),%ecx
40b302:	ff 15 2c 34 42 00    	call   *0x42342c
40b308:	3b 86 38 01 00 00    	cmp    0x138(%esi),%eax
40b30e:	7d 1b                	jge    0x40b32b
40b310:	50                   	push   %eax
40b311:	8d 8e 30 01 00 00    	lea    0x130(%esi),%ecx
40b317:	e8 c0 86 00 00       	call   0x4139dc
40b31c:	8d 48 04             	lea    0x4(%eax),%ecx
40b31f:	e8 1c 6a 00 00       	call   0x411d40
40b324:	85 c0                	test   %eax,%eax
40b326:	74 03                	je     0x40b32b
40b328:	33 db                	xor    %ebx,%ebx
40b32a:	43                   	inc    %ebx
40b32b:	47                   	inc    %edi
40b32c:	3b 7d fc             	cmp    -0x4(%ebp),%edi
40b32f:	7c b2                	jl     0x40b2e3
40b331:	83 a6 60 01 00 00 00 	andl   $0x0,0x160(%esi)
40b338:	85 db                	test   %ebx,%ebx
40b33a:	74 07                	je     0x40b343
40b33c:	8b ce                	mov    %esi,%ecx
40b33e:	e8 83 ea ff ff       	call   0x409dc6
40b343:	5f                   	pop    %edi
40b344:	5e                   	pop    %esi
40b345:	5b                   	pop    %ebx
40b346:	c9                   	leave
40b347:	c3                   	ret
40b348:	cc                   	int3
40b349:	cc                   	int3
40b34a:	cc                   	int3
40b34b:	cc                   	int3
40b34c:	cc                   	int3
40b34d:	cc                   	int3
40b34e:	cc                   	int3
40b34f:	cc                   	int3
40b350:	8b ff                	mov    %edi,%edi
40b352:	55                   	push   %ebp
40b353:	8b ec                	mov    %esp,%ebp
40b355:	8b 55 08             	mov    0x8(%ebp),%edx
40b358:	8b 81 50 01 00 00    	mov    0x150(%ecx),%eax
40b35e:	83 7a 10 00          	cmpl   $0x0,0x10(%edx)
40b362:	74 18                	je     0x40b37c
40b364:	3b 42 10             	cmp    0x10(%edx),%eax
40b367:	75 26                	jne    0x40b38f
40b369:	33 c0                	xor    %eax,%eax
40b36b:	39 81 58 01 00 00    	cmp    %eax,0x158(%ecx)
40b371:	0f 94 c0             	sete   %al
40b374:	89 81 58 01 00 00    	mov    %eax,0x158(%ecx)
40b37a:	eb 13                	jmp    0x40b38f
40b37c:	85 c0                	test   %eax,%eax
40b37e:	75 0f                	jne    0x40b38f
40b380:	39 81 54 01 00 00    	cmp    %eax,0x154(%ecx)
40b386:	0f 94 c0             	sete   %al
40b389:	89 81 54 01 00 00    	mov    %eax,0x154(%ecx)
40b38f:	8b 42 10             	mov    0x10(%edx),%eax
40b392:	8b 91 84 01 00 00    	mov    0x184(%ecx),%edx
40b398:	89 81 50 01 00 00    	mov    %eax,0x150(%ecx)
40b39e:	85 c0                	test   %eax,%eax
40b3a0:	74 07                	je     0x40b3a9
40b3a2:	68 50 ab 40 00       	push   $0x40ab50
40b3a7:	eb 05                	jmp    0x40b3ae
40b3a9:	68 d0 ab 40 00       	push   $0x40abd0
40b3ae:	51                   	push   %ecx
40b3af:	68 30 10 00 00       	push   $0x1030
40b3b4:	52                   	push   %edx
40b3b5:	ff 15 40 34 42 00    	call   *0x423440
40b3bb:	8b 45 0c             	mov    0xc(%ebp),%eax
40b3be:	83 20 00             	andl   $0x0,(%eax)
40b3c1:	5d                   	pop    %ebp
40b3c2:	c2 08 00             	ret    $0x8
40b3c5:	8b ff                	mov    %edi,%edi
40b3c7:	55                   	push   %ebp
40b3c8:	8b ec                	mov    %esp,%ebp
40b3ca:	6a ff                	push   $0xffffffff
40b3cc:	68 73 ce 41 00       	push   $0x41ce73
40b3d1:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40b3d7:	50                   	push   %eax
40b3d8:	51                   	push   %ecx
40b3d9:	a1 e4 05 42 00       	mov    0x4205e4,%eax
40b3de:	33 c5                	xor    %ebp,%eax
40b3e0:	50                   	push   %eax
40b3e1:	8d 45 f4             	lea    -0xc(%ebp),%eax
40b3e4:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0