434ad1:	51                   	push   %ecx
434ad2:	53                   	push   %ebx
434ad3:	57                   	push   %edi
434ad4:	8b f9                	mov    %ecx,%edi
434ad6:	8b da                	mov    %edx,%ebx
434ad8:	85 ff                	test   %edi,%edi
434ada:	0f 84 c8 00 00 00    	je     0x434ba8
434ae0:	85 db                	test   %ebx,%ebx
434ae2:	0f 84 c0 00 00 00    	je     0x434ba8
434ae8:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
434aec:	0f 84 b6 00 00 00    	je     0x434ba8
434af2:	56                   	push   %esi
434af3:	33 c0                	xor    %eax,%eax
434af5:	8b d0                	mov    %eax,%edx
434af7:	6a 19                	push   $0x19
434af9:	89 55 fc             	mov    %edx,-0x4(%ebp)
434afc:	5e                   	pop    %esi
434afd:	0f b7 0f             	movzwl (%edi),%ecx
434b00:	8d 41 9f             	lea    -0x61(%ecx),%eax
434b03:	66 3b c6             	cmp    %si,%ax
434b06:	77 05                	ja     0x434b0d
434b08:	8d 41 9f             	lea    -0x61(%ecx),%eax
434b0b:	eb 0b                	jmp    0x434b18
434b0d:	8d 41 bf             	lea    -0x41(%ecx),%eax
434b10:	66 3b c6             	cmp    %si,%ax
434b13:	77 3e                	ja     0x434b53
434b15:	8d 41 bf             	lea    -0x41(%ecx),%eax
434b18:	83 f8 1a             	cmp    $0x1a,%eax
434b1b:	73 36                	jae    0x434b53
434b1d:	0f ae e8             	lfence
434b20:	8b 34 85 70 1c 40 00 	mov    0x401c70(,%eax,4),%esi
434b27:	85 f6                	test   %esi,%esi
434b29:	74 25                	je     0x434b50
434b2b:	8b 06                	mov    (%esi),%eax
434b2d:	33 c9                	xor    %ecx,%ecx
434b2f:	66 39 08             	cmp    %cx,(%eax)
434b32:	74 1c                	je     0x434b50
434b34:	50                   	push   %eax
434b35:	57                   	push   %edi
434b36:	e8 8c 5f fe ff       	call   0x41aac7
434b3b:	59                   	pop    %ecx
434b3c:	59                   	pop    %ecx
434b3d:	85 c0                	test   %eax,%eax
434b3f:	74 1f                	je     0x434b60
434b41:	83 c6 08             	add    $0x8,%esi
434b44:	33 c9                	xor    %ecx,%ecx
434b46:	8b 06                	mov    (%esi),%eax
434b48:	66 39 08             	cmp    %cx,(%eax)
434b4b:	75 e7                	jne    0x434b34
434b4d:	8b 55 fc             	mov    -0x4(%ebp),%edx
434b50:	6a 19                	push   $0x19
434b52:	5e                   	pop    %esi
434b53:	42                   	inc    %edx
434b54:	8b fb                	mov    %ebx,%edi
434b56:	89 55 fc             	mov    %edx,-0x4(%ebp)
434b59:	83 fa 02             	cmp    $0x2,%edx
434b5c:	7c 9f                	jl     0x434afd
434b5e:	eb 47                	jmp    0x434ba7
434b60:	8b 4e 04             	mov    0x4(%esi),%ecx
434b63:	33 db                	xor    %ebx,%ebx
434b65:	8d 51 02             	lea    0x2(%ecx),%edx
434b68:	66 8b 01             	mov    (%ecx),%ax
434b6b:	83 c1 02             	add    $0x2,%ecx
434b6e:	66 3b c3             	cmp    %bx,%ax
434b71:	75 f5                	jne    0x434b68
434b73:	2b ca                	sub    %edx,%ecx
434b75:	d1 f9                	sar    $1,%ecx
434b77:	83 f9 55             	cmp    $0x55,%ecx
434b7a:	73 2b                	jae    0x434ba7
434b7c:	8b 4e 04             	mov    0x4(%esi),%ecx
434b7f:	8d 51 02             	lea    0x2(%ecx),%edx
434b82:	66 8b 01             	mov    (%ecx),%ax
434b85:	83 c1 02             	add    $0x2,%ecx
434b88:	66 3b c3             	cmp    %bx,%ax
434b8b:	75 f5                	jne    0x434b82
434b8d:	2b ca                	sub    %edx,%ecx
434b8f:	d1 f9                	sar    $1,%ecx
434b91:	8d 04 4d 02 00 00 00 	lea    0x2(,%ecx,2),%eax
434b98:	50                   	push   %eax
434b99:	ff 76 04             	push   0x4(%esi)
434b9c:	ff 75 08             	push   0x8(%ebp)
434b9f:	e8 42 63 fe ff       	call   0x41aee6
434ba4:	83 c4 0c             	add    $0xc,%esp
434ba7:	5e                   	pop    %esi
434ba8:	5f                   	pop    %edi
434ba9:	5b                   	pop    %ebx
434baa:	c9                   	leave
434bab:	c2 04 00             	ret    $0x4
434bae:	8b ff                	mov    %edi,%edi
434bb0:	55                   	push   %ebp
434bb1:	8b ec                	mov    %esp,%ebp
434bb3:	53                   	push   %ebx
434bb4:	56                   	push   %esi
434bb5:	57                   	push   %edi
434bb6:	85 c9                	test   %ecx,%ecx
434bb8:	74 6e                	je     0x434c28
434bba:	85 d2                	test   %edx,%edx
434bbc:	74 56                	je     0x434c14
434bbe:	33 db                	xor    %ebx,%ebx
434bc0:	53                   	push   %ebx
434bc1:	53                   	push   %ebx
434bc2:	6a 03                	push   $0x3
434bc4:	53                   	push   %ebx
434bc5:	6a 05                	push   $0x5
434bc7:	68 00 00 00 80       	push   $0x80000000
434bcc:	51                   	push   %ecx
434bcd:	ff 15 f8 a0 43 00    	call   *0x43a0f8
434bd3:	8b f0                	mov    %eax,%esi
434bd5:	83 fe ff             	cmp    $0xffffffff,%esi
434bd8:	74 4e                	je     0x434c28
434bda:	53                   	push   %ebx
434bdb:	53                   	push   %ebx
434bdc:	53                   	push   %ebx
434bdd:	6a 08                	push   $0x8
434bdf:	53                   	push   %ebx
434be0:	56                   	push   %esi
434be1:	ff 15 b4 a1 43 00    	call   *0x43a1b4
434be7:	56                   	push   %esi
434be8:	8b f8                	mov    %eax,%edi
434bea:	ff 15 10 a1 43 00    	call   *0x43a110
434bf0:	85 ff                	test   %edi,%edi
434bf2:	74 34                	je     0x434c28
434bf4:	53                   	push   %ebx
434bf5:	53                   	push   %ebx
434bf6:	53                   	push   %ebx
434bf7:	6a 01                	push   $0x1
434bf9:	57                   	push   %edi
434bfa:	ff 15 c8 a1 43 00    	call   *0x43a1c8
434c00:	57                   	push   %edi
434c01:	8b f0                	mov    %eax,%esi
434c03:	ff 15 10 a1 43 00    	call   *0x43a110
434c09:	85 f6                	test   %esi,%esi
434c0b:	74 1b                	je     0x434c28
434c0d:	83 ce 01             	or     $0x1,%esi
434c10:	8b c6                	mov    %esi,%eax
434c12:	eb 16                	jmp    0x434c2a
434c14:	33 c0                	xor    %eax,%eax
434c16:	39 45 08             	cmp    %eax,0x8(%ebp)
434c19:	0f 95 c0             	setne  %al
434c1c:	50                   	push   %eax
434c1d:	6a 00                	push   $0x0
434c1f:	51                   	push   %ecx
434c20:	ff 15 7c a1 43 00    	call   *0x43a17c
434c26:	eb 02                	jmp    0x434c2a
434c28:	33 c0                	xor    %eax,%eax
434c2a:	5f                   	pop    %edi
434c2b:	5e                   	pop    %esi
434c2c:	5b                   	pop    %ebx
434c2d:	5d                   	pop    %ebp
434c2e:	c2 04 00             	ret    $0x4
434c31:	8b ff                	mov    %edi,%edi
434c33:	56                   	push   %esi
434c34:	6a 00                	push   $0x0
434c36:	6a 01                	push   $0x1
434c38:	8b f1                	mov    %ecx,%esi
434c3a:	68 9c 5e 40 00       	push   $0x405e9c
434c3f:	56                   	push   %esi
434c40:	ff 15 74 a1 43 00    	call   *0x43a174
434c46:	85 c0                	test   %eax,%eax
434c48:	75 02                	jne    0x434c4c
434c4a:	5e                   	pop    %esi
434c4b:	c3                   	ret
434c4c:	50                   	push   %eax
434c4d:	56                   	push   %esi
434c4e:	ff 15 80 a1 43 00    	call   *0x43a180
434c54:	5e                   	pop    %esi
434c55:	c3                   	ret
434c56:	8b ff                	mov    %edi,%edi
434c58:	56                   	push   %esi
434c59:	57                   	push   %edi
434c5a:	8b fa                	mov    %edx,%edi
434c5c:	85 c9                	test   %ecx,%ecx
434c5e:	74 48                	je     0x434ca8
434c60:	85 ff                	test   %edi,%edi
434c62:	74 44                	je     0x434ca8
434c64:	e8 c8 ff ff ff       	call   0x434c31
434c69:	8b cf                	mov    %edi,%ecx
434c6b:	8b f0                	mov    %eax,%esi
434c6d:	e8 bf ff ff ff       	call   0x434c31
434c72:	85 f6                	test   %esi,%esi
434c74:	74 2a                	je     0x434ca0
434c76:	85 c0                	test   %eax,%eax
434c78:	74 26                	je     0x434ca0
434c7a:	b9 cd fe cd fe       	mov    $0xfecdfecd,%ecx
434c7f:	39 0e                	cmp    %ecx,(%esi)
434c81:	75 25                	jne    0x434ca8
434c83:	39 08                	cmp    %ecx,(%eax)
434c85:	75 21                	jne    0x434ca8
434c87:	83 c0 1c             	add    $0x1c,%eax
434c8a:	6a 10                	push   $0x10
434c8c:	50                   	push   %eax
434c8d:	8d 46 1c             	lea    0x1c(%esi),%eax
434c90:	50                   	push   %eax
434c91:	e8 c5 93 fe ff       	call   0x41e05b
434c96:	83 c4 0c             	add    $0xc,%esp
434c99:	85 c0                	test   %eax,%eax
434c9b:	75 0b                	jne    0x434ca8
434c9d:	40                   	inc    %eax
434c9e:	eb 0a                	jmp    0x434caa
434ca0:	6a 0d                	push   $0xd
434ca2:	ff 15 ac a0 43 00    	call   *0x43a0ac
434ca8:	33 c0                	xor    %eax,%eax
434caa:	5f                   	pop    %edi
434cab:	5e                   	pop    %esi
434cac:	c3                   	ret
434cad:	8b ff                	mov    %edi,%edi
434caf:	55                   	push   %ebp
434cb0:	8b ec                	mov    %esp,%ebp
434cb2:	81 ec 0c 02 00 00    	sub    $0x20c,%esp
434cb8:	a1 08 85 43 00       	mov    0x438508,%eax
434cbd:	33 c5                	xor    %ebp,%eax
434cbf:	89 45 fc             	mov    %eax,-0x4(%ebp)
434cc2:	57                   	push   %edi
434cc3:	8b 7d 08             	mov    0x8(%ebp),%edi
434cc6:	85 ff                	test   %edi,%edi
434cc8:	75 04                	jne    0x434cce
434cca:	33 c0                	xor    %eax,%eax
434ccc:	eb 6c                	jmp    0x434d3a
434cce:	53                   	push   %ebx
434ccf:	8d 45 10             	lea    0x10(%ebp),%eax
434cd2:	ba 04 01 00 00       	mov    $0x104,%edx
434cd7:	50                   	push   %eax
434cd8:	ff 75 0c             	push   0xc(%ebp)
434cdb:	8d 8d f4 fd ff ff    	lea    -0x20c(%ebp),%ecx
434ce1:	33 db                	xor    %ebx,%ebx
434ce3:	e8 a7 82 ff ff       	call   0x42cf8f
434ce8:	85 c0                	test   %eax,%eax
434cea:	78 4b                	js     0x434d37
434cec:	56                   	push   %esi
434ced:	e8 1c fc ff ff       	call   0x43490e
434cf2:	8b f0                	mov    %eax,%esi
434cf4:	83 e6 26             	and    $0x26,%esi
434cf7:	e8 12 fc ff ff       	call   0x43490e
434cfc:	83 e0 38             	and    $0x38,%eax
434cff:	8d 8d f4 fd ff ff    	lea    -0x20c(%ebp),%ecx
434d05:	56                   	push   %esi
434d06:	8b d0                	mov    %eax,%edx
434d08:	e8 a1 fe ff ff       	call   0x434bae
434d0d:	8b d8                	mov    %eax,%ebx
434d0f:	5e                   	pop    %esi
434d10:	85 db                	test   %ebx,%ebx
434d12:	74 23                	je     0x434d37
434d14:	8b d3                	mov    %ebx,%edx
434d16:	8b cf                	mov    %edi,%ecx
434d18:	e8 39 ff ff ff       	call   0x434c56
434d1d:	85 c0                	test   %eax,%eax
434d1f:	75 16                	jne    0x434d37
434d21:	53                   	push   %ebx
434d22:	f6 c3 01             	test   $0x1,%bl
434d25:	74 08                	je     0x434d2f
434d27:	ff 15 bc a1 43 00    	call   *0x43a1bc
434d2d:	eb 06                	jmp    0x434d35
434d2f:	ff 15 70 a1 43 00    	call   *0x43a170
434d35:	33 db                	xor    %ebx,%ebx
434d37:	8b c3                	mov    %ebx,%eax
434d39:	5b                   	pop    %ebx
434d3a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
434d3d:	33 cd                	xor    %ebp,%ecx
434d3f:	5f                   	pop    %edi
434d40:	e8 7b 5a fe ff       	call   0x41a7c0
434d45:	c9                   	leave
434d46:	c3                   	ret
434d47:	8b ff                	mov    %edi,%edi
434d49:	55                   	push   %ebp
434d4a:	8b ec                	mov    %esp,%ebp
434d4c:	81 ec 20 04 00 00    	sub    $0x420,%esp
434d52:	a1 08 85 43 00       	mov    0x438508,%eax
434d57:	33 c5                	xor    %ebp,%eax
434d59:	89 45 fc             	mov    %eax,-0x4(%ebp)
434d5c:	83 a5 ec fb ff ff 00 	andl   $0x0,-0x414(%ebp)
434d63:	57                   	push   %edi
434d64:	8b f9                	mov    %ecx,%edi
434d66:	89 bd e0 fb ff ff    	mov    %edi,-0x420(%ebp)
434d6c:	85 ff                	test   %edi,%edi
434d6e:	75 07                	jne    0x434d77
434d70:	33 c0                	xor    %eax,%eax
434d72:	e9 ab 03 00 00       	jmp    0x435122
434d77:	53                   	push   %ebx
434d78:	56                   	push   %esi
434d79:	e8 90 fb ff ff       	call   0x43490e
434d7e:	a3 a8 91 43 00       	mov    %eax,0x4391a8
434d83:	33 f6                	xor    %esi,%esi
434d85:	83 e0 20             	and    $0x20,%eax
434d88:	83 c8 02             	or     $0x2,%eax
434d8b:	50                   	push   %eax
434d8c:	56                   	push   %esi
434d8d:	57                   	push   %edi
434d8e:	ff 15 7c a1 43 00    	call   *0x43a17c
434d94:	8b d8                	mov    %eax,%ebx
434d96:	85 db                	test   %ebx,%ebx
434d98:	0f 84 80 03 00 00    	je     0x43511e
434d9e:	f6 05 a8 91 43 00 20 	testb  $0x20,0x4391a8
434da5:	0f 85 75 03 00 00    	jne    0x435120
434dab:	8d 85 ec fb ff ff    	lea    -0x414(%ebp),%eax
434db1:	50                   	push   %eax
434db2:	8d 85 f0 fb ff ff    	lea    -0x410(%ebp),%eax
434db8:	50                   	push   %eax
434db9:	68 04 01 00 00       	push   $0x104
434dbe:	56                   	push   %esi
434dbf:	57                   	push   %edi
434dc0:	56                   	push   %esi
434dc1:	ff 15 d4 a1 43 00    	call   *0x43a1d4
434dc7:	85 c0                	test   %eax,%eax
434dc9:	0f 84 48 03 00 00    	je     0x435117
434dcf:	8b 85 ec fb ff ff    	mov    -0x414(%ebp),%eax
434dd5:	85 c0                	test   %eax,%eax
434dd7:	75 10                	jne    0x434de9
434dd9:	8d 85 f0 fb ff ff    	lea    -0x410(%ebp),%eax
434ddf:	33 ff                	xor    %edi,%edi
434de1:	89 85 ec fb ff ff    	mov    %eax,-0x414(%ebp)
434de7:	eb 0c                	jmp    0x434df5
434de9:	33 c9                	xor    %ecx,%ecx
434deb:	8d bd f0 fb ff ff    	lea    -0x410(%ebp),%edi
434df1:	66 89 48 fe          	mov    %cx,-0x2(%eax)
434df5:	6a 00                	push   $0x0
434df7:	6a 01                	push   $0x1
434df9:	68 9c 5e 40 00       	push   $0x405e9c
434dfe:	53                   	push   %ebx
434dff:	ff 15 74 a1 43 00    	call   *0x43a174
434e05:	85 c0                	test   %eax,%eax
434e07:	0f 84 e8 01 00 00    	je     0x434ff5
434e0d:	a1 a8 91 43 00       	mov    0x4391a8,%eax
434e12:	a8 04                	test   $0x4,%al
434e14:	0f 84 2d 02 00 00    	je     0x435047
434e1a:	ff 15 a4 a1 43 00    	call   *0x43a1a4
434e20:	0f b7 c0             	movzwl %ax,%eax
434e23:	b9 04 04 00 00       	mov    $0x404,%ecx
434e28:	89 85 e8 fb ff ff    	mov    %eax,-0x418(%ebp)
434e2e:	66 3b c1             	cmp    %cx,%ax
434e31:	75 0e                	jne    0x434e41
434e33:	e8 cc f9 ff ff       	call   0x434804
434e38:	0f b7 c0             	movzwl %ax,%eax
434e3b:	89 85 e8 fb ff ff    	mov    %eax,-0x418(%ebp)
434e41:	8d 8d a4 fe ff ff    	lea    -0x15c(%ebp),%ecx
434e47:	51                   	push   %ecx
434e48:	8d 8d f8 fd ff ff    	lea    -0x208(%ebp),%ecx
434e4e:	51                   	push   %ecx
434e4f:	8d 95 50 ff ff ff    	lea    -0xb0(%ebp),%edx
434e55:	8b c8                	mov    %eax,%ecx
434e57:	e8 24 fc ff ff       	call   0x434a80
434e5c:	85 c0                	test   %eax,%eax
434e5e:	0f 84 89 01 00 00    	je     0x434fed
434e64:	ff b5 ec fb ff ff    	push   -0x414(%ebp)
434e6a:	8d 85 50 ff ff ff    	lea    -0xb0(%ebp),%eax
434e70:	8b d7                	mov    %edi,%edx
434e72:	50                   	push   %eax
434e73:	8b cb                	mov    %ebx,%ecx
434e75:	e8 a0 fb ff ff       	call   0x434a1a
434e7a:	8b f0                	mov    %eax,%esi
434e7c:	85 f6                	test   %esi,%esi