40ad2f:	ff 15 44 34 42 00    	call   *0x423444
40ad35:	50                   	push   %eax
40ad36:	57                   	push   %edi
40ad37:	68 26 10 00 00       	push   $0x1026
40ad3c:	ff b6 04 02 00 00    	push   0x204(%esi)
40ad42:	ff 15 40 34 42 00    	call   *0x423440
40ad48:	8b ce                	mov    %esi,%ecx
40ad4a:	e8 a0 f0 ff ff       	call   0x409def
40ad4f:	8b ce                	mov    %esi,%ecx
40ad51:	e8 03 f2 ff ff       	call   0x409f59
40ad56:	8b ce                	mov    %esi,%ecx
40ad58:	e8 ba fe ff ff       	call   0x40ac17
40ad5d:	57                   	push   %edi
40ad5e:	57                   	push   %edi
40ad5f:	68 04 10 00 00       	push   $0x1004
40ad64:	ff b6 04 02 00 00    	push   0x204(%esi)
40ad6a:	ff 15 40 34 42 00    	call   *0x423440
40ad70:	85 c0                	test   %eax,%eax
40ad72:	7e 11                	jle    0x40ad85
40ad74:	6a 03                	push   $0x3
40ad76:	6a 03                	push   $0x3
40ad78:	57                   	push   %edi
40ad79:	8d 8e e4 01 00 00    	lea    0x1e4(%esi),%ecx
40ad7f:	ff 15 88 33 42 00    	call   *0x423388
40ad85:	8d 8e a4 01 00 00    	lea    0x1a4(%esi),%ecx
40ad8b:	ba 9f 00 00 00       	mov    $0x9f,%edx
40ad90:	e8 b9 3e 00 00       	call   0x40ec4e
40ad95:	57                   	push   %edi
40ad96:	68 88 13 00 00       	push   $0x1388
40ad9b:	68 34 12 00 00       	push   $0x1234
40ada0:	ff 76 20             	push   0x20(%esi)
40ada3:	ff 15 48 34 42 00    	call   *0x423448
40ada9:	89 86 5c 01 00 00    	mov    %eax,0x15c(%esi)
40adaf:	33 c0                	xor    %eax,%eax
40adb1:	5f                   	pop    %edi
40adb2:	40                   	inc    %eax
40adb3:	5e                   	pop    %esi
40adb4:	c3                   	ret
40adb5:	cc                   	int3
40adb6:	cc                   	int3
40adb7:	cc                   	int3
40adb8:	cc                   	int3
40adb9:	cc                   	int3
40adba:	cc                   	int3
40adbb:	cc                   	int3
40adbc:	cc                   	int3
40adbd:	cc                   	int3
40adbe:	cc                   	int3
40adbf:	cc                   	int3
40adc0:	8b ff                	mov    %edi,%edi
40adc2:	55                   	push   %ebp
40adc3:	8b ec                	mov    %esp,%ebp
40adc5:	8b 55 08             	mov    0x8(%ebp),%edx
40adc8:	8b 81 44 01 00 00    	mov    0x144(%ecx),%eax
40adce:	83 7a 10 00          	cmpl   $0x0,0x10(%edx)
40add2:	74 18                	je     0x40adec
40add4:	3b 42 10             	cmp    0x10(%edx),%eax
40add7:	75 26                	jne    0x40adff
40add9:	33 c0                	xor    %eax,%eax
40addb:	39 81 4c 01 00 00    	cmp    %eax,0x14c(%ecx)
40ade1:	0f 94 c0             	sete   %al
40ade4:	89 81 4c 01 00 00    	mov    %eax,0x14c(%ecx)
40adea:	eb 13                	jmp    0x40adff
40adec:	85 c0                	test   %eax,%eax
40adee:	75 0f                	jne    0x40adff
40adf0:	39 81 48 01 00 00    	cmp    %eax,0x148(%ecx)
40adf6:	0f 94 c0             	sete   %al
40adf9:	89 81 48 01 00 00    	mov    %eax,0x148(%ecx)
40adff:	8b 42 10             	mov    0x10(%edx),%eax
40ae02:	89 81 44 01 00 00    	mov    %eax,0x144(%ecx)
40ae08:	e8 0a fe ff ff       	call   0x40ac17
40ae0d:	8b 45 0c             	mov    0xc(%ebp),%eax
40ae10:	83 20 00             	andl   $0x0,(%eax)
40ae13:	5d                   	pop    %ebp
40ae14:	c2 08 00             	ret    $0x8
40ae17:	cc                   	int3
40ae18:	cc                   	int3
40ae19:	cc                   	int3
40ae1a:	cc                   	int3
40ae1b:	cc                   	int3
40ae1c:	cc                   	int3
40ae1d:	cc                   	int3
40ae1e:	cc                   	int3
40ae1f:	cc                   	int3
40ae20:	8b ff                	mov    %edi,%edi
40ae22:	55                   	push   %ebp
40ae23:	8b ec                	mov    %esp,%ebp
40ae25:	56                   	push   %esi
40ae26:	8b f1                	mov    %ecx,%esi
40ae28:	83 be 60 01 00 00 01 	cmpl   $0x1,0x160(%esi)
40ae2f:	74 20                	je     0x40ae51
40ae31:	81 7d 08 34 12 00 00 	cmpl   $0x1234,0x8(%ebp)
40ae38:	75 17                	jne    0x40ae51
40ae3a:	8b 8e 90 00 00 00    	mov    0x90(%esi),%ecx
40ae40:	ff 15 f8 32 42 00    	call   *0x4232f8
40ae46:	3b c6                	cmp    %esi,%eax
40ae48:	75 07                	jne    0x40ae51
40ae4a:	8b ce                	mov    %esi,%ecx
40ae4c:	e8 75 ef ff ff       	call   0x409dc6
40ae51:	8b ce                	mov    %esi,%ecx
40ae53:	ff 15 58 31 42 00    	call   *0x423158
40ae59:	5e                   	pop    %esi
40ae5a:	5d                   	pop    %ebp
40ae5b:	c2 04 00             	ret    $0x4
40ae5e:	cc                   	int3
40ae5f:	cc                   	int3
40ae60:	8b ff                	mov    %edi,%edi
40ae62:	56                   	push   %esi
40ae63:	57                   	push   %edi
40ae64:	8b f9                	mov    %ecx,%edi
40ae66:	8b 07                	mov    (%edi),%eax
40ae68:	8b b0 f8 00 00 00    	mov    0xf8(%eax),%esi
40ae6e:	8b ce                	mov    %esi,%ecx
40ae70:	ff 15 f0 35 42 00    	call   *0x4235f0
40ae76:	8b cf                	mov    %edi,%ecx
40ae78:	ff d6                	call   *%esi
40ae7a:	50                   	push   %eax
40ae7b:	ff 35 2c 1c 42 00    	push   0x421c2c
40ae81:	b9 24 1c 42 00       	mov    $0x421c24,%ecx
40ae86:	ff 15 28 31 42 00    	call   *0x423128
40ae8c:	5f                   	pop    %edi
40ae8d:	b8 61 02 00 00       	mov    $0x261,%eax
40ae92:	5e                   	pop    %esi
40ae93:	c3                   	ret
40ae94:	cc                   	int3
40ae95:	cc                   	int3
40ae96:	cc                   	int3
40ae97:	cc                   	int3
40ae98:	cc                   	int3
40ae99:	cc                   	int3
40ae9a:	cc                   	int3
40ae9b:	cc                   	int3
40ae9c:	cc                   	int3
40ae9d:	cc                   	int3
40ae9e:	cc                   	int3
40ae9f:	cc                   	int3
40aea0:	68 a0 00 00 00       	push   $0xa0
40aea5:	b8 4f cd 41 00       	mov    $0x41cd4f,%eax
40aeaa:	e8 89 15 01 00       	call   0x41c438
40aeaf:	8b f1                	mov    %ecx,%esi
40aeb1:	6a 00                	push   $0x0
40aeb3:	68 8b 00 00 00       	push   $0x8b
40aeb8:	8d 8d 54 ff ff ff    	lea    -0xac(%ebp),%ecx
40aebe:	ff 15 08 31 42 00    	call   *0x423108
40aec4:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
40aec8:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
40aecb:	c7 85 54 ff ff ff b0 	movl   $0x4028b0,-0xac(%ebp)
40aed2:	28 40 00
40aed5:	e8 08 c6 ff ff       	call   0x4074e2
40aeda:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
40aee1:	8d 8d 54 ff ff ff    	lea    -0xac(%ebp),%ecx
40aee7:	ff 15 ac 33 42 00    	call   *0x4233ac
40aeed:	83 f8 01             	cmp    $0x1,%eax
40aef0:	75 07                	jne    0x40aef9
40aef2:	8b ce                	mov    %esi,%ecx
40aef4:	e8 cd ee ff ff       	call   0x409dc6
40aef9:	c7 45 fc 03 00 00 00 	movl   $0x3,-0x4(%ebp)
40af00:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
40af03:	ff 15 6c 33 42 00    	call   *0x42336c
40af09:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
40af0d:	8d 8d 54 ff ff ff    	lea    -0xac(%ebp),%ecx
40af13:	ff 15 54 31 42 00    	call   *0x423154
40af19:	e8 e8 14 01 00       	call   0x41c406
40af1e:	c3                   	ret
40af1f:	8b ff                	mov    %edi,%edi
40af21:	55                   	push   %ebp
40af22:	8b ec                	mov    %esp,%ebp
40af24:	6a ff                	push   $0xffffffff
40af26:	68 82 cd 41 00       	push   $0x41cd82
40af2b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
40af31:	50                   	push   %eax
40af32:	51                   	push   %ecx
40af33:	56                   	push   %esi
40af34:	a1 e4 05 42 00       	mov    0x4205e4,%eax
40af39:	33 c5                	xor    %ebp,%eax
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