430dbf:	8b 55 bc             	mov    -0x44(%ebp),%edx
430dc2:	3c 7f                	cmp    $0x7f,%al
430dc4:	75 d0                	jne    0x430d96
430dc6:	8b 5d 98             	mov    -0x68(%ebp),%ebx
430dc9:	83 7b 24 00          	cmpl   $0x0,0x24(%ebx)
430dcd:	8b 45 e8             	mov    -0x18(%ebp),%eax
430dd0:	89 45 a4             	mov    %eax,-0x5c(%ebp)
430dd3:	7c 13                	jl     0x430de8
430dd5:	7f 06                	jg     0x430ddd
430dd7:	83 7b 20 00          	cmpl   $0x0,0x20(%ebx)
430ddb:	76 0b                	jbe    0x430de8
430ddd:	8b 73 20             	mov    0x20(%ebx),%esi
430de0:	3b f0                	cmp    %eax,%esi
430de2:	76 04                	jbe    0x430de8
430de4:	2b f0                	sub    %eax,%esi
430de6:	eb 02                	jmp    0x430dea
430de8:	33 f6                	xor    %esi,%esi
430dea:	8b 43 14             	mov    0x14(%ebx),%eax
430ded:	25 c0 01 00 00       	and    $0x1c0,%eax
430df2:	83 f8 40             	cmp    $0x40,%eax
430df5:	74 75                	je     0x430e6c
430df7:	3d 00 01 00 00       	cmp    $0x100,%eax
430dfc:	74 33                	je     0x430e31
430dfe:	8b 5d 08             	mov    0x8(%ebp),%ebx
430e01:	8d 45 b8             	lea    -0x48(%ebp),%eax
430e04:	56                   	push   %esi
430e05:	ff 75 1c             	push   0x1c(%ebp)
430e08:	ff 75 14             	push   0x14(%ebp)
430e0b:	ff 75 10             	push   0x10(%ebp)
430e0e:	50                   	push   %eax
430e0f:	53                   	push   %ebx
430e10:	e8 6e 5d 00 00       	call   0x436b83
430e15:	83 c4 18             	add    $0x18,%esp
430e18:	33 f6                	xor    %esi,%esi
430e1a:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
430e1e:	8b c8                	mov    %eax,%ecx
430e20:	8d 45 d8             	lea    -0x28(%ebp),%eax
430e23:	72 03                	jb     0x430e28
430e25:	8b 45 d8             	mov    -0x28(%ebp),%eax
430e28:	57                   	push   %edi
430e29:	50                   	push   %eax
430e2a:	ff 71 04             	push   0x4(%ecx)
430e2d:	ff 31                	push   (%ecx)
430e2f:	eb 52                	jmp    0x430e83
430e31:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
430e35:	8d 45 d8             	lea    -0x28(%ebp),%eax
430e38:	72 03                	jb     0x430e3d
430e3a:	8b 45 d8             	mov    -0x28(%ebp),%eax
430e3d:	8b 5d 08             	mov    0x8(%ebp),%ebx
430e40:	57                   	push   %edi
430e41:	50                   	push   %eax
430e42:	ff 75 14             	push   0x14(%ebp)
430e45:	8d 45 b8             	lea    -0x48(%ebp),%eax
430e48:	ff 75 10             	push   0x10(%ebp)
430e4b:	50                   	push   %eax
430e4c:	53                   	push   %ebx
430e4d:	e8 a9 51 00 00       	call   0x435ffb
430e52:	56                   	push   %esi
430e53:	ff 75 1c             	push   0x1c(%ebp)
430e56:	ff 70 04             	push   0x4(%eax)
430e59:	ff 30                	push   (%eax)
430e5b:	8d 45 b8             	lea    -0x48(%ebp),%eax
430e5e:	50                   	push   %eax
430e5f:	53                   	push   %ebx
430e60:	e8 1e 5d 00 00       	call   0x436b83
430e65:	83 c4 30             	add    $0x30,%esp
430e68:	33 f6                	xor    %esi,%esi
430e6a:	eb 24                	jmp    0x430e90
430e6c:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
430e70:	8d 45 d8             	lea    -0x28(%ebp),%eax
430e73:	72 03                	jb     0x430e78
430e75:	8b 45 d8             	mov    -0x28(%ebp),%eax
430e78:	8b 5d 08             	mov    0x8(%ebp),%ebx
430e7b:	57                   	push   %edi
430e7c:	50                   	push   %eax
430e7d:	ff 75 14             	push   0x14(%ebp)
430e80:	ff 75 10             	push   0x10(%ebp)
430e83:	8d 45 b8             	lea    -0x48(%ebp),%eax
430e86:	50                   	push   %eax
430e87:	53                   	push   %ebx
430e88:	e8 6e 51 00 00       	call   0x435ffb
430e8d:	83 c4 18             	add    $0x18,%esp
430e90:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
430e94:	8b 08                	mov    (%eax),%ecx
430e96:	89 4d 10             	mov    %ecx,0x10(%ebp)
430e99:	8b 50 04             	mov    0x4(%eax),%edx
430e9c:	8d 45 d8             	lea    -0x28(%ebp),%eax
430e9f:	89 55 14             	mov    %edx,0x14(%ebp)
430ea2:	89 45 bc             	mov    %eax,-0x44(%ebp)
430ea5:	72 06                	jb     0x430ead
430ea7:	8b 45 d8             	mov    -0x28(%ebp),%eax
430eaa:	89 45 bc             	mov    %eax,-0x44(%ebp)
430ead:	8b 45 a4             	mov    -0x5c(%ebp),%eax
430eb0:	2b c7                	sub    %edi,%eax
430eb2:	50                   	push   %eax
430eb3:	8b 45 bc             	mov    -0x44(%ebp),%eax
430eb6:	8d 04 78             	lea    (%eax,%edi,2),%eax
430eb9:	50                   	push   %eax
430eba:	52                   	push   %edx
430ebb:	51                   	push   %ecx
430ebc:	8d 45 ac             	lea    -0x54(%ebp),%eax
430ebf:	50                   	push   %eax
430ec0:	53                   	push   %ebx
430ec1:	e8 35 51 00 00       	call   0x435ffb
430ec6:	8b 55 98             	mov    -0x68(%ebp),%edx
430ec9:	56                   	push   %esi
430eca:	ff 75 1c             	push   0x1c(%ebp)
430ecd:	8b 08                	mov    (%eax),%ecx
430ecf:	8b 75 94             	mov    -0x6c(%ebp),%esi
430ed2:	89 4d 10             	mov    %ecx,0x10(%ebp)
430ed5:	8b 40 04             	mov    0x4(%eax),%eax
430ed8:	83 62 20 00          	andl   $0x0,0x20(%edx)
430edc:	83 62 24 00          	andl   $0x0,0x24(%edx)
430ee0:	50                   	push   %eax
430ee1:	51                   	push   %ecx
430ee2:	56                   	push   %esi
430ee3:	53                   	push   %ebx
430ee4:	89 45 14             	mov    %eax,0x14(%ebp)
430ee7:	e8 97 5c 00 00       	call   0x436b83
430eec:	83 c4 30             	add    $0x30,%esp
430eef:	8d 4d c0             	lea    -0x40(%ebp),%ecx
430ef2:	e8 dd c3 fe ff       	call   0x41d2d4
430ef7:	8d 4d d8             	lea    -0x28(%ebp),%ecx
430efa:	e8 8c 5d 00 00       	call   0x436c8b
430eff:	8b c6                	mov    %esi,%eax
430f01:	e8 22 eb 00 00       	call   0x43fa28
430f06:	c3                   	ret
430f07:	6a 60                	push   $0x60
430f09:	b8 dc 18 49 00       	mov    $0x4918dc,%eax
430f0e:	e8 6b eb 00 00       	call   0x43fa7e
430f13:	8b 4d 24             	mov    0x24(%ebp),%ecx
430f16:	8b 45 0c             	mov    0xc(%ebp),%eax
430f19:	8b 5d 18             	mov    0x18(%ebp),%ebx
430f1c:	8b 75 20             	mov    0x20(%ebp),%esi
430f1f:	89 45 94             	mov    %eax,-0x6c(%ebp)
430f22:	89 5d 98             	mov    %ebx,-0x68(%ebp)
430f25:	89 4d b0             	mov    %ecx,-0x50(%ebp)
430f28:	85 c9                	test   %ecx,%ecx
430f2a:	74 0f                	je     0x430f3b
430f2c:	8a 06                	mov    (%esi),%al
430f2e:	3c 2b                	cmp    $0x2b,%al
430f30:	74 04                	je     0x430f36
430f32:	3c 2d                	cmp    $0x2d,%al
430f34:	75 05                	jne    0x430f3b
430f36:	33 ff                	xor    %edi,%edi
430f38:	47                   	inc    %edi
430f39:	eb 02                	jmp    0x430f3d
430f3b:	33 ff                	xor    %edi,%edi
430f3d:	8b 43 14             	mov    0x14(%ebx),%eax
430f40:	ba 00 30 00 00       	mov    $0x3000,%edx
430f45:	23 c2                	and    %edx,%eax
430f47:	3b c2                	cmp    %edx,%eax
430f49:	74 07                	je     0x430f52
430f4b:	ba 7c 7e 49 00       	mov    $0x497e7c,%edx
430f50:	eb 22                	jmp    0x430f74
430f52:	8d 47 02             	lea    0x2(%edi),%eax
430f55:	ba 80 7e 49 00       	mov    $0x497e80,%edx
430f5a:	3b c1                	cmp    %ecx,%eax
430f5c:	77 16                	ja     0x430f74
430f5e:	80 3c 3e 30          	cmpb   $0x30,(%esi,%edi,1)
430f62:	75 10                	jne    0x430f74
430f64:	8a 4c 3e 01          	mov    0x1(%esi,%edi,1),%cl
430f68:	80 f9 78             	cmp    $0x78,%cl
430f6b:	74 05                	je     0x430f72
430f6d:	80 f9 58             	cmp    $0x58,%cl
430f70:	75 02                	jne    0x430f74
430f72:	8b f8                	mov    %eax,%edi
430f74:	52                   	push   %edx
430f75:	56                   	push   %esi
430f76:	e8 f5 88 03 00       	call   0x469870
430f7b:	89 45 a4             	mov    %eax,-0x5c(%ebp)
430f7e:	6a 2e                	push   $0x2e
430f80:	58                   	pop    %eax
430f81:	66 89 45 b4          	mov    %ax,-0x4c(%ebp)
430f85:	e8 53 6e 03 00       	call   0x467ddd
430f8a:	8b 00                	mov    (%eax),%eax
430f8c:	8a 00                	mov    (%eax),%al
430f8e:	88 45 b4             	mov    %al,-0x4c(%ebp)
430f91:	8d 45 b4             	lea    -0x4c(%ebp),%eax
430f94:	50                   	push   %eax
430f95:	56                   	push   %esi
430f96:	e8 d5 88 03 00       	call   0x469870
430f9b:	83 c4 10             	add    $0x10,%esp
430f9e:	89 45 a8             	mov    %eax,-0x58(%ebp)
430fa1:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
430fa4:	ff 73 30             	push   0x30(%ebx)
430fa7:	e8 90 7e ff ff       	call   0x428e3c
430fac:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
430fb0:	8d 45 9c             	lea    -0x64(%ebp),%eax
430fb3:	50                   	push   %eax
430fb4:	e8 a9 7d fd ff       	call   0x408d62
430fb9:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
430fbd:	59                   	pop    %ecx
430fbe:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
430fc1:	89 45 bc             	mov    %eax,-0x44(%ebp)
430fc4:	e8 1e e4 fd ff       	call   0x40f3e7
430fc9:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
430fcd:	8d 4d d8             	lea    -0x28(%ebp),%ecx
430fd0:	33 c0                	xor    %eax,%eax
430fd2:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
430fd9:	50                   	push   %eax
430fda:	ff 75 b0             	push   -0x50(%ebp)
430fdd:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
430fe1:	e8 4b e8 fe ff       	call   0x41f831
430fe6:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
430fea:	8d 45 d8             	lea    -0x28(%ebp),%eax
430fed:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
430ff4:	72 03                	jb     0x430ff9
430ff6:	8b 45 d8             	mov    -0x28(%ebp),%eax
430ff9:	8b 4d bc             	mov    -0x44(%ebp),%ecx
430ffc:	50                   	push   %eax
430ffd:	8b 45 b0             	mov    -0x50(%ebp),%eax
431000:	03 c6                	add    %esi,%eax
431002:	50                   	push   %eax
431003:	56                   	push   %esi
431004:	e8 33 a6 00 00       	call   0x43b63c
431009:	ff 73 30             	push   0x30(%ebx)
43100c:	8d 4d b8             	lea    -0x48(%ebp),%ecx
43100f:	e8 28 7e ff ff       	call   0x428e3c
431014:	8d 45 b8             	lea    -0x48(%ebp),%eax
431017:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
43101b:	50                   	push   %eax
43101c:	e8 8d 7e fd ff       	call   0x408eae
431021:	59                   	pop    %ecx
431022:	8b f0                	mov    %eax,%esi
431024:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
431028:	8d 4d b8             	lea    -0x48(%ebp),%ecx
43102b:	89 75 a0             	mov    %esi,-0x60(%ebp)
43102e:	e8 b4 e3 fd ff       	call   0x40f3e7
431033:	8b 06                	mov    (%esi),%eax
431035:	8b 70 14             	mov    0x14(%eax),%esi
431038:	8d 45 c0             	lea    -0x40(%ebp),%eax
43103b:	50                   	push   %eax
43103c:	8b ce                	mov    %esi,%ecx
43103e:	ff 15 54 43 49 00    	call   *0x494354
431044:	8b 4d a0             	mov    -0x60(%ebp),%ecx
431047:	ff d6                	call   *%esi
431049:	8b 4d a0             	mov    -0x60(%ebp),%ecx
43104c:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
431050:	e8 37 a5 00 00       	call   0x43b58c
431055:	8b 75 a8             	mov    -0x58(%ebp),%esi
431058:	0f b7 d0             	movzwl %ax,%edx
43105b:	89 55 bc             	mov    %edx,-0x44(%ebp)
43105e:	3b 75 b0             	cmp    -0x50(%ebp),%esi
431061:	74 26                	je     0x431089
431063:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
431067:	8d 45 d8             	lea    -0x28(%ebp),%eax
43106a:	89 45 b0             	mov    %eax,-0x50(%ebp)
43106d:	72 06                	jb     0x431075
43106f:	8b 45 d8             	mov    -0x28(%ebp),%eax
431072:	89 45 b0             	mov    %eax,-0x50(%ebp)
431075:	8b 4d a0             	mov    -0x60(%ebp),%ecx
431078:	e8 24 60 00 00       	call   0x4370a1
43107d:	8b 4d b0             	mov    -0x50(%ebp),%ecx
431080:	8b 55 bc             	mov    -0x44(%ebp),%edx
431083:	66 89 04 71          	mov    %ax,(%ecx,%esi,2)
431087:	eb 06                	jmp    0x43108f
431089:	8b 45 a4             	mov    -0x5c(%ebp),%eax
43108c:	89 45 a8             	mov    %eax,-0x58(%ebp)
43108f:	83 7d d4 10          	cmpl   $0x10,-0x2c(%ebp)
431093:	8d 75 c0             	lea    -0x40(%ebp),%esi
431096:	72 03                	jb     0x43109b
431098:	8b 75 c0             	mov    -0x40(%ebp),%esi
43109b:	8a 06                	mov    (%esi),%al
43109d:	3c 7f                	cmp    $0x7f,%al
43109f:	74 36                	je     0x4310d7
4310a1:	8b 5d a8             	mov    -0x58(%ebp),%ebx
4310a4:	84 c0                	test   %al,%al
4310a6:	7e 2c                	jle    0x4310d4
4310a8:	0f be c8             	movsbl %al,%ecx
4310ab:	8b c3                	mov    %ebx,%eax
4310ad:	2b c7                	sub    %edi,%eax
4310af:	3b c8                	cmp    %eax,%ecx
4310b1:	73 21                	jae    0x4310d4
4310b3:	52                   	push   %edx
4310b4:	2b d9                	sub    %ecx,%ebx
4310b6:	8d 4d d8             	lea    -0x28(%ebp),%ecx
4310b9:	6a 01                	push   $0x1
4310bb:	53                   	push   %ebx
4310bc:	e8 96 a0 00 00       	call   0x43b157
4310c1:	8d 46 01             	lea    0x1(%esi),%eax
4310c4:	80 38 00             	cmpb   $0x0,(%eax)
4310c7:	7e 02                	jle    0x4310cb
4310c9:	8b f0                	mov    %eax,%esi
4310cb:	8a 06                	mov    (%esi),%al
4310cd:	8b 55 bc             	mov    -0x44(%ebp),%edx
4310d0:	3c 7f                	cmp    $0x7f,%al
4310d2:	75 d0                	jne    0x4310a4
4310d4:	8b 5d 98             	mov    -0x68(%ebp),%ebx
4310d7:	83 7b 24 00          	cmpl   $0x0,0x24(%ebx)
4310db:	8b 45 e8             	mov    -0x18(%ebp),%eax
4310de:	89 45 a4             	mov    %eax,-0x5c(%ebp)
4310e1:	7c 13                	jl     0x4310f6
4310e3:	7f 06                	jg     0x4310eb
4310e5:	83 7b 20 00          	cmpl   $0x0,0x20(%ebx)
4310e9:	76 0b                	jbe    0x4310f6
4310eb:	8b 73 20             	mov    0x20(%ebx),%esi
4310ee:	3b f0                	cmp    %eax,%esi
4310f0:	76 04                	jbe    0x4310f6
4310f2:	2b f0                	sub    %eax,%esi
4310f4:	eb 02                	jmp    0x4310f8
4310f6:	33 f6                	xor    %esi,%esi
4310f8:	8b 43 14             	mov    0x14(%ebx),%eax
4310fb:	25 c0 01 00 00       	and    $0x1c0,%eax
431100:	83 f8 40             	cmp    $0x40,%eax
431103:	74 75                	je     0x43117a
431105:	3d 00 01 00 00       	cmp    $0x100,%eax
43110a:	74 33                	je     0x43113f
43110c:	8b 5d 08             	mov    0x8(%ebp),%ebx
43110f:	8d 45 b8             	lea    -0x48(%ebp),%eax
431112:	56                   	push   %esi
431113:	ff 75 1c             	push   0x1c(%ebp)
431116:	ff 75 14             	push   0x14(%ebp)
431119:	ff 75 10             	push   0x10(%ebp)
43111c:	50                   	push   %eax
43111d:	53                   	push   %ebx
43111e:	e8 8c 5a 00 00       	call   0x436baf
431123:	83 c4 18             	add    $0x18,%esp
431126:	33 f6                	xor    %esi,%esi
431128:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
43112c:	8b c8                	mov    %eax,%ecx
43112e:	8d 45 d8             	lea    -0x28(%ebp),%eax
431131:	72 03                	jb     0x431136
431133:	8b 45 d8             	mov    -0x28(%ebp),%eax
431136:	57                   	push   %edi
431137:	50                   	push   %eax
431138:	ff 71 04             	push   0x4(%ecx)
43113b:	ff 31                	push   (%ecx)
43113d:	eb 52                	jmp    0x431191
43113f:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
431143:	8d 45 d8             	lea    -0x28(%ebp),%eax
431146:	72 03                	jb     0x43114b
431148:	8b 45 d8             	mov    -0x28(%ebp),%eax
43114b:	8b 5d 08             	mov    0x8(%ebp),%ebx
43114e:	57                   	push   %edi
43114f:	50                   	push   %eax
431150:	ff 75 14             	push   0x14(%ebp)
431153:	8d 45 b8             	lea    -0x48(%ebp),%eax
431156:	ff 75 10             	push   0x10(%ebp)
431159:	50                   	push   %eax
43115a:	53                   	push   %ebx
43115b:	e8 d0 4e 00 00       	call   0x436030
431160:	56                   	push   %esi
431161:	ff 75 1c             	push   0x1c(%ebp)
431164:	ff 70 04             	push   0x4(%eax)
431167:	ff 30                	push   (%eax)
431169:	8d 45 b8             	lea    -0x48(%ebp),%eax
43116c:	50                   	push   %eax
43116d:	53                   	push   %ebx
43116e:	e8 3c 5a 00 00       	call   0x436baf