642cdd:	8b 44 24 10          	mov    0x10(%esp),%eax
642ce1:	8b 54 24 14          	mov    0x14(%esp),%edx
642ce5:	0f ac d0 0e          	shrd   $0xe,%edx,%eax
642ce9:	c1 ea 0e             	shr    $0xe,%edx
642cec:	52                   	push   %edx
642ced:	50                   	push   %eax
642cee:	8b 54 24 18          	mov    0x18(%esp),%edx
642cf2:	c1 e2 12             	shl    $0x12,%edx
642cf5:	33 c0                	xor    %eax,%eax
642cf7:	0b 04 24             	or     (%esp),%eax
642cfa:	0b 54 24 04          	or     0x4(%esp),%edx
642cfe:	83 c4 08             	add    $0x8,%esp
642d01:	52                   	push   %edx
642d02:	50                   	push   %eax
642d03:	8b 44 24 18          	mov    0x18(%esp),%eax
642d07:	8b 54 24 1c          	mov    0x1c(%esp),%edx
642d0b:	0f ac d0 12          	shrd   $0x12,%edx,%eax
642d0f:	c1 ea 12             	shr    $0x12,%edx
642d12:	52                   	push   %edx
642d13:	50                   	push   %eax
642d14:	8b 54 24 20          	mov    0x20(%esp),%edx
642d18:	c1 e2 0e             	shl    $0xe,%edx
642d1b:	33 c0                	xor    %eax,%eax
642d1d:	0b 04 24             	or     (%esp),%eax
642d20:	0b 54 24 04          	or     0x4(%esp),%edx
642d24:	83 c4 08             	add    $0x8,%esp
642d27:	33 04 24             	xor    (%esp),%eax
642d2a:	33 54 24 04          	xor    0x4(%esp),%edx
642d2e:	83 c4 08             	add    $0x8,%esp
642d31:	52                   	push   %edx
642d32:	50                   	push   %eax
642d33:	8b 44 24 1c          	mov    0x1c(%esp),%eax
642d37:	c1 e8 09             	shr    $0x9,%eax
642d3a:	33 d2                	xor    %edx,%edx
642d3c:	52                   	push   %edx
642d3d:	50                   	push   %eax
642d3e:	8b 44 24 20          	mov    0x20(%esp),%eax
642d42:	8b 54 24 24          	mov    0x24(%esp),%edx
642d46:	0f a4 c2 17          	shld   $0x17,%eax,%edx
642d4a:	c1 e0 17             	shl    $0x17,%eax
642d4d:	0b 04 24             	or     (%esp),%eax
642d50:	0b 54 24 04          	or     0x4(%esp),%edx
642d54:	83 c4 08             	add    $0x8,%esp
642d57:	33 04 24             	xor    (%esp),%eax
642d5a:	33 54 24 04          	xor    0x4(%esp),%edx
642d5e:	83 c4 08             	add    $0x8,%esp
642d61:	03 44 24 28          	add    0x28(%esp),%eax
642d65:	13 54 24 2c          	adc    0x2c(%esp),%edx
642d69:	52                   	push   %edx
642d6a:	50                   	push   %eax
642d6b:	8b 44 24 18          	mov    0x18(%esp),%eax
642d6f:	8b 54 24 1c          	mov    0x1c(%esp),%edx
642d73:	23 44 24 20          	and    0x20(%esp),%eax
642d77:	23 54 24 24          	and    0x24(%esp),%edx
642d7b:	52                   	push   %edx
642d7c:	50                   	push   %eax
642d7d:	8b 44 24 20          	mov    0x20(%esp),%eax
642d81:	8b 54 24 24          	mov    0x24(%esp),%edx
642d85:	f7 d0                	not    %eax
642d87:	f7 d2                	not    %edx
642d89:	23 44 24 30          	and    0x30(%esp),%eax
642d8d:	23 54 24 34          	and    0x34(%esp),%edx
642d91:	33 04 24             	xor    (%esp),%eax
642d94:	33 54 24 04          	xor    0x4(%esp),%edx
642d98:	83 c4 08             	add    $0x8,%esp
642d9b:	03 04 24             	add    (%esp),%eax
642d9e:	13 54 24 04          	adc    0x4(%esp),%edx
642da2:	83 c4 08             	add    $0x8,%esp
642da5:	05 3f 21 fb 98       	add    $0x98fb213f,%eax
642daa:	81 d2 c8 27 03 b0    	adc    $0xb00327c8,%edx
642db0:	03 84 24 20 01 00 00 	add    0x120(%esp),%eax
642db7:	13 94 24 24 01 00 00 	adc    0x124(%esp),%edx
642dbe:	89 44 24 40          	mov    %eax,0x40(%esp)
642dc2:	89 54 24 44          	mov    %edx,0x44(%esp)
642dc6:	8b 44 24 30          	mov    0x30(%esp),%eax
642dca:	8b 54 24 34          	mov    0x34(%esp),%edx
642dce:	0f ac d0 1c          	shrd   $0x1c,%edx,%eax
642dd2:	c1 ea 1c             	shr    $0x1c,%edx
642dd5:	52                   	push   %edx
642dd6:	50                   	push   %eax
642dd7:	8b 54 24 38          	mov    0x38(%esp),%edx
642ddb:	c1 e2 04             	shl    $0x4,%edx
642dde:	33 c0                	xor    %eax,%eax
642de0:	0b 04 24             	or     (%esp),%eax
642de3:	0b 54 24 04          	or     0x4(%esp),%edx
642de7:	83 c4 08             	add    $0x8,%esp
642dea:	52                   	push   %edx
642deb:	50                   	push   %eax
642dec:	8b 44 24 3c          	mov    0x3c(%esp),%eax
642df0:	c1 e8 02             	shr    $0x2,%eax
642df3:	33 d2                	xor    %edx,%edx
642df5:	52                   	push   %edx
642df6:	50                   	push   %eax
642df7:	8b 44 24 40          	mov    0x40(%esp),%eax
642dfb:	8b 54 24 44          	mov    0x44(%esp),%edx
642dff:	0f a4 c2 1e          	shld   $0x1e,%eax,%edx
642e03:	c1 e0 1e             	shl    $0x1e,%eax
642e06:	0b 04 24             	or     (%esp),%eax
642e09:	0b 54 24 04          	or     0x4(%esp),%edx
642e0d:	83 c4 08             	add    $0x8,%esp
642e10:	33 04 24             	xor    (%esp),%eax
642e13:	33 54 24 04          	xor    0x4(%esp),%edx
642e17:	83 c4 08             	add    $0x8,%esp
642e1a:	52                   	push   %edx
642e1b:	50                   	push   %eax
642e1c:	8b 44 24 3c          	mov    0x3c(%esp),%eax
642e20:	c1 e8 07             	shr    $0x7,%eax
642e23:	33 d2                	xor    %edx,%edx
642e25:	52                   	push   %edx
642e26:	50                   	push   %eax
642e27:	8b 44 24 40          	mov    0x40(%esp),%eax
642e2b:	8b 54 24 44          	mov    0x44(%esp),%edx
642e2f:	0f a4 c2 19          	shld   $0x19,%eax,%edx
642e33:	c1 e0 19             	shl    $0x19,%eax
642e36:	0b 04 24             	or     (%esp),%eax
642e39:	0b 54 24 04          	or     0x4(%esp),%edx
642e3d:	83 c4 08             	add    $0x8,%esp
642e40:	33 04 24             	xor    (%esp),%eax
642e43:	33 54 24 04          	xor    0x4(%esp),%edx
642e47:	83 c4 08             	add    $0x8,%esp
642e4a:	52                   	push   %edx
642e4b:	50                   	push   %eax
642e4c:	8b 44 24 38          	mov    0x38(%esp),%eax
642e50:	8b 54 24 3c          	mov    0x3c(%esp),%edx
642e54:	23 44 24 40          	and    0x40(%esp),%eax
642e58:	23 54 24 44          	and    0x44(%esp),%edx
642e5c:	52                   	push   %edx
642e5d:	50                   	push   %eax
642e5e:	8b 44 24 40          	mov    0x40(%esp),%eax
642e62:	8b 54 24 44          	mov    0x44(%esp),%edx
642e66:	23 44 24 10          	and    0x10(%esp),%eax
642e6a:	23 54 24 14          	and    0x14(%esp),%edx
642e6e:	33 04 24             	xor    (%esp),%eax
642e71:	33 54 24 04          	xor    0x4(%esp),%edx
642e75:	83 c4 08             	add    $0x8,%esp
642e78:	52                   	push   %edx
642e79:	50                   	push   %eax
642e7a:	8b 44 24 48          	mov    0x48(%esp),%eax
642e7e:	8b 54 24 4c          	mov    0x4c(%esp),%edx
642e82:	23 44 24 10          	and    0x10(%esp),%eax
642e86:	23 54 24 14          	and    0x14(%esp),%edx
642e8a:	33 04 24             	xor    (%esp),%eax
642e8d:	33 54 24 04          	xor    0x4(%esp),%edx
642e91:	83 c4 08             	add    $0x8,%esp
642e94:	03 04 24             	add    (%esp),%eax
642e97:	13 54 24 04          	adc    0x4(%esp),%edx
642e9b:	83 c4 08             	add    $0x8,%esp
642e9e:	89 44 24 48          	mov    %eax,0x48(%esp)
642ea2:	89 54 24 4c          	mov    %edx,0x4c(%esp)
642ea6:	8b 44 24 08          	mov    0x8(%esp),%eax
642eaa:	8b 54 24 0c          	mov    0xc(%esp),%edx
642eae:	03 44 24 40          	add    0x40(%esp),%eax
642eb2:	13 54 24 44          	adc    0x44(%esp),%edx
642eb6:	89 44 24 08          	mov    %eax,0x8(%esp)
642eba:	89 54 24 0c          	mov    %edx,0xc(%esp)
642ebe:	8b 44 24 40          	mov    0x40(%esp),%eax
642ec2:	8b 54 24 44          	mov    0x44(%esp),%edx
642ec6:	03 44 24 48          	add    0x48(%esp),%eax
642eca:	13 54 24 4c          	adc    0x4c(%esp),%edx
642ece:	89 44 24 28          	mov    %eax,0x28(%esp)
642ed2:	89 54 24 2c          	mov    %edx,0x2c(%esp)
642ed6:	8b 44 24 08          	mov    0x8(%esp),%eax
642eda:	8b 54 24 0c          	mov    0xc(%esp),%edx
642ede:	0f ac d0 0e          	shrd   $0xe,%edx,%eax
642ee2:	c1 ea 0e             	shr    $0xe,%edx
642ee5:	52                   	push   %edx
642ee6:	50                   	push   %eax
642ee7:	8b 54 24 10          	mov    0x10(%esp),%edx
642eeb:	c1 e2 12             	shl    $0x12,%edx
642eee:	33 c0                	xor    %eax,%eax
642ef0:	0b 04 24             	or     (%esp),%eax
642ef3:	0b 54 24 04          	or     0x4(%esp),%edx
642ef7:	83 c4 08             	add    $0x8,%esp
642efa:	52                   	push   %edx
642efb:	50                   	push   %eax
642efc:	8b 44 24 10          	mov    0x10(%esp),%eax
642f00:	8b 54 24 14          	mov    0x14(%esp),%edx
642f04:	0f ac d0 12          	shrd   $0x12,%edx,%eax
642f08:	c1 ea 12             	shr    $0x12,%edx
642f0b:	52                   	push   %edx
642f0c:	50                   	push   %eax
642f0d:	8b 54 24 18          	mov    0x18(%esp),%edx
642f11:	c1 e2 0e             	shl    $0xe,%edx
642f14:	33 c0                	xor    %eax,%eax
642f16:	0b 04 24             	or     (%esp),%eax
642f19:	0b 54 24 04          	or     0x4(%esp),%edx
642f1d:	83 c4 08             	add    $0x8,%esp
642f20:	33 04 24             	xor    (%esp),%eax
642f23:	33 54 24 04          	xor    0x4(%esp),%edx
642f27:	83 c4 08             	add    $0x8,%esp
642f2a:	52                   	push   %edx
642f2b:	50                   	push   %eax
642f2c:	8b 44 24 14          	mov    0x14(%esp),%eax
642f30:	c1 e8 09             	shr    $0x9,%eax
642f33:	33 d2                	xor    %edx,%edx
642f35:	52                   	push   %edx
642f36:	50                   	push   %eax
642f37:	8b 44 24 18          	mov    0x18(%esp),%eax
642f3b:	8b 54 24 1c          	mov    0x1c(%esp),%edx
642f3f:	0f a4 c2 17          	shld   $0x17,%eax,%edx
642f43:	c1 e0 17             	shl    $0x17,%eax
642f46:	0b 04 24             	or     (%esp),%eax
642f49:	0b 54 24 04          	or     0x4(%esp),%edx
642f4d:	83 c4 08             	add    $0x8,%esp
642f50:	33 04 24             	xor    (%esp),%eax
642f53:	33 54 24 04          	xor    0x4(%esp),%edx
642f57:	83 c4 08             	add    $0x8,%esp
642f5a:	03 44 24 20          	add    0x20(%esp),%eax
642f5e:	13 54 24 24          	adc    0x24(%esp),%edx
642f62:	52                   	push   %edx
642f63:	50                   	push   %eax
642f64:	8b 44 24 10          	mov    0x10(%esp),%eax
642f68:	8b 54 24 14          	mov    0x14(%esp),%edx
642f6c:	23 44 24 18          	and    0x18(%esp),%eax
642f70:	23 54 24 1c          	and    0x1c(%esp),%edx
642f74:	52                   	push   %edx
642f75:	50                   	push   %eax
642f76:	8b 44 24 18          	mov    0x18(%esp),%eax
642f7a:	8b 54 24 1c          	mov    0x1c(%esp),%edx
642f7e:	f7 d0                	not    %eax
642f80:	f7 d2                	not    %edx
642f82:	23 44 24 28          	and    0x28(%esp),%eax
642f86:	23 54 24 2c          	and    0x2c(%esp),%edx
642f8a:	33 04 24             	xor    (%esp),%eax
642f8d:	33 54 24 04          	xor    0x4(%esp),%edx
642f91:	83 c4 08             	add    $0x8,%esp
642f94:	03 04 24             	add    (%esp),%eax
642f97:	13 54 24 04          	adc    0x4(%esp),%edx
642f9b:	83 c4 08             	add    $0x8,%esp
642f9e:	05 e4 0e ef be       	add    $0xbeef0ee4,%eax
642fa3:	81 d2 c7 7f 59 bf    	adc    $0xbf597fc7,%edx
642fa9:	03 84 24 28 01 00 00 	add    0x128(%esp),%eax
642fb0:	13 94 24 2c 01 00 00 	adc    0x12c(%esp),%edx
642fb7:	89 44 24 40          	mov    %eax,0x40(%esp)
642fbb:	89 54 24 44          	mov    %edx,0x44(%esp)
642fbf:	8b 44 24 28          	mov    0x28(%esp),%eax
642fc3:	8b 54 24 2c          	mov    0x2c(%esp),%edx
642fc7:	0f ac d0 1c          	shrd   $0x1c,%edx,%eax
642fcb:	c1 ea 1c             	shr    $0x1c,%edx
642fce:	52                   	push   %edx
642fcf:	50                   	push   %eax
642fd0:	8b 54 24 30          	mov    0x30(%esp),%edx
642fd4:	c1 e2 04             	shl    $0x4,%edx
642fd7:	33 c0                	xor    %eax,%eax
642fd9:	0b 04 24             	or     (%esp),%eax
642fdc:	0b 54 24 04          	or     0x4(%esp),%edx
642fe0:	83 c4 08             	add    $0x8,%esp
642fe3:	52                   	push   %edx
642fe4:	50                   	push   %eax
642fe5:	8b 44 24 34          	mov    0x34(%esp),%eax
642fe9:	c1 e8 02             	shr    $0x2,%eax
642fec:	33 d2                	xor    %edx,%edx
642fee:	52                   	push   %edx
642fef:	50                   	push   %eax
642ff0:	8b 44 24 38          	mov    0x38(%esp),%eax
642ff4:	8b 54 24 3c          	mov    0x3c(%esp),%edx
642ff8:	0f a4 c2 1e          	shld   $0x1e,%eax,%edx
642ffc:	c1 e0 1e             	shl    $0x1e,%eax
642fff:	0b 04 24             	or     (%esp),%eax
643002:	0b 54 24 04          	or     0x4(%esp),%edx
643006:	83 c4 08             	add    $0x8,%esp
643009:	33 04 24             	xor    (%esp),%eax
64300c:	33 54 24 04          	xor    0x4(%esp),%edx
643010:	83 c4 08             	add    $0x8,%esp
643013:	52                   	push   %edx
643014:	50                   	push   %eax
643015:	8b 44 24 34          	mov    0x34(%esp),%eax
643019:	c1 e8 07             	shr    $0x7,%eax
64301c:	33 d2                	xor    %edx,%edx
64301e:	52                   	push   %edx
64301f:	50                   	push   %eax
643020:	8b 44 24 38          	mov    0x38(%esp),%eax
643024:	8b 54 24 3c          	mov    0x3c(%esp),%edx
643028:	0f a4 c2 19          	shld   $0x19,%eax,%edx
64302c:	c1 e0 19             	shl    $0x19,%eax
64302f:	0b 04 24             	or     (%esp),%eax
643032:	0b 54 24 04          	or     0x4(%esp),%edx
643036:	83 c4 08             	add    $0x8,%esp
643039:	33 04 24             	xor    (%esp),%eax
64303c:	33 54 24 04          	xor    0x4(%esp),%edx
643040:	83 c4 08             	add    $0x8,%esp
643043:	52                   	push   %edx
643044:	50                   	push   %eax
643045:	8b 44 24 30          	mov    0x30(%esp),%eax
643049:	8b 54 24 34          	mov    0x34(%esp),%edx
64304d:	23 44 24 38          	and    0x38(%esp),%eax
643051:	23 54 24 3c          	and    0x3c(%esp),%edx
643055:	52                   	push   %edx
643056:	50                   	push   %eax
643057:	8b 44 24 38          	mov    0x38(%esp),%eax
64305b:	8b 54 24 3c          	mov    0x3c(%esp),%edx
64305f:	23 44 24 48          	and    0x48(%esp),%eax
643063:	23 54 24 4c          	and    0x4c(%esp),%edx
643067:	33 04 24             	xor    (%esp),%eax
64306a:	33 54 24 04          	xor    0x4(%esp),%edx
64306e:	83 c4 08             	add    $0x8,%esp
643071:	52                   	push   %edx
643072:	50                   	push   %eax
643073:	8b 44 24 40          	mov    0x40(%esp),%eax
643077:	8b 54 24 44          	mov    0x44(%esp),%edx
64307b:	23 44 24 48          	and    0x48(%esp),%eax
64307f:	23 54 24 4c          	and    0x4c(%esp),%edx
643083:	33 04 24             	xor    (%esp),%eax
643086:	33 54 24 04          	xor    0x4(%esp),%edx
64308a:	83 c4 08             	add    $0x8,%esp
64308d:	03 04 24             	add    (%esp),%eax
643090:	13 54 24 04          	adc    0x4(%esp),%edx
643094:	83 c4 08             	add    $0x8,%esp
643097:	89 44 24 48          	mov    %eax,0x48(%esp)
64309b:	89 54 24 4c          	mov    %edx,0x4c(%esp)
64309f:	8b 04 24             	mov    (%esp),%eax
6430a2:	8b 54 24 04          	mov    0x4(%esp),%edx
6430a6:	03 44 24 40          	add    0x40(%esp),%eax
6430aa:	13 54 24 44          	adc    0x44(%esp),%edx
6430ae:	89 04 24             	mov    %eax,(%esp)
6430b1:	89 54 24 04          	mov    %edx,0x4(%esp)
6430b5:	8b 44 24 40          	mov    0x40(%esp),%eax
6430b9:	8b 54 24 44          	mov    0x44(%esp),%edx
6430bd:	03 44 24 48          	add    0x48(%esp),%eax
6430c1:	13 54 24 4c          	adc    0x4c(%esp),%edx
6430c5:	89 44 24 20          	mov    %eax,0x20(%esp)
6430c9:	89 54 24 24          	mov    %edx,0x24(%esp)
6430cd:	8b 04 24             	mov    (%esp),%eax
6430d0:	8b 54 24 04          	mov    0x4(%esp),%edx
6430d4:	0f ac d0 0e          	shrd   $0xe,%edx,%eax
6430d8:	c1 ea 0e             	shr    $0xe,%edx
6430db:	52                   	push   %edx
6430dc:	50                   	push   %eax
6430dd:	8b 54 24 08          	mov    0x8(%esp),%edx
6430e1:	c1 e2 12             	shl    $0x12,%edx
6430e4:	33 c0                	xor    %eax,%eax
6430e6:	0b 04 24             	or     (%esp),%eax
6430e9:	0b 54 24 04          	or     0x4(%esp),%edx
6430ed:	83 c4 08             	add    $0x8,%esp
6430f0:	52                   	push   %edx
6430f1:	50                   	push   %eax
6430f2:	8b 44 24 08          	mov    0x8(%esp),%eax
6430f6:	8b 54 24 0c          	mov    0xc(%esp),%edx
6430fa:	0f ac d0 12          	shrd   $0x12,%edx,%eax
6430fe:	c1 ea 12             	shr    $0x12,%edx
643101:	52                   	push   %edx
643102:	50                   	push   %eax
643103:	8b 54 24 10          	mov    0x10(%esp),%edx
643107:	c1 e2 0e             	shl    $0xe,%edx
64310a:	33 c0                	xor    %eax,%eax
64310c:	0b 04 24             	or     (%esp),%eax
64310f:	0b 54 24 04          	or     0x4(%esp),%edx
643113:	83 c4 08             	add    $0x8,%esp
643116:	33 04 24             	xor    (%esp),%eax
643119:	33 54 24 04          	xor    0x4(%esp),%edx