40aaf7:	5e                   	pop    %esi
40aaf8:	5b                   	pop    %ebx
40aaf9:	8b e5                	mov    %ebp,%esp
40aafb:	5d                   	pop    %ebp
40aafc:	c3                   	ret
40aafd:	90                   	nop
40aafe:	94                   	xchg   %eax,%esp
40aaff:	a8 40                	test   $0x40,%al
40ab01:	00 ae a8 40 00 d3    	add    %ch,-0x2cffbf58(%esi)
40ab07:	a8 40                	test   $0x40,%al
40ab09:	00 e3                	add    %ah,%bl
40ab0b:	a8 40                	test   $0x40,%al
40ab0d:	00 0f                	add    %cl,(%edi)
40ab0f:	a9 40 00 1e a9       	test   $0xa91e0040,%eax
40ab14:	40                   	inc    %eax
40ab15:	00 2d a9 40 00 49    	add    %ch,0x490040a9
40ab1b:	a9 40 00 00 a9       	test   $0xa9000040,%eax
40ab20:	40                   	inc    %eax
40ab21:	00 9b a9 40 00 a5    	add    %bl,-0x5affbf57(%ebx)
40ab27:	a9 40 00 e1 a9       	test   $0xa9e10040,%eax
40ab2c:	40                   	inc    %eax
40ab2d:	00 f0                	add    %dh,%al
40ab2f:	a9 40 00 ff a9       	test   $0xa9ff0040,%eax
40ab34:	40                   	inc    %eax
40ab35:	00 0e                	add    %cl,(%esi)
40ab37:	aa                   	stos   %al,%es:(%edi)
40ab38:	40                   	inc    %eax
40ab39:	00 1a                	add    %bl,(%edx)
40ab3b:	aa                   	stos   %al,%es:(%edi)
40ab3c:	40                   	inc    %eax
40ab3d:	00 3f                	add    %bh,(%edi)
40ab3f:	aa                   	stos   %al,%es:(%edi)
40ab40:	40                   	inc    %eax
40ab41:	00 68 aa             	add    %ch,-0x56(%eax)
40ab44:	40                   	inc    %eax
40ab45:	00 4b aa             	add    %cl,-0x56(%ebx)
40ab48:	40                   	inc    %eax
40ab49:	00 77 aa             	add    %dh,-0x56(%edi)
40ab4c:	40                   	inc    %eax
40ab4d:	00 8b ff 55 8b ec    	add    %cl,-0x1374aa01(%ebx)
40ab53:	83 e4 f8             	and    $0xfffffff8,%esp
40ab56:	51                   	push   %ecx
40ab57:	53                   	push   %ebx
40ab58:	56                   	push   %esi
40ab59:	57                   	push   %edi
40ab5a:	8b f9                	mov    %ecx,%edi
40ab5c:	be 08 52 41 00       	mov    $0x415208,%esi
40ab61:	33 db                	xor    %ebx,%ebx
40ab63:	a1 80 93 41 00       	mov    0x419380,%eax
40ab68:	85 46 08             	test   %eax,0x8(%esi)
40ab6b:	0f 84 83 01 00 00    	je     0x40acf4
40ab71:	8b 46 d8             	mov    -0x28(%esi),%eax
40ab74:	83 f8 13             	cmp    $0x13,%eax
40ab77:	0f 87 77 01 00 00    	ja     0x40acf4
40ab7d:	ff 24 85 26 ad 40 00 	jmp    *0x40ad26(,%eax,4)
40ab84:	ff 36                	push   (%esi)
40ab86:	68 26 01 00 00       	push   $0x126
40ab8b:	e9 5f 01 00 00       	jmp    0x40acef
40ab90:	8b 06                	mov    (%esi),%eax
40ab92:	f7 d8                	neg    %eax
40ab94:	1b c0                	sbb    %eax,%eax
40ab96:	83 e0 02             	and    $0x2,%eax
40ab99:	50                   	push   %eax
40ab9a:	eb ea                	jmp    0x40ab86
40ab9c:	ff 36                	push   (%esi)
40ab9e:	68 27 01 00 00       	push   $0x127
40aba3:	e9 47 01 00 00       	jmp    0x40acef
40aba8:	33 c0                	xor    %eax,%eax
40abaa:	39 1e                	cmp    %ebx,(%esi)
40abac:	0f 95 c0             	setne  %al
40abaf:	40                   	inc    %eax
40abb0:	50                   	push   %eax
40abb1:	eb eb                	jmp    0x40ab9e
40abb3:	33 c0                	xor    %eax,%eax
40abb5:	39 1e                	cmp    %ebx,(%esi)
40abb7:	0f 94 c0             	sete   %al
40abba:	50                   	push   %eax
40abbb:	68 35 01 00 00       	push   $0x135
40abc0:	e9 2a 01 00 00       	jmp    0x40acef
40abc5:	33 c0                	xor    %eax,%eax
40abc7:	39 1e                	cmp    %ebx,(%esi)
40abc9:	0f 94 c0             	sete   %al
40abcc:	50                   	push   %eax
40abcd:	68 28 01 00 00       	push   $0x128
40abd2:	e9 18 01 00 00       	jmp    0x40acef
40abd7:	33 c0                	xor    %eax,%eax
40abd9:	39 1e                	cmp    %ebx,(%esi)
40abdb:	0f 94 c0             	sete   %al
40abde:	50                   	push   %eax
40abdf:	68 2a 01 00 00       	push   $0x12a
40abe4:	e9 06 01 00 00       	jmp    0x40acef
40abe9:	33 c0                	xor    %eax,%eax
40abeb:	8d 8f f0 03 00 00    	lea    0x3f0(%edi),%ecx
40abf1:	39 1e                	cmp    %ebx,(%esi)
40abf3:	0f 94 c0             	sete   %al
40abf6:	89 01                	mov    %eax,(%ecx)
40abf8:	e8 67 d4 ff ff       	call   0x408064
40abfd:	e9 f2 00 00 00       	jmp    0x40acf4
40ac02:	33 c0                	xor    %eax,%eax
40ac04:	83 3e 01             	cmpl   $0x1,(%esi)
40ac07:	0f 94 c0             	sete   %al
40ac0a:	50                   	push   %eax
40ac0b:	68 1b 01 00 00       	push   $0x11b
40ac10:	e8 e6 81 00 00       	call   0x412dfb
40ac15:	8d 4f 18             	lea    0x18(%edi),%ecx
40ac18:	e8 78 d3 ff ff       	call   0x407f95
40ac1d:	e9 d2 00 00 00       	jmp    0x40acf4
40ac22:	8b 0e                	mov    (%esi),%ecx
40ac24:	e8 fc d4 ff ff       	call   0x408125
40ac29:	e9 c6 00 00 00       	jmp    0x40acf4
40ac2e:	ff 36                	push   (%esi)
40ac30:	68 3a 01 00 00       	push   $0x13a
40ac35:	e8 c1 81 00 00       	call   0x412dfb
40ac3a:	ff 36                	push   (%esi)
40ac3c:	68 58 01 00 00       	push   $0x158
40ac41:	e9 a9 00 00 00       	jmp    0x40acef
40ac46:	33 c0                	xor    %eax,%eax
40ac48:	39 1e                	cmp    %ebx,(%esi)
40ac4a:	0f 94 c0             	sete   %al
40ac4d:	50                   	push   %eax
40ac4e:	68 2b 01 00 00       	push   $0x12b
40ac53:	e9 97 00 00 00       	jmp    0x40acef
40ac58:	33 c0                	xor    %eax,%eax
40ac5a:	39 1e                	cmp    %ebx,(%esi)
40ac5c:	0f 94 c0             	sete   %al
40ac5f:	50                   	push   %eax
40ac60:	68 1a 01 00 00       	push   $0x11a
40ac65:	e9 85 00 00 00       	jmp    0x40acef
40ac6a:	ff 36                	push   (%esi)
40ac6c:	68 2c 01 00 00       	push   $0x12c
40ac71:	eb 7c                	jmp    0x40acef
40ac73:	33 c0                	xor    %eax,%eax
40ac75:	39 1e                	cmp    %ebx,(%esi)
40ac77:	0f 94 c0             	sete   %al
40ac7a:	50                   	push   %eax
40ac7b:	68 20 01 00 00       	push   $0x120
40ac80:	eb 6d                	jmp    0x40acef
40ac82:	ff 36                	push   (%esi)
40ac84:	68 37 01 00 00       	push   $0x137
40ac89:	e8 6d 81 00 00       	call   0x412dfb
40ac8e:	ff 36                	push   (%esi)
40ac90:	68 57 01 00 00       	push   $0x157
40ac95:	eb 58                	jmp    0x40acef
40ac97:	33 c0                	xor    %eax,%eax
40ac99:	39 1e                	cmp    %ebx,(%esi)
40ac9b:	0f 94 c0             	sete   %al
40ac9e:	50                   	push   %eax
40ac9f:	68 38 01 00 00       	push   $0x138
40aca4:	eb 49                	jmp    0x40acef
40aca6:	39 5e 0c             	cmp    %ebx,0xc(%esi)
40aca9:	74 22                	je     0x40accd
40acab:	a1 18 98 41 00       	mov    0x419818,%eax
40acb0:	3d 22 00 10 00       	cmp    $0x100022,%eax
40acb5:	74 0e                	je     0x40acc5
40acb7:	3d 23 00 10 00       	cmp    $0x100023,%eax
40acbc:	74 07                	je     0x40acc5
40acbe:	3d 24 00 10 00       	cmp    $0x100024,%eax
40acc3:	75 08                	jne    0x40accd
40acc5:	53                   	push   %ebx
40acc6:	68 39 01 00 00       	push   $0x139
40accb:	eb 22                	jmp    0x40acef
40accd:	ff 36                	push   (%esi)
40accf:	68 39 01 00 00       	push   $0x139
40acd4:	e8 22 81 00 00       	call   0x412dfb
40acd9:	ff 36                	push   (%esi)
40acdb:	68 59 01 00 00       	push   $0x159
40ace0:	eb 0d                	jmp    0x40acef
40ace2:	33 c0                	xor    %eax,%eax
40ace4:	39 1e                	cmp    %ebx,(%esi)
40ace6:	0f 94 c0             	sete   %al
40ace9:	50                   	push   %eax
40acea:	68 21 01 00 00       	push   $0x121
40acef:	e8 07 81 00 00       	call   0x412dfb
40acf4:	83 c6 3c             	add    $0x3c,%esi
40acf7:	81 fe b8 56 41 00    	cmp    $0x4156b8,%esi
40acfd:	0f 8c 60 fe ff ff    	jl     0x40ab63
40ad03:	39 5f 14             	cmp    %ebx,0x14(%edi)
40ad06:	75 17                	jne    0x40ad1f
40ad08:	33 c0                	xor    %eax,%eax
40ad0a:	83 3d ac 53 41 00 02 	cmpl   $0x2,0x4153ac
40ad11:	0f 94 c0             	sete   %al
40ad14:	50                   	push   %eax
40ad15:	68 08 01 00 00       	push   $0x108
40ad1a:	e8 dc 80 00 00       	call   0x412dfb
40ad1f:	5f                   	pop    %edi
40ad20:	5e                   	pop    %esi
40ad21:	5b                   	pop    %ebx
40ad22:	8b e5                	mov    %ebp,%esp
40ad24:	5d                   	pop    %ebp
40ad25:	c3                   	ret
40ad26:	84 ab 40 00 90 ab    	test   %ch,-0x546fffc0(%ebx)
40ad2c:	40                   	inc    %eax
40ad2d:	00 9c ab 40 00 a8 ab 	add    %bl,-0x5457ffc0(%ebx,%ebp,4)
40ad34:	40                   	inc    %eax
40ad35:	00 c5                	add    %al,%ch
40ad37:	ab                   	stos   %eax,%es:(%edi)
40ad38:	40                   	inc    %eax
40ad39:	00 d7                	add    %dl,%bh
40ad3b:	ab                   	stos   %eax,%es:(%edi)
40ad3c:	40                   	inc    %eax
40ad3d:	00 e9                	add    %ch,%cl
40ad3f:	ab                   	stos   %eax,%es:(%edi)
40ad40:	40                   	inc    %eax
40ad41:	00 02                	add    %al,(%edx)
40ad43:	ac                   	lods   %ds:(%esi),%al
40ad44:	40                   	inc    %eax
40ad45:	00 b3 ab 40 00 22    	add    %dh,0x220040ab(%ebx)
40ad4b:	ac                   	lods   %ds:(%esi),%al
40ad4c:	40                   	inc    %eax
40ad4d:	00 2e                	add    %ch,(%esi)
40ad4f:	ac                   	lods   %ds:(%esi),%al
40ad50:	40                   	inc    %eax
40ad51:	00 46 ac             	add    %al,-0x54(%esi)
40ad54:	40                   	inc    %eax
40ad55:	00 58 ac             	add    %bl,-0x54(%eax)
40ad58:	40                   	inc    %eax
40ad59:	00 6a ac             	add    %ch,-0x54(%edx)
40ad5c:	40                   	inc    %eax
40ad5d:	00 73 ac             	add    %dh,-0x54(%ebx)
40ad60:	40                   	inc    %eax
40ad61:	00 82 ac 40 00 97    	add    %al,-0x68ffbf54(%edx)
40ad67:	ac                   	lods   %ds:(%esi),%al
40ad68:	40                   	inc    %eax
40ad69:	00 a6 ac 40 00 cd    	add    %ah,-0x32ffbf54(%esi)
40ad6f:	ac                   	lods   %ds:(%esi),%al
40ad70:	40                   	inc    %eax
40ad71:	00 e2                	add    %ah,%dl
40ad73:	ac                   	lods   %ds:(%esi),%al
40ad74:	40                   	inc    %eax
40ad75:	00 8b ff 55 8b ec    	add    %cl,-0x1374aa01(%ebx)
40ad7b:	51                   	push   %ecx
40ad7c:	56                   	push   %esi
40ad7d:	57                   	push   %edi
40ad7e:	ff 75 0c             	push   0xc(%ebp)
40ad81:	33 ff                	xor    %edi,%edi
40ad83:	ff 71 04             	push   0x4(%ecx)
40ad86:	89 7d fc             	mov    %edi,-0x4(%ebp)
40ad89:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40ad8f:	8b f0                	mov    %eax,%esi
40ad91:	85 f6                	test   %esi,%esi
40ad93:	74 4e                	je     0x40ade3
40ad95:	8b 4d 08             	mov    0x8(%ebp),%ecx
40ad98:	85 c9                	test   %ecx,%ecx
40ad9a:	74 37                	je     0x40add3
40ad9c:	8d 55 fc             	lea    -0x4(%ebp),%edx
40ad9f:	e8 41 4c 00 00       	call   0x40f9e5
40ada4:	85 c0                	test   %eax,%eax
40ada6:	74 3b                	je     0x40ade3
40ada8:	8b 7d fc             	mov    -0x4(%ebp),%edi
40adab:	85 ff                	test   %edi,%edi
40adad:	74 34                	je     0x40ade3
40adaf:	57                   	push   %edi
40adb0:	56                   	push   %esi
40adb1:	ff 15 50 b2 41 00    	call   *0x41b250
40adb7:	6a 01                	push   $0x1
40adb9:	56                   	push   %esi
40adba:	ff 15 dc b1 41 00    	call   *0x41b1dc
40adc0:	6a 05                	push   $0x5
40adc2:	56                   	push   %esi
40adc3:	ff 15 34 b2 41 00    	call   *0x41b234
40adc9:	57                   	push   %edi
40adca:	ff 15 24 b3 41 00    	call   *0x41b324
40add0:	59                   	pop    %ecx
40add1:	eb 10                	jmp    0x40ade3
40add3:	57                   	push   %edi
40add4:	56                   	push   %esi
40add5:	ff 15 dc b1 41 00    	call   *0x41b1dc
40addb:	57                   	push   %edi
40addc:	56                   	push   %esi
40addd:	ff 15 34 b2 41 00    	call   *0x41b234
40ade3:	5f                   	pop    %edi
40ade4:	5e                   	pop    %esi
40ade5:	c9                   	leave
40ade6:	c2 08 00             	ret    $0x8
40ade9:	8b ff                	mov    %edi,%edi
40adeb:	55                   	push   %ebp
40adec:	8b ec                	mov    %esp,%ebp
40adee:	83 ec 5c             	sub    $0x5c,%esp
40adf1:	8b 45 08             	mov    0x8(%ebp),%eax
40adf4:	53                   	push   %ebx
40adf5:	33 db                	xor    %ebx,%ebx
40adf7:	c7 45 a4 04 00 00 00 	movl   $0x4,-0x5c(%ebp)
40adfe:	56                   	push   %esi
40adff:	8b f1                	mov    %ecx,%esi
40ae01:	83 f8 ff             	cmp    $0xffffffff,%eax
40ae04:	75 10                	jne    0x40ae16
40ae06:	53                   	push   %ebx
40ae07:	53                   	push   %ebx
40ae08:	68 42 10 00 00       	push   $0x1042
40ae0d:	ff 76 0c             	push   0xc(%esi)
40ae10:	ff 15 d8 b1 41 00    	call   *0x41b1d8
40ae16:	89 45 a8             	mov    %eax,-0x58(%ebp)
40ae19:	89 5d ac             	mov    %ebx,-0x54(%ebp)
40ae1c:	83 f8 ff             	cmp    $0xffffffff,%eax
40ae1f:	0f 84 18 06 00 00    	je     0x40b43d
40ae25:	8d 45 a4             	lea    -0x5c(%ebp),%eax
40ae28:	50                   	push   %eax
40ae29:	53                   	push   %ebx
40ae2a:	68 4b 10 00 00       	push   $0x104b
40ae2f:	ff 76 0c             	push   0xc(%esi)
40ae32:	ff 15 d8 b1 41 00    	call   *0x41b1d8
40ae38:	85 c0                	test   %eax,%eax
40ae3a:	0f 84 fd 05 00 00    	je     0x40b43d
40ae40:	57                   	push   %edi
40ae41:	8b 7d c4             	mov    -0x3c(%ebp),%edi
40ae44:	68 02 04 00 00       	push   $0x402
40ae49:	ff 76 04             	push   0x4(%esi)
40ae4c:	89 7d fc             	mov    %edi,-0x4(%ebp)
40ae4f:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40ae55:	68 59 04 00 00       	push   $0x459
40ae5a:	ff 76 04             	push   0x4(%esi)
40ae5d:	89 45 e8             	mov    %eax,-0x18(%ebp)
40ae60:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40ae66:	68 5a 04 00 00       	push   $0x45a
40ae6b:	ff 76 04             	push   0x4(%esi)
40ae6e:	8b d8                	mov    %eax,%ebx
40ae70:	ff 15 d0 b1 41 00    	call   *0x41b1d0
40ae76:	6b ff 3c             	imul   $0x3c,%edi,%edi
40ae79:	8b ce                	mov    %esi,%ecx
40ae7b:	68 4f 04 00 00       	push   $0x44f
40ae80:	89 45 e4             	mov    %eax,-0x1c(%ebp)
40ae83:	89 7d e0             	mov    %edi,-0x20(%ebp)
40ae86:	ff b7 04 52 41 00    	push   0x415204(%edi)
40ae8c:	e8 e5 fe ff ff       	call   0x40ad76
40ae91:	83 bf 14 52 41 00 00 	cmpl   $0x0,0x415214(%edi)
40ae98:	8b 0d 18 98 41 00    	mov    0x419818,%ecx
40ae9e:	74 20                	je     0x40aec0
40aea0:	81 f9 22 00 10 00    	cmp    $0x100022,%ecx
40aea6:	74 40                	je     0x40aee8
40aea8:	81 f9 23 00 10 00    	cmp    $0x100023,%ecx
40aeae:	74 38                	je     0x40aee8
40aeb0:	81 f9 24 00 10 00    	cmp    $0x100024,%ecx
40aeb6:	74 30                	je     0x40aee8
40aeb8:	81 f9 31 00 00 04    	cmp    $0x4000031,%ecx
40aebe:	74 28                	je     0x40aee8
40aec0:	83 7d fc 04          	cmpl   $0x4,-0x4(%ebp)
40aec4:	75 09                	jne    0x40aecf
40aec6:	83 3d 10 98 41 00 00 	cmpl   $0x0,0x419810
40aecd:	75 19                	jne    0x40aee8
40aecf:	83 bf 18 52 41 00 00 	cmpl   $0x0,0x415218(%edi)
40aed6:	0f 84 93 00 00 00    	je     0x40af6f
40aedc:	81 f9 14 00 02 00    	cmp    $0x20014,%ecx
40aee2:	0f 85 87 00 00 00    	jne    0x40af6f
40aee8:	68 4c 04 00 00       	push   $0x44c
40aeed:	33 ff                	xor    %edi,%edi
40aeef:	8b ce                	mov    %esi,%ecx
40aef1:	57                   	push   %edi
40aef2:	e8 7f fe ff ff       	call   0x40ad76
40aef7:	68 4d 04 00 00       	push   $0x44d
40aefc:	57                   	push   %edi