4239a5:	8b f8                	mov    %eax,%edi
4239a7:	85 ff                	test   %edi,%edi
4239a9:	75 26                	jne    0x4239d1
4239ab:	6a 0c                	push   $0xc
4239ad:	5b                   	pop    %ebx
4239ae:	39 05 30 09 4c 00    	cmp    %eax,0x4c0930
4239b4:	74 0d                	je     0x4239c3
4239b6:	56                   	push   %esi
4239b7:	e8 7e da ff ff       	call   0x42143a
4239bc:	59                   	pop    %ecx
4239bd:	85 c0                	test   %eax,%eax
4239bf:	75 a9                	jne    0x42396a
4239c1:	eb 07                	jmp    0x4239ca
4239c3:	e8 46 42 00 00       	call   0x427c0e
4239c8:	89 18                	mov    %ebx,(%eax)
4239ca:	e8 3f 42 00 00       	call   0x427c0e
4239cf:	89 18                	mov    %ebx,(%eax)
4239d1:	8b c7                	mov    %edi,%eax
4239d3:	5f                   	pop    %edi
4239d4:	5b                   	pop    %ebx
4239d5:	eb 14                	jmp    0x4239eb
4239d7:	56                   	push   %esi
4239d8:	e8 5d da ff ff       	call   0x42143a
4239dd:	59                   	pop    %ecx
4239de:	e8 2b 42 00 00       	call   0x427c0e
4239e3:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
4239e9:	33 c0                	xor    %eax,%eax
4239eb:	5e                   	pop    %esi
4239ec:	5d                   	pop    %ebp
4239ed:	c3                   	ret
4239ee:	55                   	push   %ebp
4239ef:	8b ec                	mov    %esp,%ebp
4239f1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4239f4:	8b 45 08             	mov    0x8(%ebp),%eax
4239f7:	83 e1 1f             	and    $0x1f,%ecx
4239fa:	d3 c0                	rol    %cl,%eax
4239fc:	5d                   	pop    %ebp
4239fd:	c3                   	ret
4239fe:	55                   	push   %ebp
4239ff:	8b ec                	mov    %esp,%ebp
423a01:	56                   	push   %esi
423a02:	8b 75 08             	mov    0x8(%ebp),%esi
423a05:	8b 46 0c             	mov    0xc(%esi),%eax
423a08:	a8 83                	test   $0x83,%al
423a0a:	75 10                	jne    0x423a1c
423a0c:	e8 fd 41 00 00       	call   0x427c0e
423a11:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
423a17:	83 c8 ff             	or     $0xffffffff,%eax
423a1a:	eb 6e                	jmp    0x423a8a
423a1c:	53                   	push   %ebx
423a1d:	8b 5d 10             	mov    0x10(%ebp),%ebx
423a20:	83 e0 ef             	and    $0xffffffef,%eax
423a23:	57                   	push   %edi
423a24:	89 46 0c             	mov    %eax,0xc(%esi)
423a27:	83 fb 01             	cmp    $0x1,%ebx
423a2a:	75 10                	jne    0x423a3c
423a2c:	56                   	push   %esi
423a2d:	e8 da 00 00 00       	call   0x423b0c
423a32:	8b 7d 0c             	mov    0xc(%ebp),%edi
423a35:	03 f8                	add    %eax,%edi
423a37:	59                   	pop    %ecx
423a38:	33 db                	xor    %ebx,%ebx
423a3a:	eb 03                	jmp    0x423a3f
423a3c:	8b 7d 0c             	mov    0xc(%ebp),%edi
423a3f:	56                   	push   %esi
423a40:	e8 3f f2 ff ff       	call   0x422c84
423a45:	8b 46 0c             	mov    0xc(%esi),%eax
423a48:	59                   	pop    %ecx
423a49:	84 c0                	test   %al,%al
423a4b:	79 08                	jns    0x423a55
423a4d:	83 e0 fc             	and    $0xfffffffc,%eax
423a50:	89 46 0c             	mov    %eax,0xc(%esi)
423a53:	eb 16                	jmp    0x423a6b
423a55:	a8 01                	test   $0x1,%al
423a57:	74 12                	je     0x423a6b
423a59:	a8 08                	test   $0x8,%al
423a5b:	74 0e                	je     0x423a6b
423a5d:	a9 00 04 00 00       	test   $0x400,%eax
423a62:	75 07                	jne    0x423a6b
423a64:	c7 46 18 00 02 00 00 	movl   $0x200,0x18(%esi)
423a6b:	53                   	push   %ebx
423a6c:	57                   	push   %edi
423a6d:	56                   	push   %esi
423a6e:	e8 c0 ee ff ff       	call   0x422933
423a73:	59                   	pop    %ecx
423a74:	50                   	push   %eax
423a75:	e8 65 bb 00 00       	call   0x42f5df
423a7a:	83 c4 0c             	add    $0xc,%esp
423a7d:	33 c9                	xor    %ecx,%ecx
423a7f:	83 f8 ff             	cmp    $0xffffffff,%eax
423a82:	0f 95 c1             	setne  %cl
423a85:	5f                   	pop    %edi
423a86:	5b                   	pop    %ebx
423a87:	8d 41 ff             	lea    -0x1(%ecx),%eax
423a8a:	5e                   	pop    %esi
423a8b:	5d                   	pop    %ebp
423a8c:	c3                   	ret
423a8d:	6a 0c                	push   $0xc
423a8f:	68 10 6c 4b 00       	push   $0x4b6c10
423a94:	e8 27 30 00 00       	call   0x426ac0
423a99:	33 c0                	xor    %eax,%eax
423a9b:	8b 75 08             	mov    0x8(%ebp),%esi
423a9e:	85 f6                	test   %esi,%esi
423aa0:	0f 95 c0             	setne  %al
423aa3:	85 c0                	test   %eax,%eax
423aa5:	75 15                	jne    0x423abc
423aa7:	e8 62 41 00 00       	call   0x427c0e
423aac:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
423ab2:	e8 59 33 00 00       	call   0x426e10
423ab7:	83 c8 ff             	or     $0xffffffff,%eax
423aba:	eb 3c                	jmp    0x423af8
423abc:	8b 7d 10             	mov    0x10(%ebp),%edi
423abf:	85 ff                	test   %edi,%edi
423ac1:	74 0a                	je     0x423acd
423ac3:	83 ff 01             	cmp    $0x1,%edi
423ac6:	74 05                	je     0x423acd
423ac8:	83 ff 02             	cmp    $0x2,%edi
423acb:	75 da                	jne    0x423aa7
423acd:	56                   	push   %esi
423ace:	e8 49 13 00 00       	call   0x424e1c
423ad3:	59                   	pop    %ecx
423ad4:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
423ad8:	57                   	push   %edi
423ad9:	ff 75 0c             	push   0xc(%ebp)
423adc:	56                   	push   %esi
423add:	e8 1c ff ff ff       	call   0x4239fe
423ae2:	83 c4 0c             	add    $0xc,%esp
423ae5:	8b f8                	mov    %eax,%edi
423ae7:	89 7d e4             	mov    %edi,-0x1c(%ebp)
423aea:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
423af1:	e8 0e 00 00 00       	call   0x423b04
423af6:	8b c7                	mov    %edi,%eax
423af8:	e8 08 30 00 00       	call   0x426b05
423afd:	c3                   	ret
423afe:	8b 75 08             	mov    0x8(%ebp),%esi
423b01:	8b 7d e4             	mov    -0x1c(%ebp),%edi
423b04:	56                   	push   %esi
423b05:	e8 81 13 00 00       	call   0x424e8b
423b0a:	59                   	pop    %ecx
423b0b:	c3                   	ret
423b0c:	55                   	push   %ebp
423b0d:	8b ec                	mov    %esp,%ebp
423b0f:	b8 20 10 00 00       	mov    $0x1020,%eax
423b14:	e8 87 bd 00 00       	call   0x42f8a0
423b19:	a1 c0 ad 4b 00       	mov    0x4badc0,%eax
423b1e:	33 c5                	xor    %ebp,%eax
423b20:	89 45 fc             	mov    %eax,-0x4(%ebp)
423b23:	53                   	push   %ebx
423b24:	8b 5d 08             	mov    0x8(%ebp),%ebx
423b27:	89 9d e0 ef ff ff    	mov    %ebx,-0x1020(%ebp)
423b2d:	85 db                	test   %ebx,%ebx
423b2f:	75 18                	jne    0x423b49
423b31:	e8 d8 40 00 00       	call   0x427c0e
423b36:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
423b3c:	e8 cf 32 00 00       	call   0x426e10
423b41:	83 c8 ff             	or     $0xffffffff,%eax
423b44:	e9 0f 03 00 00       	jmp    0x423e58
423b49:	56                   	push   %esi
423b4a:	53                   	push   %ebx
423b4b:	e8 e3 ed ff ff       	call   0x422933
423b50:	8b f0                	mov    %eax,%esi
423b52:	33 c0                	xor    %eax,%eax
423b54:	59                   	pop    %ecx
423b55:	89 b5 e8 ef ff ff    	mov    %esi,-0x1018(%ebp)
423b5b:	39 43 04             	cmp    %eax,0x4(%ebx)
423b5e:	7d 03                	jge    0x423b63
423b60:	89 43 04             	mov    %eax,0x4(%ebx)
423b63:	6a 01                	push   $0x1
423b65:	50                   	push   %eax
423b66:	56                   	push   %esi
423b67:	e8 73 ba 00 00       	call   0x42f5df
423b6c:	8b c8                	mov    %eax,%ecx
423b6e:	83 c4 0c             	add    $0xc,%esp
423b71:	89 8d f8 ef ff ff    	mov    %ecx,-0x1008(%ebp)
423b77:	85 c9                	test   %ecx,%ecx
423b79:	79 08                	jns    0x423b83
423b7b:	83 c8 ff             	or     $0xffffffff,%eax
423b7e:	e9 d4 02 00 00       	jmp    0x423e57
423b83:	8b d6                	mov    %esi,%edx
423b85:	c1 fa 05             	sar    $0x5,%edx
423b88:	89 95 f0 ef ff ff    	mov    %edx,-0x1010(%ebp)
423b8e:	8b 14 95 40 09 4c 00 	mov    0x4c0940(,%edx,4),%edx
423b95:	8b c6                	mov    %esi,%eax
423b97:	83 e0 1f             	and    $0x1f,%eax
423b9a:	c1 e0 06             	shl    $0x6,%eax
423b9d:	89 85 e4 ef ff ff    	mov    %eax,-0x101c(%ebp)
423ba3:	8a 54 10 24          	mov    0x24(%eax,%edx,1),%dl
423ba7:	02 d2                	add    %dl,%dl
423ba9:	d0 fa                	sar    $1,%dl
423bab:	f7 43 0c 08 01 00 00 	testl  $0x108,0xc(%ebx)
423bb2:	88 95 f7 ef ff ff    	mov    %dl,-0x1009(%ebp)
423bb8:	75 0a                	jne    0x423bc4
423bba:	2b 4b 04             	sub    0x4(%ebx),%ecx
423bbd:	8b c1                	mov    %ecx,%eax
423bbf:	e9 93 02 00 00       	jmp    0x423e57
423bc4:	8b 33                	mov    (%ebx),%esi
423bc6:	57                   	push   %edi
423bc7:	8b fe                	mov    %esi,%edi
423bc9:	2b 7b 08             	sub    0x8(%ebx),%edi
423bcc:	f6 43 0c 03          	testb  $0x3,0xc(%ebx)
423bd0:	89 bd ec ef ff ff    	mov    %edi,-0x1014(%ebp)
423bd6:	0f 84 7a 01 00 00    	je     0x423d56
423bdc:	80 fa 01             	cmp    $0x1,%dl
423bdf:	0f 85 1c 01 00 00    	jne    0x423d01
423be5:	8b bd f0 ef ff ff    	mov    -0x1010(%ebp),%edi
423beb:	8b 0c bd 40 09 4c 00 	mov    0x4c0940(,%edi,4),%ecx
423bf2:	8b bd ec ef ff ff    	mov    -0x1014(%ebp),%edi
423bf8:	83 7c 08 30 00       	cmpl   $0x0,0x30(%eax,%ecx,1)
423bfd:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423c03:	0f 84 f8 00 00 00    	je     0x423d01
423c09:	d1 ef                	shr    $1,%edi
423c0b:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
423c0f:	75 07                	jne    0x423c18
423c11:	8b c1                	mov    %ecx,%eax
423c13:	e9 3e 02 00 00       	jmp    0x423e56
423c18:	8b 95 f0 ef ff ff    	mov    -0x1010(%ebp),%edx
423c1e:	8b 9d e8 ef ff ff    	mov    -0x1018(%ebp),%ebx
423c24:	8b 0c 95 40 09 4c 00 	mov    0x4c0940(,%edx,4),%ecx
423c2b:	6a 00                	push   $0x0
423c2d:	ff 74 08 2c          	push   0x2c(%eax,%ecx,1)
423c31:	ff 74 08 28          	push   0x28(%eax,%ecx,1)
423c35:	53                   	push   %ebx
423c36:	e8 f8 ba 00 00       	call   0x42f733
423c3b:	8b 8d e4 ef ff ff    	mov    -0x101c(%ebp),%ecx
423c41:	8b f0                	mov    %eax,%esi
423c43:	8b 85 f0 ef ff ff    	mov    -0x1010(%ebp),%eax
423c49:	83 c4 10             	add    $0x10,%esp
423c4c:	8b 04 85 40 09 4c 00 	mov    0x4c0940(,%eax,4),%eax
423c53:	3b 74 01 28          	cmp    0x28(%ecx,%eax,1),%esi
423c57:	0f 85 9d 01 00 00    	jne    0x423dfa
423c5d:	3b 54 01 2c          	cmp    0x2c(%ecx,%eax,1),%edx
423c61:	0f 85 93 01 00 00    	jne    0x423dfa
423c67:	6a 00                	push   $0x0
423c69:	8d 95 ec ef ff ff    	lea    -0x1014(%ebp),%edx
423c6f:	52                   	push   %edx
423c70:	68 00 10 00 00       	push   $0x1000
423c75:	8d 95 fc ef ff ff    	lea    -0x1004(%ebp),%edx
423c7b:	52                   	push   %edx
423c7c:	ff 34 01             	push   (%ecx,%eax,1)
423c7f:	ff 15 cc d1 48 00    	call   *0x48d1cc
423c85:	85 c0                	test   %eax,%eax
423c87:	0f 84 6d 01 00 00    	je     0x423dfa
423c8d:	6a 00                	push   $0x0
423c8f:	ff b5 f8 ef ff ff    	push   -0x1008(%ebp)
423c95:	53                   	push   %ebx
423c96:	e8 44 b9 00 00       	call   0x42f5df
423c9b:	83 c4 0c             	add    $0xc,%esp
423c9e:	85 c0                	test   %eax,%eax
423ca0:	0f 88 54 01 00 00    	js     0x423dfa
423ca6:	8b 85 ec ef ff ff    	mov    -0x1014(%ebp),%eax
423cac:	3b f8                	cmp    %eax,%edi
423cae:	0f 87 46 01 00 00    	ja     0x423dfa
423cb4:	8d 8d fc ef ff ff    	lea    -0x1004(%ebp),%ecx
423cba:	85 ff                	test   %edi,%edi
423cbc:	74 33                	je     0x423cf1
423cbe:	8b d1                	mov    %ecx,%edx
423cc0:	03 d0                	add    %eax,%edx
423cc2:	4f                   	dec    %edi
423cc3:	3b ca                	cmp    %edx,%ecx
423cc5:	73 2a                	jae    0x423cf1
423cc7:	8a 01                	mov    (%ecx),%al
423cc9:	3c 0d                	cmp    $0xd,%al
423ccb:	75 13                	jne    0x423ce0
423ccd:	8d 42 ff             	lea    -0x1(%edx),%eax
423cd0:	3b c8                	cmp    %eax,%ecx
423cd2:	73 18                	jae    0x423cec
423cd4:	8d 41 01             	lea    0x1(%ecx),%eax
423cd7:	80 38 0a             	cmpb   $0xa,(%eax)
423cda:	75 10                	jne    0x423cec
423cdc:	8b c8                	mov    %eax,%ecx
423cde:	eb 0c                	jmp    0x423cec
423ce0:	0f b6 c0             	movzbl %al,%eax
423ce3:	0f be 80 50 af 4b 00 	movsbl 0x4baf50(%eax),%eax
423cea:	03 c8                	add    %eax,%ecx
423cec:	41                   	inc    %ecx
423ced:	85 ff                	test   %edi,%edi
423cef:	75 d1                	jne    0x423cc2
423cf1:	8d 85 fc ef ff ff    	lea    -0x1004(%ebp),%eax
423cf7:	2b f0                	sub    %eax,%esi
423cf9:	8d 04 31             	lea    (%ecx,%esi,1),%eax
423cfc:	e9 55 01 00 00       	jmp    0x423e56
423d01:	8b bd f0 ef ff ff    	mov    -0x1010(%ebp),%edi
423d07:	8b 0c bd 40 09 4c 00 	mov    0x4c0940(,%edi,4),%ecx
423d0e:	8b bd ec ef ff ff    	mov    -0x1014(%ebp),%edi
423d14:	f6 44 08 04 80       	testb  $0x80,0x4(%eax,%ecx,1)
423d19:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423d1f:	74 2a                	je     0x423d4b
423d21:	8b 4b 08             	mov    0x8(%ebx),%ecx
423d24:	89 8d ec ef ff ff    	mov    %ecx,-0x1014(%ebp)
423d2a:	3b ce                	cmp    %esi,%ecx
423d2c:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423d32:	73 17                	jae    0x423d4b
423d34:	8b 85 ec ef ff ff    	mov    -0x1014(%ebp),%eax
423d3a:	80 38 0a             	cmpb   $0xa,(%eax)
423d3d:	75 01                	jne    0x423d40
423d3f:	47                   	inc    %edi
423d40:	40                   	inc    %eax
423d41:	3b c6                	cmp    %esi,%eax
423d43:	72 f5                	jb     0x423d3a
423d45:	8b 85 e4 ef ff ff    	mov    -0x101c(%ebp),%eax
423d4b:	85 c9                	test   %ecx,%ecx
423d4d:	75 1d                	jne    0x423d6c
423d4f:	8b c7                	mov    %edi,%eax
423d51:	e9 00 01 00 00       	jmp    0x423e56
423d56:	f6 43 0c 80          	testb  $0x80,0xc(%ebx)
423d5a:	75 ef                	jne    0x423d4b
423d5c:	e8 ad 3e 00 00       	call   0x427c0e
423d61:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
423d67:	e9 8e 00 00 00       	jmp    0x423dfa
423d6c:	f6 43 0c 01          	testb  $0x1,0xc(%ebx)
423d70:	0f 84 d6 00 00 00    	je     0x423e4c
423d76:	83 7b 04 00          	cmpl   $0x0,0x4(%ebx)
423d7a:	75 07                	jne    0x423d83
423d7c:	33 ff                	xor    %edi,%edi
423d7e:	e9 c9 00 00 00       	jmp    0x423e4c
423d83:	2b 73 08             	sub    0x8(%ebx),%esi
423d86:	03 73 04             	add    0x4(%ebx),%esi
423d89:	8b 9d f0 ef ff ff    	mov    -0x1010(%ebp),%ebx
423d8f:	8b 0c 9d 40 09 4c 00 	mov    0x4c0940(,%ebx,4),%ecx
423d96:	8b 9d e0 ef ff ff    	mov    -0x1020(%ebp),%ebx
423d9c:	f6 44 08 04 80       	testb  $0x80,0x4(%eax,%ecx,1)
423da1:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423da7:	0f 84 9d 00 00 00    	je     0x423e4a
423dad:	6a 02                	push   $0x2
423daf:	6a 00                	push   $0x0
423db1:	ff b5 e8 ef ff ff    	push   -0x1018(%ebp)
423db7:	e8 23 b8 00 00       	call   0x42f5df
423dbc:	8b 8d f8 ef ff ff    	mov    -0x1008(%ebp),%ecx
423dc2:	83 c4 0c             	add    $0xc,%esp
423dc5:	3b c1                	cmp    %ecx,%eax
423dc7:	75 1c                	jne    0x423de5
423dc9:	8b 43 08             	mov    0x8(%ebx),%eax
423dcc:	8d 14 30             	lea    (%eax,%esi,1),%edx
423dcf:	eb 07                	jmp    0x423dd8
423dd1:	80 38 0a             	cmpb   $0xa,(%eax)
423dd4:	75 01                	jne    0x423dd7
423dd6:	46                   	inc    %esi
423dd7:	40                   	inc    %eax
423dd8:	3b c2                	cmp    %edx,%eax
423dda:	72 f5                	jb     0x423dd1
423ddc:	f7 43 0c 00 20 00 00 	testl  $0x2000,0xc(%ebx)
423de3:	eb 55                	jmp    0x423e3a
423de5:	6a 00                	push   $0x0
423de7:	51                   	push   %ecx
423de8:	ff b5 e8 ef ff ff    	push   -0x1018(%ebp)
423dee:	e8 ec b7 00 00       	call   0x42f5df
423df3:	83 c4 0c             	add    $0xc,%esp
423df6:	85 c0                	test   %eax,%eax
423df8:	79 05                	jns    0x423dff
423dfa:	83 c8 ff             	or     $0xffffffff,%eax