460f31:	e8 12 6c fa ff       	call   0x407b48
460f36:	85 f0                	test   %esi,%eax
460f38:	75 05                	jne    0x460f3f
460f3a:	33 c0                	xor    %eax,%eax
460f3c:	5e                   	pop    %esi
460f3d:	5b                   	pop    %ebx
460f3e:	c3                   	ret
460f3f:	b0 01                	mov    $0x1,%al
460f41:	5e                   	pop    %esi
460f42:	5b                   	pop    %ebx
460f43:	c3                   	ret
460f44:	55                   	push   %ebp
460f45:	8b ec                	mov    %esp,%ebp
460f47:	53                   	push   %ebx
460f48:	bb 00 00 10 00       	mov    $0x100000,%ebx
460f4d:	66 83 f8 01          	cmp    $0x1,%ax
460f51:	75 05                	jne    0x460f58
460f53:	bb 00 00 20 00       	mov    $0x200000,%ebx
460f58:	6a f0                	push   $0xfffffff0
460f5a:	8b 45 08             	mov    0x8(%ebp),%eax
460f5d:	8b 40 fc             	mov    -0x4(%eax),%eax
460f60:	8b 40 04             	mov    0x4(%eax),%eax
460f63:	e8 ec df fe ff       	call   0x44ef54
460f68:	50                   	push   %eax
460f69:	e8 da 6b fa ff       	call   0x407b48
460f6e:	85 d8                	test   %ebx,%eax
460f70:	0f 95 c0             	setne  %al
460f73:	5b                   	pop    %ebx
460f74:	5d                   	pop    %ebp
460f75:	c3                   	ret
460f76:	8b c0                	mov    %eax,%eax
460f78:	55                   	push   %ebp
460f79:	8b ec                	mov    %esp,%ebp
460f7b:	53                   	push   %ebx
460f7c:	56                   	push   %esi
460f7d:	57                   	push   %edi
460f7e:	8b fa                	mov    %edx,%edi
460f80:	8b f0                	mov    %eax,%esi
460f82:	33 db                	xor    %ebx,%ebx
460f84:	8b 45 08             	mov    0x8(%ebp),%eax
460f87:	80 78 fb 00          	cmpb   $0x0,-0x5(%eax)
460f8b:	75 60                	jne    0x460fed
460f8d:	8b 45 08             	mov    0x8(%ebp),%eax
460f90:	80 78 fa 00          	cmpb   $0x0,-0x6(%eax)
460f94:	74 29                	je     0x460fbf
460f96:	8b 45 08             	mov    0x8(%ebp),%eax
460f99:	50                   	push   %eax
460f9a:	8b c6                	mov    %esi,%eax
460f9c:	e8 a3 ff ff ff       	call   0x460f44
460fa1:	59                   	pop    %ecx
460fa2:	84 c0                	test   %al,%al
460fa4:	75 19                	jne    0x460fbf
460fa6:	0f b7 c7             	movzwl %di,%eax
460fa9:	50                   	push   %eax
460faa:	a1 04 6e 6a 00       	mov    0x6a6e04,%eax
460faf:	8b 00                	mov    (%eax),%eax
460fb1:	ff d0                	call   *%eax
460fb3:	8b d8                	mov    %eax,%ebx
460fb5:	8b 45 08             	mov    0x8(%ebp),%eax
460fb8:	2b 58 f4             	sub    -0xc(%eax),%ebx
460fbb:	f7 db                	neg    %ebx
460fbd:	eb 2e                	jmp    0x460fed
460fbf:	8b 45 08             	mov    0x8(%ebp),%eax
460fc2:	80 78 fa 00          	cmpb   $0x0,-0x6(%eax)
460fc6:	75 25                	jne    0x460fed
460fc8:	8b 45 08             	mov    0x8(%ebp),%eax
460fcb:	50                   	push   %eax
460fcc:	8b c6                	mov    %esi,%eax
460fce:	e8 71 ff ff ff       	call   0x460f44
460fd3:	59                   	pop    %ecx
460fd4:	84 c0                	test   %al,%al
460fd6:	74 15                	je     0x460fed
460fd8:	0f b7 c7             	movzwl %di,%eax
460fdb:	50                   	push   %eax
460fdc:	a1 04 6e 6a 00       	mov    0x6a6e04,%eax
460fe1:	8b 00                	mov    (%eax),%eax
460fe3:	ff d0                	call   *%eax
460fe5:	8b d8                	mov    %eax,%ebx
460fe7:	8b 45 08             	mov    0x8(%ebp),%eax
460fea:	2b 58 f4             	sub    -0xc(%eax),%ebx
460fed:	8b c3                	mov    %ebx,%eax
460fef:	5f                   	pop    %edi
460ff0:	5e                   	pop    %esi
460ff1:	5b                   	pop    %ebx
460ff2:	5d                   	pop    %ebp
460ff3:	c3                   	ret
460ff4:	55                   	push   %ebp
460ff5:	8b ec                	mov    %esp,%ebp
460ff7:	83 c4 f4             	add    $0xfffffff4,%esp
460ffa:	53                   	push   %ebx
460ffb:	88 4d fa             	mov    %cl,-0x6(%ebp)
460ffe:	88 55 fb             	mov    %dl,-0x5(%ebp)
461001:	89 45 fc             	mov    %eax,-0x4(%ebp)
461004:	6a f0                	push   $0xfffffff0
461006:	8b 45 fc             	mov    -0x4(%ebp),%eax
461009:	8b 40 04             	mov    0x4(%eax),%eax
46100c:	e8 43 df fe ff       	call   0x44ef54
461011:	50                   	push   %eax
461012:	e8 31 6b fa ff       	call   0x407b48
461017:	a9 00 00 84 00       	test   $0x840000,%eax
46101c:	0f 95 c0             	setne  %al
46101f:	83 e0 7f             	and    $0x7f,%eax
461022:	89 45 f4             	mov    %eax,-0xc(%ebp)
461025:	8b 45 fc             	mov    -0x4(%ebp),%eax
461028:	80 78 18 01          	cmpb   $0x1,0x18(%eax)
46102c:	75 20                	jne    0x46104e
46102e:	55                   	push   %ebp
46102f:	66 ba 15 00          	mov    $0x15,%dx
461033:	33 c0                	xor    %eax,%eax
461035:	e8 3e ff ff ff       	call   0x460f78
46103a:	59                   	pop    %ecx
46103b:	8b d8                	mov    %eax,%ebx
46103d:	8b 45 fc             	mov    -0x4(%ebp),%eax
461040:	8b 40 04             	mov    0x4(%eax),%eax
461043:	e8 cc 71 fe ff       	call   0x448214
461048:	03 d8                	add    %eax,%ebx
46104a:	8b c3                	mov    %ebx,%eax
46104c:	eb 20                	jmp    0x46106e
46104e:	55                   	push   %ebp
46104f:	66 ba 14 00          	mov    $0x14,%dx
461053:	66 b8 01 00          	mov    $0x1,%ax
461057:	e8 1c ff ff ff       	call   0x460f78
46105c:	59                   	pop    %ecx
46105d:	8b d8                	mov    %eax,%ebx
46105f:	8b 45 fc             	mov    -0x4(%ebp),%eax
461062:	8b 40 04             	mov    0x4(%eax),%eax
461065:	e8 66 71 fe ff       	call   0x4481d0
46106a:	03 d8                	add    %eax,%ebx
46106c:	8b c3                	mov    %ebx,%eax
46106e:	5b                   	pop    %ebx
46106f:	8b e5                	mov    %ebp,%esp
461071:	5d                   	pop    %ebp
461072:	c3                   	ret
461073:	90                   	nop
461074:	53                   	push   %ebx
461075:	8b d8                	mov    %eax,%ebx
461077:	33 c9                	xor    %ecx,%ecx
461079:	33 d2                	xor    %edx,%edx
46107b:	8b c3                	mov    %ebx,%eax
46107d:	e8 72 ff ff ff       	call   0x460ff4
461082:	3b 43 10             	cmp    0x10(%ebx),%eax
461085:	0f 9c c0             	setl   %al
461088:	5b                   	pop    %ebx
461089:	c3                   	ret
46108a:	8b c0                	mov    %eax,%eax
46108c:	55                   	push   %ebp
46108d:	8b ec                	mov    %esp,%ebp
46108f:	83 c4 e4             	add    $0xffffffe4,%esp
461092:	53                   	push   %ebx
461093:	56                   	push   %esi
461094:	c7 45 e4 1c 00 00 00 	movl   $0x1c,-0x1c(%ebp)
46109b:	c7 45 e8 10 00 00 00 	movl   $0x10,-0x18(%ebp)
4610a2:	33 db                	xor    %ebx,%ebx
4610a4:	8b 45 08             	mov    0x8(%ebp),%eax
4610a7:	8b 40 fc             	mov    -0x4(%eax),%eax
4610aa:	80 78 18 01          	cmpb   $0x1,0x18(%eax)
4610ae:	75 05                	jne    0x4610b5
4610b0:	bb 01 00 00 00       	mov    $0x1,%ebx
4610b5:	8b 45 08             	mov    0x8(%ebp),%eax
4610b8:	8b 70 f8             	mov    -0x8(%eax),%esi
4610bb:	0f bf 76 06          	movswl 0x6(%esi),%esi
4610bf:	8d 45 e4             	lea    -0x1c(%ebp),%eax
4610c2:	50                   	push   %eax
4610c3:	53                   	push   %ebx
4610c4:	8b 45 08             	mov    0x8(%ebp),%eax
4610c7:	8b 40 fc             	mov    -0x4(%eax),%eax
4610ca:	8b 40 04             	mov    0x4(%eax),%eax
4610cd:	e8 82 de fe ff       	call   0x44ef54
4610d2:	50                   	push   %eax
4610d3:	a1 68 6c 6a 00       	mov    0x6a6c68,%eax
4610d8:	8b 00                	mov    (%eax),%eax
4610da:	ff d0                	call   *%eax
4610dc:	85 c0                	test   %eax,%eax
4610de:	74 03                	je     0x4610e3
4610e0:	8b 75 fc             	mov    -0x4(%ebp),%esi
4610e3:	8b c6                	mov    %esi,%eax
4610e5:	5e                   	pop    %esi
4610e6:	5b                   	pop    %ebx
4610e7:	8b e5                	mov    %ebp,%esp
4610e9:	5d                   	pop    %ebp
4610ea:	c3                   	ret
4610eb:	90                   	nop
4610ec:	55                   	push   %ebp
4610ed:	8b ec                	mov    %esp,%ebp
4610ef:	83 c4 f0             	add    $0xfffffff0,%esp
4610f2:	53                   	push   %ebx
4610f3:	56                   	push   %esi
4610f4:	57                   	push   %edi
4610f5:	89 55 f8             	mov    %edx,-0x8(%ebp)
4610f8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4610fb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4610fe:	80 78 1f 00          	cmpb   $0x0,0x1f(%eax)
461102:	0f 84 9e 01 00 00    	je     0x4612a6
461108:	8b 45 f8             	mov    -0x8(%ebp),%eax
46110b:	66 8b 40 04          	mov    0x4(%eax),%ax
46110f:	66 83 e8 04          	sub    $0x4,%ax
461113:	0f 83 8d 01 00 00    	jae    0x4612a6
461119:	8b 45 f8             	mov    -0x8(%ebp),%eax
46111c:	66 8b 40 04          	mov    0x4(%eax),%ax
461120:	66 83 e8 02          	sub    $0x2,%ax
461124:	72 08                	jb     0x46112e
461126:	66 83 e8 02          	sub    $0x2,%ax
46112a:	72 23                	jb     0x46114f
46112c:	eb 47                	jmp    0x461175
46112e:	8b 45 fc             	mov    -0x4(%ebp),%eax
461131:	0f b7 58 08          	movzwl 0x8(%eax),%ebx
461135:	8b c3                	mov    %ebx,%eax
461137:	8b 55 fc             	mov    -0x4(%ebp),%edx
46113a:	8b 4a 40             	mov    0x40(%edx),%ecx
46113d:	99                   	cltd
46113e:	f7 f9                	idiv   %ecx
461140:	89 45 f4             	mov    %eax,-0xc(%ebp)
461143:	8b c3                	mov    %ebx,%eax
461145:	99                   	cltd
461146:	f7 f9                	idiv   %ecx
461148:	89 55 f0             	mov    %edx,-0x10(%ebp)
46114b:	8b f1                	mov    %ecx,%esi
46114d:	eb 32                	jmp    0x461181
46114f:	8b 45 fc             	mov    -0x4(%ebp),%eax
461152:	0f b7 40 0a          	movzwl 0xa(%eax),%eax
461156:	89 45 f4             	mov    %eax,-0xc(%ebp)
461159:	8b 45 fc             	mov    -0x4(%ebp),%eax
46115c:	8b 48 3c             	mov    0x3c(%eax),%ecx
46115f:	8b 45 f4             	mov    -0xc(%ebp),%eax
461162:	99                   	cltd
461163:	f7 f9                	idiv   %ecx
461165:	89 55 f0             	mov    %edx,-0x10(%ebp)
461168:	8b 45 f4             	mov    -0xc(%ebp),%eax
46116b:	99                   	cltd
46116c:	f7 f9                	idiv   %ecx
46116e:	89 45 f4             	mov    %eax,-0xc(%ebp)
461171:	8b f1                	mov    %ecx,%esi
461173:	eb 0c                	jmp    0x461181
461175:	33 f6                	xor    %esi,%esi
461177:	33 c0                	xor    %eax,%eax
461179:	89 45 f4             	mov    %eax,-0xc(%ebp)
46117c:	33 c0                	xor    %eax,%eax
46117e:	89 45 f0             	mov    %eax,-0x10(%ebp)
461181:	33 ff                	xor    %edi,%edi
461183:	85 f6                	test   %esi,%esi
461185:	0f 8e 9b 00 00 00    	jle    0x461226
46118b:	e8 28 6d fa ff       	call   0x407eb8
461190:	8b d8                	mov    %eax,%ebx
461192:	8b c3                	mov    %ebx,%eax
461194:	2b c7                	sub    %edi,%eax
461196:	8b 55 fc             	mov    -0x4(%ebp),%edx
461199:	8b 52 20             	mov    0x20(%edx),%edx
46119c:	3b c2                	cmp    %edx,%eax
46119e:	7d 08                	jge    0x4611a8
4611a0:	2b d0                	sub    %eax,%edx
4611a2:	52                   	push   %edx
4611a3:	e8 c4 d1 fa ff       	call   0x40e36c
4611a8:	8b fb                	mov    %ebx,%edi
4611aa:	8b 45 f8             	mov    -0x8(%ebp),%eax
4611ad:	66 8b 40 04          	mov    0x4(%eax),%ax
4611b1:	66 83 e8 01          	sub    $0x1,%ax
4611b5:	72 0e                	jb     0x4611c5
4611b7:	74 1f                	je     0x4611d8
4611b9:	66 ff c8             	dec    %ax
4611bc:	74 2d                	je     0x4611eb
4611be:	66 ff c8             	dec    %ax
4611c1:	74 3b                	je     0x4611fe
4611c3:	eb 4a                	jmp    0x46120f
4611c5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4611c8:	8b 50 0c             	mov    0xc(%eax),%edx
4611cb:	2b 55 f4             	sub    -0xc(%ebp),%edx
4611ce:	8b 45 fc             	mov    -0x4(%ebp),%eax
4611d1:	e8 86 02 00 00       	call   0x46145c
4611d6:	eb 37                	jmp    0x46120f
4611d8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4611db:	8b 50 0c             	mov    0xc(%eax),%edx
4611de:	03 55 f4             	add    -0xc(%ebp),%edx
4611e1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4611e4:	e8 73 02 00 00       	call   0x46145c
4611e9:	eb 24                	jmp    0x46120f
4611eb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4611ee:	8b 50 0c             	mov    0xc(%eax),%edx
4611f1:	2b 55 f4             	sub    -0xc(%ebp),%edx
4611f4:	8b 45 fc             	mov    -0x4(%ebp),%eax
4611f7:	e8 60 02 00 00       	call   0x46145c
4611fc:	eb 11                	jmp    0x46120f
4611fe:	8b 45 fc             	mov    -0x4(%ebp),%eax
461201:	8b 50 0c             	mov    0xc(%eax),%edx
461204:	03 55 f4             	add    -0xc(%ebp),%edx
461207:	8b 45 fc             	mov    -0x4(%ebp),%eax
46120a:	e8 4d 02 00 00       	call   0x46145c
46120f:	8b 45 fc             	mov    -0x4(%ebp),%eax
461212:	8b 40 04             	mov    0x4(%eax),%eax
461215:	8b 10                	mov    (%eax),%edx
461217:	ff 92 88 00 00 00    	call   *0x88(%edx)
46121d:	4e                   	dec    %esi
46121e:	85 f6                	test   %esi,%esi
461220:	0f 8f 65 ff ff ff    	jg     0x46118b
461226:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
46122a:	0f 8e aa 01 00 00    	jle    0x4613da
461230:	8b 45 f8             	mov    -0x8(%ebp),%eax
461233:	66 8b 40 04          	mov    0x4(%eax),%ax
461237:	66 83 e8 01          	sub    $0x1,%ax
46123b:	72 11                	jb     0x46124e
46123d:	74 25                	je     0x461264
46123f:	66 ff c8             	dec    %ax
461242:	74 36                	je     0x46127a
461244:	66 ff c8             	dec    %ax
461247:	74 47                	je     0x461290
461249:	e9 8c 01 00 00       	jmp    0x4613da
46124e:	8b 45 fc             	mov    -0x4(%ebp),%eax
461251:	8b 50 0c             	mov    0xc(%eax),%edx
461254:	2b 55 f0             	sub    -0x10(%ebp),%edx
461257:	8b 45 fc             	mov    -0x4(%ebp),%eax
46125a:	e8 fd 01 00 00       	call   0x46145c
46125f:	e9 76 01 00 00       	jmp    0x4613da
461264:	8b 45 fc             	mov    -0x4(%ebp),%eax
461267:	8b 50 0c             	mov    0xc(%eax),%edx
46126a:	03 55 f0             	add    -0x10(%ebp),%edx
46126d:	8b 45 fc             	mov    -0x4(%ebp),%eax
461270:	e8 e7 01 00 00       	call   0x46145c
461275:	e9 60 01 00 00       	jmp    0x4613da
46127a:	8b 45 fc             	mov    -0x4(%ebp),%eax
46127d:	8b 50 0c             	mov    0xc(%eax),%edx
461280:	2b 55 f0             	sub    -0x10(%ebp),%edx
461283:	8b 45 fc             	mov    -0x4(%ebp),%eax
461286:	e8 d1 01 00 00       	call   0x46145c
46128b:	e9 4a 01 00 00       	jmp    0x4613da
461290:	8b 45 fc             	mov    -0x4(%ebp),%eax
461293:	8b 50 0c             	mov    0xc(%eax),%edx
461296:	03 55 f0             	add    -0x10(%ebp),%edx
461299:	8b 45 fc             	mov    -0x4(%ebp),%eax
46129c:	e8 bb 01 00 00       	call   0x46145c
4612a1:	e9 34 01 00 00       	jmp    0x4613da
4612a6:	8b 45 f8             	mov    -0x8(%ebp),%eax
4612a9:	0f bf 40 04          	movswl 0x4(%eax),%eax
4612ad:	83 f8 07             	cmp    $0x7,%eax
4612b0:	0f 87 24 01 00 00    	ja     0x4613da
4612b6:	ff 24 85 bd 12 46 00 	jmp    *0x4612bd(,%eax,4)
4612bd:	dd 12                	fstl   (%edx)
4612bf:	46                   	inc    %esi
4612c0:	00 f9                	add    %bh,%cl
4612c2:	12 46 00             	adc    0x0(%esi),%al
4612c5:	15 13 46 00 36       	adc    $0x36004613,%eax
4612ca:	13 46 00             	adc    0x0(%esi),%eax
4612cd:	57                   	push   %edi
4612ce:	13 46 00             	adc    0x0(%esi),%eax
4612d1:	87 13                	xchg   %edx,(%ebx)
4612d3:	46                   	inc    %esi
4612d4:	00 c0                	add    %al,%al
4612d6:	13 46 00             	adc    0x0(%esi),%eax
4612d9:	cc                   	int3
4612da:	13 46 00             	adc    0x0(%esi),%eax
4612dd:	8b 45 fc             	mov    -0x4(%ebp),%eax
4612e0:	8b 50 0c             	mov    0xc(%eax),%edx