423c9f:	ff 70 14             	push   0x14(%eax)
423ca2:	ff 70 10             	push   0x10(%eax)
423ca5:	6a 21                	push   $0x21
423ca7:	eb 97                	jmp    0x423c40
423ca9:	85 db                	test   %ebx,%ebx
423cab:	75 03                	jne    0x423cb0
423cad:	8b 7d d4             	mov    -0x2c(%ebp),%edi
423cb0:	57                   	push   %edi
423cb1:	8d 4d d8             	lea    -0x28(%ebp),%ecx
423cb4:	e8 b2 85 fe ff       	call   0x40c26b
423cb9:	8b f0                	mov    %eax,%esi
423cbb:	85 f6                	test   %esi,%esi
423cbd:	79 24                	jns    0x423ce3
423cbf:	a1 00 b0 42 00       	mov    0x42b000,%eax
423cc4:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
423cc9:	74 80                	je     0x423c4b
423ccb:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
423ccf:	0f 84 76 ff ff ff    	je     0x423c4b
423cd5:	56                   	push   %esi
423cd6:	ff 70 14             	push   0x14(%eax)
423cd9:	ff 70 10             	push   0x10(%eax)
423cdc:	6a 22                	push   $0x22
423cde:	e9 5d ff ff ff       	jmp    0x423c40
423ce3:	8b 55 d8             	mov    -0x28(%ebp),%edx
423ce6:	eb 05                	jmp    0x423ced
423ce8:	ba 68 51 40 00       	mov    $0x405168,%edx
423ced:	8b ca                	mov    %edx,%ecx
423cef:	33 ff                	xor    %edi,%edi
423cf1:	8d 71 02             	lea    0x2(%ecx),%esi
423cf4:	66 8b 01             	mov    (%ecx),%ax
423cf7:	83 c1 02             	add    $0x2,%ecx
423cfa:	66 3b c7             	cmp    %di,%ax
423cfd:	75 f5                	jne    0x423cf4
423cff:	2b ce                	sub    %esi,%ecx
423d01:	d1 f9                	sar    $1,%ecx
423d03:	8d 04 4d 02 00 00 00 	lea    0x2(,%ecx,2),%eax
423d0a:	50                   	push   %eax
423d0b:	8b 45 e8             	mov    -0x18(%ebp),%eax
423d0e:	52                   	push   %edx
423d0f:	6a 01                	push   $0x1
423d11:	57                   	push   %edi
423d12:	ff 70 04             	push   0x4(%eax)
423d15:	ff 75 ec             	push   -0x14(%ebp)
423d18:	ff 15 3c c0 42 00    	call   *0x42c03c
423d1e:	85 c0                	test   %eax,%eax
423d20:	74 27                	je     0x423d49
423d22:	a1 00 b0 42 00       	mov    0x42b000,%eax
423d27:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
423d2c:	0f 84 66 fe ff ff    	je     0x423b98
423d32:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
423d36:	0f 84 5c fe ff ff    	je     0x423b98
423d3c:	ff 70 14             	push   0x14(%eax)
423d3f:	ff 70 10             	push   0x10(%eax)
423d42:	6a 23                	push   $0x23
423d44:	e9 44 fe ff ff       	jmp    0x423b8d
423d49:	8b f7                	mov    %edi,%esi
423d4b:	e9 fd fe ff ff       	jmp    0x423c4d
423d50:	8b ff                	mov    %edi,%edi
423d52:	55                   	push   %ebp
423d53:	8b ec                	mov    %esp,%ebp
423d55:	83 ec 10             	sub    $0x10,%esp
423d58:	53                   	push   %ebx
423d59:	33 db                	xor    %ebx,%ebx
423d5b:	56                   	push   %esi
423d5c:	8b 75 08             	mov    0x8(%ebp),%esi
423d5f:	89 5d fc             	mov    %ebx,-0x4(%ebp)
423d62:	89 5d f0             	mov    %ebx,-0x10(%ebp)
423d65:	89 5d f8             	mov    %ebx,-0x8(%ebp)
423d68:	89 5d f4             	mov    %ebx,-0xc(%ebp)
423d6b:	57                   	push   %edi
423d6c:	8b f9                	mov    %ecx,%edi
423d6e:	85 f6                	test   %esi,%esi
423d70:	75 2f                	jne    0x423da1
423d72:	a1 00 b0 42 00       	mov    0x42b000,%eax
423d77:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
423d7c:	74 19                	je     0x423d97
423d7e:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
423d82:	74 13                	je     0x423d97
423d84:	ff 70 14             	push   0x14(%eax)
423d87:	ba e0 52 40 00       	mov    $0x4052e0,%edx
423d8c:	ff 70 10             	push   0x10(%eax)
423d8f:	6a 24                	push   $0x24
423d91:	59                   	pop    %ecx
423d92:	e8 19 36 fe ff       	call   0x4073b0
423d97:	b8 57 00 07 80       	mov    $0x80070057,%eax
423d9c:	e9 33 02 00 00       	jmp    0x423fd4
423da1:	8d 45 f0             	lea    -0x10(%ebp),%eax
423da4:	50                   	push   %eax
423da5:	8d 45 fc             	lea    -0x4(%ebp),%eax
423da8:	50                   	push   %eax
423da9:	53                   	push   %ebx
423daa:	68 02 00 06 00       	push   $0x60002
423daf:	6a 01                	push   $0x1
423db1:	53                   	push   %ebx
423db2:	53                   	push   %ebx
423db3:	68 78 51 40 00       	push   $0x405178
423db8:	68 01 00 00 80       	push   $0x80000001
423dbd:	ff 15 40 c0 42 00    	call   *0x42c040
423dc3:	85 c0                	test   %eax,%eax
423dc5:	74 2f                	je     0x423df6
423dc7:	a1 00 b0 42 00       	mov    0x42b000,%eax
423dcc:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
423dd1:	74 19                	je     0x423dec
423dd3:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
423dd7:	74 13                	je     0x423dec
423dd9:	ff 70 14             	push   0x14(%eax)
423ddc:	ff 70 10             	push   0x10(%eax)
423ddf:	6a 25                	push   $0x25
423de1:	ba e0 52 40 00       	mov    $0x4052e0,%edx
423de6:	59                   	pop    %ecx
423de7:	e8 c4 35 fe ff       	call   0x4073b0
423dec:	be 05 40 00 80       	mov    $0x80004005,%esi
423df1:	e9 cd 01 00 00       	jmp    0x423fc3
423df6:	8b 4d fc             	mov    -0x4(%ebp),%ecx
423df9:	68 02 00 01 80       	push   $0x80010002
423dfe:	e8 38 12 00 00       	call   0x42503b
423e03:	8b c8                	mov    %eax,%ecx
423e05:	85 c9                	test   %ecx,%ecx
423e07:	79 26                	jns    0x423e2f
423e09:	a1 00 b0 42 00       	mov    0x42b000,%eax
423e0e:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
423e13:	74 1a                	je     0x423e2f
423e15:	f6 40 1c 02          	testb  $0x2,0x1c(%eax)
423e19:	74 14                	je     0x423e2f
423e1b:	51                   	push   %ecx
423e1c:	ff 70 14             	push   0x14(%eax)
423e1f:	ba e0 52 40 00       	mov    $0x4052e0,%edx
423e24:	ff 70 10             	push   0x10(%eax)
423e27:	6a 26                	push   $0x26
423e29:	59                   	pop    %ecx
423e2a:	e8 9f 35 fe ff       	call   0x4073ce
423e2f:	8b ce                	mov    %esi,%ecx
423e31:	8d 51 02             	lea    0x2(%ecx),%edx
423e34:	66 8b 01             	mov    (%ecx),%ax
423e37:	83 c1 02             	add    $0x2,%ecx
423e3a:	66 3b c3             	cmp    %bx,%ax
423e3d:	75 f5                	jne    0x423e34
423e3f:	2b ca                	sub    %edx,%ecx
423e41:	d1 f9                	sar    $1,%ecx
423e43:	8d 04 4d 02 00 00 00 	lea    0x2(,%ecx,2),%eax
423e4a:	50                   	push   %eax
423e4b:	56                   	push   %esi
423e4c:	6a 01                	push   $0x1
423e4e:	53                   	push   %ebx
423e4f:	68 14 52 40 00       	push   $0x405214
423e54:	ff 75 fc             	push   -0x4(%ebp)
423e57:	ff 15 3c c0 42 00    	call   *0x42c03c
423e5d:	85 c0                	test   %eax,%eax
423e5f:	74 27                	je     0x423e88
423e61:	a1 00 b0 42 00       	mov    0x42b000,%eax
423e66:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
423e6b:	0f 84 7b ff ff ff    	je     0x423dec
423e71:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
423e75:	0f 84 71 ff ff ff    	je     0x423dec
423e7b:	ff 70 14             	push   0x14(%eax)
423e7e:	ff 70 10             	push   0x10(%eax)
423e81:	6a 27                	push   $0x27
423e83:	e9 59 ff ff ff       	jmp    0x423de1
423e88:	8b 47 0c             	mov    0xc(%edi),%eax
423e8b:	8d 04 45 02 00 00 00 	lea    0x2(,%eax,2),%eax
423e92:	50                   	push   %eax
423e93:	ff 77 04             	push   0x4(%edi)
423e96:	6a 01                	push   $0x1
423e98:	53                   	push   %ebx
423e99:	68 34 52 40 00       	push   $0x405234
423e9e:	ff 75 fc             	push   -0x4(%ebp)
423ea1:	ff 15 3c c0 42 00    	call   *0x42c03c
423ea7:	85 c0                	test   %eax,%eax
423ea9:	74 27                	je     0x423ed2
423eab:	a1 00 b0 42 00       	mov    0x42b000,%eax
423eb0:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
423eb5:	0f 84 31 ff ff ff    	je     0x423dec
423ebb:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
423ebf:	0f 84 27 ff ff ff    	je     0x423dec
423ec5:	ff 70 14             	push   0x14(%eax)
423ec8:	ff 70 10             	push   0x10(%eax)
423ecb:	6a 28                	push   $0x28
423ecd:	e9 0f ff ff ff       	jmp    0x423de1
423ed2:	51                   	push   %ecx
423ed3:	8d 45 f4             	lea    -0xc(%ebp),%eax
423ed6:	50                   	push   %eax
423ed7:	8d 45 f8             	lea    -0x8(%ebp),%eax
423eda:	50                   	push   %eax
423edb:	e8 c9 06 00 00       	call   0x4245a9
423ee0:	8b 5d f8             	mov    -0x8(%ebp),%ebx
423ee3:	8b f0                	mov    %eax,%esi
423ee5:	8b 7d f4             	mov    -0xc(%ebp),%edi
423ee8:	85 f6                	test   %esi,%esi
423eea:	79 34                	jns    0x423f20
423eec:	8b 0d 00 b0 42 00    	mov    0x42b000,%ecx
423ef2:	81 f9 00 b0 42 00    	cmp    $0x42b000,%ecx
423ef8:	0f 84 af 00 00 00    	je     0x423fad
423efe:	f6 41 1c 01          	testb  $0x1,0x1c(%ecx)
423f02:	0f 84 a5 00 00 00    	je     0x423fad
423f08:	ff 71 14             	push   0x14(%ecx)
423f0b:	ff 71 10             	push   0x10(%ecx)
423f0e:	6a 29                	push   $0x29
423f10:	ba e0 52 40 00       	mov    $0x4052e0,%edx
423f15:	59                   	pop    %ecx
423f16:	e8 95 34 fe ff       	call   0x4073b0
423f1b:	e9 8d 00 00 00       	jmp    0x423fad
423f20:	8b cf                	mov    %edi,%ecx
423f22:	33 f6                	xor    %esi,%esi
423f24:	8d 51 02             	lea    0x2(%ecx),%edx
423f27:	66 8b 01             	mov    (%ecx),%ax
423f2a:	83 c1 02             	add    $0x2,%ecx
423f2d:	66 3b c6             	cmp    %si,%ax
423f30:	75 f5                	jne    0x423f27
423f32:	2b ca                	sub    %edx,%ecx
423f34:	d1 f9                	sar    $1,%ecx
423f36:	8d 04 4d 02 00 00 00 	lea    0x2(,%ecx,2),%eax
423f3d:	50                   	push   %eax
423f3e:	57                   	push   %edi
423f3f:	6a 01                	push   $0x1
423f41:	56                   	push   %esi
423f42:	68 44 52 40 00       	push   $0x405244
423f47:	ff 75 fc             	push   -0x4(%ebp)
423f4a:	ff 15 3c c0 42 00    	call   *0x42c03c
423f50:	85 c0                	test   %eax,%eax
423f52:	74 2c                	je     0x423f80
423f54:	a1 00 b0 42 00       	mov    0x42b000,%eax
423f59:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
423f5e:	74 19                	je     0x423f79
423f60:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
423f64:	74 13                	je     0x423f79
423f66:	ff 70 14             	push   0x14(%eax)
423f69:	ba e0 52 40 00       	mov    $0x4052e0,%edx
423f6e:	ff 70 10             	push   0x10(%eax)
423f71:	6a 2a                	push   $0x2a
423f73:	59                   	pop    %ecx
423f74:	e8 37 34 fe ff       	call   0x4073b0
423f79:	be 05 40 00 80       	mov    $0x80004005,%esi
423f7e:	eb 2d                	jmp    0x423fad
423f80:	53                   	push   %ebx
423f81:	e8 14 08 00 00       	call   0x42479a
423f86:	8b f0                	mov    %eax,%esi
423f88:	85 f6                	test   %esi,%esi
423f8a:	79 1f                	jns    0x423fab
423f8c:	a1 00 b0 42 00       	mov    0x42b000,%eax
423f91:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
423f96:	74 15                	je     0x423fad
423f98:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
423f9c:	74 0f                	je     0x423fad
423f9e:	ff 70 14             	push   0x14(%eax)
423fa1:	ff 70 10             	push   0x10(%eax)
423fa4:	6a 2b                	push   $0x2b
423fa6:	e9 65 ff ff ff       	jmp    0x423f10
423fab:	33 f6                	xor    %esi,%esi
423fad:	85 db                	test   %ebx,%ebx
423faf:	74 07                	je     0x423fb8
423fb1:	53                   	push   %ebx
423fb2:	e8 84 3d 00 00       	call   0x427d3b
423fb7:	59                   	pop    %ecx
423fb8:	85 ff                	test   %edi,%edi
423fba:	74 07                	je     0x423fc3
423fbc:	57                   	push   %edi
423fbd:	e8 79 3d 00 00       	call   0x427d3b
423fc2:	59                   	pop    %ecx
423fc3:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
423fc7:	74 09                	je     0x423fd2
423fc9:	ff 75 fc             	push   -0x4(%ebp)
423fcc:	ff 15 44 c0 42 00    	call   *0x42c044
423fd2:	8b c6                	mov    %esi,%eax
423fd4:	5f                   	pop    %edi
423fd5:	5e                   	pop    %esi
423fd6:	5b                   	pop    %ebx
423fd7:	c9                   	leave
423fd8:	c2 04 00             	ret    $0x4
423fdb:	8b ff                	mov    %edi,%edi
423fdd:	55                   	push   %ebp
423fde:	8b ec                	mov    %esp,%ebp
423fe0:	83 e4 f8             	and    $0xfffffff8,%esp
423fe3:	51                   	push   %ecx
423fe4:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
423fe8:	53                   	push   %ebx
423fe9:	56                   	push   %esi
423fea:	57                   	push   %edi
423feb:	0f 84 d0 00 00 00    	je     0x4240c1
423ff1:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
423ff5:	0f 84 c6 00 00 00    	je     0x4240c1
423ffb:	8b 7d 10             	mov    0x10(%ebp),%edi
423ffe:	85 ff                	test   %edi,%edi
424000:	0f 84 bb 00 00 00    	je     0x4240c1
424006:	6a 01                	push   $0x1
424008:	ff 75 0c             	push   0xc(%ebp)
42400b:	33 db                	xor    %ebx,%ebx
42400d:	ba 78 51 40 00       	mov    $0x405178,%edx
424012:	53                   	push   %ebx
424013:	68 34 52 40 00       	push   $0x405234
424018:	b9 01 00 00 80       	mov    $0x80000001,%ecx
42401d:	89 1f                	mov    %ebx,(%edi)
42401f:	e8 02 f9 fe ff       	call   0x413926
424024:	8b f0                	mov    %eax,%esi
424026:	85 f6                	test   %esi,%esi
424028:	79 2c                	jns    0x424056
42402a:	a1 00 b0 42 00       	mov    0x42b000,%eax
42402f:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
424034:	0f 84 83 00 00 00    	je     0x4240bd
42403a:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
42403e:	74 7d                	je     0x4240bd
424040:	56                   	push   %esi
424041:	ff 70 14             	push   0x14(%eax)
424044:	ff 70 10             	push   0x10(%eax)
424047:	6a 2d                	push   $0x2d
424049:	ba e0 52 40 00       	mov    $0x4052e0,%edx
42404e:	59                   	pop    %ecx
42404f:	e8 7a 33 fe ff       	call   0x4073ce
424054:	eb 67                	jmp    0x4240bd
424056:	53                   	push   %ebx
424057:	ff 75 08             	push   0x8(%ebp)
42405a:	ba 78 51 40 00       	mov    $0x405178,%edx
42405f:	b9 01 00 00 80       	mov    $0x80000001,%ecx
424064:	53                   	push   %ebx
424065:	68 14 52 40 00       	push   $0x405214
42406a:	e8 b7 f8 fe ff       	call   0x413926
42406f:	8b f0                	mov    %eax,%esi
424071:	85 f6                	test   %esi,%esi
424073:	79 1d                	jns    0x424092
424075:	a1 00 b0 42 00       	mov    0x42b000,%eax
42407a:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
42407f:	74 3c                	je     0x4240bd
424081:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
424085:	74 36                	je     0x4240bd
424087:	56                   	push   %esi
424088:	ff 70 14             	push   0x14(%eax)
42408b:	ff 70 10             	push   0x10(%eax)
42408e:	6a 2e                	push   $0x2e
424090:	eb b7                	jmp    0x424049
424092:	51                   	push   %ecx
424093:	53                   	push   %ebx
424094:	53                   	push   %ebx
424095:	68 54 52 40 00       	push   $0x405254
42409a:	ba 78 51 40 00       	mov    $0x405178,%edx
42409f:	b9 01 00 00 80       	mov    $0x80000001,%ecx
4240a4:	e8 50 f7 fe ff       	call   0x4137f9
4240a9:	8b f0                	mov    %eax,%esi
4240ab:	89 37                	mov    %esi,(%edi)
4240ad:	f7 de                	neg    %esi
4240af:	1b f6                	sbb    %esi,%esi
4240b1:	81 e6 fb bf ff 7f    	and    $0x7fffbffb,%esi
4240b7:	81 c6 05 40 00 80    	add    $0x80004005,%esi
4240bd:	8b c6                	mov    %esi,%eax
4240bf:	eb 2a                	jmp    0x4240eb
4240c1:	a1 00 b0 42 00       	mov    0x42b000,%eax
4240c6:	3d 00 b0 42 00       	cmp    $0x42b000,%eax
4240cb:	74 19                	je     0x4240e6
4240cd:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
4240d1:	74 13                	je     0x4240e6
4240d3:	ff 70 14             	push   0x14(%eax)
4240d6:	ba e0 52 40 00       	mov    $0x4052e0,%edx