45ae77:	50                   	push   %eax
45ae78:	e8 9f ba fa ff       	call   0x40691c
45ae7d:	89 45 f8             	mov    %eax,-0x8(%ebp)
45ae80:	eb 10                	jmp    0x45ae92
45ae82:	c7 45 f8 ff ff ff ff 	movl   $0xffffffff,-0x8(%ebp)
45ae89:	eb 07                	jmp    0x45ae92
45ae8b:	0f b7 46 04          	movzwl 0x4(%esi),%eax
45ae8f:	89 45 f8             	mov    %eax,-0x8(%ebp)
45ae92:	8b d7                	mov    %edi,%edx
45ae94:	8b 45 fc             	mov    -0x4(%ebp),%eax
45ae97:	e8 e8 d8 fb ff       	call   0x418784
45ae9c:	8a 4d f3             	mov    -0xd(%ebp),%cl
45ae9f:	8b 55 f8             	mov    -0x8(%ebp),%edx
45aea2:	e8 c5 f1 ff ff       	call   0x45a06c
45aea7:	89 45 f4             	mov    %eax,-0xc(%ebp)
45aeaa:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
45aeae:	74 22                	je     0x45aed2
45aeb0:	8d 55 d0             	lea    -0x30(%ebp),%edx
45aeb3:	8b 45 f4             	mov    -0xc(%ebp),%eax
45aeb6:	8b 40 58             	mov    0x58(%eax),%eax
45aeb9:	e8 62 8e fe ff       	call   0x443d20
45aebe:	8b 55 d0             	mov    -0x30(%ebp),%edx
45aec1:	a1 74 47 47 00       	mov    0x474774,%eax
45aec6:	8b 00                	mov    (%eax),%eax
45aec8:	e8 57 c2 00 00       	call   0x467124
45aecd:	e9 c7 03 00 00       	jmp    0x45b299
45aed2:	47                   	inc    %edi
45aed3:	4b                   	dec    %ebx
45aed4:	75 8f                	jne    0x45ae65
45aed6:	a1 74 47 47 00       	mov    0x474774,%eax
45aedb:	8b 00                	mov    (%eax),%eax
45aedd:	33 d2                	xor    %edx,%edx
45aedf:	e8 40 c2 00 00       	call   0x467124
45aee4:	e9 96 03 00 00       	jmp    0x45b27f
45aee9:	8b 46 08             	mov    0x8(%esi),%eax
45aeec:	89 45 e0             	mov    %eax,-0x20(%ebp)
45aeef:	8b 45 fc             	mov    -0x4(%ebp),%eax
45aef2:	8b 58 08             	mov    0x8(%eax),%ebx
45aef5:	4b                   	dec    %ebx
45aef6:	85 db                	test   %ebx,%ebx
45aef8:	0f 8c 81 03 00 00    	jl     0x45b27f
45aefe:	43                   	inc    %ebx
45aeff:	33 ff                	xor    %edi,%edi
45af01:	8b d7                	mov    %edi,%edx
45af03:	8b 45 fc             	mov    -0x4(%ebp),%eax
45af06:	e8 79 d8 fb ff       	call   0x418784
45af0b:	8b 10                	mov    (%eax),%edx
45af0d:	ff 52 34             	call   *0x34(%edx)
45af10:	8b 55 e0             	mov    -0x20(%ebp),%edx
45af13:	3b 42 0c             	cmp    0xc(%edx),%eax
45af16:	75 12                	jne    0x45af2a
45af18:	8b d7                	mov    %edi,%edx
45af1a:	8b 45 fc             	mov    -0x4(%ebp),%eax
45af1d:	e8 62 d8 fb ff       	call   0x418784
45af22:	8b 40 34             	mov    0x34(%eax),%eax
45af25:	89 45 f4             	mov    %eax,-0xc(%ebp)
45af28:	eb 1a                	jmp    0x45af44
45af2a:	8b d7                	mov    %edi,%edx
45af2c:	8b 45 fc             	mov    -0x4(%ebp),%eax
45af2f:	e8 50 d8 fb ff       	call   0x418784
45af34:	8b 55 e0             	mov    -0x20(%ebp),%edx
45af37:	8b 52 0c             	mov    0xc(%edx),%edx
45af3a:	b1 01                	mov    $0x1,%cl
45af3c:	e8 2b f1 ff ff       	call   0x45a06c
45af41:	89 45 f4             	mov    %eax,-0xc(%ebp)
45af44:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
45af48:	0f 84 90 00 00 00    	je     0x45afde
45af4e:	8b d7                	mov    %edi,%edx
45af50:	8b 45 fc             	mov    -0x4(%ebp),%eax
45af53:	e8 2c d8 fb ff       	call   0x418784
45af58:	8b 55 e0             	mov    -0x20(%ebp),%edx
45af5b:	8b 52 08             	mov    0x8(%edx),%edx
45af5e:	b1 01                	mov    $0x1,%cl
45af60:	e8 37 f1 ff ff       	call   0x45a09c
45af65:	85 c0                	test   %eax,%eax
45af67:	75 17                	jne    0x45af80
45af69:	8b d7                	mov    %edi,%edx
45af6b:	8b 45 fc             	mov    -0x4(%ebp),%eax
45af6e:	e8 11 d8 fb ff       	call   0x418784
45af73:	8b 55 e0             	mov    -0x20(%ebp),%edx
45af76:	8b 52 0c             	mov    0xc(%edx),%edx
45af79:	33 c9                	xor    %ecx,%ecx
45af7b:	e8 1c f1 ff ff       	call   0x45a09c
45af80:	8b 15 dc 48 47 00    	mov    0x4748dc,%edx
45af86:	8b 12                	mov    (%edx),%edx
45af88:	8b 52 6c             	mov    0x6c(%edx),%edx
45af8b:	85 d2                	test   %edx,%edx
45af8d:	0f 84 06 03 00 00    	je     0x45b299
45af93:	85 c0                	test   %eax,%eax
45af95:	75 0b                	jne    0x45afa2
45af97:	a1 dc 48 47 00       	mov    0x4748dc,%eax
45af9c:	8b 82 58 01 00 00    	mov    0x158(%edx),%eax
45afa2:	8b 0d dc 48 47 00    	mov    0x4748dc,%ecx
45afa8:	f6 82 28 02 00 00 08 	testb  $0x8,0x228(%edx)
45afaf:	74 1a                	je     0x45afcb
45afb1:	8b 15 74 47 47 00    	mov    0x474774,%edx
45afb7:	8b 12                	mov    (%edx),%edx
45afb9:	8b c8                	mov    %eax,%ecx
45afbb:	b8 08 00 00 00       	mov    $0x8,%eax
45afc0:	92                   	xchg   %eax,%edx
45afc1:	e8 6a be 00 00       	call   0x466e30
45afc6:	e9 ce 02 00 00       	jmp    0x45b299
45afcb:	8b 15 74 47 47 00    	mov    0x474774,%edx
45afd1:	8b 12                	mov    (%edx),%edx
45afd3:	92                   	xchg   %eax,%edx
45afd4:	e8 ef bd 00 00       	call   0x466dc8
45afd9:	e9 bb 02 00 00       	jmp    0x45b299
45afde:	47                   	inc    %edi
45afdf:	4b                   	dec    %ebx
45afe0:	0f 85 1b ff ff ff    	jne    0x45af01
45afe6:	e9 94 02 00 00       	jmp    0x45b27f
45afeb:	8b 46 08             	mov    0x8(%esi),%eax
45afee:	89 45 dc             	mov    %eax,-0x24(%ebp)
45aff1:	8b 45 fc             	mov    -0x4(%ebp),%eax
45aff4:	8b 58 08             	mov    0x8(%eax),%ebx
45aff7:	4b                   	dec    %ebx
45aff8:	85 db                	test   %ebx,%ebx
45affa:	0f 8c 7f 02 00 00    	jl     0x45b27f
45b000:	43                   	inc    %ebx
45b001:	33 ff                	xor    %edi,%edi
45b003:	8b d7                	mov    %edi,%edx
45b005:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b008:	e8 77 d7 fb ff       	call   0x418784
45b00d:	8b 55 dc             	mov    -0x24(%ebp),%edx
45b010:	8b 52 08             	mov    0x8(%edx),%edx
45b013:	33 c9                	xor    %ecx,%ecx
45b015:	e8 52 f0 ff ff       	call   0x45a06c
45b01a:	89 45 f4             	mov    %eax,-0xc(%ebp)
45b01d:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
45b021:	0f 84 c2 00 00 00    	je     0x45b0e9
45b027:	b2 01                	mov    $0x1,%dl
45b029:	a1 ec 19 44 00       	mov    0x4419ec,%eax
45b02e:	e8 2d 97 fc ff       	call   0x424760
45b033:	89 45 ec             	mov    %eax,-0x14(%ebp)
45b036:	33 c0                	xor    %eax,%eax
45b038:	55                   	push   %ebp
45b039:	68 e2 b0 45 00       	push   $0x45b0e2
45b03e:	64 ff 30             	push   %fs:(%eax)
45b041:	64 89 20             	mov    %esp,%fs:(%eax)
45b044:	8b 45 dc             	mov    -0x24(%ebp),%eax
45b047:	8b 40 18             	mov    0x18(%eax),%eax
45b04a:	50                   	push   %eax
45b04b:	e8 fc b5 fa ff       	call   0x40664c
45b050:	89 45 e8             	mov    %eax,-0x18(%ebp)
45b053:	33 c0                	xor    %eax,%eax
45b055:	55                   	push   %ebp
45b056:	68 c5 b0 45 00       	push   $0x45b0c5
45b05b:	64 ff 30             	push   %fs:(%eax)
45b05e:	64 89 20             	mov    %esp,%fs:(%eax)
45b061:	8b 45 dc             	mov    -0x24(%ebp),%eax
45b064:	8b 50 18             	mov    0x18(%eax),%edx
45b067:	8b 45 ec             	mov    -0x14(%ebp),%eax
45b06a:	e8 2d 9d fc ff       	call   0x424d9c
45b06f:	a1 dc 48 47 00       	mov    0x4748dc,%eax
45b074:	8b 00                	mov    (%eax),%eax
45b076:	8b 90 88 00 00 00    	mov    0x88(%eax),%edx
45b07c:	8b 45 ec             	mov    -0x14(%ebp),%eax
45b07f:	e8 b8 9b fc ff       	call   0x424c3c
45b084:	8b 45 dc             	mov    -0x24(%ebp),%eax
45b087:	66 8b 40 10          	mov    0x10(%eax),%ax
45b08b:	50                   	push   %eax
45b08c:	8b 45 dc             	mov    -0x24(%ebp),%eax
45b08f:	8d 48 1c             	lea    0x1c(%eax),%ecx
45b092:	8b 55 ec             	mov    -0x14(%ebp),%edx
45b095:	8b 45 f4             	mov    -0xc(%ebp),%eax
45b098:	e8 b7 04 00 00       	call   0x45b554
45b09d:	33 c0                	xor    %eax,%eax
45b09f:	5a                   	pop    %edx
45b0a0:	59                   	pop    %ecx
45b0a1:	59                   	pop    %ecx
45b0a2:	64 89 10             	mov    %edx,%fs:(%eax)
45b0a5:	68 cc b0 45 00       	push   $0x45b0cc
45b0aa:	33 d2                	xor    %edx,%edx
45b0ac:	8b 45 ec             	mov    -0x14(%ebp),%eax
45b0af:	e8 e8 9c fc ff       	call   0x424d9c
45b0b4:	8b 45 e8             	mov    -0x18(%ebp),%eax
45b0b7:	50                   	push   %eax
45b0b8:	8b 45 dc             	mov    -0x24(%ebp),%eax
45b0bb:	8b 40 18             	mov    0x18(%eax),%eax
45b0be:	50                   	push   %eax
45b0bf:	e8 80 b5 fa ff       	call   0x406644
45b0c4:	c3                   	ret
45b0c5:	e9 8a 89 fa ff       	jmp    0x403a54
45b0ca:	eb de                	jmp    0x45b0aa
45b0cc:	33 c0                	xor    %eax,%eax
45b0ce:	5a                   	pop    %edx
45b0cf:	59                   	pop    %ecx
45b0d0:	59                   	pop    %ecx
45b0d1:	64 89 10             	mov    %edx,%fs:(%eax)
45b0d4:	68 99 b2 45 00       	push   $0x45b299
45b0d9:	8b 45 ec             	mov    -0x14(%ebp),%eax
45b0dc:	e8 df 81 fa ff       	call   0x4032c0
45b0e1:	c3                   	ret
45b0e2:	e9 6d 89 fa ff       	jmp    0x403a54
45b0e7:	eb f0                	jmp    0x45b0d9
45b0e9:	47                   	inc    %edi
45b0ea:	4b                   	dec    %ebx
45b0eb:	0f 85 12 ff ff ff    	jne    0x45b003
45b0f1:	e9 89 01 00 00       	jmp    0x45b27f
45b0f6:	8b 46 08             	mov    0x8(%esi),%eax
45b0f9:	89 45 d8             	mov    %eax,-0x28(%ebp)
45b0fc:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b0ff:	8b 58 08             	mov    0x8(%eax),%ebx
45b102:	4b                   	dec    %ebx
45b103:	85 db                	test   %ebx,%ebx
45b105:	0f 8c 74 01 00 00    	jl     0x45b27f
45b10b:	43                   	inc    %ebx
45b10c:	33 ff                	xor    %edi,%edi
45b10e:	8b d7                	mov    %edi,%edx
45b110:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b113:	e8 6c d6 fb ff       	call   0x418784
45b118:	8b 55 d8             	mov    -0x28(%ebp),%edx
45b11b:	8b 52 08             	mov    0x8(%edx),%edx
45b11e:	33 c9                	xor    %ecx,%ecx
45b120:	e8 47 ef ff ff       	call   0x45a06c
45b125:	89 45 f4             	mov    %eax,-0xc(%ebp)
45b128:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
45b12c:	0f 84 fa 00 00 00    	je     0x45b22c
45b132:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b135:	8b 40 10             	mov    0x10(%eax),%eax
45b138:	50                   	push   %eax
45b139:	e8 16 b8 fa ff       	call   0x406954
45b13e:	89 45 e4             	mov    %eax,-0x1c(%ebp)
45b141:	33 c0                	xor    %eax,%eax
45b143:	55                   	push   %ebp
45b144:	68 25 b2 45 00       	push   $0x45b225
45b149:	64 ff 30             	push   %fs:(%eax)
45b14c:	64 89 20             	mov    %esp,%fs:(%eax)
45b14f:	b2 01                	mov    $0x1,%dl
45b151:	a1 ec 19 44 00       	mov    0x4419ec,%eax
45b156:	e8 05 96 fc ff       	call   0x424760
45b15b:	89 45 ec             	mov    %eax,-0x14(%ebp)
45b15e:	33 c0                	xor    %eax,%eax
45b160:	55                   	push   %ebp
45b161:	68 00 b2 45 00       	push   $0x45b200
45b166:	64 ff 30             	push   %fs:(%eax)
45b169:	64 89 20             	mov    %esp,%fs:(%eax)
45b16c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45b16f:	50                   	push   %eax
45b170:	e8 d7 b4 fa ff       	call   0x40664c
45b175:	89 45 e8             	mov    %eax,-0x18(%ebp)
45b178:	33 c0                	xor    %eax,%eax
45b17a:	55                   	push   %ebp
45b17b:	68 e3 b1 45 00       	push   $0x45b1e3
45b180:	64 ff 30             	push   %fs:(%eax)
45b183:	64 89 20             	mov    %esp,%fs:(%eax)
45b186:	8b 55 e4             	mov    -0x1c(%ebp),%edx
45b189:	8b 45 ec             	mov    -0x14(%ebp),%eax
45b18c:	e8 0b 9c fc ff       	call   0x424d9c
45b191:	a1 dc 48 47 00       	mov    0x4748dc,%eax
45b196:	8b 00                	mov    (%eax),%eax
45b198:	8b 90 88 00 00 00    	mov    0x88(%eax),%edx
45b19e:	8b 45 ec             	mov    -0x14(%ebp),%eax
45b1a1:	e8 96 9a fc ff       	call   0x424c3c
45b1a6:	8b 45 d8             	mov    -0x28(%ebp),%eax
45b1a9:	83 c0 10             	add    $0x10,%eax
45b1ac:	50                   	push   %eax
45b1ad:	8b 45 d8             	mov    -0x28(%ebp),%eax
45b1b0:	8d 48 0c             	lea    0xc(%eax),%ecx
45b1b3:	8b 55 ec             	mov    -0x14(%ebp),%edx
45b1b6:	8b 45 f4             	mov    -0xc(%ebp),%eax
45b1b9:	8b 18                	mov    (%eax),%ebx
45b1bb:	ff 53 38             	call   *0x38(%ebx)
45b1be:	33 c0                	xor    %eax,%eax
45b1c0:	5a                   	pop    %edx
45b1c1:	59                   	pop    %ecx
45b1c2:	59                   	pop    %ecx
45b1c3:	64 89 10             	mov    %edx,%fs:(%eax)
45b1c6:	68 ea b1 45 00       	push   $0x45b1ea
45b1cb:	33 d2                	xor    %edx,%edx
45b1cd:	8b 45 ec             	mov    -0x14(%ebp),%eax
45b1d0:	e8 c7 9b fc ff       	call   0x424d9c
45b1d5:	8b 45 e8             	mov    -0x18(%ebp),%eax
45b1d8:	50                   	push   %eax
45b1d9:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45b1dc:	50                   	push   %eax
45b1dd:	e8 62 b4 fa ff       	call   0x406644
45b1e2:	c3                   	ret
45b1e3:	e9 6c 88 fa ff       	jmp    0x403a54
45b1e8:	eb e1                	jmp    0x45b1cb
45b1ea:	33 c0                	xor    %eax,%eax
45b1ec:	5a                   	pop    %edx
45b1ed:	59                   	pop    %ecx
45b1ee:	59                   	pop    %ecx
45b1ef:	64 89 10             	mov    %edx,%fs:(%eax)
45b1f2:	68 07 b2 45 00       	push   $0x45b207
45b1f7:	8b 45 ec             	mov    -0x14(%ebp),%eax
45b1fa:	e8 c1 80 fa ff       	call   0x4032c0
45b1ff:	c3                   	ret
45b200:	e9 4f 88 fa ff       	jmp    0x403a54
45b205:	eb f0                	jmp    0x45b1f7
45b207:	33 c0                	xor    %eax,%eax
45b209:	5a                   	pop    %edx
45b20a:	59                   	pop    %ecx
45b20b:	59                   	pop    %ecx
45b20c:	64 89 10             	mov    %edx,%fs:(%eax)
45b20f:	68 99 b2 45 00       	push   $0x45b299
45b214:	8b 45 e4             	mov    -0x1c(%ebp),%eax
45b217:	50                   	push   %eax
45b218:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b21b:	8b 40 10             	mov    0x10(%eax),%eax
45b21e:	50                   	push   %eax
45b21f:	e8 70 b8 fa ff       	call   0x406a94
45b224:	c3                   	ret
45b225:	e9 2a 88 fa ff       	jmp    0x403a54
45b22a:	eb e8                	jmp    0x45b214
45b22c:	47                   	inc    %edi
45b22d:	4b                   	dec    %ebx
45b22e:	0f 85 da fe ff ff    	jne    0x45b10e
45b234:	eb 49                	jmp    0x45b27f
45b236:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b239:	8b 58 08             	mov    0x8(%eax),%ebx
45b23c:	4b                   	dec    %ebx
45b23d:	85 db                	test   %ebx,%ebx
45b23f:	7c 3e                	jl     0x45b27f
45b241:	43                   	inc    %ebx
45b242:	33 ff                	xor    %edi,%edi
45b244:	8b d7                	mov    %edi,%edx
45b246:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b249:	e8 36 d5 fb ff       	call   0x418784
45b24e:	89 45 d4             	mov    %eax,-0x2c(%ebp)
45b251:	8b 45 d4             	mov    -0x2c(%ebp),%eax
45b254:	8b 10                	mov    (%eax),%edx
45b256:	ff 52 34             	call   *0x34(%edx)
45b259:	3b 46 08             	cmp    0x8(%esi),%eax
45b25c:	74 11                	je     0x45b26f
45b25e:	8b 56 08             	mov    0x8(%esi),%edx
45b261:	b1 01                	mov    $0x1,%cl
45b263:	8b 45 d4             	mov    -0x2c(%ebp),%eax
45b266:	e8 01 ee ff ff       	call   0x45a06c
45b26b:	85 c0                	test   %eax,%eax
45b26d:	74 0c                	je     0x45b27b
45b26f:	8b d6                	mov    %esi,%edx
45b271:	8b 45 d4             	mov    -0x2c(%ebp),%eax
45b274:	e8 f3 f6 ff ff       	call   0x45a96c
45b279:	eb 1e                	jmp    0x45b299
45b27b:	47                   	inc    %edi
45b27c:	4b                   	dec    %ebx
45b27d:	75 c5                	jne    0x45b244
45b27f:	8b 46 08             	mov    0x8(%esi),%eax
45b282:	50                   	push   %eax
45b283:	8b 46 04             	mov    0x4(%esi),%eax
45b286:	50                   	push   %eax
45b287:	8b 06                	mov    (%esi),%eax
45b289:	50                   	push   %eax
45b28a:	8b 45 fc             	mov    -0x4(%ebp),%eax
45b28d:	8b 40 10             	mov    0x10(%eax),%eax
45b290:	50                   	push   %eax
45b291:	e8 be b4 fa ff       	call   0x406754
45b296:	89 46 0c             	mov    %eax,0xc(%esi)