466eab:	e8 d0 a1 fb ff       	call   0x421080
466eb0:	ff 73 0c             	push   0xc(%ebx)
466eb3:	6a 00                	push   $0x0
466eb5:	ff 73 08             	push   0x8(%ebx)
466eb8:	e8 63 c1 fb ff       	call   0x423020
466ebd:	83 c4 18             	add    $0x18,%esp
466ec0:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
466ec7:	56                   	push   %esi
466ec8:	ff 15 68 f2 48 00    	call   *0x48f268
466ece:	8b c7                	mov    %edi,%eax
466ed0:	5f                   	pop    %edi
466ed1:	5e                   	pop    %esi
466ed2:	5b                   	pop    %ebx
466ed3:	5d                   	pop    %ebp
466ed4:	c2 04 00             	ret    $0x4
466ed7:	56                   	push   %esi
466ed8:	8b f1                	mov    %ecx,%esi
466eda:	83 3e 00             	cmpl   $0x0,(%esi)
466edd:	74 0b                	je     0x466eea
466edf:	ff 36                	push   (%esi)
466ee1:	ff 15 5c f3 48 00    	call   *0x48f35c
466ee7:	83 26 00             	andl   $0x0,(%esi)
466eea:	5e                   	pop    %esi
466eeb:	c3                   	ret
466eec:	56                   	push   %esi
466eed:	8b f1                	mov    %ecx,%esi
466eef:	8d 4e 1c             	lea    0x1c(%esi),%ecx
466ef2:	e8 e0 ff ff ff       	call   0x466ed7
466ef7:	8d 4e 0c             	lea    0xc(%esi),%ecx
466efa:	e8 d8 ff ff ff       	call   0x466ed7
466eff:	8d 4e 14             	lea    0x14(%esi),%ecx
466f02:	5e                   	pop    %esi
466f03:	e9 cf ff ff ff       	jmp    0x466ed7
466f08:	55                   	push   %ebp
466f09:	8b ec                	mov    %esp,%ebp
466f0b:	57                   	push   %edi
466f0c:	8b f9                	mov    %ecx,%edi
466f0e:	85 ff                	test   %edi,%edi
466f10:	75 04                	jne    0x466f16
466f12:	21 0a                	and    %ecx,(%edx)
466f14:	eb 1d                	jmp    0x466f33
466f16:	6a 02                	push   $0x2
466f18:	ff 75 08             	push   0x8(%ebp)
466f1b:	6a 00                	push   $0x0
466f1d:	52                   	push   %edx
466f1e:	ff 15 60 f2 48 00    	call   *0x48f260
466f24:	50                   	push   %eax
466f25:	57                   	push   %edi
466f26:	ff 15 60 f2 48 00    	call   *0x48f260
466f2c:	50                   	push   %eax
466f2d:	ff 15 64 f1 48 00    	call   *0x48f164
466f33:	5f                   	pop    %edi
466f34:	5d                   	pop    %ebp
466f35:	c3                   	ret
466f36:	e8 07 00 00 00       	call   0x466f42
466f3b:	f7 d8                	neg    %eax
466f3d:	1b c0                	sbb    %eax,%eax
466f3f:	f7 d8                	neg    %eax
466f41:	c3                   	ret
466f42:	53                   	push   %ebx
466f43:	56                   	push   %esi
466f44:	57                   	push   %edi
466f45:	8b f9                	mov    %ecx,%edi
466f47:	33 f6                	xor    %esi,%esi
466f49:	32 db                	xor    %bl,%bl
466f4b:	8b 4f 20             	mov    0x20(%edi),%ecx
466f4e:	85 c9                	test   %ecx,%ecx
466f50:	74 29                	je     0x466f7b
466f52:	e8 ed fe ff ff       	call   0x466e44
466f57:	8a d8                	mov    %al,%bl
466f59:	84 db                	test   %bl,%bl
466f5b:	74 05                	je     0x466f62
466f5d:	6a 02                	push   $0x2
466f5f:	5e                   	pop    %esi
466f60:	eb 19                	jmp    0x466f7b
466f62:	8d 4f 08             	lea    0x8(%edi),%ecx
466f65:	e8 6d ff ff ff       	call   0x466ed7
466f6a:	8b 4f 20             	mov    0x20(%edi),%ecx
466f6d:	ff 49 04             	decl   0x4(%ecx)
466f70:	75 06                	jne    0x466f78
466f72:	8b 01                	mov    (%ecx),%eax
466f74:	6a 01                	push   $0x1
466f76:	ff 10                	call   *(%eax)
466f78:	21 77 20             	and    %esi,0x20(%edi)
466f7b:	f6 07 08             	testb  $0x8,(%edi)
466f7e:	74 13                	je     0x466f93
466f80:	84 db                	test   %bl,%bl
466f82:	74 05                	je     0x466f89
466f84:	83 ce 08             	or     $0x8,%esi
466f87:	eb 39                	jmp    0x466fc2
466f89:	8d 4f 10             	lea    0x10(%edi),%ecx
466f8c:	e8 46 ff ff ff       	call   0x466ed7
466f91:	eb 2f                	jmp    0x466fc2
466f93:	8b 4f 24             	mov    0x24(%edi),%ecx
466f96:	85 c9                	test   %ecx,%ecx
466f98:	74 28                	je     0x466fc2
466f9a:	e8 a5 fe ff ff       	call   0x466e44
466f9f:	84 c0                	test   %al,%al
466fa1:	74 05                	je     0x466fa8
466fa3:	83 ce 04             	or     $0x4,%esi
466fa6:	eb 1a                	jmp    0x466fc2
466fa8:	8d 4f 10             	lea    0x10(%edi),%ecx
466fab:	e8 27 ff ff ff       	call   0x466ed7
466fb0:	8b 4f 24             	mov    0x24(%edi),%ecx
466fb3:	ff 49 04             	decl   0x4(%ecx)
466fb6:	75 06                	jne    0x466fbe
466fb8:	8b 01                	mov    (%ecx),%eax
466fba:	6a 01                	push   $0x1
466fbc:	ff 10                	call   *(%eax)
466fbe:	83 67 24 00          	andl   $0x0,0x24(%edi)
466fc2:	8b cf                	mov    %edi,%ecx
466fc4:	e8 08 03 00 00       	call   0x4672d1
466fc9:	84 c0                	test   %al,%al
466fcb:	74 03                	je     0x466fd0
466fcd:	83 ce 01             	or     $0x1,%esi
466fd0:	85 f6                	test   %esi,%esi
466fd2:	75 03                	jne    0x466fd7
466fd4:	21 77 04             	and    %esi,0x4(%edi)
466fd7:	5f                   	pop    %edi
466fd8:	8b c6                	mov    %esi,%eax
466fda:	5e                   	pop    %esi
466fdb:	5b                   	pop    %ebx
466fdc:	c3                   	ret
466fdd:	55                   	push   %ebp
466fde:	8b ec                	mov    %esp,%ebp
466fe0:	f6 01 08             	testb  $0x8,(%ecx)
466fe3:	53                   	push   %ebx
466fe4:	56                   	push   %esi
466fe5:	57                   	push   %edi
466fe6:	74 4d                	je     0x467035
466fe8:	8b 5d 08             	mov    0x8(%ebp),%ebx
466feb:	33 c9                	xor    %ecx,%ecx
466fed:	8b 7d 0c             	mov    0xc(%ebp),%edi
466ff0:	8b 03                	mov    (%ebx),%eax
466ff2:	85 c0                	test   %eax,%eax
466ff4:	74 04                	je     0x466ffa
466ff6:	39 0f                	cmp    %ecx,(%edi)
466ff8:	75 3d                	jne    0x467037
466ffa:	8b 75 10             	mov    0x10(%ebp),%esi
466ffd:	39 0e                	cmp    %ecx,(%esi)
466fff:	74 34                	je     0x467035
467001:	8b 45 14             	mov    0x14(%ebp),%eax
467004:	39 08                	cmp    %ecx,(%eax)
467006:	74 2d                	je     0x467035
467008:	8b cb                	mov    %ebx,%ecx
46700a:	e8 c8 fe ff ff       	call   0x466ed7
46700f:	8b cf                	mov    %edi,%ecx
467011:	e8 c1 fe ff ff       	call   0x466ed7
467016:	8b 0e                	mov    (%esi),%ecx
467018:	8b d3                	mov    %ebx,%edx
46701a:	6a 00                	push   $0x0
46701c:	e8 e7 fe ff ff       	call   0x466f08
467021:	8b 45 14             	mov    0x14(%ebp),%eax
467024:	8b d7                	mov    %edi,%edx
467026:	6a 00                	push   $0x0
467028:	8b 08                	mov    (%eax),%ecx
46702a:	e8 d9 fe ff ff       	call   0x466f08
46702f:	8b 06                	mov    (%esi),%eax
467031:	59                   	pop    %ecx
467032:	59                   	pop    %ecx
467033:	eb 02                	jmp    0x467037
467035:	33 c0                	xor    %eax,%eax
467037:	5f                   	pop    %edi
467038:	5e                   	pop    %esi
467039:	5b                   	pop    %ebx
46703a:	5d                   	pop    %ebp
46703b:	c2 10 00             	ret    $0x10
46703e:	55                   	push   %ebp
46703f:	8b ec                	mov    %esp,%ebp
467041:	83 ec 0c             	sub    $0xc,%esp
467044:	8b 01                	mov    (%ecx),%eax
467046:	56                   	push   %esi
467047:	57                   	push   %edi
467048:	33 ff                	xor    %edi,%edi
46704a:	c7 45 f4 0c 00 00 00 	movl   $0xc,-0xc(%ebp)
467051:	89 7d fc             	mov    %edi,-0x4(%ebp)
467054:	89 7d f8             	mov    %edi,-0x8(%ebp)
467057:	a8 10                	test   $0x10,%al
467059:	74 1f                	je     0x46707a
46705b:	ff 75 0c             	push   0xc(%ebp)
46705e:	ff 15 6c f2 48 00    	call   *0x48f26c
467064:	8b 75 10             	mov    0x10(%ebp),%esi
467067:	89 06                	mov    %eax,(%esi)
467069:	83 f8 ff             	cmp    $0xffffffff,%eax
46706c:	75 49                	jne    0x4670b7
46706e:	89 3e                	mov    %edi,(%esi)
467070:	8b 06                	mov    (%esi),%eax
467072:	5f                   	pop    %edi
467073:	5e                   	pop    %esi
467074:	8b e5                	mov    %ebp,%esp
467076:	5d                   	pop    %ebp
467077:	c2 10 00             	ret    $0x10
46707a:	85 45 08             	test   %eax,0x8(%ebp)
46707d:	74 21                	je     0x4670a0
46707f:	8b 75 10             	mov    0x10(%ebp),%esi
467082:	8b 06                	mov    (%esi),%eax
467084:	85 c0                	test   %eax,%eax
467086:	75 ea                	jne    0x467072
467088:	57                   	push   %edi
467089:	8d 45 f4             	lea    -0xc(%ebp),%eax
46708c:	50                   	push   %eax
46708d:	56                   	push   %esi
46708e:	ff 75 14             	push   0x14(%ebp)
467091:	ff 15 70 f2 48 00    	call   *0x48f270
467097:	85 c0                	test   %eax,%eax
467099:	75 53                	jne    0x4670ee
46709b:	83 c8 ff             	or     $0xffffffff,%eax
46709e:	eb d2                	jmp    0x467072
4670a0:	ff 75 0c             	push   0xc(%ebp)
4670a3:	ff 15 6c f2 48 00    	call   *0x48f26c
4670a9:	8b 75 10             	mov    0x10(%ebp),%esi
4670ac:	89 06                	mov    %eax,(%esi)
4670ae:	85 c0                	test   %eax,%eax
4670b0:	74 13                	je     0x4670c5
4670b2:	83 f8 ff             	cmp    $0xffffffff,%eax
4670b5:	74 0e                	je     0x4670c5
4670b7:	6a 01                	push   $0x1
4670b9:	8b d6                	mov    %esi,%edx
4670bb:	8b c8                	mov    %eax,%ecx
4670bd:	e8 46 fe ff ff       	call   0x466f08
4670c2:	59                   	pop    %ecx
4670c3:	eb ab                	jmp    0x467070
4670c5:	57                   	push   %edi
4670c6:	68 80 00 00 00       	push   $0x80
4670cb:	6a 03                	push   $0x3
4670cd:	8d 45 f4             	lea    -0xc(%ebp),%eax
4670d0:	50                   	push   %eax
4670d1:	6a 02                	push   $0x2
4670d3:	68 00 00 00 40       	push   $0x40000000
4670d8:	68 78 a4 4b 00       	push   $0x4ba478
4670dd:	ff 15 d4 f1 48 00    	call   *0x48f1d4
4670e3:	89 06                	mov    %eax,(%esi)
4670e5:	83 f8 ff             	cmp    $0xffffffff,%eax
4670e8:	74 84                	je     0x46706e
4670ea:	85 c0                	test   %eax,%eax
4670ec:	74 80                	je     0x46706e
4670ee:	8b 0e                	mov    (%esi),%ecx
4670f0:	8d 55 10             	lea    0x10(%ebp),%edx
4670f3:	6a 01                	push   $0x1
4670f5:	e8 0e fe ff ff       	call   0x466f08
4670fa:	59                   	pop    %ecx
4670fb:	8b ce                	mov    %esi,%ecx
4670fd:	e8 d5 fd ff ff       	call   0x466ed7
467102:	8b 45 10             	mov    0x10(%ebp),%eax
467105:	89 06                	mov    %eax,(%esi)
467107:	e9 64 ff ff ff       	jmp    0x467070
46710c:	55                   	push   %ebp
46710d:	8b ec                	mov    %esp,%ebp
46710f:	83 ec 0c             	sub    $0xc,%esp
467112:	8b 01                	mov    (%ecx),%eax
467114:	56                   	push   %esi
467115:	57                   	push   %edi
467116:	33 ff                	xor    %edi,%edi
467118:	c7 45 f4 0c 00 00 00 	movl   $0xc,-0xc(%ebp)
46711f:	89 7d fc             	mov    %edi,-0x4(%ebp)
467122:	89 7d f8             	mov    %edi,-0x8(%ebp)
467125:	a8 10                	test   $0x10,%al
467127:	74 1e                	je     0x467147
467129:	6a f6                	push   $0xfffffff6
46712b:	ff 15 6c f2 48 00    	call   *0x48f26c
467131:	8b 75 10             	mov    0x10(%ebp),%esi
467134:	89 06                	mov    %eax,(%esi)
467136:	83 f8 ff             	cmp    $0xffffffff,%eax
467139:	75 47                	jne    0x467182
46713b:	89 3e                	mov    %edi,(%esi)
46713d:	8b 06                	mov    (%esi),%eax
46713f:	5f                   	pop    %edi
467140:	5e                   	pop    %esi
467141:	8b e5                	mov    %ebp,%esp
467143:	5d                   	pop    %ebp
467144:	c2 10 00             	ret    $0x10
467147:	a8 01                	test   $0x1,%al
467149:	74 21                	je     0x46716c
46714b:	8b 75 10             	mov    0x10(%ebp),%esi
46714e:	8b 06                	mov    (%esi),%eax
467150:	85 c0                	test   %eax,%eax
467152:	75 eb                	jne    0x46713f
467154:	57                   	push   %edi
467155:	8d 45 f4             	lea    -0xc(%ebp),%eax
467158:	50                   	push   %eax
467159:	ff 75 14             	push   0x14(%ebp)
46715c:	56                   	push   %esi
46715d:	ff 15 70 f2 48 00    	call   *0x48f270
467163:	85 c0                	test   %eax,%eax
467165:	75 52                	jne    0x4671b9
467167:	83 c8 ff             	or     $0xffffffff,%eax
46716a:	eb d3                	jmp    0x46713f
46716c:	6a f6                	push   $0xfffffff6
46716e:	ff 15 6c f2 48 00    	call   *0x48f26c
467174:	8b 75 10             	mov    0x10(%ebp),%esi
467177:	89 06                	mov    %eax,(%esi)
467179:	85 c0                	test   %eax,%eax
46717b:	74 13                	je     0x467190
46717d:	83 f8 ff             	cmp    $0xffffffff,%eax
467180:	74 0e                	je     0x467190
467182:	6a 01                	push   $0x1
467184:	8b d6                	mov    %esi,%edx
467186:	8b c8                	mov    %eax,%ecx
467188:	e8 7b fd ff ff       	call   0x466f08
46718d:	59                   	pop    %ecx
46718e:	eb ad                	jmp    0x46713d
467190:	57                   	push   %edi
467191:	68 80 00 00 00       	push   $0x80
467196:	6a 03                	push   $0x3
467198:	8d 45 f4             	lea    -0xc(%ebp),%eax
46719b:	50                   	push   %eax
46719c:	6a 01                	push   $0x1
46719e:	68 00 00 00 80       	push   $0x80000000
4671a3:	68 78 a4 4b 00       	push   $0x4ba478
4671a8:	ff 15 d4 f1 48 00    	call   *0x48f1d4
4671ae:	89 06                	mov    %eax,(%esi)
4671b0:	83 f8 ff             	cmp    $0xffffffff,%eax
4671b3:	74 86                	je     0x46713b
4671b5:	85 c0                	test   %eax,%eax
4671b7:	74 82                	je     0x46713b
4671b9:	8b 0e                	mov    (%esi),%ecx
4671bb:	8d 55 10             	lea    0x10(%ebp),%edx
4671be:	6a 01                	push   $0x1
4671c0:	e8 43 fd ff ff       	call   0x466f08
4671c5:	59                   	pop    %ecx
4671c6:	8b ce                	mov    %esi,%ecx
4671c8:	e8 0a fd ff ff       	call   0x466ed7
4671cd:	8b 45 10             	mov    0x10(%ebp),%eax
4671d0:	89 06                	mov    %eax,(%esi)
4671d2:	e9 66 ff ff ff       	jmp    0x46713d
4671d7:	55                   	push   %ebp
4671d8:	8b ec                	mov    %esp,%ebp
4671da:	f6 01 08             	testb  $0x8,(%ecx)
4671dd:	74 06                	je     0x4671e5
4671df:	5d                   	pop    %ebp
4671e0:	e9 fa 00 00 00       	jmp    0x4672df
4671e5:	8b 49 24             	mov    0x24(%ecx),%ecx
4671e8:	85 c9                	test   %ecx,%ecx
4671ea:	74 06                	je     0x4671f2
4671ec:	5d                   	pop    %ebp
4671ed:	e9 05 fc ff ff       	jmp    0x466df7
4671f2:	80 7d 0c 00          	cmpb   $0x0,0xc(%ebp)
4671f6:	74 0d                	je     0x467205
4671f8:	8b 4d 08             	mov    0x8(%ebp),%ecx
4671fb:	68 10 f9 48 00       	push   $0x48f910
467200:	e8 f3 29 fa ff       	call   0x409bf8
467205:	33 c0                	xor    %eax,%eax
467207:	5d                   	pop    %ebp
467208:	c2 08 00             	ret    $0x8
46720b:	e8 32 fd ff ff       	call   0x466f42
467210:	0f b6 c0             	movzbl %al,%eax
467213:	c1 e8 02             	shr    $0x2,%eax
467216:	83 e0 01             	and    $0x1,%eax
467219:	c3                   	ret
46721a:	55                   	push   %ebp